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 3295 for trunk/NEMOGCM/NEMO – NEMO

Changeset 3295 for trunk/NEMOGCM/NEMO


Ignore:
Timestamp:
2012-01-30T16:49:07+01:00 (12 years ago)
Author:
cetlod
Message:

trunk:A few additional diagnostics added in PISCES

Location:
trunk/NEMOGCM/NEMO/TOP_SRC
Files:
1 added
12 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zlys.F90

    r3294 r3295  
    150150         IF( lk_iomput ) THEN 
    151151            zrfact2 = 1.e3 * rfact2r 
    152             CALL iom_put( "PH"    , hi      (:,:,:)           * tmask(:,:,:) ) 
    153             CALL iom_put( "CO3"   , zco3    (:,:,:)           * tmask(:,:,:) ) 
    154             CALL iom_put( "CO3sat", aksp    (:,:,:) / calcon  * tmask(:,:,:) ) 
     152            CALL iom_put( "PH"    , hi      (:,:,:)                  * tmask(:,:,:) ) 
     153            CALL iom_put( "CO3"   , zco3    (:,:,:) * 1e+3           * tmask(:,:,:) ) 
     154            CALL iom_put( "CO3sat", aksp    (:,:,:) * 1e+3 / calcon  * tmask(:,:,:) ) 
    155155            CALL iom_put( "DCAL"  , zcaldiss(:,:,:) * zrfact2 * tmask(:,:,:) ) 
    156156         ELSE 
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zmeso.F90

    r3294 r3295  
    183183               tra(ji,jj,jk,jpnch) = tra(ji,jj,jk,jpnch) - zgrazn * trn(ji,jj,jk,jpnch) / ( trn(ji,jj,jk,jpphy) + rtrn ) 
    184184               tra(ji,jj,jk,jpdch) = tra(ji,jj,jk,jpdch) - zgrazd * trn(ji,jj,jk,jpdch) / ( trn(ji,jj,jk,jpdia) + rtrn ) 
    185                tra(ji,jj,jk,jpbsi) = tra(ji,jj,jk,jpbsi) - zgrazd * trn(ji,jj,jk,jpbsi) / ( trn(ji,jj,jk,jpdia) + rtrn ) 
    186                tra(ji,jj,jk,jpdsi) = tra(ji,jj,jk,jpdsi) + zgrazd * trn(ji,jj,jk,jpbsi) / ( trn(ji,jj,jk,jpdia) + rtrn ) 
     185               tra(ji,jj,jk,jpdsi) = tra(ji,jj,jk,jpdsi) - zgrazd * trn(ji,jj,jk,jpdsi) / ( trn(ji,jj,jk,jpdia) + rtrn ) 
     186               tra(ji,jj,jk,jpgsi) = tra(ji,jj,jk,jpgsi) + zgrazd * trn(ji,jj,jk,jpdsi) / ( trn(ji,jj,jk,jpdia) + rtrn ) 
    187187               tra(ji,jj,jk,jpnfe) = tra(ji,jj,jk,jpnfe) - zgraznf 
    188188               tra(ji,jj,jk,jpdfe) = tra(ji,jj,jk,jpdfe) - zgrazf 
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zmicro.F90

    r3294 r3295  
    163163               tra(ji,jj,jk,jpnch) = tra(ji,jj,jk,jpnch) - zgrazp  * trn(ji,jj,jk,jpnch)/(trn(ji,jj,jk,jpphy)+rtrn) 
    164164               tra(ji,jj,jk,jpdch) = tra(ji,jj,jk,jpdch) - zgrazsd * trn(ji,jj,jk,jpdch)/(trn(ji,jj,jk,jpdia)+rtrn) 
    165                tra(ji,jj,jk,jpbsi) = tra(ji,jj,jk,jpbsi) - zgrazsd * trn(ji,jj,jk,jpbsi)/(trn(ji,jj,jk,jpdia)+rtrn) 
    166                tra(ji,jj,jk,jpdsi) = tra(ji,jj,jk,jpdsi) + zgrazsd * trn(ji,jj,jk,jpbsi)/(trn(ji,jj,jk,jpdia)+rtrn) 
     165               tra(ji,jj,jk,jpdsi) = tra(ji,jj,jk,jpdsi) - zgrazsd * trn(ji,jj,jk,jpdsi)/(trn(ji,jj,jk,jpdia)+rtrn) 
     166               tra(ji,jj,jk,jpgsi) = tra(ji,jj,jk,jpgsi) + zgrazsd * trn(ji,jj,jk,jpdsi)/(trn(ji,jj,jk,jpdia)+rtrn) 
    167167               tra(ji,jj,jk,jpnfe) = tra(ji,jj,jk,jpnfe) - zgrazpf 
    168168               tra(ji,jj,jk,jpdfe) = tra(ji,jj,jk,jpdfe) - zgrazsf 
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zmort.F90

    r3294 r3295  
    191191               zfactch = trn(ji,jj,jk,jpdch) / ( trn(ji,jj,jk,jpdia) + rtrn ) 
    192192               zfactfe = trn(ji,jj,jk,jpdfe) / ( trn(ji,jj,jk,jpdia) + rtrn ) 
    193                zfactsi = trn(ji,jj,jk,jpbsi) / ( trn(ji,jj,jk,jpdia) + rtrn ) 
     193               zfactsi = trn(ji,jj,jk,jpdsi) / ( trn(ji,jj,jk,jpdia) + rtrn ) 
    194194 
    195195               tra(ji,jj,jk,jpdia) = tra(ji,jj,jk,jpdia) - zmortp2  
    196196               tra(ji,jj,jk,jpdch) = tra(ji,jj,jk,jpdch) - zmortp2 * zfactch 
    197197               tra(ji,jj,jk,jpdfe) = tra(ji,jj,jk,jpdfe) - zmortp2 * zfactfe 
    198                tra(ji,jj,jk,jpbsi) = tra(ji,jj,jk,jpbsi) - zmortp2 * zfactsi 
    199                tra(ji,jj,jk,jpdsi) = tra(ji,jj,jk,jpdsi) + zmortp2 * zfactsi 
     198               tra(ji,jj,jk,jpdsi) = tra(ji,jj,jk,jpdsi) - zmortp2 * zfactsi 
     199               tra(ji,jj,jk,jpgsi) = tra(ji,jj,jk,jpgsi) + zmortp2 * zfactsi 
    200200#if defined key_kriest 
    201201               tra(ji,jj,jk,jppoc) = tra(ji,jj,jk,jppoc) + zmortp2   
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zprod.F90

    r3294 r3295  
    388388              tra(ji,jj,jk,jpdch) = tra(ji,jj,jk,jpdch) + zprochld(ji,jj,jk) * texcret2 
    389389              tra(ji,jj,jk,jpdfe) = tra(ji,jj,jk,jpdfe) + zprofed(ji,jj,jk) * texcret2 
    390               tra(ji,jj,jk,jpbsi) = tra(ji,jj,jk,jpbsi) + zprorcad(ji,jj,jk) * zysopt(ji,jj,jk) * texcret2 
     390              tra(ji,jj,jk,jpdsi) = tra(ji,jj,jk,jpdsi) + zprorcad(ji,jj,jk) * zysopt(ji,jj,jk) * texcret2 
    391391              tra(ji,jj,jk,jpdoc) = tra(ji,jj,jk,jpdoc) + excret2 * zprorcad(ji,jj,jk) + excret * zprorca(ji,jj,jk) 
    392392              tra(ji,jj,jk,jpoxy) = tra(ji,jj,jk,jpoxy) + o2ut * ( zproreg + zproreg2) & 
     
    412412     IF( ln_diatrc ) THEN 
    413413         ! 
    414          zrfact2 = 1.e3 * rfact2r 
     414         zrfact2 = 1.e3 * rfact2r  ! conversion from mol/L/timestep into mol/m3/s 
    415415         IF( lk_iomput ) THEN 
    416416           IF( jnt == nrdttrc ) THEN 
    417               CALL iom_put( "PPPHY" , zprorca (:,:,:) * zrfact2 * tmask(:,:,:) )  ! primary production by nanophyto 
    418               CALL iom_put( "PPPHY2", zprorcad(:,:,:) * zrfact2 * tmask(:,:,:) )  ! primary production by diatom 
    419               CALL iom_put( "PPNEWN", zpronew (:,:,:) * zrfact2 * tmask(:,:,:) )  ! new primary production by nanophyto 
    420               CALL iom_put( "PPNEWD", zpronewd(:,:,:) * zrfact2 * tmask(:,:,:) )  ! new primary production by diatom 
    421               CALL iom_put( "PBSi"  , zprorcad(:,:,:) * zrfact2 * tmask(:,:,:) * zysopt(:,:,:) ) ! biogenic silica production 
    422               CALL iom_put( "PFeD"  , zprofed (:,:,:) * zrfact2 * tmask(:,:,:) )  ! biogenic iron production by diatom 
    423               CALL iom_put( "PFeN"  , zprofen (:,:,:) * zrfact2 * tmask(:,:,:) )  ! biogenic iron production by nanophyto 
     417              CALL iom_put( "PPPHY"   , zprorca (:,:,:) * zrfact2 * tmask(:,:,:) )  ! primary production by nanophyto 
     418              CALL iom_put( "PPPHY2"  , zprorcad(:,:,:) * zrfact2 * tmask(:,:,:) )  ! primary production by diatom 
     419              CALL iom_put( "PPNEWN"  , zpronew (:,:,:) * zrfact2 * tmask(:,:,:) )  ! new primary production by nanophyto 
     420              CALL iom_put( "PPNEWD"  , zpronewd(:,:,:) * zrfact2 * tmask(:,:,:) )  ! new primary production by diatom 
     421              CALL iom_put( "PBSi"    , zprorcad(:,:,:) * zrfact2 * tmask(:,:,:) * zysopt(:,:,:) ) ! biogenic silica production 
     422              CALL iom_put( "PFeD"    , zprofed (:,:,:) * zrfact2 * tmask(:,:,:) )  ! biogenic iron production by diatom 
     423              CALL iom_put( "PFeN"    , zprofen (:,:,:) * zrfact2 * tmask(:,:,:) )  ! biogenic iron production by nanophyto 
     424              CALL iom_put( "Mumax"   , prmax   (:,:,:) * tmask(:,:,:) )  ! Maximum growth rate 
     425              CALL iom_put( "MuN"     , zprbio  (:,:,:) * xlimphy(:,:,:) * tmask(:,:,:) )  ! Realized growth rate for nanophyto 
     426              CALL iom_put( "MuD"     , zprdia  (:,:,:) * xlimdia(:,:,:) * tmask(:,:,:) )  ! Realized growth rate for diatoms 
     427              CALL iom_put( "MuNlight", zprbio  (:,:,:) * tmask(:,:,:) )  ! Light limited growth rate phytoplankton 
     428              CALL iom_put( "MuDlight", zprdia  (:,:,:) * tmask(:,:,:) )  ! Light limited growth rate diatoms 
     429              CALL iom_put( "LNnut"   , xlimphy (:,:,:) * tmask(:,:,:) )  ! Nutrient limitation term 
     430              CALL iom_put( "LDnut"   , xlimdia (:,:,:) * tmask(:,:,:) )  ! Nutrient limitation term 
     431              CALL iom_put( "LNFe"    , xlimnfe (:,:,:) * tmask(:,:,:) )  ! Iron limitation term 
     432              CALL iom_put( "LDFe"    , xlimdfe (:,:,:) * tmask(:,:,:) )  ! Iron limitation term 
     433              CALL iom_put( "LNlight" , zprbio  (:,:,:) / (prmax(:,:,:) + rtrn) * tmask(:,:,:) )  ! light limitation term 
     434              CALL iom_put( "LDlight" , zprdia  (:,:,:) / (prmax(:,:,:) + rtrn) * tmask(:,:,:) )  ! light limitation term 
    424435           ENDIF 
    425436         ELSE 
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zrem.F90

    r3294 r3295  
    281281               zfactdep = xsilab * EXP(-( xsiremlab - xsirem ) * zdep / wsbio2 ) 
    282282               zsiremin = ( xsiremlab * zfactdep + xsirem * ( 1. - zfactdep ) ) * zstep * znusil 
    283                zosil    = zsiremin * trn(ji,jj,jk,jpdsi) 
     283               zosil    = zsiremin * trn(ji,jj,jk,jpgsi) 
    284284               ! 
    285                tra(ji,jj,jk,jpdsi) = tra(ji,jj,jk,jpdsi) - zosil 
     285               tra(ji,jj,jk,jpgsi) = tra(ji,jj,jk,jpgsi) - zosil 
    286286               tra(ji,jj,jk,jpsil) = tra(ji,jj,jk,jpsil) + zosil 
    287287               ! 
     
    312312#if  defined key_kriest 
    313313               zdenom1 = trn(ji,jj,jk,jppoc) / & 
    314            &           ( trn(ji,jj,jk,jppoc) + trn(ji,jj,jk,jpdsi) + trn(ji,jj,jk,jpcal) + rtrn ) 
    315 #else 
    316                zdenom = 1. / ( trn(ji,jj,jk,jppoc) + trn(ji,jj,jk,jpgoc) + trn(ji,jj,jk,jpdsi) + trn(ji,jj,jk,jpcal) + rtrn ) 
     314           &           ( trn(ji,jj,jk,jppoc) + trn(ji,jj,jk,jpgsi) + trn(ji,jj,jk,jpcal) + rtrn ) 
     315#else 
     316               zdenom = 1. / ( trn(ji,jj,jk,jppoc) + trn(ji,jj,jk,jpgoc) + trn(ji,jj,jk,jpgsi) + trn(ji,jj,jk,jpcal) + rtrn ) 
    317317               zdenom1 = trn(ji,jj,jk,jppoc) * zdenom 
    318318               zdenom2 = trn(ji,jj,jk,jpgoc) * zdenom 
     
    328328#if defined key_kriest 
    329329               zlam1b = 3.e-5 + xlam1 * (  trn(ji,jj,jk,jppoc)                   & 
    330                   &                      + trn(ji,jj,jk,jpcal) + trn(ji,jj,jk,jpdsi)  ) * 1.e6 
     330                  &                      + trn(ji,jj,jk,jpcal) + trn(ji,jj,jk,jpgsi)  ) * 1.e6 
    331331#else 
    332332               zlam1b = 3.e-5 + xlam1 * (  trn(ji,jj,jk,jppoc) + trn(ji,jj,jk,jpgoc)   & 
    333                   &                      + trn(ji,jj,jk,jpcal) + trn(ji,jj,jk,jpdsi)  ) * 1.e6 
     333                  &                      + trn(ji,jj,jk,jpcal) + trn(ji,jj,jk,jpgsi)  ) * 1.e6 
    334334#endif 
    335335               zscave = zfeequi * zlam1b * zstep 
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zsed.F90

    r3294 r3295  
    160160            ikt = mbkt(ji,jj)  
    161161# if defined key_kriest 
    162             zwork1(ji,jj) = trn(ji,jj,ikt,jpdsi) * wscal (ji,jj,ikt) 
     162            zwork1(ji,jj) = trn(ji,jj,ikt,jpgsi) * wscal (ji,jj,ikt) 
    163163            zwork2(ji,jj) = trn(ji,jj,ikt,jppoc) * wsbio3(ji,jj,ikt) 
    164164# else 
    165             zwork1(ji,jj) = trn(ji,jj,ikt,jpdsi) * wsbio4(ji,jj,ikt) 
     165            zwork1(ji,jj) = trn(ji,jj,ikt,jpgsi) * wsbio4(ji,jj,ikt) 
    166166            zwork2(ji,jj) = trn(ji,jj,ikt,jpgoc) * wsbio4(ji,jj,ikt) + trn(ji,jj,ikt,jppoc) * wsbio3(ji,jj,ikt)  
    167167# endif 
     
    194194            zwscal  = wscal (ji,jj,ikt) * zdep 
    195195# if defined key_kriest 
    196             zsiloss = trn(ji,jj,ikt,jpdsi) * zwsbio4 
     196            zsiloss = trn(ji,jj,ikt,jpgsi) * zwsbio4 
    197197# else 
    198             zsiloss = trn(ji,jj,ikt,jpdsi) * zwscal 
     198            zsiloss = trn(ji,jj,ikt,jpgsi) * zwscal 
    199199# endif 
    200200            zcaloss = trn(ji,jj,ikt,jpcal) * zwscal 
    201201            ! 
    202             trn(ji,jj,ikt,jpdsi) = trn(ji,jj,ikt,jpdsi) - zsiloss 
     202            trn(ji,jj,ikt,jpgsi) = trn(ji,jj,ikt,jpgsi) - zsiloss 
    203203            trn(ji,jj,ikt,jpcal) = trn(ji,jj,ikt,jpcal) - zcaloss 
    204204#if ! defined key_sed 
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zsink.F90

    r3294 r3295  
    156156      CALL p4z_sink2( wsbio4, sinking2, jpnum ) 
    157157      CALL p4z_sink2( wsbio3, sinkfer , jpsfe ) 
    158       CALL p4z_sink2( wscal , sinksil , jpdsi ) 
     158      CALL p4z_sink2( wscal , sinksil , jpgsi ) 
    159159      CALL p4z_sink2( wscal , sinkcal , jpcal ) 
    160160 
     
    512512      CALL p4z_sink2( wsbio4, sinking2, jpgoc ) 
    513513      CALL p4z_sink2( wsbio4, sinkfer2, jpbfe ) 
    514       CALL p4z_sink2( wsbio4, sinksil , jpdsi ) 
     514      CALL p4z_sink2( wsbio4, sinksil , jpgsi ) 
    515515      CALL p4z_sink2( wscal , sinkcal , jpcal ) 
    516516 
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/par_pisces.F90

    r3294 r3295  
    4848   INTEGER, PUBLIC, PARAMETER ::   jpdia = jp_lp + 11    !: Diatoms Concentration 
    4949   INTEGER, PUBLIC, PARAMETER ::   jpmes = jp_lp + 12    !: Mesozooplankton Concentration 
    50    INTEGER, PUBLIC, PARAMETER ::   jpbsi = jp_lp + 13    !: (big) Silicate Concentration 
     50   INTEGER, PUBLIC, PARAMETER ::   jpdsi = jp_lp + 13    !: (big) Silicate Concentration 
    5151   INTEGER, PUBLIC, PARAMETER ::   jpfer = jp_lp + 14    !: Iron Concentration 
    5252   INTEGER, PUBLIC, PARAMETER ::   jpnum = jp_lp + 15    !: Big iron particles Concentration 
    5353   INTEGER, PUBLIC, PARAMETER ::   jpsfe = jp_lp + 16    !: number of particulate organic phosphate concentration 
    5454   INTEGER, PUBLIC, PARAMETER ::   jpdfe = jp_lp + 17    !: Diatoms iron Concentration 
    55    INTEGER, PUBLIC, PARAMETER ::   jpdsi = jp_lp + 18    !: Diatoms Silicate Concentration 
     55   INTEGER, PUBLIC, PARAMETER ::   jpgsi = jp_lp + 18    !: Diatoms Silicate Concentration 
    5656   INTEGER, PUBLIC, PARAMETER ::   jpnfe = jp_lp + 19    !: Nano iron Concentration 
    5757   INTEGER, PUBLIC, PARAMETER ::   jpnch = jp_lp + 20    !: Nano Chlorophyll Concentration 
     
    8686   INTEGER, PUBLIC, PARAMETER ::   jpdia = jp_lp + 11    !: Diatoms Concentration 
    8787   INTEGER, PUBLIC, PARAMETER ::   jpmes = jp_lp + 12    !: Mesozooplankton Concentration 
    88    INTEGER, PUBLIC, PARAMETER ::   jpbsi = jp_lp + 13    !: (big) Silicate Concentration 
     88   INTEGER, PUBLIC, PARAMETER ::   jpdsi = jp_lp + 13    !: (big) Silicate Concentration 
    8989   INTEGER, PUBLIC, PARAMETER ::   jpfer = jp_lp + 14    !: Iron Concentration 
    9090   INTEGER, PUBLIC, PARAMETER ::   jpbfe = jp_lp + 15    !: Big iron particles Concentration 
     
    9292   INTEGER, PUBLIC, PARAMETER ::   jpsfe = jp_lp + 17    !: Small iron particles Concentration 
    9393   INTEGER, PUBLIC, PARAMETER ::   jpdfe = jp_lp + 18    !: Diatoms iron Concentration 
    94    INTEGER, PUBLIC, PARAMETER ::   jpdsi = jp_lp + 19    !: Diatoms Silicate Concentration 
     94   INTEGER, PUBLIC, PARAMETER ::   jpgsi = jp_lp + 19    !: Diatoms Silicate Concentration 
    9595   INTEGER, PUBLIC, PARAMETER ::   jpnfe = jp_lp + 20    !: Nano iron Concentration 
    9696   INTEGER, PUBLIC, PARAMETER ::   jpnch = jp_lp + 21    !: Nano Chlorophyll Concentration 
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/trcini_pisces.F90

    r3294 r3295  
    112112#  endif 
    113113         trn(:,:,:,jpsil) = silic1 
    114          trn(:,:,:,jpbsi) = bioma0 * 0.15 
    115          trn(:,:,:,jpdsi) = bioma0 * 5.e-6 
     114         trn(:,:,:,jpdsi) = bioma0 * 0.15 
     115         trn(:,:,:,jpgsi) = bioma0 * 5.e-6 
    116116         trn(:,:,:,jpphy) = bioma0 
    117117         trn(:,:,:,jpdia) = bioma0 
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/trcsms_pisces.F90

    r3294 r3295  
    207207            &                     + trn(:,:,:,jpdoc)                     ) * cvol(:,:,:)  )  
    208208         !  
    209          zsilbudget = glob_sum( (   trn(:,:,:,jpsil) + trn(:,:,:,jpdsi)  & 
    210             &                     + trn(:,:,:,jpbsi)                     ) * cvol(:,:,:)  ) 
     209         zsilbudget = glob_sum( (   trn(:,:,:,jpsil) + trn(:,:,:,jpgsi)  & 
     210            &                     + trn(:,:,:,jpdsi)                     ) * cvol(:,:,:)  ) 
    211211         !  
    212212         zalkbudget = glob_sum( (   trn(:,:,:,jpno3) * rno3              & 
  • trunk/NEMOGCM/NEMO/TOP_SRC/trcwri.F90

    r3294 r3295  
    1717   USE iom         ! I/O manager 
    1818   USE dianam      ! Output file name 
     19   USE trcwri_pisces 
    1920 
    2021   IMPLICIT NONE 
     
    6869      ! write the tracer concentrations in the file 
    6970      ! --------------------------------------- 
    70       DO jn = 1, jptra 
    71          cltra = TRIM( ctrcnm(jn) )                  ! short title for tracer 
    72          CALL iom_put( cltra, trn(:,:,:,jn) ) 
    73       END DO 
     71      IF( lk_pisces )  THEN 
     72         CALL trc_wri_pisces 
     73      ELSE 
     74         DO jn = 1, jptra 
     75            cltra = TRIM( ctrcnm(jn) )                  ! short title for tracer 
     76            CALL iom_put( cltra, trn(:,:,:,jn) ) 
     77         END DO 
     78      ENDIF 
    7479      ! 
    7580   END SUBROUTINE trc_wri_trc 
Note: See TracChangeset for help on using the changeset viewer.