- Timestamp:
- 2021-02-03T16:03:34+01:00 (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2021/dev_r14383_PISCES_NEWDEV_PISCO/src/TOP/PISCES/P4Z/p4zbio.F90
r13295 r14385 2 2 !!====================================================================== 3 3 !! *** MODULE p4zbio *** 4 !! TOP : PISCES bio-model 4 !! TOP : PISCES biogeochemical model 5 !! This module is for both PISCES and PISCES-QUOTA 5 6 !!====================================================================== 6 7 !! History : 1.0 ! 2004 (O. Aumont) Original code 7 8 !! 2.0 ! 2007-12 (C. Ethe, G. Madec) F90 9 !! 3.6 ! 2015 (O. Aumont) PISCES-QUOTA 8 10 !!---------------------------------------------------------------------- 9 11 !! p4z_bio : computes the interactions between the different … … 53 55 !! 54 56 !! ** Purpose : Ecosystem model in the whole ocean: computes the 55 !! different interactions between the different compartments56 !! of PISCES57 !! different interactions between the different compartments 58 !! of PISCES 57 59 !! 58 60 !! ** Method : - ??? … … 66 68 ! 67 69 IF( ln_timing ) CALL timing_start('p4z_bio') 68 !69 ! ASSIGN THE SHEAR RATE THAT IS USED FOR AGGREGATION70 ! OF PHYTOPLANKTON AND DETRITUS71 70 71 ! ASSIGN THE SHEAR RATE THAT IS USED FOR AGGREGATION 72 ! OF PHYTOPLANKTON AND DETRITUS. Shear rate is supposed to equal 1 73 ! in the mixed layer and 0.1 below the mixed layer. 72 74 xdiss(:,:,:) = 1. 73 !!gm the use of nmld should be better here?74 75 DO_3D( 1, 1, 1, 1, 2, jpkm1 ) 75 !!gm : use nmln and test on jk ... less memory acces76 76 IF( gdepw(ji,jj,jk+1,Kmm) > hmld(ji,jj) ) xdiss(ji,jj,jk) = 0.01 77 77 END_3D … … 81 81 CALL p4z_fechem ( kt, knt, Kbb, Kmm, Krhs ) ! Iron chemistry/scavenging 82 82 ! 83 IF( ln_p4z ) THEN 83 IF( ln_p4z ) THEN ! PISCES standard 84 ! Phytoplankton only sources/sinks terms 84 85 CALL p4z_lim ( kt, knt, Kbb, Kmm ) ! co-limitations by the various nutrients 85 86 CALL p4z_prod ( kt, knt, Kbb, Kmm, Krhs ) ! phytoplankton growth rate over the global ocean. 86 87 ! ! (for each element : C, Si, Fe, Chl ) 87 88 CALL p4z_mort ( kt, Kbb, Krhs ) ! phytoplankton mortality 88 ! !zooplankton sources/sinks routines89 ! zooplankton sources/sinks routines 89 90 CALL p4z_micro( kt, knt, Kbb, Krhs ) ! microzooplankton 90 CALL p4z_meso ( kt, knt, Kbb, Krhs ) ! mesozooplankton 91 ELSE 91 CALL p4z_meso ( kt, knt, Kbb, Kmm, Krhs ) ! mesozooplankton 92 ELSE ! PISCES-QUOTA 93 ! Phytoplankton only sources/sinks terms 92 94 CALL p5z_lim ( kt, knt, Kbb, Kmm ) ! co-limitations by the various nutrients 93 95 CALL p5z_prod ( kt, knt, Kbb, Kmm, Krhs ) ! phytoplankton growth rate over the global ocean. 94 96 ! ! (for each element : C, Si, Fe, Chl ) 95 97 CALL p5z_mort ( kt, Kbb, Krhs ) ! phytoplankton mortality 96 ! !zooplankton sources/sinks routines98 ! zooplankton sources/sinks routines 97 99 CALL p5z_micro( kt, knt, Kbb, Krhs ) ! microzooplankton 98 CALL p5z_meso ( kt, knt, Kbb, 100 CALL p5z_meso ( kt, knt, Kbb, Kmm, Krhs ) ! mesozooplankton 99 101 ENDIF 100 102 ! … … 103 105 CALL p4z_poc ( kt, knt, Kbb, Kmm, Krhs ) ! Remineralization of organic particles 104 106 ! 107 ! Ligand production. ln_ligand should be set .true. to activate 105 108 IF( ln_ligand ) & 106 109 & CALL p4z_ligand( kt, knt, Kbb, Krhs ) 110 111 ! Update of the size of the different phytoplankton groups 112 sized(:,:,:) = MAX(1.0, sizeda(:,:,:) ) 113 sizen(:,:,:) = MAX(1.0, sizena(:,:,:) ) 114 IF (ln_p5z) THEN 115 sizep(:,:,:) = MAX(1.0, sizepa(:,:,:) ) 116 ENDIF 107 117 ! ! 108 118 IF(sn_cfctl%l_prttrc) THEN ! print mean trends (used for debugging)
Note: See TracChangeset
for help on using the changeset viewer.