Changeset 4482 for LMDZ6/branches/LMDZ_ECRad/libf/phylmd/ice_sursat_mod.F90
- Timestamp:
- Mar 29, 2023, 3:14:27 PM (19 months ago)
- Location:
- LMDZ6/branches/LMDZ_ECRad
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/branches/LMDZ_ECRad
- Property svn:mergeinfo changed
-
LMDZ6/branches/LMDZ_ECRad/libf/phylmd/ice_sursat_mod.F90
r4099 r4482 3 3 IMPLICIT NONE 4 4 5 !--flight inventories 6 ! 5 7 REAL, SAVE, ALLOCATABLE :: flight_m(:,:) !--flown distance m s-1 per cell 6 8 !$OMP THREADPRIVATE(flight_m) 7 9 REAL, SAVE, ALLOCATABLE :: flight_h2o(:,:) !--emitted kg H2O s-1 per cell 8 10 !$OMP THREADPRIVATE(flight_h2o) 9 10 !--parameters for gamma function 11 !--Karcher and Lohmann (2002) 12 !--gamma = 2.583 - t / 207.83 13 ! REAL, SAVE, PARAMETER :: gamma0=2.583, Tgamma=207.83 14 !--Ren and MacKenzie (2005) reused by Kärcher 15 !--gamma = 2.349 - t / 259.0 16 REAL, PARAMETER :: gamma0=2.349, Tgamma=259.0 17 ! 18 !--number of clouds in cell (needs to be parametrized at some point) 19 REAL, PARAMETER :: N_cld = 100. 11 ! 12 !--Fixed Parameters 20 13 ! 21 14 !--safety parameters for ERF function … … 43 36 ! alpha_cld ). Dans le rapport il est appelé beta. Il varie entre 0 et 5 44 37 ! (tun_ratqs = 0 => pas de modification de ratqs). 45 38 ! 39 !--gamma0 and Tgamma: define RHcrit limit above which heterogeneous freezing occurs as a function of T 40 !--Karcher and Lohmann (2002) 41 !--gamma = 2.583 - t / 207.83 42 !--Ren and MacKenzie (2005) reused by Kärcher 43 !--gamma = 2.349 - t / 259.0 44 ! 45 !--N_cld: number of clouds in cell (needs to be parametrized at some point) 46 ! 47 !--contrail cross section: typical value found in Freudenthaler et al, GRL, 22, 3501-3504, 1995 48 !--in m2, 1000x200 = 200 000 m2 after 15 min 49 ! 46 50 REAL, SAVE :: chi=1.1, l_turb=50.0, tun_N=1.3, tun_ratqs=3.0 47 !$OMP THREADPRIVATE(chi,l_turb,tun_N,tun_ratqs) 48 ! 49 !--contrail cross section, typical value found in Freudenthaler et al, GRL, 22, 3501-3504, 1995 50 !--in m2, 1000x200 = 200 000 m2 after 15 min 51 REAL, PARAMETER :: contrail_cross_section=200000.0 51 REAL, SAVE :: gamma0=2.349, Tgamma=259.0, N_cld=100, contrail_cross_section=200000.0 52 !$OMP THREADPRIVATE(chi,l_turb,tun_N,tun_ratqs,gamma0,Tgamma,N_cld,contrail_cross_section) 52 53 53 54 CONTAINS … … 66 67 CALL getin_p('flag_tun_N',tun_N) 67 68 CALL getin_p('flag_tun_ratqs',tun_ratqs) 68 69 CALL getin_p('gamma0',gamma0) 70 CALL getin_p('Tgamma',Tgamma) 71 CALL getin_p('N_cld',N_cld) 72 CALL getin_p('contrail_cross_section',contrail_cross_section) 73 74 WRITE(lunout,*) 'Parameters for ice_sursat param' 69 75 WRITE(lunout,*) 'flag_chi = ', chi 70 76 WRITE(lunout,*) 'flag_l_turb = ', l_turb 71 77 WRITE(lunout,*) 'flag_tun_N = ', tun_N 72 78 WRITE(lunout,*) 'flag_tun_ratqs = ', tun_ratqs 79 WRITE(lunout,*) 'gamma0 = ', gamma0 80 WRITE(lunout,*) 'Tgamma = ', Tgamma 81 WRITE(lunout,*) 'N_cld = ', N_cld 82 WRITE(lunout,*) 'contrail_cross_section = ', contrail_cross_section 73 83 74 84 END SUBROUTINE ice_sursat_init … … 384 394 ! 385 395 !--Estimating gamma 386 gamma_ss = gamma0 - t_actuel/Tgamma387 !gamma_prec = gamma0 - t_ancien(i,k)/Tgamma!--formulation initiale d Audran388 gamma_prec = gamma0 - t/Tgamma!--autre formulation possible basée sur le T du pas de temps396 gamma_ss = MAX(1.0, gamma0 - t_actuel/Tgamma) 397 !gamma_prec = MAX(1.0, gamma0 - t_ancien(i,k)/Tgamma) !--formulation initiale d Audran 398 gamma_prec = MAX(1.0, gamma0 - t/Tgamma) !--autre formulation possible basée sur le T du pas de temps 389 399 ! 390 400 ! Initialisation de qvc : q_sat du pas de temps precedent … … 421 431 ! On approxime en serie entiere erf-1(x) 422 432 qvc = 2.*rneb-1. 423 qvc = qvc + PI/12.*qvc**3 + 7.*PI**2/480.*qvc**5 + 127.*PI**3/40320.*qvc**7 + 4369.*PI**4/5806080.*qvc**9 + 34807.*PI**5/182476800.*qvc**11 433 qvc = qvc + PI/12.*qvc**3 + 7.*PI**2/480.*qvc**5 & 434 + 127.*PI**3/40320.*qvc**7 + 4369.*PI**4/5806080.*qvc**9 & 435 + 34807.*PI**5/182476800.*qvc**11 424 436 qvc = sqrt(PI)/2.*qvc 425 437 qvc = (qvc-pdf_b)*pdf_k*sqrt(2.)
Note: See TracChangeset
for help on using the changeset viewer.