Changeset 4 for trunk


Ignore:
Timestamp:
11/05/07 15:24:47 (16 years ago)
Author:
pinsard
Message:

modification according to /usr/temp/vech/quiberon/Roms_tools/Roms_Agrif_pisces/

Location:
trunk/Roms_agrif
Files:
2 added
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/Roms_agrif/cppdefs.h

    r3 r4  
    3838# undef  MPI 
    3939                      /* Nesting */ 
    40 # undef  AGRIF 
    41 # undef  AGRIF_2WAY 
     40# define  AGRIF 
     41# define  AGRIF_2WAY 
    4242                      /* Open Boundary Conditions */ 
    4343# undef  TIDES 
     
    106106# define SPONGE 
    107107 
    108 # define CLIMATOLOGY 
     108# undef CLIMATOLOGY 
    109109# ifdef CLIMATOLOGY 
    110110#  define ZCLIMATOLOGY 
     
    120120# endif 
    121121 
    122 # undef FRC_BRY 
     122# define FRC_BRY 
    123123# ifdef FRC_BRY 
    124124#  define Z_FRC_BRY 
     
    191191#   define key_trc_pisces 
    192192#   define key_passivetrc 
    193 #   define DIAGNOSTICS_BIO 
     193#   undef DIAGNOSTICS_BIO 
    194194#   ifdef DIAGNOSTICS_BIO 
    195195#     define key_trc_diaadd 
  • trunk/Roms_agrif/mixing.h

    r3 r4  
    8181#  endif 
    8282      real hbl(GLOBAL_2D_ARRAY) 
     83c  vech 30/08/07 
     84      real hbl_0(GLOBAL_2D_ARRAY) 
    8385      real hbbl(GLOBAL_2D_ARRAY) 
    8486      common /lmd_kpp_kbl/kbl     /lmd_kpp_hbl/hbl 
  • trunk/Roms_agrif/param.h

    r3 r4  
    6464      parameter (LLm0=77,  MMm0=96,  N=28) ! <-- RIA 
    6565#  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 
    6770#  elif defined SAFE 
    6871      parameter (LLm0=111, MMm0=96,  N=32) ! <-- SAFE 
     
    109112      parameter (NSUB_X=1, NSUB_E=1, NPP=1) 
    110113#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) 
    112116#else 
    113117      parameter (NSUB_X=1, NSUB_E=1, NPP=1) 
  • trunk/Roms_agrif/read_inp.F

    r3 r4  
    5656      fname='roms.in.Upwelling' 
    5757#elif defined REGIONAL 
    58       fname='roms.in.US_West' 
     58      fname='roms.in' 
    5959#elif defined BASIN 
    6060      fname='roms.in.Basin' 
     
    6868      fname='roms.in.Grav_adj' 
    6969#else 
    70       fname='no_startup_file' 
     70      fname='roms.in' 
    7171#endif 
    7272#ifdef MPI 
  • trunk/Roms_agrif/step.F

    r3 r4  
    598598# endif 
    599599        call t3dmix (tile)  
    600 # if defined AGRIF !defined SMAGO_TS 
     600# if defined AGRIF && !defined SMAGO_TS 
    601601        else 
    602602        call t3dmix_fine(tile) 
  • trunk/Roms_agrif/zoombc_2D.F

    r3 r4  
    4444      common/interp2d/coarsevalues, nbgrid, indinterp 
    4545!$AGRIF_END_DO_NOT_TREAT      
    46 #ifdef MPI 
     46# ifdef MPI 
    4747       include 'mpif.h' 
    48 #endif 
     48# endif 
    4949   
    5050# ifdef MPI 
     
    8080 
    8181        tinterp=1. 
    82 #ifdef MASKING 
     82# ifdef MASKING 
    8383        Agrif_UseSpecialValue = .true. 
    84 #endif 
     84# endif 
    8585        Agrif_SpecialValue = 0. 
    8686 
     
    103103          lastcff=1./lastcff 
    104104                
    105 #  ifdef AGRIF_OBC_WEST 
     105# ifdef AGRIF_OBC_WEST 
    106106      if (WESTERN_EDGE) then 
    107107          i = Istr 
     
    133133#  ifdef MASKING 
    134134     &                               * umask(i,j) 
    135  endif                      
     135endif                      
    136136          enddo       
    137137           
     
    142142                                        
    143143      endif 
    144 #  endif  
    145 #  ifdef AGRIF_OBC_EAST 
     144# endif  
     145# ifdef AGRIF_OBC_EAST 
    146146      if (EASTERN_EDGE) then 
    147147          i=Iend+1          
     
    171171#  ifdef MASKING 
    172172     &                               * umask(i,j) 
    173  endif           
     173endif           
    174174          enddo       
    175175           
     
    180180                                  
    181181      endif 
    182 #  endif  
    183  
    184 #  ifdef AGRIF_OBC_SOUTH 
     182# endif  
     183 
     184# ifdef AGRIF_OBC_SOUTH 
    185185 
    186186      if (SOUTHERN_EDGE) then 
     
    211211#  ifdef MASKING 
    212212     &                               * umask(i,j) 
    213  endif           
     213endif           
    214214          enddo       
    215215           
     
    221221      endif 
    222222       
    223 #  endif  
    224 #  ifdef AGRIF_OBC_NORTH 
     223# endif  
     224# ifdef AGRIF_OBC_NORTH 
    225225      if (NORTHERN_EDGE) then   
    226226          j=Jend+1 
     
    252252#  ifdef MASKING 
    253253     &                               * umask(i,j) 
    254  endif              
     254endif              
    255255          enddo       
    256256           
     
    258258          DU_north6(i)=(DU_north6(i)-DU_north4(i,iif-1))/rrhot 
    259259          enddo  
    260           endif                  
    261                                       
    262       endif                     
    263 #  endif 
     260          endif 
     261 
     262      endif 
     263# endif 
    264264        U2DTimeindex = parentnbstep 
    265265      endif 
     
    277277          enddo 
    278278       endif 
    279 #endif  
     279# endif  
    280280 
    281281# ifdef AGRIF_OBC_EAST 
     
    294294 
    295295# ifdef AGRIF_OBC_SOUTH 
    296       if (SOUTHERN_EDGE) then        
     296      if (SOUTHERN_EDGE) then 
    297297          j=Jstr-1 
    298298           
     
    305305          enddo 
    306306       endif 
    307 #  endif 
     307# endif 
    308308 
    309309# ifdef AGRIF_OBC_NORTH 
     
    319319          enddo          
    320320       endif 
    321 #  endif   
    322            
     321# endif   
     322           
     323 
     324# if defined M2_FRC_BRY || defined M2NUDGING 
    323325! 
    324326! Apply the value to ubclm or ubarbry 
     
    326328      cffx = g*dtfast*2./(1.+rrhox) 
    327329 
    328 #ifdef AGRIF_2WAY 
     330#  ifdef AGRIF_2WAY 
    329331      cffx = 0. 
    330 #endif 
    331  
    332 # ifdef AGRIF_OBC_WEST 
     332#  endif 
     333 
     334#  ifdef AGRIF_OBC_WEST 
    333335      if (WESTERN_EDGE) then 
    334336        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 
    338338          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 
    343344     &              (2.*DU_west(j)/((h(Istr-1,j)+zeta(Istr-1,j,knew) 
    344345     &                                 +h(Istr,j)+zeta(Istr,j,knew)) 
    345346     &                                                *on_u(Istr,j))) 
    346 else 
     347 else 
    347348     &                  DU_west(j) 
     349#   endif 
     350#   ifdef MASKING 
     351     &                  *umask(Istr,j) 
     352#   endif 
     353        enddo    
     354 
     355      endif 
    348356#  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 
    357359      if (EASTERN_EDGE) then 
    358360        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 
    363362          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 
    368368     &                  (2.*DU_east(j)/(( h(Iend,j)+zeta(Iend,j,knew) 
    369369     &                              +h(Iend+1,j)+zeta(Iend+1,j,knew)) 
    370370     &                                              *on_u(Iend+1,j))) 
    371 else 
     371 else 
    372372     &                      DU_east(j) 
     373#   endif 
     374#   ifdef MASKING 
     375     &                      *umask(Iend+1,j) 
     376#   endif 
     377        enddo        
     378      endif 
    373379#  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 
    381382      if (SOUTHERN_EDGE) then        
    382383        do i=Istr,Iend 
    383 ifdef M2_FRC_BRY 
     384 ifdef M2_FRC_BRY 
    384385          ubarbry_south(i)= 
    385 else 
     386 else 
    386387          ubclm(i,Jstr-1)= 
    387 endif 
    388 ifdef AGRIF_FLUX_BC 
     388 endif 
     389 ifdef AGRIF_FLUX_BC 
    389390     &              (2.*DU_south(i)/(( h(i,Jstr-1)+zeta(i,Jstr-1,knew) 
    390391     &                           +h(i-1,Jstr-1)+zeta(i-1,Jstr-1,knew)) 
    391392     &                                                *on_u(i,Jstr-1))) 
    392 else 
     393 else 
    393394     &                  DU_south(i) 
     395#   endif 
     396#   ifdef MASKING 
     397     &                  *umask(i,Jstr-1) 
     398#   endif 
     399      enddo 
     400      endif 
    394401#  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 
    402404      if (NORTHERN_EDGE) then 
    403405        do i=Istr,Iend 
    404 ifdef M2_FRC_BRY 
     406 ifdef M2_FRC_BRY 
    405407          ubarbry_north(i)= 
    406 else 
     408 else 
    407409          ubclm(i,Jend+1)= 
    408 endif 
    409 ifdef AGRIF_FLUX_BC 
     410 endif 
     411 ifdef AGRIF_FLUX_BC 
    410412     &            (2.*DU_north(i)/(( h(i,Jend+1)+zeta(i,Jend+1,knew) 
    411413     &                         +h(i-1,Jend+1)+zeta(i-1,Jend+1,knew)) 
    412414     &                                             *on_u(i,Jend+1))) 
    413 else 
     415 else 
    414416     &                DU_north(i) 
     417#   endif 
     418#   ifdef MASKING 
     419     &                *umask(i,Jend+1) 
     420#   endif 
     421        enddo 
     422 
     423      endif 
    415424#  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 
    423427      return 
    424428      end 
     
    814818      endif 
    815819# endif       
    816                 
     820           
     821# if defined M2_FRC_BRY || defined M2NUDGING 
    817822! 
    818823! Apply the value to vbclm or vbarbry 
     
    820825      cffy = g*dtfast*2./(1.+rrhoy) 
    821826 
    822 #ifdef AGRIF_2WAY 
     827#  ifdef AGRIF_2WAY 
    823828      cffy = 0. 
    824 #endif 
    825  
    826 # ifdef AGRIF_OBC_SOUTH 
     829#  endif 
     830 
     831#  ifdef AGRIF_OBC_SOUTH 
    827832      if (SOUTHERN_EDGE) then 
    828833         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 
    832835           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 
    837841     &              (2.*DV_south(i)/((h(i,Jstr-1)+zeta(i,Jstr-1,knew) 
    838842     &                                  +h(i,Jstr)+zeta(i,Jstr,knew)) 
    839843     &                                                 *om_v(i,Jstr))) 
    840 else 
     844 else 
    841845     &                  DV_south(i) 
    842 endif 
    843 ifdef MASKING 
     846 endif 
     847 ifdef MASKING 
    844848     &                  *vmask(i,Jstr) 
     849#   endif  
     850       enddo 
     851      endif 
    845852#  endif  
    846        enddo      
    847  
    848       endif 
    849 # endif  
    850 # ifdef AGRIF_OBC_NORTH 
     853 
     854#  ifdef AGRIF_OBC_NORTH 
    851855      if (NORTHERN_EDGE) then 
    852856        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 
    857858          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 
    862864     &                  (2.*DV_north(i)/(( h(i,Jend)+zeta(i,Jend,knew) 
    863865     &                               +h(i,Jend+1)+zeta(i,Jend+1,knew)) 
    864866     &                                               *om_v(i,Jend+1))) 
    865 else 
     867 else 
    866868     &                  DV_north(i) 
     869#   endif 
     870#   ifdef MASKING 
     871     &                  *vmask(i,Jend+1) 
     872#   endif  
     873        enddo 
     874      endif 
    867875#  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        
    877878      if (EASTERN_EDGE) then 
    878879        do j=Jstr,Jend 
    879 ifdef M2_FRC_BRY 
     880 ifdef M2_FRC_BRY 
    880881          vbarbry_east(j)= 
    881 else 
     882 else 
    882883          vbclm(Iend+1,j)= 
    883 endif 
    884 ifdef AGRIF_FLUX_BC 
     884 endif 
     885 ifdef AGRIF_FLUX_BC 
    885886     &             (2.*DV_east(j)/(( h(Iend+1,j)+zeta(Iend+1,j,knew) 
    886887     &                           +h(Iend+1,j-1)+zeta(Iend+1,j-1,knew)) 
    887888     &                                             *om_v(Iend+1,j))) 
    888 else 
     889 else 
    889890     &                 DV_east(j) 
    890 endif 
    891 ifdef MASKING 
     891 endif 
     892 ifdef MASKING 
    892893     &                 *vmask(Iend+1,j) 
    893 endif 
     894 endif 
    894895        enddo 
    895896      endif        
    896 # endif  
    897 # ifdef AGRIF_OBC_WEST              
     897#  endif  
     898 
     899#  ifdef AGRIF_OBC_WEST              
    898900      if (WESTERN_EDGE) then 
    899901        do j=Jstr,Jend 
    900 ifdef M2_FRC_BRY 
     902 ifdef M2_FRC_BRY 
    901903          vbarbry_west(j)= 
    902 else 
     904 else 
    903905          vbclm(Istr-1,j)= 
    904 endif 
    905 ifdef AGRIF_FLUX_BC 
     906 endif 
     907 ifdef AGRIF_FLUX_BC 
    906908     &                (2.*DV_west(j)/((h(Istr-1,j)+zeta(Istr-1,j,knew) 
    907909     &                           +h(Istr-1,j-1)+zeta(Istr-1,j-1,knew)) 
    908910     &                                                *om_v(Istr-1,j))) 
    909 else 
     911 else 
    910912     &                  DV_west(j) 
     913#   endif 
     914#   ifdef MASKING 
     915     &                  *vmask(Istr-1,j) 
     916#   endif 
     917        enddo 
     918      endif 
    911919#  endif 
    912 #  ifdef MASKING 
    913      &                  *vmask(Istr-1,j) 
    914 #  endif 
    915         enddo 
    916       endif 
    917 # endif 
     920# endif /* M2_FRC_BRY || M2NUDGING */ 
    918921      return 
    919922      end 
     
    13401343          enddo 
    13411344          enddo 
    1342            
     1345#   ifdef ZNUDGING 
    13431346          do j=Jstr-1,Jstr 
    13441347          do i=Istr,Iend 
     
    13461349          enddo 
    13471350          enddo 
     1351#   endif 
    13481352           
    13491353          endif 
     
    13571361          enddo 
    13581362          enddo 
    1359            
     1363#   ifdef ZNUDGING 
    13601364          do j=Jend,Jend+1 
    13611365          do i=Istr,Iend 
     
    13631367          enddo 
    13641368          enddo 
    1365                     
     1369#   endif 
    13661370          endif 
    13671371#  endif 
     
    13741378          enddo 
    13751379          enddo 
    1376            
     1380#   ifdef ZNUDGING 
    13771381          do j=Jstr,Jend 
    13781382          do i=Istr-1,Istr 
     
    13801384          enddo 
    13811385          enddo 
    1382                      
     1386#   endif 
    13831387          endif 
    13841388#  endif 
     
    13911395          enddo 
    13921396          enddo 
    1393            
     1397#   ifdef ZNUDGING 
    13941398          do j=Jstr,Jend 
    13951399          do i=Iend,Iend+1 
     
    13971401          enddo 
    13981402          enddo 
    1399                      
     1403#   endif 
    14001404          endif 
    14011405#  endif 
Note: See TracChangeset for help on using the changeset viewer.