New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 1312 for trunk/NEMO/OPA_SRC – NEMO

Changeset 1312 for trunk/NEMO/OPA_SRC


Ignore:
Timestamp:
2009-02-16T17:35:36+01:00 (15 years ago)
Author:
smasson
Message:

add a namelist logical to mask land points in NetCDF outputs, see ticket:322

Location:
trunk/NEMO/OPA_SRC
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMO/OPA_SRC/DIA/diagap.F90

    r1310 r1312  
    153153         ! Define frequency of output and means 
    154154         zsto = ngap * zdt 
    155          clop = "ave(x)" 
     155         IF( ln_mskland )   THEN   ;   clop = "ave(only(x))"   ! put 1.e+20 on land (very expensive!!) 
     156         ELSE                      ;   clop = "ave(x)"         ! no use of the mask value (require less cpu time) 
     157         ENDIF 
    156158         zout = ngap * zdt 
    157159         zmax = FLOAT( nitend - nit000 + 1 ) * zdt 
  • trunk/NEMO/OPA_SRC/DIA/diaptr.F90

    r1310 r1312  
    426426      zdt = rdt 
    427427      IF( nacc == 1 ) zdt = rdtmin 
     428      IF( ln_mskland )   THEN   ;   clop = "only(x)"   ! put 1.e+20 on land (very expensive!!) 
     429      ELSE                      ;   clop = "x"         ! no use of the mask value (require less cpu time) 
     430      ENDIF 
    428431#if defined key_diainstant 
    429          zsto = nf_ptr * zdt 
    430          clop = "inst(x)"               ! no use of the mask value (require less cpu time) 
    431          !!! clop="inst(only(x))"       ! put 1.e+20 on land (very expensive!!) 
     432      zsto = nf_ptr * zdt 
     433      clop = "inst("//TRIM(clop)//")" 
    432434#else 
    433          zsto = zdt 
    434          clop = "ave(x)"                ! no use of the mask value (require less cpu time) 
    435          !!! clop="ave(only(x))"        ! put 1.e+20 on land (very expensive!!) 
     435      zsto=zdt 
     436      clop = "ave("//TRIM(clop)//")" 
    436437#endif 
    437438      zout = nf_ptr * zdt 
  • trunk/NEMO/OPA_SRC/DIA/diawri.F90

    r1310 r1312  
    129129      zdt = rdt 
    130130      IF( nacc == 1 ) zdt = rdtmin 
     131      IF( ln_mskland )   THEN   ;   clop = "only(x)"   ! put 1.e+20 on land (very expensive!!) 
     132      ELSE                      ;   clop = "x"         ! no use of the mask value (require less cpu time) 
     133      ENDIF 
    131134#if defined key_diainstant 
    132135      zsto = nwrite * zdt 
    133       clop = "inst(x)"           ! no use of the mask value (require less cpu time) 
    134       !!! clop="inst(only(x))"   ! put 1.e+20 on land (very expensive!!) 
     136      clop = "inst("//TRIM(clop)//")" 
    135137#else 
    136138      zsto=zdt 
    137       clop="ave(x)"              ! no use of the mask value (require less cpu time) 
    138       !!! clop="ave(only(x))"    ! put 1.e+20 on land (very expensive!!) 
     139      clop = "ave("//TRIM(clop)//")" 
    139140#endif 
    140141      zout = nwrite * zdt 
  • trunk/NEMO/OPA_SRC/DOM/domain.F90

    r1241 r1312  
    142142      NAMELIST/namrun/ no    , cexper, cn_ocerst_in, cn_ocerst_out, ln_rstart, nrstdt,   & 
    143143         &             nit000, nitend, ndate0      , nleapy       , ninist   , nstock,   & 
    144          &             nwrite, ln_dimgnnn 
     144         &             nwrite, ln_dimgnnn, ln_mskland 
    145145 
    146146      NAMELIST/namdom/ ntopo , e3zps_min, e3zps_rat, nmsh   ,   & 
     
    174174         WRITE(numout,*) '           frequency of output file        nwrite    = ', nwrite 
    175175         WRITE(numout,*) '           multi file dimgout           ln_dimgnnn   = ', ln_dimgnnn 
     176         WRITE(numout,*) '           mask land points             ln_mskland   = ', ln_mskland 
    176177      ENDIF 
    177178 
  • trunk/NEMO/OPA_SRC/IOM/in_out_manager.F90

    r1239 r1312  
    3939   LOGICAL            ::   ln_dimgnnn    = .FALSE.     !: type of dimgout. (F): 1 file for all proc 
    4040                                                       !:                  (T): 1 file per proc 
     41   LOGICAL            ::   ln_mskland    = .FALSE.     !: mask land points in NetCDF outputs (costly: + ~15%) 
    4142   !!---------------------------------------------------------------------- 
    4243   !! was in restart but moved here because of the OFF line... better solution should be found... 
  • trunk/NEMO/OPA_SRC/TRD/trdmld.F90

    r1310 r1312  
    824824      ! II.1 Define frequency of output and means 
    825825      ! ----------------------------------------- 
     826      IF( ln_mskland )   THEN   ;   clop = "only(x)"   ! put 1.e+20 on land (very expensive!!) 
     827      ELSE                      ;   clop = "x"         ! no use of the mask value (require less cpu time) 
     828      ENDIF 
    826829#  if defined key_diainstant 
    827830      IF( .NOT. ln_trdmld_instant ) THEN 
     
    829832      END IF 
    830833      zsto = ntrd * rdt 
    831       clop ="inst(only(x))" 
     834      clop = "inst("//TRIM(clop)//")" 
    832835#  else 
    833836      IF( ln_trdmld_instant ) THEN 
     
    836839         zsto = ntrd * rdt          ! mean  diags : we DO NOT use any IOIPSL time averaging 
    837840      END IF 
    838       clop ="ave(only(x))" 
     841      clop = "ave("//TRIM(clop)//")" 
    839842#  endif 
    840843      zout = ntrd * rdt 
  • trunk/NEMO/OPA_SRC/TRD/trdvor.F90

    r1310 r1312  
    539539      ! II.1 Define frequency of output and means 
    540540      ! ----------------------------------------- 
     541      IF( ln_mskland )   THEN   ;   clop = "only(x)"   ! put 1.e+20 on land (very expensive!!) 
     542      ELSE                      ;   clop = "x"         ! no use of the mask value (require less cpu time) 
     543      ENDIF 
    541544#if defined key_diainstant 
    542545      zsto = nwrite*rdt 
    543       clop ="inst(x)" 
     546      clop = "inst("//TRIM(clop)//")" 
    544547#else 
    545548      zsto = rdt 
    546       clop ="ave(x)" 
     549      clop = "ave("//TRIM(clop)//")" 
    547550#endif 
    548551      zout = ntrd*rdt 
Note: See TracChangeset for help on using the changeset viewer.