- Timestamp:
- 2013-05-03T14:35:21+02:00 (11 years ago)
- Location:
- branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC
- Files:
-
- 28 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/C14b/trcnam_c14b.F90
r3875 r3901 55 55 NAMELIST/namc14dia/ c14dia2d, c14dia3d ! additional diagnostics 56 56 !!------------------------------------------------------------------- 57 58 ndate_beg_b = 650101 ! default namelist value59 nyear_res_b = 195560 61 57 ! ! Open namelist file 62 58 CALL ctl_opn( numnatb_ref, 'namelist_c14b_ref' , 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) … … 85 81 ! Namelist namc14dia 86 82 ! ------------------- 87 DO jl = 1, jp_c14b_2d88 WRITE(c14dia2d(jl)%sname,'("2D_",I1)') jl ! short name89 WRITE(c14dia2d(jl)%lname,'("2D DIAGNOSTIC NUMBER ",I2)') jl ! long name90 c14dia2d(jl)%units = ' ' ! units91 END DO92 ! ! 3D output arrays93 DO jl = 1, jp_c14b_3d94 WRITE(c14dia3d(jl)%sname,'("3D_",I1)') jl ! short name95 WRITE(c14dia3d(jl)%lname,'("3D DIAGNOSTIC NUMBER ",I2)') jl ! long name96 c14dia3d(jl)%units = ' ' ! units97 END DO98 99 83 REWIND( numnatb_ref ) ! Namelist namc14dia in reference namelist : c14b diagnostics 100 84 READ ( numnatb_ref, namc14dia, IOSTAT = ios, ERR = 903) -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/C14b/trcsms_c14b.F90
r3680 r3901 307 307 CALL wrk_dealloc( jpi, jpj, jpk, zdecay ) 308 308 ! 309 IF ( kt == nittrc000 ) CALL FLUSH ( numonb ) ! flush output namelist C14b 309 310 IF( nn_timing == 1 ) CALL timing_stop('trc_sms_c14b') 310 311 ! -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/CFC/trcnam_cfc.F90
r3875 r3901 51 51 NAMELIST/namcfcdate/ ndate_beg, nyear_res 52 52 NAMELIST/namcfcdia/ cfcdia2d ! additional diagnostics 53 !!------------------------------------------------------------------- 54 55 ndate_beg = 300101 ! default namelist value 56 nyear_res = 1950 57 53 !!---------------------------------------------------------------------- 58 54 ! ! Open namelist files 59 55 CALL ctl_opn( numnatc_ref, 'namelist_cfc_ref' , 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) … … 85 81 ! Namelist namcfcdia 86 82 ! ------------------- 87 DO jl = 1, jp_cfc_2d88 WRITE(cfcdia2d(jl)%sname,'("2D_",I1)') jl ! short name89 WRITE(cfcdia2d(jl)%lname,'("2D DIAGNOSTIC NUMBER ",I2)') jl ! long name90 cfcdia2d(jl)%units = ' ' ! units91 END DO92 93 83 REWIND( numnatc_ref ) ! Namelist namcfcdia in reference namelist : CFC diagnostics 94 84 READ ( numnatc_ref, namcfcdia, IOSTAT = ios, ERR = 903) -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/CFC/trcsms_cfc.F90
r3680 r3901 205 205 END IF 206 206 ! 207 IF ( kt == nittrc000 ) CALL FLUSH ( numonc ) ! flush output namelist CFC 207 208 IF( nn_timing == 1 ) CALL timing_stop('trc_sms_cfc') 208 209 ! -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P2Z/p2zbio.F90
r3875 r3901 31 31 PUBLIC p2z_bio_init ! called in ??? 32 32 33 REAL(wp) :: tmumax = 1.21e-5! maximal phytoplankton growth rate [s-1]34 REAL(wp) :: rgamma = 0.05! phytoplankton exudation fraction [%]35 REAL(wp) :: fphylab = 0.75! NH4 fraction of phytoplankton exsudation36 REAL(wp) :: tmminp = 5.8e-7! minimal phytoplancton mortality rate [0.05/86400 s-1=20 days]37 REAL(wp) :: aki = 33.! light photosynthesis half saturation constant[W/m2]33 REAL(wp) :: tmumax ! maximal phytoplankton growth rate [s-1] 34 REAL(wp) :: rgamma ! phytoplankton exudation fraction [%] 35 REAL(wp) :: fphylab ! NH4 fraction of phytoplankton exsudation 36 REAL(wp) :: tmminp ! minimal phytoplancton mortality rate [0.05/86400 s-1=20 days] 37 REAL(wp) :: aki ! light photosynthesis half saturation constant[W/m2] 38 38 ! 39 REAL(wp) :: akno3 = 0.7! nitrate limitation half-saturation value [mmol/m3]40 REAL(wp) :: aknh4 = 0.001! ammonium limitation half-saturation value [mmol/m3]41 REAL(wp) :: taunn = 5.80e-7! nitrification rate [s-1]42 REAL(wp) :: psinut = 3.! inhibition of nitrate uptake by ammonium39 REAL(wp) :: akno3 ! nitrate limitation half-saturation value [mmol/m3] 40 REAL(wp) :: aknh4 ! ammonium limitation half-saturation value [mmol/m3] 41 REAL(wp) :: taunn ! nitrification rate [s-1] 42 REAL(wp) :: psinut ! inhibition of nitrate uptake by ammonium 43 43 ! 44 REAL(wp) :: taudn = 5.80e-7! detritus breakdown rate [0.1/86400 s-1=10 days]45 REAL(wp) :: fdetlab = 0.! NH4 fraction of detritus dissolution44 REAL(wp) :: taudn ! detritus breakdown rate [0.1/86400 s-1=10 days] 45 REAL(wp) :: fdetlab ! NH4 fraction of detritus dissolution 46 46 ! 47 REAL(wp) :: taudomn = 6.43e-8! DOM breakdown rate [s-1]48 ! 47 REAL(wp) :: taudomn ! DOM breakdown rate [s-1] 48 ! ! slow remineralization rate of semi-labile dom to nh4 (1 month) 49 49 ! 50 REAL(wp) :: rppz = 0.! ivlev coeff for zoo mortality51 REAL(wp) :: taus = 9.26E-6! specific zooplankton maximal grazing rate [s-1]50 REAL(wp) :: rppz ! ivlev coeff for zoo mortality 51 REAL(wp) :: taus ! specific zooplankton maximal grazing rate [s-1] 52 52 ! ! 0.75/86400 s-1=8.680555E-6 1/86400 = 1.15e-5 53 REAL(wp) :: aks = 1.! half-saturation constant for total zooplankton grazing [mmolN.m-3]54 REAL(wp) :: rpnaz = 0.3! non-assimilated phytoplankton by zooplancton [%]55 REAL(wp) :: rdnaz = 0.3! non-assimilated detritus by zooplankton [%]56 REAL(wp) :: tauzn = 8.1e-7! zooplancton specific excretion rate [0.1/86400 s-1=10 days]57 REAL(wp) :: tmminz = 2.31e-6! minimal zooplankton mortality rate [(mmolN/m3)-1 d-1]58 REAL(wp) :: fzoolab = 0.5! NH4 fraction of zooplankton excretion59 REAL(wp) :: fdbod = 0.5! zooplankton mortality fraction that goes to detritus53 REAL(wp) :: aks ! half-saturation constant for total zooplankton grazing [mmolN.m-3] 54 REAL(wp) :: rpnaz ! non-assimilated phytoplankton by zooplancton [%] 55 REAL(wp) :: rdnaz ! non-assimilated detritus by zooplankton [%] 56 REAL(wp) :: tauzn ! zooplancton specific excretion rate [0.1/86400 s-1=10 days] 57 REAL(wp) :: tmminz ! minimal zooplankton mortality rate [(mmolN/m3)-1 d-1] 58 REAL(wp) :: fzoolab ! NH4 fraction of zooplankton excretion 59 REAL(wp) :: fdbod ! zooplankton mortality fraction that goes to detritus 60 60 61 61 !!* Substitution -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P2Z/p2zopt.F90
r3875 r3901 28 28 PUBLIC p2z_opt_init ! 29 29 30 REAL(wp), PUBLIC :: xkr0 = 0.0232_wp!: water coefficient absorption in red31 REAL(wp), PUBLIC :: xkg0 = 0.225_wp!: water coefficient absorption in green32 REAL(wp), PUBLIC :: xkrp = 0.074_wp!: pigment coefficient absorption in red33 REAL(wp), PUBLIC :: xkgp = 0.037_wp!: pigment coefficient absorption in green34 REAL(wp), PUBLIC :: xlr = 0.674_wp!: exposant for pigment absorption in red35 REAL(wp), PUBLIC :: xlg = 0.629_wp!: exposant for pigment absorption in green36 REAL(wp), PUBLIC :: rpig = 0.7_wp!: chla/chla+phea ratio30 REAL(wp), PUBLIC :: xkr0 !: water coefficient absorption in red 31 REAL(wp), PUBLIC :: xkg0 !: water coefficient absorption in green 32 REAL(wp), PUBLIC :: xkrp !: pigment coefficient absorption in red 33 REAL(wp), PUBLIC :: xkgp !: pigment coefficient absorption in green 34 REAL(wp), PUBLIC :: xlr !: exposant for pigment absorption in red 35 REAL(wp), PUBLIC :: xlg !: exposant for pigment absorption in green 36 REAL(wp), PUBLIC :: rpig !: chla/chla+phea ratio 37 37 ! 38 REAL(wp), PUBLIC :: rcchl = 60_wp! Carbone/Chlorophyl ratio [mgC.mgChla-1]39 REAL(wp), PUBLIC :: redf = 6.56_wp! redfield ratio (C:N) for phyto40 REAL(wp), PUBLIC :: reddom = 6.56_wp! redfield ratio (C:N) for DOM38 REAL(wp), PUBLIC :: rcchl ! Carbone/Chlorophyl ratio [mgC.mgChla-1] 39 REAL(wp), PUBLIC :: redf ! redfield ratio (C:N) for phyto 40 REAL(wp), PUBLIC :: reddom ! redfield ratio (C:N) for DOM 41 41 42 42 !!* Substitution -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P2Z/p2zsed.F90
r3875 r3901 29 29 PUBLIC p2z_sed_init ! called in ??? 30 30 31 REAL(wp), PUBLIC :: sedlam = 3.86e-7!: time coefficient of POC remineralization in sediments32 REAL(wp), PUBLIC :: sedlostpoc = 0.! mass of POC lost in sediments33 REAL(wp), PUBLIC :: vsed = 3.47e-5! detritus sedimentation speed [m/s]34 REAL(wp), PUBLIC :: xhr = -0.858! coeff for martin''s remineralisation profile31 REAL(wp), PUBLIC :: sedlam !: time coefficient of POC remineralization in sediments 32 REAL(wp), PUBLIC :: sedlostpoc ! mass of POC lost in sediments 33 REAL(wp), PUBLIC :: vsed ! detritus sedimentation speed [m/s] 34 REAL(wp), PUBLIC :: xhr ! coeff for martin''s remineralisation profile 35 35 36 36 !!* Substitution -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P2Z/p2zsms.F90
r3443 r3901 15 15 USE oce_trc ! 16 16 USE trc 17 USE sms_pisces 17 18 USE p2zbio 18 19 USE p2zopt … … 66 67 IF( lk_trdmld_trc ) CALL trd_mld_bio( kt ) ! trends: Mixed-layer 67 68 ! 69 IF ( kt == nittrc000 ) CALL FLUSH ( numonp ) ! flush output namelist PISCES 68 70 IF( nn_timing == 1 ) CALL timing_stop('p2z_sms') 69 71 ! -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zfechem.F90
r3875 r3901 31 31 32 32 !! * Shared module variables 33 LOGICAL :: ln_fechem = .FALSE.!: boolean for complex iron chemistry following Tagliabue and voelker34 LOGICAL :: ln_ligvar = .FALSE.!: boolean for variable ligand concentration following Tagliabue and voelker35 REAL(wp), PUBLIC :: xlam1 = 0.005_wp!: scavenging rate of Iron36 REAL(wp), PUBLIC :: xlamdust = 150.0_wp!: scavenging rate of Iron by dust37 REAL(wp), PUBLIC :: ligand = 0.6E-9_wp!: ligand concentration in the ocean33 LOGICAL :: ln_fechem !: boolean for complex iron chemistry following Tagliabue and voelker 34 LOGICAL :: ln_ligvar !: boolean for variable ligand concentration following Tagliabue and voelker 35 REAL(wp), PUBLIC :: xlam1 !: scavenging rate of Iron 36 REAL(wp), PUBLIC :: xlamdust !: scavenging rate of Iron by dust 37 REAL(wp), PUBLIC :: ligand !: ligand concentration in the ocean 38 38 39 39 REAL(wp) :: kl1, kl2, kb1, kb2, ks, kpr, spd, con, kth -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zflx.F90
r3875 r3901 37 37 PUBLIC p4z_flx_alloc 38 38 39 ! 40 REAL(wp) :: atcco2 = 278._wp!: pre-industrial atmospheric [co2] (ppm)41 LOGICAL :: ln_co2int = .FALSE.!: flag to read in a file and interpolate atmospheric pco2 or not42 CHARACTER(len=34) :: clname = 'atcco2.txt'!: filename of pco2 values43 INTEGER :: nn_offset = 0!: Offset model-data start year (default = 0)39 ! !!** Namelist nampisext ** 40 REAL(wp) :: atcco2 !: pre-industrial atmospheric [co2] (ppm) 41 LOGICAL :: ln_co2int !: flag to read in a file and interpolate atmospheric pco2 or not 42 CHARACTER(len=34) :: clname !: filename of pco2 values 43 INTEGER :: nn_offset !: Offset model-data start year (default = 0) 44 44 45 45 !! Variables related to reading atmospheric CO2 time history … … 47 47 INTEGER :: nmaxrec, numco2 48 48 49 ! 50 LOGICAL, PUBLIC :: ln_presatm = .true.!: ref. pressure: global mean Patm (F) or a constant (F)49 ! !!* nampisatm namelist (Atmospheric PRessure) * 50 LOGICAL, PUBLIC :: ln_presatm !: ref. pressure: global mean Patm (F) or a constant (F) 51 51 52 52 REAL(wp) , ALLOCATABLE, SAVE, DIMENSION(:,:) :: patm ! atmospheric pressure at kt [N/m2] … … 316 316 NAMELIST/nampisatm/ ln_presatm, sn_patm, cn_dir 317 317 318 ! ! -------------------- !318 ! ! ----------------------- ! 319 319 IF( kt == nit000 ) THEN ! First call kt=nittrc000 ! 320 ! ! -------------------- ! 321 ! !* set file information (default values) 322 ! ... default values (NB: frequency positive => hours, negative => months) 323 ! ! file ! frequency ! variable ! time intep ! clim ! 'yearly' or ! weights ! rotation ! 324 ! ! name ! (hours) ! name ! (T/F) ! (T/F) ! 'monthly' ! filename ! pairs ! 325 sn_patm = FLD_N( 'pres' , 24 , 'patm' , .false. , .true. , 'yearly' , '' , '' ) 326 cn_dir = './' ! directory in which the Patm data are 320 ! ! ----------------------- ! 327 321 328 322 REWIND( numnatp_ref ) ! Namelist nampisatm in reference namelist : Pisces atm. sea level pressure file -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zlim.F90
r3875 r3901 28 28 29 29 !! * Shared module variables 30 REAL(wp), PUBLIC :: concnno3 = 1.e-6_wp!: NO3, PO4 half saturation31 REAL(wp), PUBLIC :: concdno3 = 2.e-6_wp!: Phosphate half saturation for diatoms32 REAL(wp), PUBLIC :: concnnh4 = 1.e-7_wp!: NH4 half saturation for phyto33 REAL(wp), PUBLIC :: concdnh4 = 2.e-7_wp!: NH4 half saturation for diatoms34 REAL(wp), PUBLIC :: concnfer = 1.e-9_wp!: Iron half saturation for nanophyto35 REAL(wp), PUBLIC :: concdfer = 2.e-9_wp!: Iron half saturation for diatoms36 REAL(wp), PUBLIC :: concbno3 = 2.5e-7_wp!: NO3 half saturation for bacteria37 REAL(wp), PUBLIC :: concbnh4 = 2.5e-8_wp!: NH4 half saturation for bacteria38 REAL(wp), PUBLIC :: xsizedia = 5.e-7_wp!: Minimum size criteria for diatoms39 REAL(wp), PUBLIC :: xsizephy = 1.e-6_wp!: Minimum size criteria for nanophyto40 REAL(wp), PUBLIC :: xsizern = 3.0_wp!: Size ratio for nanophytoplankton41 REAL(wp), PUBLIC :: xsizerd = 4.0_wp!: Size ratio for diatoms42 REAL(wp), PUBLIC :: xksi1 = 2.E-6_wp!: half saturation constant for Si uptake43 REAL(wp), PUBLIC :: xksi2 = 3.33e-6_wp!: half saturation constant for Si/C44 REAL(wp), PUBLIC :: xkdoc = 417.e-6_wp!: 2nd half-sat. of DOC remineralization45 REAL(wp), PUBLIC :: concbfe = 1.E-11_wp!: Fe half saturation for bacteria46 REAL(wp), PUBLIC :: qnfelim = 7.E-6_wp!: optimal Fe quota for nanophyto47 REAL(wp), PUBLIC :: qdfelim = 7.E-6_wp!: optimal Fe quota for diatoms48 REAL(wp), PUBLIC :: caco3r = 0.16_wp!: mean rainratio30 REAL(wp), PUBLIC :: concnno3 !: NO3, PO4 half saturation 31 REAL(wp), PUBLIC :: concdno3 !: Phosphate half saturation for diatoms 32 REAL(wp), PUBLIC :: concnnh4 !: NH4 half saturation for phyto 33 REAL(wp), PUBLIC :: concdnh4 !: NH4 half saturation for diatoms 34 REAL(wp), PUBLIC :: concnfer !: Iron half saturation for nanophyto 35 REAL(wp), PUBLIC :: concdfer !: Iron half saturation for diatoms 36 REAL(wp), PUBLIC :: concbno3 !: NO3 half saturation for bacteria 37 REAL(wp), PUBLIC :: concbnh4 !: NH4 half saturation for bacteria 38 REAL(wp), PUBLIC :: xsizedia !: Minimum size criteria for diatoms 39 REAL(wp), PUBLIC :: xsizephy !: Minimum size criteria for nanophyto 40 REAL(wp), PUBLIC :: xsizern !: Size ratio for nanophytoplankton 41 REAL(wp), PUBLIC :: xsizerd !: Size ratio for diatoms 42 REAL(wp), PUBLIC :: xksi1 !: half saturation constant for Si uptake 43 REAL(wp), PUBLIC :: xksi2 !: half saturation constant for Si/C 44 REAL(wp), PUBLIC :: xkdoc !: 2nd half-sat. of DOC remineralization 45 REAL(wp), PUBLIC :: concbfe !: Fe half saturation for bacteria 46 REAL(wp), PUBLIC :: qnfelim !: optimal Fe quota for nanophyto 47 REAL(wp), PUBLIC :: qdfelim !: optimal Fe quota for diatoms 48 REAL(wp), PUBLIC :: caco3r !: mean rainratio 49 49 50 50 ! Coefficient for iron limitation -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zlys.F90
r3875 r3901 32 32 33 33 !! * Shared module variables 34 REAL(wp), PUBLIC :: kdca = 0.327e3_wp!: diss. rate constant calcite35 REAL(wp), PUBLIC :: nca = 1.0_wp!: order of reaction for calcite dissolution34 REAL(wp), PUBLIC :: kdca !: diss. rate constant calcite 35 REAL(wp), PUBLIC :: nca !: order of reaction for calcite dissolution 36 36 37 37 !! * Module variables -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zmeso.F90
r3875 r3901 31 31 32 32 !! * Shared module variables 33 REAL(wp), PUBLIC :: part2 = 0.5_wp!: part of calcite not dissolved in mesozoo guts34 REAL(wp), PUBLIC :: xprefc = 1.0_wp!: mesozoo preference for POC35 REAL(wp), PUBLIC :: xprefp = 0.3_wp!: mesozoo preference for nanophyto36 REAL(wp), PUBLIC :: xprefz = 1.0_wp!: mesozoo preference for diatoms37 REAL(wp), PUBLIC :: xprefpoc = 0.3_wp!: mesozoo preference for POC38 REAL(wp), PUBLIC :: xthresh2zoo = 1E-8_wp!: zoo feeding threshold for mesozooplankton39 REAL(wp), PUBLIC :: xthresh2dia = 1E-8_wp!: diatoms feeding threshold for mesozooplankton40 REAL(wp), PUBLIC :: xthresh2phy = 2E-7_wp!: nanophyto feeding threshold for mesozooplankton41 REAL(wp), PUBLIC :: xthresh2poc = 1E-8_wp!: poc feeding threshold for mesozooplankton42 REAL(wp), PUBLIC :: xthresh2 = 0._wp!: feeding threshold for mesozooplankton43 REAL(wp), PUBLIC :: resrat2 = 0.005_wp!: exsudation rate of mesozooplankton44 REAL(wp), PUBLIC :: mzrat2 = 0.04_wp!: microzooplankton mortality rate45 REAL(wp), PUBLIC :: grazrat2 = 0.9_wp!: maximal mesozoo grazing rate46 REAL(wp), PUBLIC :: xkgraz2 = 20E-6_wp!: non assimilated fraction of P by mesozoo47 REAL(wp), PUBLIC :: unass2 = 0.3_wp!: Efficicency of mesozoo growth48 REAL(wp), PUBLIC :: sigma2 = 0.6_wp!: Fraction of mesozoo excretion as DOM49 REAL(wp), PUBLIC :: epsher2 = 0.3_wp!: half sturation constant for grazing 250 REAL(wp), PUBLIC :: grazflux = 3.E3_wp!: mesozoo flux feeding rate33 REAL(wp), PUBLIC :: part2 !: part of calcite not dissolved in mesozoo guts 34 REAL(wp), PUBLIC :: xprefc !: mesozoo preference for POC 35 REAL(wp), PUBLIC :: xprefp !: mesozoo preference for nanophyto 36 REAL(wp), PUBLIC :: xprefz !: mesozoo preference for diatoms 37 REAL(wp), PUBLIC :: xprefpoc !: mesozoo preference for POC 38 REAL(wp), PUBLIC :: xthresh2zoo !: zoo feeding threshold for mesozooplankton 39 REAL(wp), PUBLIC :: xthresh2dia !: diatoms feeding threshold for mesozooplankton 40 REAL(wp), PUBLIC :: xthresh2phy !: nanophyto feeding threshold for mesozooplankton 41 REAL(wp), PUBLIC :: xthresh2poc !: poc feeding threshold for mesozooplankton 42 REAL(wp), PUBLIC :: xthresh2 !: feeding threshold for mesozooplankton 43 REAL(wp), PUBLIC :: resrat2 !: exsudation rate of mesozooplankton 44 REAL(wp), PUBLIC :: mzrat2 !: microzooplankton mortality rate 45 REAL(wp), PUBLIC :: grazrat2 !: maximal mesozoo grazing rate 46 REAL(wp), PUBLIC :: xkgraz2 !: non assimilated fraction of P by mesozoo 47 REAL(wp), PUBLIC :: unass2 !: Efficicency of mesozoo growth 48 REAL(wp), PUBLIC :: sigma2 !: Fraction of mesozoo excretion as DOM 49 REAL(wp), PUBLIC :: epsher2 !: half sturation constant for grazing 2 50 REAL(wp), PUBLIC :: grazflux !: mesozoo flux feeding rate 51 51 52 52 !!* Substitution -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zmicro.F90
r3875 r3901 32 32 33 33 !! * Shared module variables 34 REAL(wp), PUBLIC :: part = 0.5_wp!: part of calcite not dissolved in microzoo guts35 REAL(wp), PUBLIC :: xpref2c = 0.2_wp!: microzoo preference for POC36 REAL(wp), PUBLIC :: xpref2p = 1.0_wp!: microzoo preference for nanophyto37 REAL(wp), PUBLIC :: xpref2d = 0.6_wp!: microzoo preference for diatoms38 REAL(wp), PUBLIC :: xthreshdia = 1E-8_wp!: diatoms feeding threshold for microzooplankton39 REAL(wp), PUBLIC :: xthreshphy = 2E-7_wp!: nanophyto threshold for microzooplankton40 REAL(wp), PUBLIC :: xthreshpoc = 1E-8_wp!: poc threshold for microzooplankton41 REAL(wp), PUBLIC :: xthresh = 0._wp!: feeding threshold for microzooplankton42 REAL(wp), PUBLIC :: resrat = 0.03_wp!: exsudation rate of microzooplankton43 REAL(wp), PUBLIC :: mzrat = 0.0_wp!: microzooplankton mortality rate44 REAL(wp), PUBLIC :: grazrat = 3.0_wp!: maximal microzoo grazing rate45 REAL(wp), PUBLIC :: xkgraz = 20E-6_wp!: non assimilated fraction of P by microzoo46 REAL(wp), PUBLIC :: unass = 0.3_wp!: Efficicency of microzoo growth47 REAL(wp), PUBLIC :: sigma1 = 0.6_wp!: Fraction of microzoo excretion as DOM48 REAL(wp), PUBLIC :: epsher = 0.3_wp!: half sturation constant for grazing 134 REAL(wp), PUBLIC :: part !: part of calcite not dissolved in microzoo guts 35 REAL(wp), PUBLIC :: xpref2c !: microzoo preference for POC 36 REAL(wp), PUBLIC :: xpref2p !: microzoo preference for nanophyto 37 REAL(wp), PUBLIC :: xpref2d !: microzoo preference for diatoms 38 REAL(wp), PUBLIC :: xthreshdia !: diatoms feeding threshold for microzooplankton 39 REAL(wp), PUBLIC :: xthreshphy !: nanophyto threshold for microzooplankton 40 REAL(wp), PUBLIC :: xthreshpoc !: poc threshold for microzooplankton 41 REAL(wp), PUBLIC :: xthresh !: feeding threshold for microzooplankton 42 REAL(wp), PUBLIC :: resrat !: exsudation rate of microzooplankton 43 REAL(wp), PUBLIC :: mzrat !: microzooplankton mortality rate 44 REAL(wp), PUBLIC :: grazrat !: maximal microzoo grazing rate 45 REAL(wp), PUBLIC :: xkgraz !: non assimilated fraction of P by microzoo 46 REAL(wp), PUBLIC :: unass !: Efficicency of microzoo growth 47 REAL(wp), PUBLIC :: sigma1 !: Fraction of microzoo excretion as DOM 48 REAL(wp), PUBLIC :: epsher !: half sturation constant for grazing 1 49 49 50 50 -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zmort.F90
r3875 r3901 27 27 28 28 !! * Shared module variables 29 REAL(wp), PUBLIC :: wchl = 0.001_wp!:30 REAL(wp), PUBLIC :: wchld = 0.02_wp!:31 REAL(wp), PUBLIC :: wchldm = 0.05_wp!:32 REAL(wp), PUBLIC :: mprat = 0.01_wp!:33 REAL(wp), PUBLIC :: mprat2 = 0.01_wp!:29 REAL(wp), PUBLIC :: wchl !: 30 REAL(wp), PUBLIC :: wchld !: 31 REAL(wp), PUBLIC :: wchldm !: 32 REAL(wp), PUBLIC :: mprat !: 33 REAL(wp), PUBLIC :: mprat2 !: 34 34 35 35 -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zopt.F90
r3875 r3901 32 32 !! * Shared module variables 33 33 34 LOGICAL :: ln_varpar = .FALSE.!: boolean for variable PAR fraction35 REAL(wp) :: parlux = 0.43_wp!: Fraction of shortwave as PAR34 LOGICAL :: ln_varpar !: boolean for variable PAR fraction 35 REAL(wp) :: parlux !: Fraction of shortwave as PAR 36 36 REAL(wp) :: xparsw !: parlux/3 37 37 … … 330 330 IF( nn_timing == 1 ) CALL timing_start('p4z_opt_init') 331 331 332 cn_dir = './' ! directory in which the model is executed333 ! ... default values (NB: frequency positive => hours, negative => months)334 ! ! file ! frequency ! variable ! time intep ! clim ! 'yearly' or ! weights ! rotation !335 ! ! name ! (hours) ! name ! (T/F) ! (T/F) ! 'monthly' ! filename ! pairs !336 sn_par = FLD_N( 'par_fraction', 24 , 'fr_par' , .true. , .true. , 'yearly' , '' , '' )337 338 332 REWIND( numnatp_ref ) ! Namelist nampisopt in reference namelist : Pisces attenuation coef. and PAR 339 333 READ ( numnatp_ref, nampisopt, IOSTAT = ios, ERR = 901) -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zprod.F90
r3875 r3901 32 32 33 33 !! * Shared module variables 34 LOGICAL , PUBLIC :: ln_newprod = .FALSE.35 REAL(wp), PUBLIC :: pislope = 3.0_wp!:36 REAL(wp), PUBLIC :: pislope2 = 3.0_wp!:37 REAL(wp), PUBLIC :: excret = 10.e-5_wp!:38 REAL(wp), PUBLIC :: excret2 = 0.05_wp!:39 REAL(wp), PUBLIC :: bresp = 0.00333_wp!:40 REAL(wp), PUBLIC :: chlcnm = 0.033_wp!:41 REAL(wp), PUBLIC :: chlcdm = 0.05_wp!:42 REAL(wp), PUBLIC :: chlcmin = 0.00333_wp!:43 REAL(wp), PUBLIC :: fecnm = 10.E-6_wp!:44 REAL(wp), PUBLIC :: fecdm = 15.E-6_wp!:45 REAL(wp), PUBLIC :: grosip = 0.151_wp!:34 LOGICAL , PUBLIC :: ln_newprod !: 35 REAL(wp), PUBLIC :: pislope !: 36 REAL(wp), PUBLIC :: pislope2 !: 37 REAL(wp), PUBLIC :: excret !: 38 REAL(wp), PUBLIC :: excret2 !: 39 REAL(wp), PUBLIC :: bresp !: 40 REAL(wp), PUBLIC :: chlcnm !: 41 REAL(wp), PUBLIC :: chlcdm !: 42 REAL(wp), PUBLIC :: chlcmin !: 43 REAL(wp), PUBLIC :: fecnm !: 44 REAL(wp), PUBLIC :: fecdm !: 45 REAL(wp), PUBLIC :: grosip !: 46 46 47 47 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) :: prmax !: optimal production = f(temperature) -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zrem.F90
r3875 r3901 38 38 39 39 !! * Shared module variables 40 REAL(wp), PUBLIC :: xremik = 0.3_wp!: remineralisation rate of POC41 REAL(wp), PUBLIC :: xremip = 0.025_wp!: remineralisation rate of DOC42 REAL(wp), PUBLIC :: nitrif = 0.05_wp!: NH4 nitrification rate43 REAL(wp), PUBLIC :: xsirem = 0.003_wp!: remineralisation rate of POC44 REAL(wp), PUBLIC :: xsiremlab = 0.025_wp!: fast remineralisation rate of POC45 REAL(wp), PUBLIC :: xsilab = 0.31_wp!: fraction of labile biogenic silica46 REAL(wp), PUBLIC :: oxymin = 1.e-6_wp!: halk saturation constant for anoxia40 REAL(wp), PUBLIC :: xremik !: remineralisation rate of POC 41 REAL(wp), PUBLIC :: xremip !: remineralisation rate of DOC 42 REAL(wp), PUBLIC :: nitrif !: NH4 nitrification rate 43 REAL(wp), PUBLIC :: xsirem !: remineralisation rate of POC 44 REAL(wp), PUBLIC :: xsiremlab !: fast remineralisation rate of POC 45 REAL(wp), PUBLIC :: xsilab !: fraction of labile biogenic silica 46 REAL(wp), PUBLIC :: oxymin !: halk saturation constant for anoxia 47 47 48 48 -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsbc.F90
r3875 r3901 26 26 27 27 !! * Shared module variables 28 LOGICAL , PUBLIC :: ln_dust = .FALSE.!: boolean for dust input from the atmosphere29 LOGICAL , PUBLIC :: ln_solub = .FALSE.!: boolean for variable solubility of atmospheric iron30 LOGICAL , PUBLIC :: ln_river = .FALSE.!: boolean for river input of nutrients31 LOGICAL , PUBLIC :: ln_ndepo = .FALSE.!: boolean for atmospheric deposition of N32 LOGICAL , PUBLIC :: ln_ironsed = .FALSE.!: boolean for Fe input from sediments33 LOGICAL , PUBLIC :: ln_hydrofe = .FALSE.!: boolean for Fe input from hydrothermal vents34 LOGICAL , PUBLIC :: ln_ironice = .FALSE.!: boolean for Fe input from sea ice35 REAL(wp), PUBLIC :: sedfeinput = 1.E-9_wp!: Coastal release of Iron36 REAL(wp), PUBLIC :: dustsolub = 0.014_wp!: Solubility of the dust37 REAL(wp), PUBLIC :: icefeinput = 10E-9_wp!: Iron concentration in sea ice38 REAL(wp), PUBLIC :: wdust = 2.0_wp!: Sinking speed of the dust39 REAL(wp), PUBLIC :: nitrfix = 1E-7_wp!: Nitrogen fixation rate40 REAL(wp), PUBLIC :: diazolight = 50._wp!: Nitrogen fixation sensitivty to light41 REAL(wp), PUBLIC :: concfediaz = 1.E-10_wp!: Fe half-saturation Cste for diazotrophs42 REAL(wp) :: hratio = 9.E-5_wp!: Fe:3He ratio assumed for vent iron supply28 LOGICAL , PUBLIC :: ln_dust !: boolean for dust input from the atmosphere 29 LOGICAL , PUBLIC :: ln_solub !: boolean for variable solubility of atmospheric iron 30 LOGICAL , PUBLIC :: ln_river !: boolean for river input of nutrients 31 LOGICAL , PUBLIC :: ln_ndepo !: boolean for atmospheric deposition of N 32 LOGICAL , PUBLIC :: ln_ironsed !: boolean for Fe input from sediments 33 LOGICAL , PUBLIC :: ln_hydrofe !: boolean for Fe input from hydrothermal vents 34 LOGICAL , PUBLIC :: ln_ironice !: boolean for Fe input from sea ice 35 REAL(wp), PUBLIC :: sedfeinput !: Coastal release of Iron 36 REAL(wp), PUBLIC :: dustsolub !: Solubility of the dust 37 REAL(wp), PUBLIC :: icefeinput !: Iron concentration in sea ice 38 REAL(wp), PUBLIC :: wdust !: Sinking speed of the dust 39 REAL(wp), PUBLIC :: nitrfix !: Nitrogen fixation rate 40 REAL(wp), PUBLIC :: diazolight !: Nitrogen fixation sensitivty to light 41 REAL(wp), PUBLIC :: concfediaz !: Fe half-saturation Cste for diazotrophs 42 REAL(wp) :: hratio !: Fe:3He ratio assumed for vent iron supply 43 43 44 44 LOGICAL , PUBLIC :: ll_sbc … … 210 210 ! 211 211 ! !* set file information 212 cn_dir = './' ! directory in which the model is executed213 ! ... default values (NB: frequency positive => hours, negative => months)214 ! ! file ! frequency ! variable ! time intep ! clim ! 'yearly' or ! weights ! rotation !215 ! ! name ! (hours) ! name ! (T/F) ! (T/F) ! 'monthly' ! filename ! pairs !216 sn_dust = FLD_N( 'dust' , -1 , 'dust' , .true. , .true. , 'yearly' , '' , '' )217 sn_solub = FLD_N( 'solubility' , -12 , 'solub' , .true. , .true. , 'yearly' , '' , '' )218 sn_riverdic = FLD_N( 'river' , -12 , 'riverdic' , .false. , .true. , 'yearly' , '' , '' )219 sn_riverdoc = FLD_N( 'river' , -12 , 'riverdoc' , .false. , .true. , 'yearly' , '' , '' )220 sn_riverdin = FLD_N( 'river' , -12 , 'riverdin' , .false. , .true. , 'yearly' , '' , '' )221 sn_riverdon = FLD_N( 'river' , -12 , 'riverdon' , .false. , .true. , 'yearly' , '' , '' )222 sn_riverdip = FLD_N( 'river' , -12 , 'riverdip' , .false. , .true. , 'yearly' , '' , '' )223 sn_riverdop = FLD_N( 'river' , -12 , 'riverdop' , .false. , .true. , 'yearly' , '' , '' )224 sn_riverdsi = FLD_N( 'river' , -12 , 'riverdsi' , .false. , .true. , 'yearly' , '' , '' )225 sn_ndepo = FLD_N( 'ndeposition', -12 , 'ndep' , .false. , .true. , 'yearly' , '' , '' )226 sn_ironsed = FLD_N( 'ironsed' , -12 , 'bathy' , .false. , .true. , 'yearly' , '' , '' )227 sn_hydrofe = FLD_N( 'hydrofe' , -12 , 'hydro' , .false. , .true. , 'yearly' , '' , '' )228 212 229 213 REWIND( numnatp_ref ) ! Namelist nampissbc in reference namelist : Pisces external sources of nutrients -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsink.F90
r3875 r3901 44 44 45 45 #if defined key_kriest 46 REAL(wp) :: xkr_sfact = 250.!: Sinking factor47 REAL(wp) :: xkr_stick = 0.2!: Stickiness48 REAL(wp) :: xkr_nnano = 2.337!: Nbr of cell in nano size class49 REAL(wp) :: xkr_ndiat = 3.718!: Nbr of cell in diatoms size class50 REAL(wp) :: xkr_nmicro = 3.718!: Nbr of cell in microzoo size class51 REAL(wp) :: xkr_nmeso = 7.147!: Nbr of cell in mesozoo size class52 REAL(wp) :: xkr_naggr = 9.877!: Nbr of cell in aggregates size class46 REAL(wp) :: xkr_sfact !: Sinking factor 47 REAL(wp) :: xkr_stick !: Stickiness 48 REAL(wp) :: xkr_nnano !: Nbr of cell in nano size class 49 REAL(wp) :: xkr_ndiat !: Nbr of cell in diatoms size class 50 REAL(wp) :: xkr_nmicro !: Nbr of cell in microzoo size class 51 REAL(wp) :: xkr_nmeso !: Nbr of cell in mesozoo size class 52 REAL(wp) :: xkr_naggr !: Nbr of cell in aggregates size class 53 53 54 54 REAL(wp) :: xkr_frac -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsms.F90
r3875 r3901 145 145 CALL p4z_chk_mass( kt ) ! Mass conservation checking 146 146 147 IF ( kt == nittrc000 ) CALL FLUSH ( numonp ) ! flush output namelist PISCES 147 148 IF( nn_timing == 1 ) CALL timing_stop('p4z_sms') 148 149 ! … … 193 194 ! ! nampiskrp : kriest parameters 194 195 ! ! ----------------------------- 195 xkr_eta = 0.62196 xkr_zeta = 1.62197 xkr_ncontent = 5.7E-6198 xkr_mass_min = 0.0002199 xkr_mass_max = 1.200 201 196 REWIND( numnatp_ref ) ! Namelist nampiskrp in reference namelist : Pisces Kriest 202 197 READ ( numnatp_ref, nampiskrp, IOSTAT = ios, ERR = 903) … … 225 220 #endif 226 221 227 ln_pisdmp = .true.228 nn_pisdmp = 1229 ln_pisclo = .false.230 231 222 REWIND( numnatp_ref ) ! Namelist nampisdmp in reference namelist : Pisces damping 232 223 READ ( numnatp_ref, nampisdmp, IOSTAT = ios, ERR = 905) … … 247 238 ENDIF 248 239 249 ln_check_mass = .false.250 240 REWIND( numnatp_ref ) ! Namelist nampismass in reference namelist : Pisces mass conservation check 251 241 READ ( numnatp_ref, nampismass, IOSTAT = ios, ERR = 907) -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/trcnam_pisces.F90
r3875 r3901 78 78 ! Namelist nampisdia 79 79 ! ------------------- 80 DO jl = 1, jp_pisces_2d81 WRITE(pisdia2d(jl)%sname,'("2D_",I1)') jl ! short name82 WRITE(pisdia2d(jl)%lname,'("2D DIAGNOSTIC NUMBER ",I2)') jl ! long name83 pisdia2d(jl)%units = ' ' ! units84 END DO85 ! ! 3D output arrays86 DO jl = 1, jp_pisces_3d87 WRITE(pisdia3d(jl)%sname,'("3D_",I1)') jl ! short name88 WRITE(pisdia3d(jl)%lname,'("3D DIAGNOSTIC NUMBER ",I2)') jl ! long name89 pisdia3d(jl)%units = ' ' ! units90 END DO91 92 80 REWIND( numnatp_ref ) ! Namelist nampisdia in reference namelist : Pisces diagnostics 93 81 READ ( numnatp_ref, nampisdia, IOSTAT = ios, ERR = 901) … … 139 127 ! Namelist nampisdbi 140 128 ! ------------------- 141 DO jl = 1, jp_pisces_trd142 IF( jl < 10 ) THEN ; WRITE (pisdiabio(jl)%sname,'("BIO_",I1)') jl ! short name143 ELSEIF (jl < 100 ) THEN ; WRITE (pisdiabio(jl)%sname,'("BIO_",I2)') jl144 ELSE ; WRITE (pisdiabio(jl)%sname,'("BIO_",I3)') jl145 ENDIF146 WRITE(pisdiabio(jl)%lname,'("BIOLOGICAL TREND NUMBER ",I2)') jl ! long name147 pisdiabio(jl)%units = 'mmoleN/m3/s ' ! units148 END DO149 150 129 REWIND( numnatp_ref ) ! Namelist nampisdbi in reference namelist : Pisces add. diagnostics 151 130 READ ( numnatp_ref, nampisdbi, IOSTAT = ios, ERR = 903) -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/trcsms_pisces.F90
r3680 r3901 51 51 ELSE ; CALL p2z_sms( kt ) ! LOBSTER 52 52 ENDIF 53 53 54 ! 54 55 END SUBROUTINE trc_sms_pisces -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/TRP/trcdmp.F90
r3294 r3901 34 34 LOGICAL , PUBLIC, PARAMETER :: lk_trcdmp = .TRUE. !: internal damping flag 35 35 36 ! 37 INTEGER :: nn_hdmp_tr = -1! = 0/-1/'latitude' for damping over passive tracer38 INTEGER :: nn_zdmp_tr = 0! = 0/1/2 flag for damping in the mixed layer39 REAL(wp) :: rn_surf_tr = 50.! surface time scale for internal damping [days]40 REAL(wp) :: rn_bot_tr = 360.! bottom time scale for internal damping [days]41 REAL(wp) :: rn_dep_tr = 800.! depth of transition between rn_surf and rn_bot [meters]42 INTEGER :: nn_file_tr = 2! = 1 create a damping.coeff NetCDF file36 ! !!* Namelist namtrc_dmp : passive tracer newtonian damping * 37 INTEGER :: nn_hdmp_tr ! = 0/-1/'latitude' for damping over passive tracer 38 INTEGER :: nn_zdmp_tr ! = 0/1/2 flag for damping in the mixed layer 39 REAL(wp) :: rn_surf_tr ! surface time scale for internal damping [days] 40 REAL(wp) :: rn_bot_tr ! bottom time scale for internal damping [days] 41 REAL(wp) :: rn_dep_tr ! depth of transition between rn_surf and rn_bot [meters] 42 INTEGER :: nn_file_tr ! = 1 create a damping.coeff NetCDF file 43 43 44 44 REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) :: restotr ! restoring coeff. on tracers (s-1) -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/TRP/trcnam_trp.F90
r3875 r3901 22 22 PUBLIC trc_nam_trp ! routine called by step module 23 23 24 ! !!: ** Advection (nam_trcadv) **25 LOGICAL , PUBLIC :: ln_trcadv_cen2 = .FALSE.! 2nd order centered scheme flag26 LOGICAL , PUBLIC :: ln_trcadv_tvd = .TRUE.! TVD scheme flag27 LOGICAL , PUBLIC :: ln_trcadv_muscl = .FALSE.! MUSCL scheme flag28 LOGICAL , PUBLIC :: ln_trcadv_muscl2 = .FALSE.! MUSCL2 scheme flag29 LOGICAL , PUBLIC :: ln_trcadv_ubs = .FALSE.! UBS scheme flag30 LOGICAL , PUBLIC :: ln_trcadv_qck = .FALSE.! QUICKEST scheme flag31 LOGICAL , PUBLIC :: ln_trcadv_msc_ups = .FALSE.! use upstream scheme within muscl32 33 34 ! 35 LOGICAL , PUBLIC :: ln_trcldf_diff = .FALSE.!: flag of perform or not the lateral diff.36 LOGICAL , PUBLIC :: ln_trcldf_lap = .TRUE.!: laplacian operator37 LOGICAL , PUBLIC :: ln_trcldf_bilap = .FALSE.!: bilaplacian operator38 LOGICAL , PUBLIC :: ln_trcldf_level = .FALSE.!: iso-level direction39 LOGICAL , PUBLIC :: ln_trcldf_hor = .FALSE.!: horizontal (geopotential) direction40 LOGICAL , PUBLIC :: ln_trcldf_iso = .TRUE.!: iso-neutral direction41 REAL(wp), PUBLIC :: rn_ahtrc_0 42 REAL(wp), PUBLIC :: rn_ahtrb_0 43 44 ! 45 LOGICAL , PUBLIC :: ln_trcrad = .TRUE.!: flag to artificially correct negative concentrations46 47 ! 48 LOGICAL , PUBLIC :: ln_trczdf_exp = .FALSE.!: explicit vertical diffusion scheme flag49 INTEGER , PUBLIC :: nn_trczdf_exp = 3!: number of sub-time step (explicit time stepping)24 ! !!: ** Advection (namtrc_adv) ** 25 LOGICAL , PUBLIC :: ln_trcadv_cen2 ! 2nd order centered scheme flag 26 LOGICAL , PUBLIC :: ln_trcadv_tvd ! TVD scheme flag 27 LOGICAL , PUBLIC :: ln_trcadv_muscl ! MUSCL scheme flag 28 LOGICAL , PUBLIC :: ln_trcadv_muscl2 ! MUSCL2 scheme flag 29 LOGICAL , PUBLIC :: ln_trcadv_ubs ! UBS scheme flag 30 LOGICAL , PUBLIC :: ln_trcadv_qck ! QUICKEST scheme flag 31 LOGICAL , PUBLIC :: ln_trcadv_msc_ups ! use upstream scheme within muscl 32 33 34 ! !!: ** lateral mixing namelist (nam_trcldf) ** 35 LOGICAL , PUBLIC :: ln_trcldf_diff !: flag of perform or not the lateral diff. 36 LOGICAL , PUBLIC :: ln_trcldf_lap !: laplacian operator 37 LOGICAL , PUBLIC :: ln_trcldf_bilap !: bilaplacian operator 38 LOGICAL , PUBLIC :: ln_trcldf_level !: iso-level direction 39 LOGICAL , PUBLIC :: ln_trcldf_hor !: horizontal (geopotential) direction 40 LOGICAL , PUBLIC :: ln_trcldf_iso !: iso-neutral direction 41 REAL(wp), PUBLIC :: rn_ahtrc_0 !: diffusivity coefficient for passive tracer (m2/s) 42 REAL(wp), PUBLIC :: rn_ahtrb_0 !: background diffusivity coefficient for passive tracer (m2/s) 43 44 ! !!: ** Treatment of Negative concentrations ( nam_trcrad ) 45 LOGICAL , PUBLIC :: ln_trcrad !: flag to artificially correct negative concentrations 46 47 ! !!: ** Vertical diffusion (nam_trczdf) ** 48 LOGICAL , PUBLIC :: ln_trczdf_exp !: explicit vertical diffusion scheme flag 49 INTEGER , PUBLIC :: nn_trczdf_exp !: number of sub-time step (explicit time stepping) 50 50 51 51 -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/trcdta.F90
r3875 r3901 59 59 REAL(wp) :: zfact 60 60 ! 61 CHARACTER(len=100) :: cn_dir61 CHARACTER(len=100) :: cn_dir 62 62 TYPE(FLD_N), DIMENSION(jptra) :: slf_i ! array of namelist informations on the fields to read 63 63 TYPE(FLD_N), DIMENSION(jptra) :: sn_trcdta 64 REAL(wp) , DIMENSION(jptra) :: rn_trfac 64 REAL(wp) , DIMENSION(jptra) :: rn_trfac ! multiplicative factor for tracer values 65 65 !! 66 66 NAMELIST/namtrc_dta/ sn_trcdta, cn_dir, rn_trfac … … 91 91 WRITE(numout,*) ' ' 92 92 ENDIF 93 ! ! allocate the arrays (if necessary) 94 ! 95 cn_dir = './' ! directory in which the model is executed 93 ! 96 94 DO jn = 1, jptra 97 95 WRITE( clndta,'("TR_",I1)' ) jn -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/trcnam.F90
r3875 r3901 78 78 CALL ctl_opn( numont , 'output.namelist.top', 'REPLACE', 'FORMATTED', 'SEQUENTIAL',-1, numout, .FALSE. ) 79 79 80 ! Namelist nattrc (files)81 ! ----------------------------------------------82 nn_dttrc = 1 ! default values83 nn_writetrc = 1084 ln_top_euler = .FALSE.85 ln_rsttr = .FALSE.86 nn_rsttr = 087 cn_trcrst_in = 'restart_trc'88 cn_trcrst_out = 'restart_trc'89 !90 DO jn = 1, jptra91 WRITE( sn_tracer(jn)%clsname,'("TR_",I1)' ) jn92 WRITE( sn_tracer(jn)%cllname,'("TRACER NUMBER ",I1)') jn93 sn_tracer(jn)%clunit = 'mmole/m3'94 sn_tracer(jn)%llinit = .FALSE.95 sn_tracer(jn)%llsave = .TRUE.96 END DO97 ln_trcdta = .FALSE.98 ln_trcdmp = .FALSE.99 100 80 REWIND( numnat_ref ) ! Namelist namtrc in reference namelist : Passive tracer variables 101 81 READ ( numnat_ref, namtrc, IOSTAT = ios, ERR = 901) … … 145 125 ENDIF 146 126 147 ln_diatrc = .FALSE.148 ln_diabio = .FALSE.149 nn_writedia = 10150 nn_writebio = 10151 152 127 REWIND( numnat_ref ) ! Namelist namtrc_dia in reference namelist : Passive tracer diagnostics 153 128 READ ( numnat_ref, namtrc_dia, IOSTAT = ios, ERR = 903) … … 226 201 227 202 #if defined key_trdmld_trc || defined key_trdtrc 228 nn_trd_trc = 20229 nn_ctls_trc = 9230 rn_ucf_trc = 1.231 ln_trdmld_trc_instant = .TRUE.232 ln_trdmld_trc_restart =.FALSE.233 cn_trdrst_trc_in = "restart_mld_trc"234 cn_trdrst_trc_out = "restart_mld_trc"235 ln_trdtrc(:) = .FALSE.236 203 237 204 REWIND( numnat_ref ) ! Namelist namtrc_trd in reference namelist : Passive tracer trends -
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/trcstp.F90
r3680 r3901 84 84 CALL trc_sms ( kt ) ! tracers: sinks and sources 85 85 CALL trc_trp ( kt ) ! transport of passive tracers 86 IF( kt == nittrc000 ) CALL iom_close( numrtr ) ! close input tracer restart file 86 IF( kt == nittrc000 ) THEN 87 CALL iom_close( numrtr ) ! close input tracer restart file 88 CALL FLUSH ( numont ) ! flush namelist output 89 ENDIF 87 90 IF( lrst_trc ) CALL trc_rst_wri ( kt ) ! write tracer restart file 88 91 IF( lk_trdmld_trc ) CALL trd_mld_trc ( kt ) ! trends: Mixed-layer
Note: See TracChangeset
for help on using the changeset viewer.