forked from ufs-community/ufs-weather-model
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
ac6d32e
commit b9ca9bc
Showing
4 changed files
with
364 additions
and
7 deletions.
There are no files selected for viewing
Submodule FV3
updated
11 files
+13 −8 | CMakeLists.txt | |
+60 −0 | ccpp/data/MPAS_typedefs.F90 | |
+50 −0 | ccpp/data/MPAS_typedefs.meta | |
+12 −0 | ccpp/suites/suite_MPAS_RRFS.xml | |
+30 −12 | mpas/ccpp/config/ccpp_prebuild_config.py | |
+252 −0 | mpas/module_fcst_grid_comp.F90 | |
+41 −0 | mpas/module_mpas_config.F90 | |
+285 −10 | mpas/mpas_cap.F90 | |
+216 −0 | mpas/mpas_model.F90 | |
+5 −5 | mpas/ufs_mpas.F90 | |
+53 −557 | mpas/ufs_mpas_subdriver.F90 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,323 @@ | ||
&atmos_model_nml | ||
blocksize = 32 | ||
chksum_debug = .false. | ||
dycore_only = .false. | ||
ccpp_suite = '@[CCPP_SUITE]' | ||
/ | ||
|
||
&diag_manager_nml | ||
prepend_date = .false. | ||
max_output_fields = @[MAX_OUTPUT_FIELDS] | ||
/ | ||
|
||
&fms_nml | ||
clock_grain = 'ROUTINE' | ||
domains_stack_size = 3000000 | ||
print_memory_usage = .false. | ||
/ | ||
|
||
&fms2_io_nml | ||
netcdf_default_format = "netcdf4" | ||
/ | ||
|
||
&external_ic_nml | ||
filtered_terrain = .true. | ||
levp = @[NPZP] | ||
gfs_dwinds = .true. | ||
checker_tr = .false. | ||
nt_checker = 0 | ||
/ | ||
|
||
&nhyd_model | ||
mpas_time_integration = 'SRK3' | ||
mpas_time_integration_order = 2 | ||
mpas_dt = 720. | ||
mpas_split_dynamics_transport = .true. | ||
mpas_number_of_sub_steps = 2 | ||
mpas_dynamics_split_steps = 3 | ||
mpas_h_mom_eddy_visc2 = 0. | ||
mpas_h_mom_eddy_visc4 = 0. | ||
mpas_v_mom_eddy_visc2 = 0. | ||
mpas_h_theta_eddy_visc2 = 0. | ||
mpas_h_theta_eddy_visc4 = 0. | ||
mpas_v_theta_eddy_visc2 = 0. | ||
mpas_horiz_mixing = '2d_smagorinsky' | ||
mpas_len_disp = 120000. | ||
mpas_visc4_2dsmag = 0.05 | ||
mpas_del4u_div_factor = 10 | ||
mpas_w_adv_order = 3 | ||
mpas_theta_adv_order = 3 | ||
mpas_scalar_adv_order = 3 | ||
mpas_u_vadv_order = 3 | ||
mpas_w_vadv_order = 3 | ||
mpas_theta_vadv_order = 3 | ||
mpas_scalar_vadv_order = 3 | ||
mpas_scalar_advection = .true. | ||
mpas_positive_definite = .false. | ||
mpas_monotonic = .true. | ||
mpas_coef_3rd_order = 0.25 | ||
mpas_smagorinsky_coef = 0.125 | ||
mpas_mix_full = .true. | ||
mpas_epssm = 0.1 | ||
mpas_smdiv = 0.1 | ||
mpas_apvm_upwinding = 0.5 | ||
mpas_h_ScaleWithMesh = .true. | ||
/ | ||
&damping | ||
mpas_zd = 22000. | ||
mpas_xnutr = 0.2 | ||
mpas_cam_coef = 0. | ||
mpas_cam_damping_levels = 0 | ||
mpas_rayleigh_damp_u = .true. | ||
mpas_rayleigh_damp_u_timescale_days = 5. | ||
mpas_number_rayleigh_damp_u_levels = 3 | ||
|
||
&gfs_physics_nml | ||
fhzero = @[FHZERO] | ||
h2o_phys = .true. | ||
ldiag3d = @[LDIAG3D] | ||
qdiag3d = @[QDIAG3D] | ||
print_diff_pgr = @[PRINT_DIFF_PGR] | ||
fhcyc = @[FHCYC] | ||
use_ufo = .true. | ||
pre_rad = .false. | ||
imp_physics = 11 | ||
pdfcld = .false. | ||
fhswr = 3600. | ||
fhlwr = 3600. | ||
ialb = 1 | ||
iems = 1 | ||
iaer = @[IAER] | ||
icliq_sw = 2 | ||
iovr = @[IOVR] | ||
ico2 = 2 | ||
isubc_sw = 2 | ||
isubc_lw = 2 | ||
isol = 2 | ||
lwhtr = .true. | ||
swhtr = .true. | ||
cnvgwd = .true. | ||
shal_cnv = .true. | ||
cal_pre = .false. | ||
redrag = .true. | ||
dspheat = .true. | ||
hybedmf = .false. | ||
satmedmf = .true. | ||
isatmedmf = 1 | ||
lheatstrg = @[LHEATSTRG] | ||
lseaspray = @[LSEASPRAY] | ||
random_clds = @[RANDOM_CLDS] | ||
trans_trac = .true. | ||
cnvcld = @[CNVCLD] | ||
imfshalcnv = @[IMFSHALCNV] | ||
imfdeepcnv = @[IMFDEEPCNV] | ||
ras = @[RAS] | ||
cdmbgwd = @[CDMBWD] | ||
prslrd0 = 0. | ||
ivegsrc = 1 | ||
isot = 1 | ||
lsoil = 4 | ||
lsm = 1 | ||
iopt_dveg = 1 | ||
iopt_crs = 1 | ||
iopt_btr = 1 | ||
iopt_run = 1 | ||
iopt_sfc = 1 | ||
iopt_frz = 1 | ||
iopt_inf = 1 | ||
iopt_rad = 1 | ||
iopt_alb = 2 | ||
iopt_snf = 4 | ||
iopt_tbot = 2 | ||
iopt_stc = 1 | ||
iopt_trs = 2 | ||
iopt_diag = 2 | ||
debug = .false. | ||
oz_phys = .false. | ||
oz_phys_2015 = .true. | ||
nstf_name = 2,0,0,0,0 | ||
nst_anl = .true. | ||
psautco = 0.0008,0.0005 | ||
prautco = 0.00015,0.00015 | ||
lgfdlmprad = .true. | ||
cplchm = @[CPLCHM] | ||
cplwav = @[CPLWAV] | ||
cplwav2atm = @[CPLWAV2ATM] | ||
effr_in = .true. | ||
ldiag_ugwp = .false. | ||
do_ugwp = .false. | ||
do_tofd = .true. | ||
do_sppt = @[DO_SPPT] | ||
do_shum = @[DO_SHUM] | ||
do_skeb = @[DO_SKEB] | ||
lndp_type = @[LNDP_TYPE] | ||
n_var_lndp = @[N_VAR_LNDP] | ||
fscav_aero = @[FSCAV_AERO] | ||
do_RRTMGP = @[DO_RRTMGP] | ||
active_gases = 'h2o_co2_o3_n2o_ch4_o2' | ||
ngases = 6 | ||
lw_file_gas = 'rrtmgp-data-lw-g128-210809.nc' | ||
lw_file_clouds = 'rrtmgp-cloud-optics-coeffs-lw.nc' | ||
sw_file_gas = 'rrtmgp-data-sw-g112-210809.nc' | ||
sw_file_clouds = 'rrtmgp-cloud-optics-coeffs-sw.nc' | ||
rrtmgp_nGptsSW = 112 | ||
rrtmgp_nGptsLW = 128 | ||
rrtmgp_nBandsLW = 16 | ||
rrtmgp_nBandsSW = 14 | ||
rrtmgp_lw_phys_blksz = 16 | ||
doGP_cldoptics_LUT = @[DOGP_CLDOPTICS_LUT] | ||
doGP_lwscat = @[DOGP_LWSCAT] | ||
progsigma = @[PROGSIGMA] | ||
/ | ||
|
||
&gfdl_cloud_microphysics_nml | ||
sedi_transport = .true. | ||
do_sedi_heat = .false. | ||
rad_snow = .true. | ||
rad_graupel = .true. | ||
rad_rain = .true. | ||
const_vi = .false. | ||
const_vs = .false. | ||
const_vg = .false. | ||
const_vr = .false. | ||
vi_max = 1. | ||
vs_max = 2. | ||
vg_max = 12. | ||
vr_max = 12. | ||
qi_lim = 1. | ||
prog_ccn = .false. | ||
do_qa = .true. | ||
fast_sat_adj = .true. | ||
tau_l2v = 225. | ||
tau_v2l = 150. | ||
tau_g2v = 900. | ||
rthresh = 10.e-6 ! This is a key parameter for cloud water | ||
dw_land = 0.16 | ||
dw_ocean = 0.10 | ||
ql_gen = 1.0e-3 | ||
ql_mlt = 1.0e-3 | ||
qi0_crt = 8.0E-5 | ||
qs0_crt = 1.0e-3 | ||
tau_i2s = 1000. | ||
c_psaci = 0.05 | ||
c_pgacs = 0.01 | ||
rh_inc = 0.30 | ||
rh_inr = 0.30 | ||
rh_ins = 0.30 | ||
ccn_l = 300. | ||
ccn_o = 100. | ||
c_paut = 0.5 | ||
c_cracw = 0.8 | ||
use_ppm = .false. | ||
use_ccn = .true. | ||
mono_prof = .true. | ||
z_slope_liq = .true. | ||
z_slope_ice = .true. | ||
de_ice = .false. | ||
fix_negative = .true. | ||
icloud_f = 1 | ||
mp_time = 150. | ||
reiflag = 2 | ||
/ | ||
|
||
&interpolator_nml | ||
interp_method = 'conserve_great_circle' | ||
/ | ||
|
||
&namsfc | ||
FNGLAC = 'global_glacier.2x2.grb' | ||
FNMXIC = 'global_maxice.2x2.grb' | ||
FNTSFC = 'RTGSST.1982.2012.monthly.clim.grb' | ||
FNSNOC = 'global_snoclim.1.875.grb' | ||
FNZORC = 'igbp' | ||
FNALBC = @[FNALBC] | ||
FNALBC2 = 'global_albedo4.1x1.grb' | ||
FNAISC = 'CFSR.SEAICE.1982.2012.monthly.clim.grb' | ||
FNTG3C = 'global_tg3clim.2.6x1.5.grb' | ||
FNVEGC = 'global_vegfrac.0.144.decpercent.grb' | ||
FNVETC = @[FNVETC] | ||
FNSOTC = @[FNSOTC] | ||
FNSOCC = @[FNSOCC] | ||
FNSMCC = @[FNSMCC_control] | ||
FNMSKH = @[FNMSKH_control] | ||
FNTSFA = '' | ||
FNACNA = '' | ||
FNSNOA = '' | ||
FNVMNC = 'global_shdmin.0.144x0.144.grb' | ||
FNVMXC = 'global_shdmax.0.144x0.144.grb' | ||
FNSLPC = 'global_slope.1x1.grb' | ||
FNABSC = @[FNABSC] | ||
LDEBUG = .false. | ||
FSMCL(2) = 99999 | ||
FSMCL(3) = 99999 | ||
FSMCL(4) = 99999 | ||
LANDICE = .true. | ||
FTSFS = 90 | ||
FAISL = 99999 | ||
FAISS = 99999 | ||
FSNOL = 99999 | ||
FSNOS = 99999 | ||
FSICL = 99999 | ||
FSICS = 99999 | ||
FTSFL = 99999 | ||
FVETL = 99999 | ||
FSOTL = 99999 | ||
FvmnL = 99999 | ||
FvmxL = 99999 | ||
FSLPL = 99999 | ||
FABSL = 99999 | ||
/ | ||
|
||
&fv_grid_nml | ||
grid_file = 'INPUT/grid_spec.nc' | ||
/ | ||
|
||
&nam_stochy | ||
STOCHINI=@[STOCHINI], | ||
SKEBNORM=1, | ||
SKEB_NPASS=30, | ||
SKEB_VDOF=5, | ||
SKEB=@[SKEB], | ||
SKEB_TAU=2.16E4, | ||
SKEB_LSCALE=1000.E3, | ||
SKEBINT=1800, | ||
SHUM=@[SHUM], | ||
SHUM_TAU=21600, | ||
SHUM_LSCALE=500000, | ||
SHUMINT=3600, | ||
SPPT=@[SPPT], | ||
SPPT_TAU=21600, | ||
SPPT_LSCALE=500000, | ||
SPPT_LOGIT=.TRUE., | ||
SPPT_SFCLIMIT=.TRUE., | ||
SPPTINT=1800, | ||
ISEED_SHUM=1, | ||
ISEED_SKEB=2, | ||
ISEED_SPPT=3, | ||
/ | ||
|
||
&nam_sfcperts | ||
lndp_type = @[LNDP_TYPE] | ||
lndp_model_type = @[LNDP_MODEL_TYPE] | ||
LNDP_TAU=21600, | ||
LNDP_LSCALE=500000, | ||
ISEED_LNDP=2010, | ||
lndp_var_list = @[LNDP_VAR_LIST] | ||
lndp_prt_list = @[LNDP_PRT_LIST] | ||
/ | ||
|
||
&cires_ugwp_nml | ||
knob_ugwp_solver = 2 | ||
knob_ugwp_source = 1,1,0,0 | ||
knob_ugwp_wvspec = 1,25,25,25 | ||
knob_ugwp_azdir = 2,4,4,4 | ||
knob_ugwp_stoch = 0,0,0,0 | ||
knob_ugwp_effac = 1,1,1,1 | ||
knob_ugwp_doaxyz = 1 | ||
knob_ugwp_doheat = 1 | ||
knob_ugwp_dokdis = 1 | ||
knob_ugwp_ndx4lh = 1 | ||
knob_ugwp_version = 0 | ||
launch_level = 54 | ||
/ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
############################################################################### | ||
# | ||
# Test with MPAS dynamical core | ||
# | ||
############################################################################### | ||
|
||
export TEST_DESCR="Build UWM with MPAS dynamical core" | ||
|
||
export CNTL_DIR=control_mpas | ||
|
||
export LIST_FILES="sfcf000.nc \ | ||
atmf000.nc \ | ||
GFSFLX.GrbF00 \ | ||
GFSPRS.GrbF00 \ | ||
|
||
export_fv3_v16 | ||
export NPZ=127 | ||
export NPZP=128 | ||
export DT_ATMOS=720 | ||
export SYEAR=2021 | ||
export SMONTH=03 | ||
export SDAY=22 | ||
export SHOUR=06 | ||
export RESTART_INTERVAL="12 -1" | ||
export OUTPUT_GRID='gaussian_grid' | ||
export NSTF_NAME='2,0,0,0,0' | ||
export WRITE_DOPOST=.true. | ||
export IAER=5111 | ||
export OUTPUT_FH='0 21 24' | ||
export IOVR=4 | ||
|
||
export FV3_RUN=control_run.IN | ||
export CCPP_SUITE=FV3_GFS_v16 | ||
export INPUT_NML=control_mpas.nml.IN |