Changeset 4123 for trunk/WRF.COMMON
- Timestamp:
- Mar 13, 2026, 10:57:24 AM (3 weeks ago)
- Location:
- trunk/WRF.COMMON/INTERFACES_V4
- Files:
-
- 3 edited
-
dynphy_wrf_generic_lmd/iniphysiq_mod.F (modified) (1 diff)
-
dynphy_wrf_generic_lmd/update_inputs_physiq_mod.F (modified) (1 diff)
-
module_lmd_driver.F (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/WRF.COMMON/INTERFACES_V4/dynphy_wrf_generic_lmd/iniphysiq_mod.F
r2866 r4123 29 29 use time_phylmdz_mod, only: dtphys, daysec,day_ini 30 30 use planete_mod, only: year_day, periastr, apoastr, peri_day,& 31 obliquit, z0 , lmixmin, emin_turb31 obliquit, z0!, lmixmin, emin_turb 32 32 use surfdat_h, only: emissiv,iceradius, & 33 33 emisice,dtemisice -
trunk/WRF.COMMON/INTERFACES_V4/dynphy_wrf_generic_lmd/update_inputs_physiq_mod.F
r3194 r4123 100 100 101 101 use planete_mod, only: year_day, periastr, apoastr, peri_day,& 102 obliquit, z0 , lmixmin, emin_turb102 obliquit, z0!, lmixmin, emin_turb 103 103 use surfdat_h, only: emissiv,iceradius, & 104 104 emisice,dtemisice -
trunk/WRF.COMMON/INTERFACES_V4/module_lmd_driver.F
r4051 r4123 48 48 HFMAX,ZMAX,& 49 49 USTM,HFX,& 50 SLPX,SLPY,RESTART ,&51 DT_COND,RH_CH4)50 SLPX,SLPY,RESTART)!,& 51 !DT_COND,RH_CH4) 52 52 ! NB: module_lmd_driver_output1.inc : output arguments generated from Registry 53 53 … … 115 115 RTHPLATEN,RUPLATEN,RVPLATEN, & 116 116 HR_SW,HR_LW,HR_DYN,DT_RAD,& 117 CLOUDFRAC,RH,DQICE,DQVAP,DTLSC,DTRAIN,DT_MOIST,H2OICE_REFF ,&118 DT_COND, RH_CH4117 CLOUDFRAC,RH,DQICE,DQVAP,DTLSC,DTRAIN,DT_MOIST,H2OICE_REFF!,& 118 !DT_COND, RH_CH4 119 119 REAL, DIMENSION( ims:ime, kms:kme+1, jms:jme ), INTENT(INOUT ) :: & 120 120 P_Q2 … … 447 447 q_prof(:,2) = moist(i,kps:kpe,j,P_QC) / (1.d0 + moist(i,kps:kpe,j,P_QV)) 448 448 ! conversion from mass mixing ratio in WRF to specific concentration in Physiq 449 ELSE IF (TRACER_MODE == 61) THEN450 ! to be clean we should have an automatized process that makes sure that moist is sent to igcm_h2o_vap and etc.451 q_prof(:,1) = SCALAR(i,kps:kpe,j,P_mu_m0as) / (1.d0 + SCALAR(i,kps:kpe,j,P_CH4))452 q_prof(:,2) = SCALAR(i,kps:kpe,j,P_mu_m3as) / (1.d0 + SCALAR(i,kps:kpe,j,P_CH4))453 q_prof(:,3) = SCALAR(i,kps:kpe,j,P_mu_m0af) / (1.d0 + SCALAR(i,kps:kpe,j,P_CH4))454 q_prof(:,4) = SCALAR(i,kps:kpe,j,P_mu_m3af) / (1.d0 + SCALAR(i,kps:kpe,j,P_CH4))455 q_prof(:,5) = SCALAR(i,kps:kpe,j,P_mu_m0n) / (1.d0 + SCALAR(i,kps:kpe,j,P_CH4))456 q_prof(:,6) = SCALAR(i,kps:kpe,j,P_mu_m3n) / (1.d0 + SCALAR(i,kps:kpe,j,P_CH4))457 q_prof(:,7) = SCALAR(i,kps:kpe,j,P_mu_m3CH4) / (1.d0 + SCALAR(i,kps:kpe,j,P_CH4))458 q_prof(:,8) = SCALAR(i,kps:kpe,j,P_CH4) / (1.d0 + SCALAR(i,kps:kpe,j,P_CH4))449 !ELSE IF (TRACER_MODE == 61) THEN 450 ! ! to be clean we should have an automatized process that makes sure that moist is sent to igcm_h2o_vap and etc. 451 ! q_prof(:,1) = SCALAR(i,kps:kpe,j,P_mu_m0as) / (1.d0 + SCALAR(i,kps:kpe,j,P_CH4)) 452 ! q_prof(:,2) = SCALAR(i,kps:kpe,j,P_mu_m3as) / (1.d0 + SCALAR(i,kps:kpe,j,P_CH4)) 453 ! q_prof(:,3) = SCALAR(i,kps:kpe,j,P_mu_m0af) / (1.d0 + SCALAR(i,kps:kpe,j,P_CH4)) 454 ! q_prof(:,4) = SCALAR(i,kps:kpe,j,P_mu_m3af) / (1.d0 + SCALAR(i,kps:kpe,j,P_CH4)) 455 ! q_prof(:,5) = SCALAR(i,kps:kpe,j,P_mu_m0n) / (1.d0 + SCALAR(i,kps:kpe,j,P_CH4)) 456 ! q_prof(:,6) = SCALAR(i,kps:kpe,j,P_mu_m3n) / (1.d0 + SCALAR(i,kps:kpe,j,P_CH4)) 457 ! q_prof(:,7) = SCALAR(i,kps:kpe,j,P_mu_m3CH4) / (1.d0 + SCALAR(i,kps:kpe,j,P_CH4)) 458 ! q_prof(:,8) = SCALAR(i,kps:kpe,j,P_CH4) / (1.d0 + SCALAR(i,kps:kpe,j,P_CH4)) 459 459 ELSE 460 460 q_prof(:,1:nq) = SCALAR(i,kps:kpe,j,2:nq+1) !! the names were set above !! one dummy tracer in WRF … … 663 663 DQICE,DQVAP,REEVAP,SURFRAIN,& 664 664 ALBEQ,FLUXTOP_DN,FLUXABS_SW,FLUXTOP_LW,FLUXSURF_SW,& 665 FLUXSURF_LW,FLXGRD,DTLSC,DTRAIN,DT_MOIST,H2OICE_REFF,LATENT_HF ,&666 DT_COND,RH_CH4)665 FLUXSURF_LW,FLXGRD,DTLSC,DTRAIN,DT_MOIST,H2OICE_REFF,LATENT_HF)!,& 666 !DT_COND,RH_CH4) 667 667 !!! 668 668 !print *, '** ',planet_type,'** OUTPUT PHYSICS DONE' … … 752 752 SCALAR(i,kps:kpe,j,P_MARKER) = SCALAR(i,kps:kpe,j,P_MARKER)*exp(-dt/tau_decay) 753 753 SCALAR(i,1,j,P_MARKER) = 1. !! this tracer is emitted in the surface layer 754 CASE(61) !emoisan755 scalar(i,kps:kpe,j,P_mu_m0as)=scalar(i,kps:kpe,j,P_mu_m0as) &756 +zdqfi_omp(subs,kps:kpe,1)*dt * (1.d0+scalar(i,kps:kpe,j,P_CH4))757 scalar(i,kps:kpe,j,P_mu_m3as)=scalar(i,kps:kpe,j,P_mu_m3as) &758 +zdqfi_omp(subs,kps:kpe,2)*dt * (1.d0+scalar(i,kps:kpe,j,P_CH4))759 scalar(i,kps:kpe,j,P_mu_m0af)=scalar(i,kps:kpe,j,P_mu_m0af) &760 +zdqfi_omp(subs,kps:kpe,3)*dt * (1.d0+scalar(i,kps:kpe,j,P_CH4))761 scalar(i,kps:kpe,j,P_mu_m3af)=scalar(i,kps:kpe,j,P_mu_m3af) &762 +zdqfi_omp(subs,kps:kpe,4)*dt * (1.d0+scalar(i,kps:kpe,j,P_CH4))763 scalar(i,kps:kpe,j,P_mu_m0n)=scalar(i,kps:kpe,j,P_mu_m0n) &764 +zdqfi_omp(subs,kps:kpe,5)*dt * (1.d0+scalar(i,kps:kpe,j,P_CH4))765 scalar(i,kps:kpe,j,P_mu_m3n)=scalar(i,kps:kpe,j,P_mu_m3n) &766 +zdqfi_omp(subs,kps:kpe,6)*dt * (1.d0+scalar(i,kps:kpe,j,P_CH4))767 scalar(i,kps:kpe,j,P_mu_m3CH4)=scalar(i,kps:kpe,j,P_mu_m3CH4) &768 +zdqfi_omp(subs,kps:kpe,7)*dt * (1.d0+scalar(i,kps:kpe,j,P_CH4))769 scalar(i,kps:kpe,j,P_CH4)=scalar(i,kps:kpe,j,P_CH4) &770 +zdqfi_omp(subs,kps:kpe,8)*dt * (1.d0+scalar(i,kps:kpe,j,P_CH4))754 ! CASE(61) !emoisan 755 ! scalar(i,kps:kpe,j,P_mu_m0as)=scalar(i,kps:kpe,j,P_mu_m0as) & 756 ! +zdqfi_omp(subs,kps:kpe,1)*dt * (1.d0+scalar(i,kps:kpe,j,P_CH4)) 757 ! scalar(i,kps:kpe,j,P_mu_m3as)=scalar(i,kps:kpe,j,P_mu_m3as) & 758 ! +zdqfi_omp(subs,kps:kpe,2)*dt * (1.d0+scalar(i,kps:kpe,j,P_CH4)) 759 ! scalar(i,kps:kpe,j,P_mu_m0af)=scalar(i,kps:kpe,j,P_mu_m0af) & 760 ! +zdqfi_omp(subs,kps:kpe,3)*dt * (1.d0+scalar(i,kps:kpe,j,P_CH4)) 761 ! scalar(i,kps:kpe,j,P_mu_m3af)=scalar(i,kps:kpe,j,P_mu_m3af) & 762 ! +zdqfi_omp(subs,kps:kpe,4)*dt * (1.d0+scalar(i,kps:kpe,j,P_CH4)) 763 ! scalar(i,kps:kpe,j,P_mu_m0n)=scalar(i,kps:kpe,j,P_mu_m0n) & 764 ! +zdqfi_omp(subs,kps:kpe,5)*dt * (1.d0+scalar(i,kps:kpe,j,P_CH4)) 765 ! scalar(i,kps:kpe,j,P_mu_m3n)=scalar(i,kps:kpe,j,P_mu_m3n) & 766 ! +zdqfi_omp(subs,kps:kpe,6)*dt * (1.d0+scalar(i,kps:kpe,j,P_CH4)) 767 ! scalar(i,kps:kpe,j,P_mu_m3CH4)=scalar(i,kps:kpe,j,P_mu_m3CH4) & 768 ! +zdqfi_omp(subs,kps:kpe,7)*dt * (1.d0+scalar(i,kps:kpe,j,P_CH4)) 769 ! scalar(i,kps:kpe,j,P_CH4)=scalar(i,kps:kpe,j,P_CH4) & 770 ! +zdqfi_omp(subs,kps:kpe,8)*dt * (1.d0+scalar(i,kps:kpe,j,P_CH4)) 771 771 CASE DEFAULT 772 772 !SCALAR(i,kps:kpe,j,2:nq+1)=SCALAR(i,kps:kpe,j,2:nq+1)+zdqfi_omp(subs,kps:kpe,1:nq)*dt !!! here dt is needed
Note: See TracChangeset
for help on using the changeset viewer.
