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 2457 for branches/nemo_v3_3_beta/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zprod.F90 – NEMO

Ignore:
Timestamp:
2010-12-07T10:51:47+01:00 (14 years ago)
Author:
cetlod
Message:

Improve TOP & OFF components in v3.3beta, see ticket #774

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/nemo_v3_3_beta/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zprod.F90

    r2287 r2457  
    2323 
    2424   USE lib_mpp 
     25   USE lib_fortran 
    2526 
    2627   IMPLICIT NONE 
     
    4950      texcret2                   ,  &  !: 1 - excret2         
    5051      tpp                              !: Total primary production 
    51  
    52    INTEGER  ::  nspyr                  !: number of timesteps per year 
    5352 
    5453   !!* Substitution 
     
    326325 
    327326     ! Total primary production per year 
    328      DO jk = 1, jpkm1 
    329         DO jj = 1, jpj 
    330           DO ji = 1, jpi 
    331              zvol = cvol(ji,jj,jk) 
     327 
    332328#if defined key_degrad 
    333              zvol = zvol * facvol(ji,jj,jk) 
     329     tpp = tpp + glob_sum( ( zprorca(:,:,:) + zprorcad(:,:,:) ) * cvol(:,:,:) * facvol(:,:,:) ) 
     330#else 
     331     tpp = tpp + glob_sum( ( zprorca(:,:,:) + zprorcad(:,:,:) ) * cvol(:,:,:) ) 
    334332#endif 
    335              tpp  = tpp + ( zprorca(ji,jj,jk) + zprorcad(ji,jj,jk) ) & 
    336                           * zvol * tmask(ji,jj,jk) * tmask_i(ji,jj) 
    337           END DO 
    338         END DO 
    339       END DO 
    340  
    341  
    342       IF( MOD( kt, nspyr ) == 0 .AND. jnt == nrdttrc ) THEN 
    343         IF( lk_mpp ) CALL mpp_sum( tpp ) 
    344         WRITE(numout,*) 'Total PP :' 
     333 
     334     IF( kt == nitend .AND. jnt == nrdttrc ) THEN 
     335        WRITE(numout,*) 'Total PP (Gtc) :' 
    345336        WRITE(numout,*) '-------------------- : ',tpp * 12. / 1.E12 
    346         WRITE(numout,*) '(GtC/yr)' 
    347         tpp = 0. 
     337        WRITE(numout,*)  
    348338      ENDIF 
    349339 
     
    418408      ENDIF 
    419409 
    420       ! number of timesteps per year 
    421       nspyr  = INT( nyear_len(1) * rday / rdt ) 
    422  
    423410      texcret   = 1.0 - excret 
    424411      texcret2  = 1.0 - excret2 
Note: See TracChangeset for help on using the changeset viewer.