- Timestamp:
- Nov 5, 2018, 3:24:59 PM (6 years ago)
- Location:
- LMDZ6/branches/DYNAMICO-conv
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/branches/DYNAMICO-conv
- Property svn:mergeinfo changed
/LMDZ6/trunk removed
- Property svn:mergeinfo changed
-
LMDZ6/branches/DYNAMICO-conv/libf/phylmd/acama_gwd_rando_m.F90
r3356 r3411 20 20 use dimphy, only: klon, klev 21 21 use assert_m, only: assert 22 USE ioipsl_getin_p_mod, ONLY : getin_p23 USE vertical_layers_mod, ONLY : presnivs24 25 22 include "YOMCST.h" 26 23 include "clesphys.h" … … 114 111 REAL BV(KLON, KLEV + 1) ! Brunt Vaisala freq. (BVF) at 1/2 levels 115 112 REAL BVSEC ! Security to avoid negative BVF 116 117 REAL, DIMENSION(klev+1) ::HREF118 LOGICAL, SAVE :: gwd_reproductibilite_mpiomp=.true.119 LOGICAL, SAVE :: firstcall = .TRUE.120 !$OMP THREADPRIVATE(firstcall,gwd_reproductibilite_mpiomp)121 122 CHARACTER (LEN=20) :: modname='flott_gwd_rando'123 CHARACTER (LEN=80) :: abort_message124 125 126 127 IF (firstcall) THEN128 ! Cle introduite pour resoudre un probleme de non reproductibilite129 ! Le but est de pouvoir tester de revenir a la version precedenete130 ! A eliminer rapidement131 CALL getin_p('gwd_reproductibilite_mpiomp',gwd_reproductibilite_mpiomp)132 IF (NW+4*(NA-1)+NA>=KLEV) THEN133 abort_message = 'NW+3*NA>=KLEV Probleme pour generation des ondes'134 CALL abort_physic (modname,abort_message,1)135 ENDIF136 firstcall=.false.137 ! CALL iophys_ini138 ENDIF139 113 140 114 !----------------------------------------------------------------- … … 231 205 ! Launching altitude 232 206 233 IF (gwd_reproductibilite_mpiomp) THEN234 ! Reprend la formule qui calcule PH en fonction de PP=play235 DO LL = 2, KLEV236 HREF(LL) = EXP((LOG(presnivs(LL)) + LOG(presnivs(LL - 1))) / 2.)237 end DO238 HREF(KLEV + 1) = 0.239 HREF(1) = 2. * presnivs(1) - HREF(2)240 ELSE241 HREF(1:KLEV)=PH(KLON/2,1:KLEV)242 ENDIF243 244 207 LAUNCH=0 245 208 LTROP =0 246 209 DO LL = 1, KLEV 247 IF ( HREF(LL) / HREF(1) > XLAUNCH) LAUNCH = LL210 IF (PH(KLON / 2, LL) / PH(KLON / 2, 1) > XLAUNCH) LAUNCH = LL 248 211 ENDDO 249 212 DO LL = 1, KLEV 250 IF ( HREF(LL) / HREF(1) > XTROP) LTROP = LL213 IF (PH(KLON / 2, LL) / PH(KLON / 2, 1) > XTROP) LTROP = LL 251 214 ENDDO 252 !LAUNCH=22 ; LTROP=33253 ! print*,'LAUNCH=',LAUNCH,'LTROP=',LTROP254 255 215 256 216 ! PRINT *,'LAUNCH IN ACAMARA:',LAUNCH … … 333 293 334 294 JW = 0 335 DO JW = 1, NW 295 DO JP = 1, NP 296 DO JK = 1, NK 297 DO JO = 1, NO 298 JW = JW + 1 336 299 ! Angle 337 300 DO II = 1, KLON … … 377 340 ! RUW0(JW, II) = RUWFRT 378 341 ENDDO 342 end DO 343 end DO 379 344 end DO 380 345
Note: See TracChangeset
for help on using the changeset viewer.