Changeset 5696 for LMDZ6/trunk/libf/phylmd/cv3_routines.f90
- Timestamp:
- Jun 13, 2025, 8:19:58 PM (3 weeks ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/trunk/libf/phylmd/cv3_routines.f90
r5695 r5696 3 3 MODULE cv3_routines_mod 4 4 PRIVATE 5 5 ! for cv3_feed 6 LOGICAL, SAVE :: cv3_feed_first =.TRUE. 7 LOGICAL, SAVE :: ok_new_feed 8 !$OMP THREADPRIVATE (first,ok_new_feed) 6 9 PUBLIC cv3_param, cv3_incrcount, cv3_prelim, cv3_feed, cv3_undilute1, cv3_trigger, cv3_compress, & 7 10 icefrac, cv3_undilute2, cv3_closure, cv3_mixing, cv3_unsat, cv3_yield, cv3_tracer, cv3_uncompress,& 8 cv3_epmax_fn_cape 11 cv3_epmax_fn_cape, cv3_routine_pre 9 12 CONTAINS 10 13 11 12 14 SUBROUTINE cv3_routine_pre(ok_conserv_q) 15 LOGICAL, INTENT (IN) :: ok_conserv_q 16 17 CALL cv3_feed_pre(ok_conserv_q) 18 19 END SUBROUTINE cv3_routine_pre 13 20 14 21 SUBROUTINE cv3_param(nd, k_upper, delt) … … 314 321 END SUBROUTINE cv3_prelim 315 322 323 324 SUBROUTINE cv3_feed_pre(ok_conserv_q) 325 USE mod_phys_lmdz_transfert_para, ONLY : bcast 326 IMPLICIT NONE 327 LOGICAL, INTENT (IN) :: ok_conserv_q 328 INTEGER :: iostat 329 330 IF (cv3_feed_first) THEN 331 332 !$OMP MASTER 333 ok_new_feed = ok_conserv_q 334 OPEN (98, FILE='cv3feed_param.data', STATUS='old', FORM='formatted', IOSTAT=iostat) 335 IF (iostat==0) THEN 336 READ (98, *, END=998) ok_new_feed 337 998 CONTINUE 338 CLOSE (98) 339 END IF 340 PRINT *, ' ok_new_feed: ', ok_new_feed 341 !$OMP END MASTER 342 call bcast(ok_new_feed) 343 cv3_feed_first = .FALSE. 344 END IF 345 346 END SUBROUTINE cv3_feed_pre 347 348 316 349 SUBROUTINE cv3_feed(len, nd, ok_conserv_q, & 317 350 t, q, u, v, p, ph, h, gz, & … … 320 353 cpnk, hnk, nk, icb, icbmax, iflag, gznk, plcl) 321 354 322 USE mod_phys_lmdz_transfert_para, ONLY : bcast323 355 USE add_phys_tend_mod, ONLY: fl_cor_ebil 324 356 USE print_control_mod, ONLY: prt_level … … 374 406 375 407 !jyg20140217< 376 INTEGER iostat 377 LOGICAL, SAVE :: first 378 LOGICAL, SAVE :: ok_new_feed 379 REAL, SAVE :: dp_lcl_feed 380 !$OMP THREADPRIVATE (first,ok_new_feed,dp_lcl_feed) 381 DATA first/.TRUE./ 382 DATA dp_lcl_feed/2./ 383 384 IF (first) THEN 385 !$OMP MASTER 386 ok_new_feed = ok_conserv_q 387 OPEN (98, FILE='cv3feed_param.data', STATUS='old', FORM='formatted', IOSTAT=iostat) 388 IF (iostat==0) THEN 389 READ (98, *, END=998) ok_new_feed 390 998 CONTINUE 391 CLOSE (98) 392 END IF 393 PRINT *, ' ok_new_feed: ', ok_new_feed 394 !$OMP END MASTER 395 call bcast(ok_new_feed) 396 first = .FALSE. 397 END IF 408 REAL, PARAMETER :: dp_lcl_feed = 2. 409 398 410 !jyg> 399 411 ! -------------------------------------------------------------------
Note: See TracChangeset
for help on using the changeset viewer.