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 3830 for branches/2012/dev_v3_4_STABLE_2012/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zmeso.F90 – NEMO

Ignore:
Timestamp:
2013-03-06T12:00:26+01:00 (11 years ago)
Author:
cetlod
Message:

v3.4 stable: bugfixes on mesozoo efficiency calculation, see ticket #1067

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2012/dev_v3_4_STABLE_2012/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zmeso.F90

    r3295 r3830  
    7474      REAL(wp) :: zfact   , zstep, zfood, zfoodlim 
    7575      REAL(wp) :: zepshert, zepsherv, zgrarsig, zgraztot, zgraztotf 
    76       REAL(wp) :: zgrarem2, zgrafer2, zgrapoc2, zprcaca, zmortz2, zgrasrat 
     76      REAL(wp) :: zgrarem2, zgrafer2, zgrapoc2, zprcaca, zmortz2, zmortzgoc, zgrasrat 
    7777#if defined key_kriest 
    7878      REAL znumpoc 
     
    9797               zstep     = xstep 
    9898# endif 
    99                zfact     = zstep * tgfunc(ji,jj,jk) * zcompam 
     99               zfact     = zstep * tgfunc2(ji,jj,jk) * zcompam 
    100100 
    101101               !  Respiration rates of both zooplankton 
     
    155155               zepshert  = epsher2 * MIN( 1., zncratio ) 
    156156               zepsherv  = zepshert * MIN( 1., zgrasrat / ferat3 ) 
    157                zgrarem2  = zgraztot * ( 1. - zepsherv - unass2 ) 
    158                zgrafer2  = zgraztot * MAX( 0. , ( 1. - unass2 ) * zgrasrat - ferat3 * zepshert )  
     157               zgrarem2  = zgraztot * ( 1. - zepsherv - unass2 ) + zrespz2  & 
     158               &    + ( 1. - zepsherv - unass2 ) /( 1. - zepsherv + rtrn) * ztortz2 
     159               zgrafer2  = zgraztot * MAX( 0. , ( 1. - unass2 ) * zgrasrat - ferat3 * zepsherv )    & 
     160               &    + ferat3 * ( zrespz2 + ( 1. - zepsherv - unass2 ) /( 1. - zepsherv + rtrn) * ztortz2 ) 
    159161               zgrapoc2  = zgraztot * unass2 
    160162 
     
    177179#endif 
    178180               zmortz2 = ztortz2 + zrespz2 
     181               zmortzgoc = unass2 / ( 1. - zepsherv + rtrn ) * ztortz2 
    179182               tra(ji,jj,jk,jpmes) = tra(ji,jj,jk,jpmes) - zmortz2 + zepsherv * zgraztot  
    180183               tra(ji,jj,jk,jpdia) = tra(ji,jj,jk,jpdia) - zgrazd 
     
    198201#if defined key_kriest 
    199202               znumpoc = trn(ji,jj,jk,jpnum) / ( trn(ji,jj,jk,jppoc) + rtrn ) 
    200                tra(ji,jj,jk,jppoc) = tra(ji,jj,jk,jppoc) + zmortz2 - zgrazpoc - zgrazffe 
     203               tra(ji,jj,jk,jppoc) = tra(ji,jj,jk,jppoc) + zmortzgoc - zgrazpoc - zgrazffe 
    201204               tra(ji,jj,jk,jpnum) = tra(ji,jj,jk,jpnum) - zgrazpoc * znumpoc & 
    202                   &    + zmortz2  * xkr_dmeso - zgrazffe * znumpoc * wsbio4(ji,jj,jk) / ( wsbio3(ji,jj,jk) + rtrn ) 
     205                  &    + zmortzgoc  * xkr_dmeso - zgrazffe * znumpoc * wsbio4(ji,jj,jk) / ( wsbio3(ji,jj,jk) + rtrn ) 
    203206               tra(ji,jj,jk,jpsfe) = tra(ji,jj,jk,jpsfe) + ferat3 * zmortz2 - zgrazfff - zgrazpof 
    204207#else 
    205208               tra(ji,jj,jk,jppoc) = tra(ji,jj,jk,jppoc) - zgrazpoc 
    206                tra(ji,jj,jk,jpgoc) = tra(ji,jj,jk,jpgoc) + zmortz2 - zgrazffe 
     209               tra(ji,jj,jk,jpgoc) = tra(ji,jj,jk,jpgoc) + zmortzgoc - zgrazffe 
    207210               tra(ji,jj,jk,jpsfe) = tra(ji,jj,jk,jpsfe) - zgrazpof 
    208                tra(ji,jj,jk,jpbfe) = tra(ji,jj,jk,jpbfe) + ferat3 * zmortz2 - zgrazfff 
     211               tra(ji,jj,jk,jpbfe) = tra(ji,jj,jk,jpbfe) + ferat3 * zmortzgoc - zgrazfff 
    209212#endif 
    210213 
Note: See TracChangeset for help on using the changeset viewer.