Changeset 11601
- Timestamp:
- 2019-09-26T16:54:45+02:00 (5 years ago)
- Location:
- NEMO/trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/trunk/cfgs/SHARED/namelist_ice_ref
r11536 r11601 234 234 &namdia ! Diagnostics 235 235 !------------------------------------------------------------------------------ 236 ln_icediachk = .false. ! check online the heat, mass & salt budgets at each time step237 ! ! rate of ice spuriously gained/lost. For ex., rn_icechk=1. <=> 1mm/year, rn_icechk=0.1 <=> 1mm/10years238 rn_icechk_cel = 1 . ! check at any gridcell=> stops the code if violated (and writes a file)239 rn_icechk_glo = 0.1 ! check over the entire ice cover=> only prints warnings236 ln_icediachk = .false. ! check online heat, mass & salt budgets 237 ! ! rate of ice spuriously gained/lost at each time step => rn_icechk=1 <=> 1.e-6 m/hour 238 rn_icechk_cel = 100. ! check at each gridcell (1.e-4m/h)=> stops the code if violated (and writes a file) 239 rn_icechk_glo = 1. ! check over the entire ice cover (1.e-6m/h)=> only prints warnings 240 240 ln_icediahsb = .false. ! output the heat, mass & salt budgets (T) or not (F) 241 241 ln_icectl = .false. ! ice points output for debug (T or F) -
NEMO/trunk/src/ICE/icectl.F90
r11536 r11601 44 44 PUBLIC ice_prt3D 45 45 46 ! thresold values for conservation46 ! thresold rates for conservation 47 47 ! these values are changed by the namelist parameter rn_icechk, so that threshold = zchk * rn_icechk 48 REAL(wp), PARAMETER :: zchk_m = 1.e-5 ! kg/m2/s <=> 1mm of ice per yearspuriously gained/lost49 REAL(wp), PARAMETER :: zchk_s = 1.e-4 ! g/m2/s <=> 1mm of ice per yearspuriously gained/lost (considering s=10g/kg)50 REAL(wp), PARAMETER :: zchk_t = 3. ! W/m2 <=> 1mm of ice per yearspuriously gained/lost (considering Lf=3e5J/kg)48 REAL(wp), PARAMETER :: zchk_m = 2.5e-7 ! kg/m2/s <=> 1e-6 m of ice per hour spuriously gained/lost 49 REAL(wp), PARAMETER :: zchk_s = 2.5e-6 ! g/m2/s <=> 1e-6 m of ice per hour spuriously gained/lost (considering s=10g/kg) 50 REAL(wp), PARAMETER :: zchk_t = 7.5e-2 ! W/m2 <=> 1e-6 m of ice per hour spuriously gained/lost (considering Lf=3e5J/kg) 51 51 52 52 !! * Substitutions … … 68 68 !! ** Method : This is an online diagnostics which can be activated with ln_icediachk=true 69 69 !! It prints in ocean.output if there is a violation of conservation at each time-step 70 !! The thresholds (zchk_m, zchk_s, zchk_t) which determine violations are set to 71 !! a minimum of 1 mm of ice (over the ice area) that is lost/gained spuriously during 100 years. 70 !! The thresholds (zchk_m, zchk_s, zchk_t) determine violations 72 71 !! For salt and heat thresholds, ice is considered to have a salinity of 10 73 72 !! and a heat content of 3e5 J/kg (=latent heat of fusion) … … 133 132 134 133 ! -- advection scheme is conservative? -- ! 135 zvtrp = glob_sum( 'icectl', ( diag_trp_vi * rhoi + diag_trp_vs * rhos ) * e1e2t ) ! must be close to 0 136 zetrp = glob_sum( 'icectl', ( diag_trp_ei + diag_trp_es ) * e1e2t ) ! must be close to 0 134 zvtrp = glob_sum( 'icectl', ( diag_trp_vi * rhoi + diag_trp_vs * rhos ) * e1e2t ) ! must be close to 0 (only for Prather) 135 zetrp = glob_sum( 'icectl', ( diag_trp_ei + diag_trp_es ) * e1e2t ) ! must be close to 0 (only for Prather) 137 136 138 137 ! ice area (+epsi10 to set a threshold > 0 when there is no ice) … … 157 156 & WRITE(numout,*) cd_routine,' : violation a_i > amax = ',zdiag_amax 158 157 ! check if advection scheme is conservative 159 IF( ABS(zvtrp) > zchk_m * rn_icechk_glo * zarea .AND. cd_routine == 'icedyn_adv' ) & 158 ! only check for Prather because Ultimate-Macho uses corrective fluxes (wfx etc) 159 ! so the formulation for conservation is different (and not coded) 160 ! it does not mean UM is not conservative (it is checked with above prints) 161 IF( ln_adv_Pra .AND. ABS(zvtrp) > zchk_m * rn_icechk_glo * zarea .AND. cd_routine == 'icedyn_adv' ) & 160 162 & WRITE(numout,*) cd_routine,' : violation adv scheme [kg] = ',zvtrp * rdt_ice 161 163 ENDIF … … 173 175 !! ** Method : This is an online diagnostics which can be activated with ln_icediachk=true 174 176 !! It prints in ocean.output if there is a violation of conservation at each time-step 175 !! The thresholds (zchk_m, zchk_s, zchk_t) which determine the violation are set to 176 !! a minimum of 1 mm of ice (over the ice area) that is lost/gained spuriously during 100 years. 177 !! The thresholds (zchk_m, zchk_s, zchk_t) determine the violations 177 178 !! For salt and heat thresholds, ice is considered to have a salinity of 10 178 179 !! and a heat content of 3e5 J/kg (=latent heat of fusion)
Note: See TracChangeset
for help on using the changeset viewer.