Skip to content

Adding Solar diagnostics package #1103

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 11 commits into from
Closed
5 changes: 3 additions & 2 deletions Registry/Registry.EM_COMMON
Original file line number Diff line number Diff line change
Expand Up @@ -3040,8 +3040,9 @@ package icedepth_zero seaice_thickness_opt==0 - -
package icedepth_one seaice_thickness_opt==1 - state:icedepth

#Time series options for text output
package notseries process_time_series==0 - -
package tseries process_time_series==1 - state:ts_hour,ts_u,ts_v,ts_q,ts_t,ts_psfc,ts_glw,ts_gsw,ts_hfx,ts_lh,ts_tsk,ts_tslb,ts_clw,ts_rainc,ts_rainnc,ts_u_profile,ts_v_profile,ts_gph_profile,ts_th_profile
package notseries process_time_series==0 - -
package tseries process_time_series==1 - state:ts_hour,ts_u,ts_v,ts_q,ts_t,ts_psfc,ts_glw,ts_gsw,ts_hfx,ts_lh,ts_tsk,ts_tslb,ts_clw,ts_rainc,ts_rainnc,ts_u_profile,ts_v_profile,ts_gph_profile,ts_th_profile
package tseries_add_solar process_time_series==2 - state:ts_hour,ts_u,ts_v,ts_q,ts_t,ts_psfc,ts_glw,ts_gsw,ts_hfx,ts_lh,ts_tsk,ts_tslb,ts_clw,ts_rainc,ts_rainnc,ts_u_profile,ts_v_profile,ts_gph_profile,ts_th_profile,ts_cldfrac2d,ts_wvp,ts_lwp,ts_iwp,ts_swp,ts_lwp_tot,ts_iwp_tot,ts_swp_tot,ts_re_qc,ts_re_qi,ts_re_qs,ts_re_qc_tot,ts_re_qi_tot,ts_re_qs_tot,ts_tau_qc,ts_tau_qi,ts_tau_qs,ts_tau_qc_tot,ts_tau_qi_tot,ts_tau_qs_tot,ts_cbaseht,ts_ctopht,ts_cbaseht_tot,ts_ctopht_tot,ts_clrnidx

# WRF-HAILCAST
state real HAILCAST_DHAIL1 ij misc 1 - r "HAILCAST_DHAIL1" "WRF-HAILCAST Hail Diameter, 1st rank order" "mm"
Expand Down
1 change: 1 addition & 0 deletions Registry/registry.em_shared_collection
Original file line number Diff line number Diff line change
Expand Up @@ -26,3 +26,4 @@ include registry.bdy_perturb
include registry.hyb_coord
include registry.new3d_wif
include registry.trad_fields
include registry.solar_fields
68 changes: 68 additions & 0 deletions Registry/registry.solar_fields
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
# Registry file specifically for the output of WRF-Solar fields

# Namelist parameter to activate the output of WRF-Solar fields

rconfig integer solar_diagnostics namelist,diags 1 0 - "solar diagnostics: 0=no, 1=yes"

# 3-D arrays used for diagnosed quantities
state real qc_tot ikj dyn_em 1 - - "QC_TOT" "CLOUD WATER MIXING RATIO RES + UNRES" "kg kg-1"
state real qi_tot ikj dyn_em 1 - - "QI_TOT" "ICE MIXING RATIO RES + UNRES" "kg kg-1"

# 2-D arrays that will be filled with diagnosed quantities
state real cldfrac2d ij dyn_em 1 - h "CLDFRAC2D" "2-D MAX CLOUD FRACTION" "%"
state real wvp ij dyn_em 1 - h "WVP" "WATER VAPOR PATH" "kg m-2"
state real lwp ij dyn_em 1 - h "LWP" "LIQUID CLOUD WATER PATH" "kg m-2"
state real iwp ij dyn_em 1 - h "IWP" "ICE CLOUD WATER PATH" "kg m-2"
state real swp ij dyn_em 1 - h "SWP" "SNOW CLOUD WATER PATH" "kg m-2"
state real wp_sum ij dyn_em 1 - h "WP_SUM" "SUM OF LWP+IWP+SWP" "kg m-2"
state real lwp_tot ij dyn_em 1 - h "LWP_TOT" "LIQUID CLOUD WATER PATH RES + UNRES" "kg m-2"
state real iwp_tot ij dyn_em 1 - h "IWP_TOT" "ICE CLOUD WATER PATH RES + UNRES" "kg m-2"
state real wp_tot_sum ij dyn_em 1 - h "WP_TOT_SUM" "SUM OF LWP+IWP+SWP RES + UNRES" "kg m-2"
state real re_qc ij dyn_em 1 - h "RE_QC" "MASS-WEIGHTED LIQUID CLOUD EFFECTIVE RADIUS" "m"
state real re_qi ij dyn_em 1 - h "RE_QI" "MASS-WEIGHTED ICE EFFECTIVE RADIUS" "m"
state real re_qs ij dyn_em 1 - h "RE_QS" "MASS-WEIGHTED SNOW EFFECTIVE RADIUS" "m"
state real re_qc_tot ij dyn_em 1 - h "RE_QC_TOT" "MASS-WEIGHTED LIQUID CLOUD EFFECTIVE RADIUS RES + UNRES" "m"
state real re_qi_tot ij dyn_em 1 - h "RE_QI_TOT" "MASS-WEIGHTED ICE EFFECTIVE RADIUS RES + UNRES" "m"
state real tau_qc ij dyn_em 1 - h "TAU_QC" "MASS-WEIGHTED LIQUID CLOUD OPTICAL THICKNESS" " "
state real tau_qi ij dyn_em 1 - h "TAU_QI" "MASS-WEIGHTED ICE OPTICAL THICKNESS" " "
state real tau_qs ij dyn_em 1 - h "TAU_QS" "MASS-WEIGHTED SNOW OPTICAL THICKNESS" " "
state real tau_qc_tot ij dyn_em 1 - h "TAU_QC_TOT" "MASS-WEIGHTED LIQUID CLOUD OPTICAL THICKNESS RES + UNRES" " "
state real tau_qi_tot ij dyn_em 1 - h "TAU_QI_TOT" "MASS-WEIGHTED ICE OPTICAL THICKNESS RES + UNRES" " "
state real cbaseht ij dyn_em 1 - h "CBASEHT" "CLOUD BASE HEIGHT" "m"
state real ctopht ij dyn_em 1 - h "CTOPHT" "CLOUD TOP HEIGHT" "m"
state real cbaseht_tot ij dyn_em 1 - h "CBASEHT_TOT" "CLOUD BASE HEIGHT RES + UNRES" "m"
state real ctopht_tot ij dyn_em 1 - h "CTOPHT_TOT" "CLOUD TOP HEIGHT RES + UNRES" "m"
state real clrnidx ij dyn_em 1 - h "CLRNIDX" "CLEARNESS INDEX" " "
state real sza ij dyn_em 1 - h "SZA" "SOLAR ZENITH ANGLE" "deg"

# Time series variables
state real ts_cldfrac2d ?! misc - - - "TS_CLDFRAC2D" "2-D MAX CLOUD FRACTION"
state real ts_wvp ?! misc - - - "TS_WVP" "WATER VAPOR PATH"
state real ts_lwp ?! misc - - - "TS_LWP" "LIQUID CLOUD WATER PATH"
state real ts_iwp ?! misc - - - "TS_IWP" "ICE CLOUD WATER PATH"
state real ts_swp ?! misc - - - "TS_SWP" "SNOW CLOUD WATER PATH"
state real ts_wp_sum ?! misc - - - "TS_WP_SUM" "SUM OF LWP+IWP+SWP"
state real ts_lwp_tot ?! misc - - - "TS_LWP_TOT" "LIQUID CLOUD WATER PATH RES + UNRES"
state real ts_iwp_tot ?! misc - - - "TS_IWP_TOT" "ICE CLOUD WATER PATH RES + UNRES"
state real ts_wp_tot_sum ?! misc - - - "TS_WP_TOT_SUM" "SUM OF LWP+IWP+SWP RES + UNRES"
state real ts_re_qc ?! misc - - - "TS_RE_QC" "MASS-WEIGHTED LIQUID CLOUD EFFECTIVE RADIUS"
state real ts_re_qi ?! misc - - - "TS_RE_QI" "MASS-WEIGHTED ICE EFFECTIVE RADIUS"
state real ts_re_qs ?! misc - - - "TS_RE_QS" "MASS-WEIGHTED SNOW EFFECTIVE RADIUS"
state real ts_re_qc_tot ?! misc - - - "TS_RE_QC_TOT" "MASS-WEIGHTED LIQUID CLOUD EFFECTIVE RADIUS RES + UNRES"
state real ts_re_qi_tot ?! misc - - - "TS_RE_QI_TOT" "MASS-WEIGHTED ICE EFFECTIVE RADIUS RES + UNRES"
state real ts_tau_qc ?! misc - - - "TS_TAU_QC" "MASS-WEIGHTED LIQUID CLOUD OPTICAL THICKNESS"
state real ts_tau_qi ?! misc - - - "TS_TAU_QI" "MASS-WEIGHTED ICE OPTICAL THICKNESS"
state real ts_tau_qs ?! misc - - - "TS_TAU_QS" "MASS-WEIGHTED SNOW OPTICAL THICKNESS"
state real ts_tau_qc_tot ?! misc - - - "TS_TAU_QC_TOT" "MASS-WEIGHTED LIQUID CLOUD OPTICAL THICKNESS RES + UNRES"
state real ts_tau_qi_tot ?! misc - - - "TS_TAU_QI_TOT" "MASS-WEIGHTED ICE OPTICAL THICKNESS RES + UNRES"
state real ts_cbaseht ?! misc - - - "TS_CBASEHT" "CLOUD BASE HEIGHT"
state real ts_ctopht ?! misc - - - "TS_CTOPHT" "CLOUD TOP HEIGHT"
state real ts_cbaseht_tot ?! misc - - - "TS_CBASEHT_TOT" "CLOUD BASE HEIGHT RES + UNRES"
state real ts_ctopht_tot ?! misc - - - "TS_CTOPHT_TOT" "CLOUD TOP HEIGHT RES + UNRES"
state real ts_clrnidx ?! misc - - - "TS_CLRNIDX" "CLEARNESS INDEX"
state real ts_sza ?! misc - - - "TS_SZA" "SOLAR ZENITH ANGLE"

# Package declarations

package skip_solar_output solar_diagnostics==0 - -
package do_solar_output solar_diagnostics==1 - state:cldfrac2d,wvp,lwp,iwp,swp,wp_sum,lwp_tot,iwp_tot,wp_tot_sum,re_qc,re_qi,re_qs,re_qc_tot,re_qi_tot,tau_qc,tau_qi,tau_qs,tau_qc_tot,tau_qi_tot,cbaseht,ctopht,cbaseht_tot,ctopht_tot,clrnidx,sza
4 changes: 3 additions & 1 deletion dyn_em/module_first_rk_step_part1.F
Original file line number Diff line number Diff line change
Expand Up @@ -265,6 +265,7 @@ SUBROUTINE first_rk_step_part1 ( grid , config_flags &
& ,o3input=config_flags%o3input ,O3rad=grid%o3rad &
& ,aer_opt=config_flags%aer_opt ,aerod=aerod(:,:,:,P_ocarbon:P_upperaer) &
& ,swint_opt=config_flags%swint_opt &
& ,solar_opt=config_flags%solar_diagnostics &
& ,P8W=grid%p_hyd_w ,P=grid%p_hyd ,PI=pi_phy &
& ,RADT=grid%radt ,RA_CALL_OFFSET=grid%ra_call_offset &
& ,RHO=grid%rho ,RLWTOA=grid%rlwtoa &
Expand Down Expand Up @@ -306,7 +307,7 @@ SUBROUTINE first_rk_step_part1 ( grid , config_flags &
& ,PAERLEV=grid%paerlev ,ID=grid%id &
& ,CAM_ABS_DIM1=grid%cam_abs_dim1, CAM_ABS_DIM2=grid%cam_abs_dim2 &
& ,CAM_ABS_FREQ_S=grid%cam_abs_freq_s &
& ,XTIME=grid%xtime &
& ,XTIME=grid%xtime &
,CURR_SECS=curr_secs, ADAPT_STEP_FLAG=adapt_step_flag &
#if ( EM_CORE == 1)
& ,mut=grid%mut,dnw=grid%dnw & ! FARMS coupling
Expand Down Expand Up @@ -382,6 +383,7 @@ SUBROUTINE first_rk_step_part1 ( grid , config_flags &
& , QNDROP=scalar(ims,kms,jms,P_QNDROP), F_QNDROP=F_QNDROP &
& ,QNIFA=scalar(ims,kms,jms,P_QNIFA),F_QNIFA=F_QNIFA & !Trude
& ,QNWFA=scalar(ims,kms,jms,P_QNWFA),F_QNWFA=F_QNWFA & !Trude
& ,qc_tot=grid%qc_tot, qi_tot=grid%qi_tot & ! Solar diag
& ,ACSWUPT=grid%acswupt ,ACSWUPTC=grid%acswuptc &
& ,ACSWDNT=grid%acswdnt ,ACSWDNTC=grid%acswdntc &
& ,ACSWUPB=grid%acswupb ,ACSWUPBC=grid%acswupbc &
Expand Down
4 changes: 4 additions & 0 deletions main/depend.common
Original file line number Diff line number Diff line change
Expand Up @@ -768,6 +768,7 @@ module_diagnostics_driver.o: \
module_diag_hailcast.o \
module_diag_rasm.o \
module_diag_trad_fields.o \
module_diag_solar.o \
../frame/module_comm_dm.o \
../frame/module_state_description.o \
../frame/module_domain.o \
Expand Down Expand Up @@ -814,6 +815,9 @@ module_diag_trad_fields.o: \
module_diag_functions.o \
../share/module_model_constants.o

module_diag_solar.o: \
../share/module_model_constants.o

module_diag_refl.o: \
../frame/module_dm.o \
../share/module_model_constants.o
Expand Down
3 changes: 2 additions & 1 deletion phys/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -211,7 +211,8 @@ DIAGNOSTIC_MODULES_EM = \
module_diag_rasm.o \
module_diag_pld.o \
module_diag_zld.o \
module_diag_trad_fields.o
module_diag_trad_fields.o \
module_diag_solar.o

DIAGNOSTIC_MODULES_NMM = \
module_diag_refl.o
Expand Down
Loading