Changeset 2467 for LMDZ5/trunk/libf/phylmd
- Timestamp:
- Mar 15, 2016, 11:00:01 AM (9 years ago)
- Location:
- LMDZ5/trunk/libf/phylmd
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ5/trunk/libf/phylmd/cv3_routines.F90
r2459 r2467 7 7 SUBROUTINE cv3_param(nd, k_upper, delt) 8 8 9 USE IOIPSL, ONLY : getin 9 10 use mod_phys_lmdz_para 10 11 IMPLICIT NONE … … 39 40 INTEGER, INTENT(IN) :: k_upper 40 41 REAL, INTENT(IN) :: delt ! timestep (seconds) 42 43 ! Var interm pour le getin 44 REAL, SAVE :: dpbase_omp=-40. 45 REAL, SAVE :: pbcrit_omp=150.0 46 REAL, SAVE :: ptcrit_omp=500.0 47 REAL, SAVE :: sigdz_omp=0.01 48 REAL, SAVE :: spfac_omp=0.15 49 REAL, SAVE :: tau_omp=8000. 50 INTEGER, SAVE :: flag_wb_omp=1 51 REAL, SAVE :: wbmax_omp=6. 52 LOGICAL, SAVE :: ok_convstop_omp=.False. 53 REAL, SAVE :: tau_stop_omp=15000. 54 REAL, SAVE :: ok_intermittent_omp=.False. 55 REAL, SAVE :: coef_peel_omp=0.25 56 INTEGER, SAVE :: flag_epKEorig_omp=1 57 REAL, SAVE :: elcrit_omp=0.0003 58 REAL, SAVE :: tlcrit_omp=-55.0 59 !$OMP 60 !THREADPRIVATE(dpbase_omp,pbcrit_omp,ptcrit_omp,sigdz_omp,spfac_omp,tau_omp,flag_wb_omp) 61 !THREADPRIVATE(wbmax_omp,ok_convstop_omp,tau_stop_omp,ok_intermittent_omp,coef_peel_omp) 62 !THREADPRIVATE(flag_epKEorig_omp,elcrit_omp,tlcrit_omp) 41 63 42 64 … … 65 87 66 88 IF (first) THEN 67 68 89 ! -- "microphysical" parameters: 69 sigdz = 0.0170 spfac = 0.1571 pbcrit = 150.072 ptcrit = 500.073 90 ! IM beg: ajout fis. reglage ep 74 flag_epkeorig = 175 elcrit = 0.000376 tlcrit = -55.077 91 ! CR+JYG: shedding coefficient (used when iflag_mix_adiab=1) 78 coef_peel = 0.2579 92 ! IM lu dans physiq.def via conf_phys.F90 epmax = 0.993 80 93 … … 82 95 83 96 ! -- misc: 84 85 97 dtovsh = -0.2 ! dT for overshoot 86 dpbase = -40. ! definition cloud base (400m above LCL)87 98 ! cc dttrig = 5. ! (loose) condition for triggering 88 99 dttrig = 10. ! (loose) condition for triggering 89 flag_wb = 190 wbmax = 6. ! (m/s) adiab updraught speed at LFC (used in cv3p1_closure)91 92 ! -- rate of approach to quasi-equilibrium:93 94 100 dtcrit = -2.0 95 tau = 8000.96 101 97 102 ! -- end of convection 98 103 99 tau_stop = 15000.100 ok_convstop = .False.101 102 ok_intermittent = .False.103 104 104 ! -- interface cloud parameterization: 105 105 … … 111 111 112 112 !$OMP MASTER 113 OPEN (99, FILE='conv_param.data', STATUS='old', FORM='formatted', ERR=9999) 114 READ (99, *, END=9998) dpbase 115 READ (99, *, END=9998) pbcrit 116 READ (99, *, END=9998) ptcrit 117 READ (99, *, END=9998) sigdz 118 READ (99, *, END=9998) spfac 119 READ (99, *, END=9998) tau 120 READ (99, *, END=9998) flag_wb 121 READ (99, *, END=9998) wbmax 122 READ (99, *, END=9998) ok_convstop 123 READ (99, *, END=9998) tau_stop 124 READ (99, *, END=9998) ok_intermittent 125 READ (99, *, END=9998) coef_peel 126 9998 CONTINUE 127 CLOSE (99) 128 9999 CONTINUE 129 WRITE (*, *) 'dpbase=', dpbase 130 WRITE (*, *) 'pbcrit=', pbcrit 131 WRITE (*, *) 'ptcrit=', ptcrit 132 WRITE (*, *) 'sigdz=', sigdz 133 WRITE (*, *) 'spfac=', spfac 134 WRITE (*, *) 'tau=', tau 135 WRITE (*, *) 'flag_wb =', flag_wb 136 WRITE (*, *) 'wbmax =', wbmax 137 WRITE (*, *) 'ok_convstop =', ok_convstop 138 WRITE (*, *) 'tau_stop =', tau_stop 139 WRITE (*, *) 'ok_intermittent =', ok_intermittent 140 WRITE (*, *) 'coef_peel =', coef_peel 141 142 ! IM Lecture du fichier ep_param.data 143 OPEN (79, FILE='ep_param.data', STATUS='old', FORM='formatted', ERR=7999) 144 READ (79, *, END=7998) flag_epkeorig 145 READ (79, *, END=7998) elcrit 146 READ (79, *, END=7998) tlcrit 147 7998 CONTINUE 148 CLOSE (79) 149 7999 CONTINUE 150 WRITE (*, *) 'flag_epKEorig', flag_epkeorig 151 WRITE (*, *) 'elcrit=', elcrit 152 WRITE (*, *) 'tlcrit=', tlcrit 153 ! IM end: ajout fis. reglage ep 154 !$OMP END MASTER 155 156 CALL bcast(dpbase) 157 CALL bcast(pbcrit) 158 CALL bcast(ptcrit) 159 CALL bcast(sigdz) 160 CALL bcast(spfac) 161 CALL bcast(tau) 162 CALL bcast(flag_wb) 163 CALL bcast(wbmax) 164 CALL bcast(ok_convstop) 165 CALL bcast(tau_stop) 166 CALL bcast(ok_intermittent) 167 168 CALL bcast(flag_epkeorig) 169 CALL bcast(elcrit) 170 CALL bcast(tlcrit) 113 CALL getin('dpbase',dpbase_omp) 114 CALL getin('pbcrit',pbcrit_omp) 115 CALL getin('ptcrit',ptcrit_omp) 116 CALL getin('sigdz',sigdz_omp) 117 CALL getin('spfac',spfac_omp) 118 CALL getin('tau',tau_omp) 119 CALL getin('flag_wb',flag_wb_omp) 120 CALL getin('wbmax',wbmax_omp) 121 CALL getin('ok_convstop',ok_convstop_omp) 122 CALL getin('tau_stop',tau_stop_omp) 123 CALL getin('ok_intermittent',ok_intermittent_omp) 124 CALL getin('coef_peel',coef_peel_omp) 125 CALL getin('flag_epKEorig',flag_epKEorig_omp) 126 CALL getin('elcrit',elcrit_omp) 127 CALL getin('tlcrit',tlcrit_omp) 128 !$OMP END MASTER 129 !$OMP BARRIER 130 dpbase=dpbase_omp 131 pbcrit=pbcrit_omp 132 ptcrit=ptcrit_omp 133 sigdz=sigdz_omp 134 spfac=spfac_omp 135 tau=tau_omp 136 flag_wb=flag_wb_omp 137 wbmax=wbmax_omp 138 ok_convstop=ok_convstop_omp 139 tau_stop=tau_stop_omp 140 ok_intermittent=ok_intermittent_omp 141 coef_peel=coef_peel_omp 142 flag_epKEorig=flag_epKEorig_omp 143 elcrit=elcrit_omp 144 tlcrit=tlcrit_omp 171 145 172 146 first = .FALSE. 173 174 147 END IF ! (first) 175 148 … … 186 159 187 160 RETURN 188 END SUBROUTINE cv3 _param161 END SUBROUTINE cv3/_param 189 162 190 163 SUBROUTINE cv3_incrcount(len, nd, delt, sig) -
LMDZ5/trunk/libf/phylmd/wake.F90
r2346 r2467 21 21 ! ************************************************************** 22 22 23 USE IOIPSL, ONLY : getin 23 24 USE dimphy 24 25 use mod_phys_lmdz_para … … 161 162 REAL, SAVE :: stark, wdens_ref, coefgw, alpk, crep_upper, crep_sol 162 163 !$OMP THREADPRIVATE(stark, wdens_ref, coefgw, alpk, crep_upper, crep_sol) 164 REAL, SAVE :: stark_omp=0.33 165 REAL, SAVE :: alpk_omp=0.25 166 REAL, SAVE :: wdens_ref_omp=8.E-12 167 REAL, SAVE :: coefgw_omp=4. 168 !$OMP THREADPRIVATE(stark_omp,alpk_omp,wdens_ref_omp,coefgw_omp) 169 163 170 REAL delta_t_min 164 171 INTEGER nsub … … 286 293 287 294 if (first) then 288 stark = 0.33289 alpk = 0.25290 wdens_ref = 8.E-12291 coefgw = 4.292 295 crep_upper = 0.9 293 296 crep_sol = 1.0 … … 295 298 ! cc nrlmd Lecture du fichier wake_param.data 296 299 !$OMP MASTER 297 OPEN (99, FILE='wake_param.data', STATUS='old', FORM='formatted', ERR=9999) 298 READ (99, *, END=9998) stark 299 READ (99, *, END=9998) alpk 300 READ (99, *, END=9998) wdens_ref 301 READ (99, *, END=9998) coefgw 302 9998 CONTINUE 303 CLOSE (99) 304 9999 CONTINUE 300 CALL getin('stark',stark_omp) 301 CALL getin('alpk',alpk_omp) 302 CALL getin('wdens_ref',wdens_ref_omp) 303 CALL getin('coefgw',coefgw_omp) 305 304 !$OMP END MASTER 306 CALL bcast(stark)307 CALL bcast(alpk)308 CALL bcast(wdens_ref)309 CALL bcast(coefgw)310 305 !$OMP BARRIER 306 stark=stark_omp 307 alpk=alpk_omp 308 wdens_ref=wdens_ref_omp 309 coefgw=coefgw_omp 311 310 first=.false. 312 311 endif
Note: See TracChangeset
for help on using the changeset viewer.