Changeset 6000
- Timestamp:
- Jan 6, 2026, 10:22:19 AM (7 days ago)
- Location:
- LMDZ6/trunk/libf
- Files:
-
- 2 deleted
- 4 edited
-
phylmd/lmdz_lscp_ini.f90 (modified) (11 diffs)
-
phylmd/lmdz_ratqs_ini.f90 (deleted)
-
phylmd/lmdz_ratqs_multi.f90 (modified) (1 diff)
-
phylmd/physiq_mod.F90 (modified) (1 diff)
-
phylmdiso/lmdz_ratqs_ini.f90 (deleted)
-
phylmdiso/physiq_mod.F90 (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/trunk/libf/phylmd/lmdz_lscp_ini.f90
r5995 r6000 347 347 ! parameters for subgrid variability (ratqs) routines 348 348 349 INTEGER, SAVE, PROTECTED :: nbsrf, is_ter, is_lic ! number of subgrid tiles, and indices for land and landice tiles 350 !$OMP THREADPRIVATE(nbsrf, is_ter, is_lic) 351 352 REAL, SAVE, PROTECTED :: a_ratqs_cv = 1. ! a_ratqs_cv and a_ratqs_wake control the contibution of cold pools to 353 ! water subgrid variability 354 !$OMP THREADPRIVATE(a_ratqs_cv) 355 356 REAL, SAVE, PROTECTED :: a_ratqs_wake = 3. 357 !$OMP THREADPRIVATE(a_ratqs_wake) 358 359 REAL, SAVE, PROTECTED :: tau_var = 700.0 ! relaxation time for variability in thermals [s] 360 !$OMP THREADPRIVATE(tau_var) 361 362 REAL, SAVE, PROTECTED :: fac_tau = 2. 363 !$OMP THREADPRIVATE(fac_tau) 364 365 REAL, SAVE, PROTECTED :: tau_cumul = 1000. 366 !$OMP THREADPRIVATE(tau_cumul) 367 368 INTEGER, SAVE, PROTECTED :: dqimpl = 1 369 !$OMP THREADPRIVATE(dqimpl) 370 371 REAL, ALLOCATABLE, SAVE :: povariance(:,:) 372 !$OMP THREADPRIVATE(povariance) 373 374 REAL, ALLOCATABLE, SAVE :: var_conv(:,:) 375 !$OMP THREADPRIVATE(var_conv) 349 376 350 377 … … 356 383 CONTAINS 357 384 358 SUBROUTINE lscp_ini(dtime,lunout_in,prt_level_in,ok_ice_supersat_in, iflag_ratqs_in, fl_cor_ebil_in, & 359 RCPD_in, RLSTT_in, RLVTT_in, RLMLT_in, RVTMP2_in, & 385 SUBROUTINE lscp_ini(dtime, klon, klev, iflag_thermals, nbsrf_in, is_ter_in, is_lic_in, lunout_in, & 386 prt_level_in, ok_ice_supersat_in, iflag_ratqs_in, fl_cor_ebil_in, & 387 RCPD_in, RLSTT_in, RLVTT_in, RLMLT_in, RVTMP2_in, & 360 388 RTT_in, RD_in, RV_in, RG_in, RPI_in, EPS_W_in) 361 389 … … 364 392 365 393 REAL, INTENT(IN) :: dtime 394 INTEGER, INTENT(IN) :: klon, klev, iflag_thermals 395 INTEGER, INTENT(IN) :: nbsrf_in, is_ter_in, is_lic_in 366 396 INTEGER, INTENT(IN) :: lunout_in,prt_level_in,iflag_ratqs_in,fl_cor_ebil_in 367 397 LOGICAL, INTENT(IN) :: ok_ice_supersat_in 368 369 398 REAL, INTENT(IN) :: RCPD_in, RLSTT_in, RLVTT_in, RLMLT_in 370 399 REAL, INTENT(IN) :: RVTMP2_in, RTT_in, RD_in, RV_in, RG_in, RPI_in, EPS_W_in 371 character (len=20) :: modname='lscp_ini_mod' 372 character (len=80) :: abort_message 373 400 401 CHARACTER (len=20) :: modname='lscp_ini_mod' 402 CHARACTER (len=80) :: abort_message 403 404 INTEGER :: i,k 374 405 375 406 lunout=lunout_in 376 407 prt_level=prt_level_in 408 nbsrf=nbsrf_in 409 is_ter=is_ter_in 410 is_lic=is_lic_in 377 411 fl_cor_ebil=fl_cor_ebil_in 378 412 iflag_ratqs=iflag_ratqs_in … … 392 426 EPS_W=EPS_W_in 393 427 428 429 IF (iflag_thermals==15.OR.iflag_thermals==16) THEN 430 dqimpl=-1 431 ENDIF 394 432 395 433 … … 420 458 CALL getin_p('ffallv_lsc',ffallv_lsc) 421 459 CALL getin_p('ffallv_lsc',ffallv_con) 460 422 461 ! for poprecip and cloud phase 423 462 CALL getin_p('coef_eva',coef_eva) … … 464 503 CALL getin_p('snow_fallspeed_clr',snow_fallspeed_clr) 465 504 CALL getin_p('snow_fallspeed_cld',snow_fallspeed_cld) 505 466 506 ! for condensation and ice supersaturation 467 507 CALL getin_p('ok_unadjusted_clouds',ok_unadjusted_clouds) … … 483 523 CALL getin_p('coef_shear_lscp',coef_shear_lscp) 484 524 CALL getin_p('chi_mixing_lscp',chi_mixing_lscp) 525 485 526 ! for cloudth routines 486 527 CALL getin_p('ok_lscp_mergecond',ok_lscp_mergecond) … … 495 536 CALL getin_p('cloudth_vert_alpha_th',vert_alpha_th) 496 537 CALL getin_p('iflag_cloudth_vert_noratqs',iflag_cloudth_vert_noratqs) 538 539 ! for subgrid water variability (ratqs) routines 540 CALL getin_p('tau_var', tau_var) 541 CALL getin_p('fac_tau', fac_tau) 542 CALL getin_p('tau_cumul', tau_cumul) 543 CALL getin_p('a_ratqs_wake', a_ratqs_wake) 544 CALL getin_p('a_ratqs_cv', a_ratqs_cv) 545 497 546 498 547 WRITE(lunout,*) 'lscp_ini, niter_lscp:', niter_lscp … … 589 638 WRITE(lunout,*) 'lscp_ini, cloudth_vert_alpha_th:', vert_alpha_th 590 639 WRITE(lunout,*) 'lscp_ini, iflag_cloudth_vert_noratqs:', iflag_cloudth_vert_noratqs 640 ! for subgrid water variability (ratqs) routines 641 WRITE(lunout,*) 'lscp_ini, tau_var:', tau_var 642 WRITE(lunout,*) 'lscp_ini, fac_tau:', fac_tau 643 WRITE(lunout,*) 'lscp_ini, tau_cumulu:', tau_cumul 644 WRITE(lunout,*) 'lscp_ini, a_ratqs_wake:', a_ratqs_wake 645 WRITE(lunout,*) 'lscp_ini, a_ratqs_cv:', a_ratqs_cv 591 646 592 647 … … 626 681 627 682 628 ! AATemporary initialisation683 ! Temporary initialisation 629 684 a_tr_sca(1) = -0.5 630 685 a_tr_sca(2) = -0.5 … … 632 687 a_tr_sca(4) = -0.5 633 688 689 ! Initialisation of variances of subgrid variability of water 690 ! for the prognostic parameterisation 691 ! Works only in 1D so far, but should become a state variable 692 ! of the model and an argument of the routines 693 694 IF (klon.EQ.1) THEN 695 DO k=1,klev 696 DO i=1,klon 697 povariance(i,k) = 0.00000000001 698 var_conv(i,k) = 0.00000000001 699 ENDDO 700 ENDDO 701 ELSE 702 PRINT*, 'variance of subgrid variability of water should be conserved in restart files' 703 ENDIF 704 705 634 706 635 707 RETURN -
LMDZ6/trunk/libf/phylmd/lmdz_ratqs_multi.f90
r5999 r6000 24 24 ratqs_inter_,sigma_qtherm) 25 25 26 USE lmdz_ ratqs_ini, ONLY : a_ratqs_cv,tau_var,fac_tau,tau_cumul,a_ratqs_wake, dqimpl27 USE lmdz_ ratqs_ini, ONLY : RG28 USE lmdz_ ratqs_ini, ONLY : povariance, var_conv26 USE lmdz_lscp_ini, ONLY : a_ratqs_cv,tau_var,fac_tau,tau_cumul,a_ratqs_wake, dqimpl 27 USE lmdz_lscp_ini, ONLY : RG 28 USE lmdz_lscp_ini, ONLY : povariance, var_conv 29 29 USE lmdz_thermcell_dq, ONLY : thermcell_dq 30 30 -
LMDZ6/trunk/libf/phylmd/physiq_mod.F90
r5999 r6000 1892 1892 CALL thermcell_ini(iflag_thermals,prt_level,tau_thermals,lunout, & 1893 1893 & RG,RD,RCPD,RKAPPA,RLVTT,RETV) 1894 CALL ratqs_ini(klon,klev,iflag_thermals,lunout,nbsrf,is_lic,is_ter,RG,RV,RD,RCPD,RLSTT,RLVTT,RTT)1895 CALL lscp_ini(pdtphys,lunout,prt_level,ok_ice_supersat,iflag_ratqs,fl_cor_ebil,&1896 RCPD,RLSTT,RLVTT,RLMLT,RVTMP2,RTT,RD,RV,RG,RPI,EPS_W)1894 CALL lscp_ini(pdtphys,klon,klev,iflag_thermals,nbsrf,is_ter,is_lic,lunout,prt_level, & 1895 ok_ice_supersat,iflag_ratqs,fl_cor_ebil, & 1896 RCPD,RLSTT,RLVTT,RLMLT,RVTMP2,RTT,RD,RV,RG,RPI,EPS_W) 1897 1897 CALL blowing_snow_ini(RCPD, RLSTT, RLVTT, RLMLT, & 1898 1898 RVTMP2, RTT,RD,RG, RV, RPI) -
LMDZ6/trunk/libf/phylmdiso/physiq_mod.F90
r5999 r6000 2035 2035 CALL thermcell_ini(iflag_thermals,prt_level,tau_thermals,lunout, & 2036 2036 & RG,RD,RCPD,RKAPPA,RLVTT,RETV) 2037 CALL ratqs_ini(klon,klev,iflag_thermals,lunout,nbsrf,is_lic,is_ter,RG,RV,RD,RCPD,RLSTT,RLVTT,RTT)2038 CALL lscp_ini(pdtphys,lunout,prt_level,ok_ice_supersat,iflag_ratqs,fl_cor_ebil,&2037 CALL lscp_ini(pdtphys,klon,klev,iflag_thermals,nbsrf,is_ter,is_lic,lunout,prt_level, & 2038 ok_ice_supersat,iflag_ratqs,fl_cor_ebil, & 2039 2039 RCPD,RLSTT,RLVTT,RLMLT,RVTMP2,RTT,RD,RV,RG,RPI,EPS_W) 2040 2040 CALL blowing_snow_ini(RCPD, RLSTT, RLVTT, RLMLT, &
Note: See TracChangeset
for help on using the changeset viewer.
