Changeset 3527 for trunk/LMDZ.COMMON/libf/evolution/NS_fast_subs_univ.F90
- Timestamp:
- Nov 20, 2024, 3:53:19 PM (3 days ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.COMMON/libf/evolution/NS_fast_subs_univ.F90
r3526 r3527 1 MODULE fast_subs_univ 2 3 implicit none 4 5 CONTAINS 6 1 7 !***************************************************** 2 8 ! Commonly used subroutines for fast method … … 19 25 ! this is not the true (final) equilibrium depth 20 26 !*********************************************************************** 21 use allinterfaces, except_this_one => equildepth22 27 implicit none 23 28 integer, intent(IN) :: nz … … 54 59 ! B = Diff*bigstep/(porosity*icedensity) [SI units] 55 60 !*********************************************************************** 56 use allinterfaces, except_this_one => depths_avmeth57 61 use math_mod, only: deriv2_simple, deriv1_onesided, deriv1, colint 62 use ice_table_mod, only: constriction 58 63 implicit none 59 64 integer, intent(IN) :: nz, typeT … … 178 183 179 184 180 pure function constriction(porefill)181 ! specify constriction function here, 0<=eta<=1182 implicit none183 real(8), intent(IN) :: porefill184 real(8) eta, constriction185 if (porefill<=0.) eta = 1.186 if (porefill>0. .and. porefill<1.) then187 ! eta = 1.188 ! eta = 1-porefill189 eta = (1-porefill)**2 ! Hudson et al., JGR, 2009190 endif191 if (porefill>=1.) eta = 0.192 constriction = eta193 end function constriction194 195 196 197 185 pure subroutine icechanges(nz,z,typeF,avdrho,avdrhoP,ypp, & 198 186 & Diff,porosity,icefrac,bigstep,zdepthT,porefill,typeG) … … 202 190 ! a crucial subroutine 203 191 !*********************************************************** 204 use miscparameters, only : icedensity205 use allinterfaces, except_this_one => icechanges206 192 use math_mod, only: colint 193 use ice_table_mod, only: rho_ice 207 194 implicit none 208 195 integer, intent(IN) :: nz, typeF, typeG … … 213 200 real(8) B, beta, integ 214 201 215 B = Diff*bigstep*86400.*365.24/(porosity*icedensity) 202 B = Diff*bigstep*86400.*365.24/(porosity*927.) 203 !B = Diff*bigstep*86400.*365.24/(porosity*rho_ice(T,'h2o')) 216 204 217 205 ! advance ice table, avdrho>0 is retreat … … 232 220 if (typeP==typeT) then ! new 2011-09-01 233 221 beta = (1-icefrac)/(1-porosity)/icefrac 234 beta = Diff*bigstep*beta*86400*365.24/icedensity 222 beta = Diff*bigstep*beta*86400*365.24/927. 223 !beta = Diff*bigstep*beta*86400*365.24/rho_ice(T,'h2o') 235 224 zdepthT = sqrt(2*beta*avdrho*18./8314. + zdepthT**2) 236 225 endif … … 283 272 end if 284 273 end subroutine icechanges 274 275 END MODULE fast_subs_univ
Note: See TracChangeset
for help on using the changeset viewer.