Changeset 7162 for branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/PISCES/trcini_pisces.F90
- Timestamp:
- 2016-11-01T14:23:51+01:00 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/PISCES/trcini_pisces.F90
r7097 r7162 38 38 !!---------------------------------------------------------------------- 39 39 40 IF( ln_p4z ) THEN ; CALL p4z_ini ! PISCES 41 ELSE ; CALL p2z_ini ! LOBSTER 40 ! 41 CALL trc_nam_pisces 42 ! 43 IF( ln_p4z .OR. ln_p5z ) THEN ; CALL p4z_ini ! PISCES 44 ELSE ; CALL p2z_ini ! LOBSTER 42 45 ENDIF 43 46 … … 66 69 USE p4zlys ! Calcite saturation 67 70 USE p4zsed ! Sedimentation & burial 71 USE p4zpoc ! Remineralization of organic particles 72 USE p4zligand ! Remineralization of organic ligands 73 USE p5zlim ! Co-limitations of differents nutrients 74 USE p5zprod ! Growth rate of the 2 phyto groups 75 USE p5zmicro ! Sources and sinks of microzooplankton 76 USE p5zmeso ! Sources and sinks of mesozooplankton 77 USE p5zmort ! Mortality terms for phytoplankton 78 68 79 ! 69 80 REAL(wp), SAVE :: sco2 = 2.312e-3_wp … … 82 93 !!---------------------------------------------------------------------- 83 94 84 IF(lwp) WRITE(numout,*) 85 IF(lwp) WRITE(numout,*) ' p4z_ini : PISCES biochemical model initialisation' 86 IF(lwp) WRITE(numout,*) ' ~~~~~~~~~~~~~~' 87 ! 88 CALL trc_nam_pisces 95 IF(lwp) THEN 96 WRITE(numout,*) 97 IF( ln_p4z ) THEN 98 WRITE(numout,*) ' p4z_ini : PISCES biochemical model initialisation' 99 ELSE 100 WRITE(numout,*) ' p5z_ini : PISCES biochemical model initialisation' 101 WRITE(numout,*) ' With variable stoichiometry' 102 ENDIF 103 WRITE(numout,*) ' ~~~~~~~~~~~~~~' 104 ENDIF 89 105 ! 90 106 ! Allocate PISCES arrays … … 93 109 ierr = ierr + p4z_sink_alloc() 94 110 ierr = ierr + p4z_opt_alloc() 95 ierr = ierr + p4z_prod_alloc()96 ierr = ierr + p4z_rem_alloc()97 111 ierr = ierr + p4z_flx_alloc() 98 112 ierr = ierr + p4z_sed_alloc() 113 ierr = ierr + p4z_rem_alloc() 114 IF( ln_p4z ) THEN 115 ierr = ierr + p4z_lim_alloc() 116 ierr = ierr + p4z_prod_alloc() 117 ELSE 118 ierr = ierr + p5z_lim_alloc() 119 ierr = ierr + p5z_prod_alloc() 120 ENDIF 99 121 ! 100 122 IF( lk_mpp ) CALL mpp_sum( ierr ) … … 132 154 IF( cltra == 'NO3' ) jpno3 = jn !: Nitrates Concentration 133 155 IF( cltra == 'NH4' ) jpnh4 = jn !: Ammonium Concentration 156 IF( cltra == 'DON' ) jpdon = jn !: Dissolved organic N Concentration 157 IF( cltra == 'DOP' ) jpdop = jn !: Dissolved organic P Concentration 158 IF( cltra == 'PON' ) jppon = jn !: Small Nitrogen particle Concentration 159 IF( cltra == 'POP' ) jppop = jn !: Small Phosphorus particle Concentration 160 IF( cltra == 'GON' ) jpgon = jn !: Big Nitrogen particles Concentration 161 IF( cltra == 'GOP' ) jpgop = jn !: Big Phosphorus Concentration 162 IF( cltra == 'PHYN' ) jpnph = jn !: Nanophytoplankton N biomass 163 IF( cltra == 'PHYP' ) jppph = jn !: Nanophytoplankton P biomass 164 IF( cltra == 'DIAN' ) jpndi = jn !: Diatoms N biomass 165 IF( cltra == 'DIAP' ) jppdi = jn !: Diatoms P biomass 166 IF( cltra == 'PIC' ) jppic = jn !: Picophytoplankton C biomass 167 IF( cltra == 'PICN' ) jpnpi = jn !: Picophytoplankton N biomass 168 IF( cltra == 'PICP' ) jpppi = jn !: Picophytoplankton P biomass 169 IF( cltra == 'PFe' ) jppfe = jn !: Picophytoplankton Fe biomass 170 IF( cltra == 'LFe' ) jplgw = jn !: Weak ligands 171 IF( cltra == 'FFe' ) jpfep = jn !: Fe nanoparticle 134 172 ENDDO 135 173 … … 145 183 rdenit = ( ( o2ut + o2nit ) * 0.80 - rno3 - rno3 * 0.60 ) / rno3 146 184 rdenita = 3._wp / 5._wp 147 185 IF( ln_p5z ) THEN 186 no3rat3 = no3rat3 / rno3 187 po4rat3 = po4rat3 / po4r 188 ENDIF 148 189 149 190 ! Initialization of tracer concentration in case of no restart … … 174 215 trn(:,:,:,jpno3) = no3 175 216 trn(:,:,:,jpnh4) = bioma0 176 217 IF( ln_ligand) THEN 218 trn(:,:,:,jplgw) = 0.6E-9 219 trn(:,:,:,jpfep) = 0. * 5.e-6 220 ENDIF 221 IF( ln_p5z ) THEN 222 trn(:,:,:,jpdon) = bioma0 223 trn(:,:,:,jpdop) = bioma0 224 trn(:,:,:,jppon) = bioma0 225 trn(:,:,:,jppop) = bioma0 226 trn(:,:,:,jpgon) = bioma0 227 trn(:,:,:,jpgop) = bioma0 228 trn(:,:,:,jpnph) = bioma0 229 trn(:,:,:,jppph) = bioma0 230 trn(:,:,:,jppic) = bioma0 231 trn(:,:,:,jpnpi) = bioma0 232 trn(:,:,:,jpppi) = bioma0 233 trn(:,:,:,jpndi) = bioma0 234 trn(:,:,:,jppdi) = bioma0 235 trn(:,:,:,jppfe) = bioma0 * 5.e-6 236 trn(:,:,:,jppch) = bioma0 * 12. / 55. 237 ENDIF 177 238 ! initialize the half saturation constant for silicate 178 239 ! ---------------------------------------------------- … … 182 243 183 244 184 CALL p4z_sink_init ! vertical flux of particulate organic matter 185 CALL p4z_opt_init ! Optic: PAR in the water column 186 CALL p4z_lim_init ! co-limitations by the various nutrients 187 CALL p4z_prod_init ! phytoplankton growth rate over the global ocean. 188 CALL p4z_sbc_init ! boundary conditions 189 CALL p4z_fechem_init ! Iron chemistry 190 CALL p4z_rem_init ! remineralisation 191 CALL p4z_mort_init ! phytoplankton mortality 192 CALL p4z_micro_init ! microzooplankton 193 CALL p4z_meso_init ! mesozooplankton 194 CALL p4z_lys_init ! calcite saturation 195 CALL p4z_flx_init ! gas exchange 245 CALL p4z_sink_init ! vertical flux of particulate organic matter 246 CALL p4z_opt_init ! Optic: PAR in the water column 247 IF( ln_p4z ) THEN 248 CALL p4z_lim_init ! co-limitations by the various nutrients 249 CALL p4z_prod_init ! phytoplankton growth rate over the global ocean. 250 ELSE 251 CALL p5z_lim_init ! co-limitations by the various nutrients 252 CALL p5z_prod_init ! phytoplankton growth rate over the global ocean. 253 ENDIF 254 CALL p4z_sbc_init ! boundary conditions 255 CALL p4z_fechem_init ! Iron chemistry 256 CALL p4z_rem_init ! remineralisation 257 CALL p4z_poc_init ! remineralisation of organic particles 258 IF( ln_ligand ) & 259 & CALL p4z_ligand_init ! remineralisation of organic ligands 260 261 IF( ln_p4z ) THEN 262 CALL p4z_mort_init ! phytoplankton mortality 263 CALL p4z_micro_init ! microzooplankton 264 CALL p4z_meso_init ! mesozooplankton 265 ELSE 266 CALL p5z_mort_init ! phytoplankton mortality 267 CALL p5z_micro_init ! microzooplankton 268 CALL p5z_meso_init ! mesozooplankton 269 ENDIF 270 CALL p4z_lys_init ! calcite saturation 271 IF( .NOT.l_co2cpl ) & 272 & CALL p4z_flx_init ! gas exchange 196 273 197 274 ndayflxtr = 0
Note: See TracChangeset
for help on using the changeset viewer.