- Timestamp:
- 11/05/07 15:24:47 (16 years ago)
- Location:
- trunk/Roms_agrif
- Files:
-
- 2 added
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Roms_agrif/cppdefs.h
r3 r4 38 38 # undef MPI 39 39 /* Nesting */ 40 # undefAGRIF41 # undefAGRIF_2WAY40 # define AGRIF 41 # define AGRIF_2WAY 42 42 /* Open Boundary Conditions */ 43 43 # undef TIDES … … 106 106 # define SPONGE 107 107 108 # defineCLIMATOLOGY108 # undef CLIMATOLOGY 109 109 # ifdef CLIMATOLOGY 110 110 # define ZCLIMATOLOGY … … 120 120 # endif 121 121 122 # undefFRC_BRY122 # define FRC_BRY 123 123 # ifdef FRC_BRY 124 124 # define Z_FRC_BRY … … 191 191 # define key_trc_pisces 192 192 # define key_passivetrc 193 # defineDIAGNOSTICS_BIO193 # undef DIAGNOSTICS_BIO 194 194 # ifdef DIAGNOSTICS_BIO 195 195 # define key_trc_diaadd -
trunk/Roms_agrif/mixing.h
r3 r4 81 81 # endif 82 82 real hbl(GLOBAL_2D_ARRAY) 83 c vech 30/08/07 84 real hbl_0(GLOBAL_2D_ARRAY) 83 85 real hbbl(GLOBAL_2D_ARRAY) 84 86 common /lmd_kpp_kbl/kbl /lmd_kpp_hbl/hbl -
trunk/Roms_agrif/param.h
r3 r4 64 64 parameter (LLm0=77, MMm0=96, N=28) ! <-- RIA 65 65 # elif defined PERU 66 parameter (LLm0=39, MMm0=32, N=20) ! <-- Peru test 66 ! parameter (LLm0=39, MMm0=32, N=20) ! <-- Peru test 67 ! parameter (LLm0=122, MMm0=185, N=30) ! <-- roms pisces peru 1/6 68 parameter (LLm0=82, MMm0=119, N=32) ! <-- filam/chimbote 1/6 69 ! parameter (LLm0=19, MMm0=35, N=32) ! <-- chile 1/2 67 70 # elif defined SAFE 68 71 parameter (LLm0=111, MMm0=96, N=32) ! <-- SAFE … … 109 112 parameter (NSUB_X=1, NSUB_E=1, NPP=1) 110 113 #elif defined OPENMP 111 parameter (NSUB_X=1, NSUB_E=4, NPP=2) 114 ! parameter (NSUB_X=2, NSUB_E=2, NPP=4) 115 parameter (NSUB_X=3, NSUB_E=1, NPP=3) 112 116 #else 113 117 parameter (NSUB_X=1, NSUB_E=1, NPP=1) -
trunk/Roms_agrif/read_inp.F
r3 r4 56 56 fname='roms.in.Upwelling' 57 57 #elif defined REGIONAL 58 fname='roms.in .US_West'58 fname='roms.in' 59 59 #elif defined BASIN 60 60 fname='roms.in.Basin' … … 68 68 fname='roms.in.Grav_adj' 69 69 #else 70 fname=' no_startup_file'70 fname='roms.in' 71 71 #endif 72 72 #ifdef MPI -
trunk/Roms_agrif/step.F
r3 r4 598 598 # endif 599 599 call t3dmix (tile) 600 # if defined AGRIF !defined SMAGO_TS600 # if defined AGRIF && !defined SMAGO_TS 601 601 else 602 602 call t3dmix_fine(tile) -
trunk/Roms_agrif/zoombc_2D.F
r3 r4 44 44 common/interp2d/coarsevalues, nbgrid, indinterp 45 45 !$AGRIF_END_DO_NOT_TREAT 46 # ifdef MPI46 # ifdef MPI 47 47 include 'mpif.h' 48 # endif48 # endif 49 49 50 50 # ifdef MPI … … 80 80 81 81 tinterp=1. 82 # ifdef MASKING82 # ifdef MASKING 83 83 Agrif_UseSpecialValue = .true. 84 # endif84 # endif 85 85 Agrif_SpecialValue = 0. 86 86 … … 103 103 lastcff=1./lastcff 104 104 105 # 105 # ifdef AGRIF_OBC_WEST 106 106 if (WESTERN_EDGE) then 107 107 i = Istr … … 133 133 # ifdef MASKING 134 134 & * umask(i,j) 135 # 135 # endif 136 136 enddo 137 137 … … 142 142 143 143 endif 144 # 145 # 144 # endif 145 # ifdef AGRIF_OBC_EAST 146 146 if (EASTERN_EDGE) then 147 147 i=Iend+1 … … 171 171 # ifdef MASKING 172 172 & * umask(i,j) 173 # 173 # endif 174 174 enddo 175 175 … … 180 180 181 181 endif 182 # 183 184 # 182 # endif 183 184 # ifdef AGRIF_OBC_SOUTH 185 185 186 186 if (SOUTHERN_EDGE) then … … 211 211 # ifdef MASKING 212 212 & * umask(i,j) 213 # 213 # endif 214 214 enddo 215 215 … … 221 221 endif 222 222 223 # 224 # 223 # endif 224 # ifdef AGRIF_OBC_NORTH 225 225 if (NORTHERN_EDGE) then 226 226 j=Jend+1 … … 252 252 # ifdef MASKING 253 253 & * umask(i,j) 254 # 254 # endif 255 255 enddo 256 256 … … 258 258 DU_north6(i)=(DU_north6(i)-DU_north4(i,iif-1))/rrhot 259 259 enddo 260 endif 261 262 endif 263 # 260 endif 261 262 endif 263 # endif 264 264 U2DTimeindex = parentnbstep 265 265 endif … … 277 277 enddo 278 278 endif 279 # endif279 # endif 280 280 281 281 # ifdef AGRIF_OBC_EAST … … 294 294 295 295 # ifdef AGRIF_OBC_SOUTH 296 if (SOUTHERN_EDGE) then 296 if (SOUTHERN_EDGE) then 297 297 j=Jstr-1 298 298 … … 305 305 enddo 306 306 endif 307 # 307 # endif 308 308 309 309 # ifdef AGRIF_OBC_NORTH … … 319 319 enddo 320 320 endif 321 # endif 322 321 # endif 322 323 324 # if defined M2_FRC_BRY || defined M2NUDGING 323 325 ! 324 326 ! Apply the value to ubclm or ubarbry … … 326 328 cffx = g*dtfast*2./(1.+rrhox) 327 329 328 # ifdef AGRIF_2WAY330 # ifdef AGRIF_2WAY 329 331 cffx = 0. 330 # endif331 332 # ifdef AGRIF_OBC_WEST332 # endif 333 334 # ifdef AGRIF_OBC_WEST 333 335 if (WESTERN_EDGE) then 334 336 do j=Jstr,Jend 335 ubclm(Istr,j) = (cffx/om_u(Istr,j))* 336 & (SSH(Istr,j)-zeta(Istr,j,knew)) 337 # ifdef M2_FRC_BRY 337 # ifdef M2_FRC_BRY 338 338 ubarbry_west(j)= 339 # else 340 ubclm(Istr,j)= ubclm(Istr,j) + 341 # endif 342 # ifdef AGRIF_FLUX_BC 339 # else 340 ubclm(Istr,j)= (cffx/om_u(Istr,j))* 341 & (SSH(Istr,j)-zeta(Istr,j,knew)) + 342 # endif 343 # ifdef AGRIF_FLUX_BC 343 344 & (2.*DU_west(j)/((h(Istr-1,j)+zeta(Istr-1,j,knew) 344 345 & +h(Istr,j)+zeta(Istr,j,knew)) 345 346 & *on_u(Istr,j))) 346 # else347 # else 347 348 & DU_west(j) 349 # endif 350 # ifdef MASKING 351 & *umask(Istr,j) 352 # endif 353 enddo 354 355 endif 348 356 # endif 349 # ifdef MASKING 350 & *umask(Istr,j) 351 # endif 352 enddo 353 354 endif 355 # endif 356 # ifdef AGRIF_OBC_EAST 357 358 # ifdef AGRIF_OBC_EAST 357 359 if (EASTERN_EDGE) then 358 360 do j=Jstr,Jend 359 ubclm(Iend+1,j) = -(cffx/om_u(Iend+1,j))* 360 & (SSH(Iend,j)-zeta(Iend,j,knew)) 361 362 # ifdef M2_FRC_BRY 361 # ifdef M2_FRC_BRY 363 362 ubarbry_east(j)= 364 # else 365 ubclm(Iend+1,j)=ubclm(Iend+1,j)+ 366 # endif 367 # ifdef AGRIF_FLUX_BC 363 # else 364 ubclm(Iend+1,j)=-(cffx/om_u(Iend+1,j))* 365 & (SSH(Iend,j)-zeta(Iend,j,knew)) + 366 # endif 367 # ifdef AGRIF_FLUX_BC 368 368 & (2.*DU_east(j)/(( h(Iend,j)+zeta(Iend,j,knew) 369 369 & +h(Iend+1,j)+zeta(Iend+1,j,knew)) 370 370 & *on_u(Iend+1,j))) 371 # else371 # else 372 372 & DU_east(j) 373 # endif 374 # ifdef MASKING 375 & *umask(Iend+1,j) 376 # endif 377 enddo 378 endif 373 379 # endif 374 # ifdef MASKING 375 & *umask(Iend+1,j) 376 # endif 377 enddo 378 endif 379 # endif 380 # ifdef AGRIF_OBC_SOUTH 380 381 # ifdef AGRIF_OBC_SOUTH 381 382 if (SOUTHERN_EDGE) then 382 383 do i=Istr,Iend 383 # ifdef M2_FRC_BRY384 # ifdef M2_FRC_BRY 384 385 ubarbry_south(i)= 385 # else386 # else 386 387 ubclm(i,Jstr-1)= 387 # endif388 # ifdef AGRIF_FLUX_BC388 # endif 389 # ifdef AGRIF_FLUX_BC 389 390 & (2.*DU_south(i)/(( h(i,Jstr-1)+zeta(i,Jstr-1,knew) 390 391 & +h(i-1,Jstr-1)+zeta(i-1,Jstr-1,knew)) 391 392 & *on_u(i,Jstr-1))) 392 # else393 # else 393 394 & DU_south(i) 395 # endif 396 # ifdef MASKING 397 & *umask(i,Jstr-1) 398 # endif 399 enddo 400 endif 394 401 # endif 395 # ifdef MASKING 396 & *umask(i,Jstr-1) 397 # endif 398 enddo 399 endif 400 # endif 401 # ifdef AGRIF_OBC_NORTH 402 403 # ifdef AGRIF_OBC_NORTH 402 404 if (NORTHERN_EDGE) then 403 405 do i=Istr,Iend 404 # ifdef M2_FRC_BRY406 # ifdef M2_FRC_BRY 405 407 ubarbry_north(i)= 406 # else408 # else 407 409 ubclm(i,Jend+1)= 408 # endif409 # ifdef AGRIF_FLUX_BC410 # endif 411 # ifdef AGRIF_FLUX_BC 410 412 & (2.*DU_north(i)/(( h(i,Jend+1)+zeta(i,Jend+1,knew) 411 413 & +h(i-1,Jend+1)+zeta(i-1,Jend+1,knew)) 412 414 & *on_u(i,Jend+1))) 413 # else415 # else 414 416 & DU_north(i) 417 # endif 418 # ifdef MASKING 419 & *umask(i,Jend+1) 420 # endif 421 enddo 422 423 endif 415 424 # endif 416 # ifdef MASKING 417 & *umask(i,Jend+1) 418 # endif 419 enddo 420 421 endif 422 #endif 425 # endif /* M2_FRC_BRY || M2NUDGING */ 426 423 427 return 424 428 end … … 814 818 endif 815 819 # endif 816 820 821 # if defined M2_FRC_BRY || defined M2NUDGING 817 822 ! 818 823 ! Apply the value to vbclm or vbarbry … … 820 825 cffy = g*dtfast*2./(1.+rrhoy) 821 826 822 # ifdef AGRIF_2WAY827 # ifdef AGRIF_2WAY 823 828 cffy = 0. 824 # endif825 826 # ifdef AGRIF_OBC_SOUTH829 # endif 830 831 # ifdef AGRIF_OBC_SOUTH 827 832 if (SOUTHERN_EDGE) then 828 833 do i=Istr,Iend 829 vbclm(i,Jstr)=(cffy/on_v(i,Jstr))* 830 & (SSH(i,Jstr)-zeta(i,Jstr,knew)) 831 # ifdef M2_FRC_BRY 834 # ifdef M2_FRC_BRY 832 835 vbarbry_south(i)= 833 # else 834 vbclm(i,Jstr)=vbclm(i,Jstr)+ 835 # endif 836 # ifdef AGRIF_FLUX_BC 836 # else 837 vbclm(i,Jstr)=(cffy/on_v(i,Jstr))* 838 & (SSH(i,Jstr)-zeta(i,Jstr,knew)) + 839 # endif 840 # ifdef AGRIF_FLUX_BC 837 841 & (2.*DV_south(i)/((h(i,Jstr-1)+zeta(i,Jstr-1,knew) 838 842 & +h(i,Jstr)+zeta(i,Jstr,knew)) 839 843 & *om_v(i,Jstr))) 840 # else844 # else 841 845 & DV_south(i) 842 # endif843 # ifdef MASKING846 # endif 847 # ifdef MASKING 844 848 & *vmask(i,Jstr) 849 # endif 850 enddo 851 endif 845 852 # endif 846 enddo 847 848 endif 849 # endif 850 # ifdef AGRIF_OBC_NORTH 853 854 # ifdef AGRIF_OBC_NORTH 851 855 if (NORTHERN_EDGE) then 852 856 do i=Istr,Iend 853 vbclm(i,Jend+1)=-(cffy/on_v(i,Jend+1))* 854 & (SSH(i,Jend)-zeta(i,Jend,knew)) 855 856 # ifdef M2_FRC_BRY 857 # ifdef M2_FRC_BRY 857 858 vbarbry_north(i)= 858 # else 859 vbclm(i,Jend+1)=vbclm(i,Jend+1)+ 860 # endif 861 # ifdef AGRIF_FLUX_BC 859 # else 860 vbclm(i,Jend+1)=-(cffy/on_v(i,Jend+1))* 861 & (SSH(i,Jend)-zeta(i,Jend,knew)) + 862 # endif 863 # ifdef AGRIF_FLUX_BC 862 864 & (2.*DV_north(i)/(( h(i,Jend)+zeta(i,Jend,knew) 863 865 & +h(i,Jend+1)+zeta(i,Jend+1,knew)) 864 866 & *om_v(i,Jend+1))) 865 # else867 # else 866 868 & DV_north(i) 869 # endif 870 # ifdef MASKING 871 & *vmask(i,Jend+1) 872 # endif 873 enddo 874 endif 867 875 # endif 868 # ifdef MASKING 869 & *vmask(i,Jend+1) 870 # endif 871 enddo 872 873 874 endif 875 # endif 876 # ifdef AGRIF_OBC_EAST 876 877 # ifdef AGRIF_OBC_EAST 877 878 if (EASTERN_EDGE) then 878 879 do j=Jstr,Jend 879 # ifdef M2_FRC_BRY880 # ifdef M2_FRC_BRY 880 881 vbarbry_east(j)= 881 # else882 # else 882 883 vbclm(Iend+1,j)= 883 # endif884 # ifdef AGRIF_FLUX_BC884 # endif 885 # ifdef AGRIF_FLUX_BC 885 886 & (2.*DV_east(j)/(( h(Iend+1,j)+zeta(Iend+1,j,knew) 886 887 & +h(Iend+1,j-1)+zeta(Iend+1,j-1,knew)) 887 888 & *om_v(Iend+1,j))) 888 # else889 # else 889 890 & DV_east(j) 890 # endif891 # ifdef MASKING891 # endif 892 # ifdef MASKING 892 893 & *vmask(Iend+1,j) 893 # endif894 # endif 894 895 enddo 895 896 endif 896 # endif 897 # ifdef AGRIF_OBC_WEST 897 # endif 898 899 # ifdef AGRIF_OBC_WEST 898 900 if (WESTERN_EDGE) then 899 901 do j=Jstr,Jend 900 # ifdef M2_FRC_BRY902 # ifdef M2_FRC_BRY 901 903 vbarbry_west(j)= 902 # else904 # else 903 905 vbclm(Istr-1,j)= 904 # endif905 # ifdef AGRIF_FLUX_BC906 # endif 907 # ifdef AGRIF_FLUX_BC 906 908 & (2.*DV_west(j)/((h(Istr-1,j)+zeta(Istr-1,j,knew) 907 909 & +h(Istr-1,j-1)+zeta(Istr-1,j-1,knew)) 908 910 & *om_v(Istr-1,j))) 909 # else911 # else 910 912 & DV_west(j) 913 # endif 914 # ifdef MASKING 915 & *vmask(Istr-1,j) 916 # endif 917 enddo 918 endif 911 919 # endif 912 # ifdef MASKING 913 & *vmask(Istr-1,j) 914 # endif 915 enddo 916 endif 917 # endif 920 # endif /* M2_FRC_BRY || M2NUDGING */ 918 921 return 919 922 end … … 1340 1343 enddo 1341 1344 enddo 1342 1345 # ifdef ZNUDGING 1343 1346 do j=Jstr-1,Jstr 1344 1347 do i=Istr,Iend … … 1346 1349 enddo 1347 1350 enddo 1351 # endif 1348 1352 1349 1353 endif … … 1357 1361 enddo 1358 1362 enddo 1359 1363 # ifdef ZNUDGING 1360 1364 do j=Jend,Jend+1 1361 1365 do i=Istr,Iend … … 1363 1367 enddo 1364 1368 enddo 1365 1369 # endif 1366 1370 endif 1367 1371 # endif … … 1374 1378 enddo 1375 1379 enddo 1376 1380 # ifdef ZNUDGING 1377 1381 do j=Jstr,Jend 1378 1382 do i=Istr-1,Istr … … 1380 1384 enddo 1381 1385 enddo 1382 1386 # endif 1383 1387 endif 1384 1388 # endif … … 1391 1395 enddo 1392 1396 enddo 1393 1397 # ifdef ZNUDGING 1394 1398 do j=Jstr,Jend 1395 1399 do i=Iend,Iend+1 … … 1397 1401 enddo 1398 1402 enddo 1399 1403 # endif 1400 1404 endif 1401 1405 # endif
Note: See TracChangeset
for help on using the changeset viewer.