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.
p4zdiat.F in trunk/NEMO/TOP_SRC/SMS – NEMO

source: trunk/NEMO/TOP_SRC/SMS/p4zdiat.F @ 247

Last change on this file since 247 was 247, checked in by opalod, 19 years ago

CL : Add CVS Header and CeCILL licence information

  • Property svn:eol-style set to native
  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 3.4 KB
Line 
1
2CCC $Header$ 
3CCC  TOP 1.0 , LOCEAN-IPSL (2005) 
4C This software is governed by CeCILL licence see modipsl/doc/NEMO_CeCILL.txt 
5C ---------------------------------------------------------------------------
6CDIR$ LIST
7      SUBROUTINE p4zdiat
8#if defined key_passivetrc && defined key_trc_pisces
9CCC---------------------------------------------------------------------
10CCC
11CCC           ROUTINE p4zdiat : PISCES MODEL
12CCC           ******************************
13CCC
14CCC  PURPOSE :
15CCC  ---------
16CCC         Compute the mortality terms for diatoms
17CCC
18CC   INPUT :
19CC   -----
20CC      argument
21CC              None
22CC      common
23CC              all the common defined in opa
24CC
25CC
26CC   OUTPUT :                   : no
27CC   ------
28CC
29CC   EXTERNAL :
30CC   --------
31CC           None
32CC
33CC   MODIFICATIONS:
34CC   --------------
35CC      original  : O. Aumont (2002)
36CC----------------------------------------------------------------------
37CC parameters and commons
38CC ======================
39CDIR$ NOLIST
40      USE oce_trc
41      USE trp_trc
42      USE sms
43      IMPLICIT NONE
44CDIR$ LIST
45CC----------------------------------------------------------------------
46CC local declarations
47CC ==================
48      INTEGER ji, jj, jk
49      REAL compadi
50      REAL wchl2n(jpi,jpj,jpk)
51
52
53C    Aggregation term for diatoms is increased in case of nutrient
54C    stress as observed in reality. The stressed cells become more
55C    sticky and coagulate to sink quickly out of the euphotic zone
56C     ------------------------------------------------------------
57C
58        DO jk = 1,jpkm1
59          DO jj = 1,jpj
60            DO ji = 1,jpi
61        wchl2n(ji,jj,jk)=wchl+0.02*(1.-min(trn(ji,jj,jk,jppo4)/conc1,
62     &           trn(ji,jj,jk,jpfer)/conc3,trn(ji,jj,jk,jpsil)
63     &           /(xksi(ji,jj)+rtrn),trn(ji,jj,jk,jpno3)/conc1,1.))
64            END DO
65          END DO
66        END DO
67
68        DO jk = 1,jpkm1
69          DO jj = 1,jpj
70            DO ji = 1,jpi
71C
72        compadi = max((trn(ji,jj,jk,jpdia)-1E-8),0.)
73C
74C    Aggregation term for diatoms is increased in case of nutrient
75C    stress as observed in reality. The stressed cells become more
76C    sticky and coagulate to sink quickly out of the euphotic zone
77C     ------------------------------------------------------------
78C
79        respp2(ji,jj,jk) = rfact2*1E6/rjjss*wchl2n(ji,jj,jk)
80     &    *zdiss(ji,jj,jk)*compadi*trn(ji,jj,jk,jpdia)*tmask(ji,jj,jk)
81#    if defined key_off_degrad
82     &    *facvol(ji,jj,jk)
83#    endif
84
85        respds(ji,jj,jk) = respp2(ji,jj,jk)
86     &    *trn(ji,jj,jk,jpbsi)/(trn(ji,jj,jk,jpdia)+rtrn)
87
88        respdf(ji,jj,jk) = respp2(ji,jj,jk)
89     &    *trn(ji,jj,jk,jpdfe)/(trn(ji,jj,jk,jpdia)+rtrn)
90
91        respdch(ji,jj,jk)=respp2(ji,jj,jk)
92     &    *trn(ji,jj,jk,jpdch)/(trn(ji,jj,jk,jpdia)+rtrn)
93C
94C     Phytoplankton mortality. 
95C     ------------------------
96C
97        tortp2(ji,jj,jk) = mprat2*rfact2/rjjss*trn(ji,jj,jk,jpdia)
98     &    /(xkmort+trn(ji,jj,jk,jpdia))*compadi*tmask(ji,jj,jk)
99#    if defined key_off_degrad
100     &    *facvol(ji,jj,jk)
101#    endif
102
103        tortds(ji,jj,jk) = tortp2(ji,jj,jk)
104     &    *trn(ji,jj,jk,jpbsi)/(trn(ji,jj,jk,jpdia)+rtrn)
105
106        tortdf(ji,jj,jk)=tortp2(ji,jj,jk)
107     &    *trn(ji,jj,jk,jpdfe)/(trn(ji,jj,jk,jpdia)+rtrn)
108
109        tortdch(ji,jj,jk)=tortp2(ji,jj,jk)
110     &    *trn(ji,jj,jk,jpdch)/(trn(ji,jj,jk,jpdia)+rtrn)
111C
112            END DO
113          END DO
114        END DO
115C
116#endif
117      RETURN
118      END
119
Note: See TracBrowser for help on using the repository browser.