Changeset 335 for trunk/NEMO/TOP_SRC/trcdtr.F90
- Timestamp:
- 2005-11-14T13:08:42+01:00 (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/NEMO/TOP_SRC/trcdtr.F90
r274 r335 61 61 !! ================== 62 62 INTEGER :: ji,jj,jk,jn 63 #if defined key_trc_pisces 63 64 REAL(wp) :: alka0,oxyg0,calc0,bioma0, & 64 silic1,po4,no3, & 65 caralk,bicarb, & 66 ztraa, ztrab, ztran 65 silic1,po4,no3,caralk,bicarb 66 #endif 67 67 !!--------------------------------------------------------------------- 68 68 !! OPA.9 … … 76 76 IF(lwp) WRITE(numout,*) ' ' 77 77 78 #if defined key_trc_hamocc3 79 sco2 = 2.15e-3 80 alka0 = 2.45e-3 81 oxyg0 = 2.e-4 82 po4 = 2.1e-6/po4r 83 bioma0 = 1.e-8 84 silic1 = 85.e-6 85 calc0 = 1.e-5 86 87 trn(:,:,:,jpdic) = sco2 88 trn(:,:,:,jptal) = alka0 89 trn(:,:,:,jpoxy) = oxyg0 90 trn(:,:,:,jppo4) = po4 91 trn(:,:,:,jppoc) = bioma0 92 trn(:,:,:,jpsil) = silic1 93 trn(:,:,:,jpcal) = calc0 94 #if defined key_trc_p3zd 95 trn(:,:,:,jpphy) = bioma0 96 trn(:,:,:,jpzoo) = bioma0 97 trn(:,:,:,jpdoc) = bioma0 98 #endif 99 100 DO jk = 1, jpk 101 DO jj = 1, jpj 102 DO ji = 1, jpi 103 caralk = trn(ji,jj,jk,jptal)- 104 & bor/(1.+1.E-7/akb3(ji,jj,jk)) 105 co3(ji,jj,jk) = caralk-trn(ji,jj,jk,jpdic) 106 bicarb = (2.*trn(ji,jj,jk,jpdic)-caralk) 107 hi(ji,jj,jk) = ak23(ji,jj,jk)*bicarb/co3(ji,jj,jk) 108 ENDDO 109 ENDDO 110 ENDDO 111 112 h2co3(:,:) = 1.e-5 113 114 !! initialize Silicate and Calcite in sediments 115 !! -------------------------------------------- 116 117 sedcal = 0. 118 sedsil = 0. 119 120 IF(lwp) WRITE(numout,*) 'Initialization of P3ZD tracers done' 121 IF(lwp) WRITE(numout,*) '-----------------------------------' 122 123 #elif defined key_cfc 78 79 #if defined key_cfc 124 80 trn(:,:,:,:)=0.0 125 #elif defined key_gosac126 trn(:,:,:,1)=1895.*1.e-6*1028.*tmask(:,:,:)127 trn(:,:,:,2)=0.9*1895.*1.e-6*1028.*tmask(:,:,:)128 129 #elif defined key_trc_age130 trn(:,:,:,1)=1.131 trn(:,:,:,2)=0.132 133 #elif defined key_trc_lobster1 && (defined key_eel_r6 || defined key_eel_r2)134 ! analytical initialisation used in Levy et al. (2001)135 136 DO jk=1,7137 trn(:,:,jk,jpdet)=0.016*tmask(:,:,jk)138 trn(:,:,jk,jpzoo)=0.018*tmask(:,:,jk)139 trn(:,:,jk,jpphy)=0.036*tmask(:,:,jk)140 trn(:,:,jk,jpno3)=1.e-5*tmask(:,:,jk)141 trn(:,:,jk,jpnh4)=0.0005*tmask(:,:,jk)142 trn(:,:,jk,jpdom)=0.017*tmask(:,:,jk)143 END DO144 145 trn(:,:,8,jpdet)=0.020*tmask(:,:,1)146 trn(:,:,8,jpzoo)=0.027*tmask(:,:,1)147 trn(:,:,8,jpphy)=0.041*tmask(:,:,1)148 trn(:,:,8,jpno3)=0.00022*tmask(:,:,1)149 trn(:,:,8,jpnh4)=0.0033*tmask(:,:,1)150 trn(:,:,8,jpdom)=0.021*tmask(:,:,1)151 152 trn(:,:,9,jpdet)=0.0556*tmask(:,:,1)153 trn(:,:,9,jpzoo)=0.123*tmask(:,:,1)154 trn(:,:,9,jpphy)=0.122*tmask(:,:,1)155 trn(:,:,9,jpno3)=0.028*tmask(:,:,1)156 trn(:,:,9,jpnh4)=0.024*tmask(:,:,1)157 trn(:,:,9,jpdom)=0.06*tmask(:,:,1)158 159 trn(:,:,10,jpdet)=0.025*tmask(:,:,1)160 trn(:,:,10,jpzoo)=0.016*tmask(:,:,1)161 trn(:,:,10,jpphy)=0.029*tmask(:,:,1)162 trn(:,:,10,jpno3)=2.462*tmask(:,:,1)163 trn(:,:,10,jpnh4)=0.04*tmask(:,:,1)164 trn(:,:,10,jpdom)=0.022*tmask(:,:,1)165 166 trn(:,:,11,jpdet)=0.0057*tmask(:,:,1)167 trn(:,:,11,jpzoo)=0.0005*tmask(:,:,1)168 trn(:,:,11,jpphy)=0.0006*tmask(:,:,1)169 trn(:,:,11,jpno3)=3.336*tmask(:,:,1)170 trn(:,:,11,jpnh4)=0.005*tmask(:,:,1)171 trn(:,:,11,jpdom)=0.004*tmask(:,:,1)172 173 trn(:,:,12,jpdet)=0.002*tmask(:,:,1)174 trn(:,:,12,jpzoo)=1.e-6*tmask(:,:,1)175 trn(:,:,12,jpphy)=5.e-6*tmask(:,:,1)176 trn(:,:,12,jpno3)=4.24*tmask(:,:,1)177 trn(:,:,12,jpnh4)=0.001*tmask(:,:,1)178 trn(:,:,12,jpdom)=3.e-5*tmask(:,:,1)179 180 DO jk=13,jpk181 trn(:,:,jk,jpdet)=0.0182 trn(:,:,jk,jpzoo)=0.0183 trn(:,:,jk,jpphy)=0.0184 trn(:,:,jk,jpnh4)=0.0185 trn(:,:,jk,jpdom)=0.0186 END DO187 188 trn(:,:,13,jpno3)=5.31*tmask(:,:,13)189 trn(:,:,14,jpno3)=6.73*tmask(:,:,14)190 trn(:,:,15,jpno3)=8.32*tmask(:,:,15)191 trn(:,:,16,jpno3)=10.13*tmask(:,:,16)192 trn(:,:,17,jpno3)=11.95*tmask(:,:,17)193 trn(:,:,18,jpno3)=13.57*tmask(:,:,18)194 trn(:,:,19,jpno3)=15.08*tmask(:,:,19)195 trn(:,:,20,jpno3)=16.41*tmask(:,:,20)196 trn(:,:,21,jpno3)=17.47*tmask(:,:,21)197 trn(:,:,22,jpno3)=18.29*tmask(:,:,22)198 trn(:,:,23,jpno3)=18.88*tmask(:,:,23)199 trn(:,:,24,jpno3)=19.30*tmask(:,:,24)200 trn(:,:,25,jpno3)=19.68*tmask(:,:,25)201 trn(:,:,26,jpno3)=19.91*tmask(:,:,26)202 trn(:,:,27,jpno3)=19.99*tmask(:,:,27)203 trn(:,:,28,jpno3)=20.01*tmask(:,:,28)204 trn(:,:,29,jpno3)=20.01*tmask(:,:,29)205 trn(:,:,30,jpno3)=20.01*tmask(:,:,30)206 207 81 #elif defined key_trc_pisces 208 82 … … 265 139 xksi(:,:)=2.E-6 266 140 267 !! initialize Silicate and Calcite in sediments268 !! -------------------------------------------- 141 !! initialize Silicate and Calcite and POC in sediments 142 !! --------------------------------------------------- 269 143 sedcal(:,:) = 0. 270 144 sedsil(:,:) = 0. 145 sedpoc(:,:) = 0. 271 146 272 147 IF(lwp) WRITE(numout,*) 'Initialization of PISCES tracers done' 273 148 IF(lwp) WRITE(numout,*) ' ' 149 150 #elif defined key_trc_lobster1 && ( defined key_eel_r6 || defined key_eel_r2 ) 151 ! analytical initialisation used in Levy et al. (2001) 152 153 DO jk=1,7 154 trn(:,:,jk,jpdet)=0.016*tmask(:,:,jk) 155 trn(:,:,jk,jpzoo)=0.018*tmask(:,:,jk) 156 trn(:,:,jk,jpphy)=0.036*tmask(:,:,jk) 157 trn(:,:,jk,jpno3)=1.e-5*tmask(:,:,jk) 158 trn(:,:,jk,jpnh4)=0.0005*tmask(:,:,jk) 159 trn(:,:,jk,jpdom)=0.017*tmask(:,:,jk) 160 END DO 161 162 trn(:,:,8,jpdet)=0.020*tmask(:,:,1) 163 trn(:,:,8,jpzoo)=0.027*tmask(:,:,1) 164 trn(:,:,8,jpphy)=0.041*tmask(:,:,1) 165 trn(:,:,8,jpno3)=0.00022*tmask(:,:,1) 166 trn(:,:,8,jpnh4)=0.0033*tmask(:,:,1) 167 trn(:,:,8,jpdom)=0.021*tmask(:,:,1) 168 169 trn(:,:,9,jpdet)=0.0556*tmask(:,:,1) 170 trn(:,:,9,jpzoo)=0.123*tmask(:,:,1) 171 trn(:,:,9,jpphy)=0.122*tmask(:,:,1) 172 trn(:,:,9,jpno3)=0.028*tmask(:,:,1) 173 trn(:,:,9,jpnh4)=0.024*tmask(:,:,1) 174 trn(:,:,9,jpdom)=0.06*tmask(:,:,1) 175 176 trn(:,:,10,jpdet)=0.025*tmask(:,:,1) 177 trn(:,:,10,jpzoo)=0.016*tmask(:,:,1) 178 trn(:,:,10,jpphy)=0.029*tmask(:,:,1) 179 trn(:,:,10,jpno3)=2.462*tmask(:,:,1) 180 trn(:,:,10,jpnh4)=0.04*tmask(:,:,1) 181 trn(:,:,10,jpdom)=0.022*tmask(:,:,1) 182 183 trn(:,:,11,jpdet)=0.0057*tmask(:,:,1) 184 trn(:,:,11,jpzoo)=0.0005*tmask(:,:,1) 185 trn(:,:,11,jpphy)=0.0006*tmask(:,:,1) 186 trn(:,:,11,jpno3)=3.336*tmask(:,:,1) 187 trn(:,:,11,jpnh4)=0.005*tmask(:,:,1) 188 trn(:,:,11,jpdom)=0.004*tmask(:,:,1) 189 190 trn(:,:,12,jpdet)=0.002*tmask(:,:,1) 191 trn(:,:,12,jpzoo)=1.e-6*tmask(:,:,1) 192 trn(:,:,12,jpphy)=5.e-6*tmask(:,:,1) 193 trn(:,:,12,jpno3)=4.24*tmask(:,:,1) 194 trn(:,:,12,jpnh4)=0.001*tmask(:,:,1) 195 trn(:,:,12,jpdom)=3.e-5*tmask(:,:,1) 196 197 DO jk=13,jpk 198 trn(:,:,jk,jpdet)=0.0 199 trn(:,:,jk,jpzoo)=0.0 200 trn(:,:,jk,jpphy)=0.0 201 trn(:,:,jk,jpnh4)=0.0 202 trn(:,:,jk,jpdom)=0.0 203 END DO 204 205 trn(:,:,13,jpno3)=5.31*tmask(:,:,13) 206 trn(:,:,14,jpno3)=6.73*tmask(:,:,14) 207 trn(:,:,15,jpno3)=8.32*tmask(:,:,15) 208 trn(:,:,16,jpno3)=10.13*tmask(:,:,16) 209 trn(:,:,17,jpno3)=11.95*tmask(:,:,17) 210 trn(:,:,18,jpno3)=13.57*tmask(:,:,18) 211 trn(:,:,19,jpno3)=15.08*tmask(:,:,19) 212 trn(:,:,20,jpno3)=16.41*tmask(:,:,20) 213 trn(:,:,21,jpno3)=17.47*tmask(:,:,21) 214 trn(:,:,22,jpno3)=18.29*tmask(:,:,22) 215 trn(:,:,23,jpno3)=18.88*tmask(:,:,23) 216 trn(:,:,24,jpno3)=19.30*tmask(:,:,24) 217 trn(:,:,25,jpno3)=19.68*tmask(:,:,25) 218 trn(:,:,26,jpno3)=19.91*tmask(:,:,26) 219 trn(:,:,27,jpno3)=19.99*tmask(:,:,27) 220 trn(:,:,28,jpno3)=20.01*tmask(:,:,28) 221 trn(:,:,29,jpno3)=20.01*tmask(:,:,29) 222 trn(:,:,30,jpno3)=20.01*tmask(:,:,30) 223 224 #elif defined key_trc_lobster1 && defined key_gyre 225 ! init NO3=f(density) by asklod AS Kremeur 2005-07 226 trn(:,:,:,jpdet)=0.1*tmask(:,:,:) 227 trn(:,:,:,jpzoo)=0.1*tmask(:,:,:) 228 trn(:,:,:,jpnh4)=0.1*tmask(:,:,:) 229 trn(:,:,:,jpphy)=0.1*tmask(:,:,:) 230 trn(:,:,:,jpdom)=1.*tmask(:,:,:) 231 DO jk=1,jpk 232 DO jj=1,jpj 233 DO ji=1,jpi 234 IF (rhd(ji,jj,jk).LE.24.5e-3) THEN 235 trn(ji,jj,jk,jpno3)=2.*tmask(ji,jj,jk) 236 ELSE 237 trn(ji,jj,jk,jpno3)=(13.24*(rhd(ji,jj,jk)*1000)-324.4)*tmask(ji,jj,jk) 238 ENDIF 239 END DO 240 END DO 241 END DO 274 242 275 243 #else … … 298 266 trb(:,:,:,:) = trn(:,:,:,:) 299 267 300 IF(lwp) WRITE(numout,*) ' ' 301 DO jn = 1, jptra 302 IF( ln_ctl .AND. lwp ) THEN ! print mean trends (used for debugging) 303 ztraa = SUM( tra(1:nictle,1:njctle,1:jpk,jn) * & 304 tmask(1:nictle,1:njctle,1:jpk) ) 305 ztrab = SUM( trb(1:nictle,1:njctle,1:jpk,jn) * & 306 tmask(1:nictle,1:njctle,1:jpk) ) 307 ztran = SUM( trn(1:nictle,1:njctle,1:jpk,jn) * & 308 tmask(1:nictle,1:njctle,1:jpk) ) 309 WRITE(numout,*) ' trcdtr - ',ctrcnm(jn), & 310 ' : ', ztraa, ' ', ztrab, ' ', ztran 311 ENDIF 312 END DO 313 268 #if defined key_trc_lobster1 314 269 !! initialize the POC in sediments 315 # if defined key_trc_npzd || defined key_trc_lobster1 || defined key_trc_hamocc3 || defined key_trc_pisces 316 317 sedpoc(:,:) = 0. 318 319 # endif 270 271 sedpocb(:,:) = 0. 272 sedpocn(:,:) = 0. 273 sedpoca(:,:) = 0. 274 #endif 275 320 276 END SUBROUTINE trc_dtr 321 277
Note: See TracChangeset
for help on using the changeset viewer.