Skip to content

Commit c9199f5

Browse files
BinLiu-NOAAwramstromRuiyuSunBijuThomas-NOAAdustinswales
authored
Bring in some HAFSv2 related UFSATM developments (#1047)
- NoahMP LSM and sea ice related updates for HAFS moving nesting from @RongqianYang-NOAA, @barlage, and @wramstrom. Meanwhile, lots of contribution (discussions/diagnostics/debugging/testing) from @ChuankaiWang-NOAA, @yonghuiweng, ZhanZhang-NOAA, @helin.wei@noaa.gov, @fanglin.yang@noaa.gov, @BinLiu-NOAA as well. - Add snow layer and snow soil layer thickness to GFS_type. - Add checks for soil moisture for Noah MP. - Changes for distinguishing between new and old points for snow-related fields reset in moving nest physics. - Add leading_edge logical array to indicate which nest points have been interpolated. Needed for NOAH MP moving nest upgrades. - NOAHMP moving nest sea ice and cryosphere fixes and added variables tiice, tisfc, sncovr, fice, hice. - HAFS moving-nesting related 3D-IAU capability. (from @XuLu-NOAA) - Enable RRTMGP working with nesting (moving-nesting) configurations. (from @Qingfu-Liu, @dustinswales) - Introduce two Thompson MP related namelist options of fs_fac_rain and fs_fac_snow for adjustments of max terminal fall speeds of rain and snow. (from @WeiguoWang-NOAA) - Introduce two namelist options of cat_adj_deep and cat_adj_shal to adjust convective adjustment time in SASAS convection scheme. (from @JunghoonShin-NOAA) - Update HAFS moving-nesting internal tracker to output moving nest domain location to support the moving-nesting forecast restart capability. --------- Co-authored-by: William Ramstrom <William.Ramstrom@noaa.gov> Co-authored-by: Ruiyu Sun <Ruiyu.Sun@noaa.gov> Co-authored-by: BijuThomas-NOAA <biju.thomas@noaa.gov> Co-authored-by: Dustin Swales <dustin.swales@noaa.gov> Co-authored-by: Dusan Jovic <48258889+DusanJovic-NOAA@users.noreply.github.com> Co-authored-by: Dusan Jovic <dusan.jovic@noaa.gov> Co-authored-by: AndrewHazelton <andrew.hazelton@noaa.gov> Co-authored-by: Weiguo Wang <weiguo.wang@noaa.gov> Co-authored-by: XuLu-NOAA <Xu.Lu@noaa.gov> Co-authored-by: Bin.Li <bin.li@noaa.gov> Co-authored-by: JungHoon Shin <junghoon.shin@noaa.gov> Co-authored-by: Rongqian Yang <ryang@orion-login-2.hpc.msstate.edu> Co-authored-by: Anders Jensen <anders.jensen@noaa.gov> Co-authored-by: Ping Zhu <pzu@orion-login-1.hpc.msstate.edu> Co-authored-by: Grant Firl <grant.firl@noaa.gov> Co-authored-by: Kwun Y. Fung <kwun@orion-login-3.hpc.msstate.edu> Co-authored-by: dustinswales <dswales@ucar.edu> Co-authored-by: Kwun Y. Fung <kwun@orion-login-1.hpc.msstate.edu> Co-authored-by: Kwun Y. Fung <kwun@hercules-login-1.hpc.msstate.edu> Co-authored-by: Weiguo Wang <Weiguo.Wang@gaea63.ncrc.gov>
1 parent 30b6019 commit c9199f5

13 files changed

+2833
-540
lines changed

ccpp/data/GFS_typedefs.F90

Lines changed: 29 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1083,6 +1083,8 @@ module GFS_typedefs
10831083
real(kind=kind_phys) :: ssati_min !< minimum supersaturation over ice threshold for deposition nucleation
10841084
real(kind=kind_phys) :: Nt_i_max !< maximum threshold number concentration of cloud ice water crystals in air
10851085
real(kind=kind_phys) :: rr_min !< multiplicative tuning parameter for microphysical sedimentation minimum threshold
1086+
real(kind=kind_phys) :: fs_fac_rain !< adjustment for rain fall speed
1087+
real(kind=kind_phys) :: fs_fac_snow !< adjustment for snow fall speed
10861088

10871089

10881090
!--- GFDL microphysical paramters
@@ -1365,6 +1367,7 @@ module GFS_typedefs
13651367
!< Nccn: CCN number concentration in cm^(-3)
13661368
!< Until a realistic Nccn is provided, Nccns are assumed
13671369
!< as Nccn=100 for sea and Nccn=1000 for land
1370+
real(kind=kind_phys) :: cat_adj_deep !< adjustment for convective advection time for deep convection
13681371

13691372
!--- mass flux shallow convection
13701373
real(kind=kind_phys) :: clam_shal !< c_e for shallow convection (Han and Pan, 2011, eq(6))
@@ -1379,6 +1382,7 @@ module GFS_typedefs
13791382
!< Nccn: CCN number concentration in cm^(-3)
13801383
!< Until a realistic Nccn is provided, Nccns are assumed
13811384
!< as Nccn=100 for sea and Nccn=1000 for land
1385+
real(kind=kind_phys) :: cat_adj_shal !< adjustment for convective advection time for shallow convection
13821386

13831387
!--- near surface temperature model
13841388
logical :: nst_anl !< flag for NSSTM analysis in gcycle/sfcsub
@@ -1696,6 +1700,8 @@ module GFS_typedefs
16961700
real(kind=kind_phys) :: iau_delthrs ! iau time interval (to scale increments) in hours
16971701
character(len=240) :: iau_inc_files(7)! list of increment files
16981702
real(kind=kind_phys) :: iaufhrs(7) ! forecast hours associated with increment files
1703+
logical :: iau_regional !< doing IAU for the nested domain for regional model
1704+
real :: iau_inc_scale !< increase IAU weight for 3DIAU
16991705
logical :: iau_filter_increments, iau_drymassfixer
17001706

17011707
! From physcons.F90, updated/set in control_initialize
@@ -3714,6 +3720,8 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, &
37143720
real(kind=kind_phys) :: ssati_min = 0.15 !< minimum supersaturation over ice threshold for deposition nucleation
37153721
real(kind=kind_phys) :: Nt_i_max = 4999.e3 !< maximum threshold number concentration of cloud ice water crystals in air
37163722
real(kind=kind_phys) :: rr_min = 1000.0 !< multiplicative tuning parameter for microphysical sedimentation minimum threshold
3723+
real(kind=kind_phys) :: fs_fac_rain = 1.0 !< adjustment for rain fall speed
3724+
real(kind=kind_phys) :: fs_fac_snow = 1.0 !< adjustment for snow fall speed
37173725

37183726
!--- GFDL microphysical parameters
37193727
logical :: lgfdlmprad = .false. !< flag for GFDLMP radiation interaction
@@ -3967,6 +3975,7 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, &
39673975
!< Nccn: CCN number concentration in cm^(-3)
39683976
!< Until a realistic Nccn is provided, Nccns are assumed
39693977
!< as Nccn=100 for sea and Nccn=1000 for land
3978+
real(kind=kind_phys) :: cat_adj_deep = 1.0 !< adjustment for convective advection time for deep convection
39703979

39713980
!--- mass flux shallow convection
39723981
real(kind=kind_phys) :: clam_shal = 0.3 !< c_e for shallow convection (Han and Pan, 2011, eq(6))
@@ -3981,6 +3990,7 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, &
39813990
!< Nccn: CCN number concentration in cm^(-3)
39823991
!< Until a realistic Nccn is provided, Nccns are assumed
39833992
!< as Nccn=100 for sea and Nccn=1000 for land
3993+
real(kind=kind_phys) :: cat_adj_shal = 1.0 !< adjustment for convective advection time for shallow convection
39843994

39853995
!--- near surface sea temperature model
39863996
logical :: nst_anl = .false. !< flag for NSSTM analysis in gcycle/sfcsub
@@ -4071,6 +4081,8 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, &
40714081
real(kind=kind_phys) :: iau_delthrs = 0 !< iau time interval (to scale increments)
40724082
character(len=240) :: iau_inc_files(7) = '' !< list of increment files
40734083
real(kind=kind_phys) :: iaufhrs(7) = -1 !< forecast hours associated with increment files
4084+
logical :: iau_regional = .false. !< doing IAU for the nested domain for regional model
4085+
real :: iau_inc_scale = 1. !< increase IAU weight for 3DIAU
40744086
logical :: iau_filter_increments = .false. !< filter IAU increments
40754087
logical :: iau_drymassfixer = .false. !< IAU dry mass fixer
40764088

@@ -4226,7 +4238,8 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, &
42264238
mg_alf, mg_qcmin, mg_do_ice_gmao, mg_do_liq_liu, &
42274239
ltaerosol, lthailaware, lradar, nsfullradar_diag, lrefres, &
42284240
ttendlim, ext_diag_thompson, nt_c_l, nt_c_o, av_i, xnc_max, &
4229-
ssati_min, Nt_i_max, rr_min, dt_inner, lgfdlmprad, &
4241+
ssati_min, Nt_i_max, rr_min, fs_fac_rain, fs_fac_snow, &
4242+
dt_inner, lgfdlmprad, &
42304243
sedi_semi, decfl, &
42314244
nssl_cccn, nssl_alphah, nssl_alphahl, &
42324245
nssl_alphar, nssl_ehw0, nssl_ehlw0, &
@@ -4292,9 +4305,10 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, &
42924305
!--- mass flux deep convection
42934306
clam_deep, c0s_deep, c1_deep, betal_deep, &
42944307
betas_deep, evef, evfact_deep, evfactl_deep, pgcon_deep, &
4295-
asolfac_deep, &
4308+
asolfac_deep, cat_adj_deep, &
42964309
!--- mass flux shallow convection
42974310
clam_shal, c0s_shal, c1_shal, pgcon_shal, asolfac_shal, &
4311+
cat_adj_shal, &
42984312
!--- near surface sea temperature model
42994313
nst_anl, lsea, nstf_name, &
43004314
frac_grid, min_lakeice, min_seaice, min_lake_height, &
@@ -4319,7 +4333,7 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, &
43194333
increment_file_on_native_grid, &
43204334
!--- IAU
43214335
iau_delthrs,iaufhrs,iau_inc_files,iau_filter_increments, &
4322-
iau_drymassfixer, &
4336+
iau_drymassfixer,iau_regional,iau_inc_scale, &
43234337
!--- debug options
43244338
debug, pre_rad, print_diff_pgr, &
43254339
!--- parameter range for critical relative humidity
@@ -4970,6 +4984,8 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, &
49704984
Model%ssati_min = ssati_min
49714985
Model%Nt_i_max = Nt_i_max
49724986
Model%rr_min = rr_min
4987+
Model%fs_fac_rain = fs_fac_rain
4988+
Model%fs_fac_snow = fs_fac_snow
49734989

49744990
!--- TEMPO MP parameters
49754991
! DJS to Anders: Maybe we put more of these nml options into the TEMPO configuration type?
@@ -5315,13 +5331,15 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, &
53155331
Model%evfactl_deep = evfactl_deep
53165332
Model%pgcon_deep = pgcon_deep
53175333
Model%asolfac_deep = asolfac_deep
5334+
Model%cat_adj_deep = cat_adj_deep
53185335

53195336
!--- mass flux shallow convection
53205337
Model%clam_shal = clam_shal
53215338
Model%c0s_shal = c0s_shal
53225339
Model%c1_shal = c1_shal
53235340
Model%pgcon_shal = pgcon_shal
53245341
Model%asolfac_shal = asolfac_shal
5342+
Model%cat_adj_shal = cat_adj_shal
53255343

53265344
!--- near surface sea temperature model
53275345
Model%nst_anl = nst_anl
@@ -5441,6 +5459,8 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, &
54415459
Model%iaufhrs = iaufhrs
54425460
Model%iau_inc_files = iau_inc_files
54435461
Model%iau_delthrs = iau_delthrs
5462+
Model%iau_regional = iau_regional
5463+
Model%iau_inc_scale = iau_inc_scale
54445464
Model%iau_filter_increments = iau_filter_increments
54455465
Model%iau_drymassfixer = iau_drymassfixer
54465466
if(Model%me==0) print *,' model init,iaufhrs=',Model%iaufhrs
@@ -6436,6 +6456,8 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, &
64366456
' ssati_min',ssati_min, &
64376457
' Nt_i_max',Nt_i_max, &
64386458
' rr_min',rr_min, &
6459+
' fs_fac_rain',fs_fac_rain, &
6460+
' fs_fac_snow',fs_fac_snow, &
64396461
' effr_in =',Model%effr_in, &
64406462
' lradar =',Model%lradar, &
64416463
' nsfullradar_diag =',Model%nsfullradar_diag, &
@@ -7034,6 +7056,8 @@ subroutine control_print(Model)
70347056
print *, ' ssati_min : ', Model%ssati_min
70357057
print *, ' Nt_i_max : ', Model%Nt_i_max
70367058
print *, ' rr_min : ', Model%rr_min
7059+
print *, ' fs_fac_rain : ', Model%fs_fac_rain
7060+
print *, ' fs_fac_snow : ', Model%fs_fac_snow
70377061
print *, ' '
70387062
endif
70397063
if (Model%imp_physics == Model%imp_physics_nssl) then
@@ -7247,6 +7271,7 @@ subroutine control_print(Model)
72477271
print *, ' evfactl_deep : ', Model%evfactl_deep
72487272
print *, ' pgcon_deep : ', Model%pgcon_deep
72497273
print *, ' asolfac_deep : ', Model%asolfac_deep
7274+
print *, ' cat_adj_deep : ', Model%cat_adj_deep
72507275
print *, ' '
72517276
endif
72527277
if (Model%imfshalcnv >= 0) then
@@ -7256,6 +7281,7 @@ subroutine control_print(Model)
72567281
print *, ' c1_shal : ', Model%c1_shal
72577282
print *, ' pgcon_shal : ', Model%pgcon_shal
72587283
print *, ' asolfac_shal : ', Model%asolfac_shal
7284+
print *, ' cat_adj_shal : ', Model%cat_adj_shal
72597285
endif
72607286
print *, ' '
72617287
print *, 'near surface sea temperature model'

ccpp/data/GFS_typedefs.meta

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5187,6 +5187,20 @@
51875187
dimensions = ()
51885188
type = real
51895189
kind = kind_phys
5190+
[fs_fac_rain]
5191+
standard_name = multiplicative_tuning_parameter_for_rain_fall_speed
5192+
long_name = multiplicative tuning parameter for rain fall speed
5193+
units = none
5194+
dimensions = ()
5195+
type = real
5196+
kind = kind_phys
5197+
[fs_fac_snow]
5198+
standard_name = multiplicative_tuning_parameter_for_snow_fall_speed
5199+
long_name = multiplicative tuning parameter_for snow fall speed
5200+
units = none
5201+
dimensions = ()
5202+
type = real
5203+
kind = kind_phys
51905204
[gfs_phys_time_vary_is_init]
51915205
standard_name = flag_for_gfs_phys_time_vary_interstitial_initialization
51925206
long_name = flag carrying interstitial initialization status
@@ -6199,6 +6213,13 @@
61996213
dimensions = ()
62006214
type = real
62016215
kind = kind_phys
6216+
[cat_adj_deep]
6217+
standard_name = adjustment_for_convective_advection_time_for_deep
6218+
long_name = adjustment for convective advection time for deep
6219+
units = none
6220+
dimensions = ()
6221+
type = real
6222+
kind = kind_phys
62026223
[clam_shal]
62036224
standard_name = entrainment_rate_coefficient_for_shallow_convection
62046225
long_name = entrainment rate coefficient for shallow convection
@@ -6234,6 +6255,13 @@
62346255
dimensions = ()
62356256
type = real
62366257
kind = kind_phys
6258+
[cat_adj_shal]
6259+
standard_name = adjustment_for_convective_advection_time_for_shallow
6260+
long_name = adjustment for convective advection time for shallow
6261+
units = none
6262+
dimensions = ()
6263+
type = real
6264+
kind = kind_phys
62376265
[xkzm_m]
62386266
standard_name = atmosphere_momentum_diffusivity_due_to_background
62396267
long_name = background vertical diffusion for momentum

ccpp/suites_not_used/suite_FV3_HAFS_v1_thompson_noahmp.xml renamed to ccpp/suites/suite_FV3_HAFS_v2.xml

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,30 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22

3-
<suite name="FV3_HAFS_v1_thompson_noahmp" version="1">
3+
<suite name="FV3_HAFS_v2" version="1">
44
<!-- <init></init> -->
55
<group name="time_vary">
66
<subcycle loop="1">
77
<scheme>GFS_time_vary_pre</scheme>
8-
<scheme>GFS_rrtmg_setup</scheme>
8+
<scheme>GFS_rrtmgp_setup</scheme>
99
<scheme>GFS_rad_time_vary</scheme>
1010
<scheme>GFS_phys_time_vary</scheme>
1111
</subcycle>
1212
</group>
1313
<group name="radiation">
1414
<subcycle loop="1">
15-
<scheme>GFS_suite_interstitial_rad_reset</scheme>
16-
<scheme>GFS_rrtmg_pre</scheme>
15+
<scheme>GFS_rrtmgp_pre</scheme>
1716
<scheme>GFS_radiation_surface</scheme>
18-
<scheme>rad_sw_pre</scheme>
19-
<scheme>rrtmg_sw</scheme>
20-
<scheme>rrtmg_sw_post</scheme>
21-
<scheme>rrtmg_lw</scheme>
22-
<scheme>rrtmg_lw_post</scheme>
23-
<scheme>GFS_rrtmg_post</scheme>
17+
<scheme>GFS_rrtmgp_cloud_mp</scheme>
18+
<scheme>GFS_rrtmgp_cloud_overlap</scheme>
19+
<scheme>GFS_cloud_diagnostics</scheme>
20+
<scheme>rrtmgp_aerosol_optics</scheme>
21+
<scheme>rrtmgp_sw_main</scheme>
22+
<scheme>rrtmgp_lw_main</scheme>
23+
<scheme>GFS_radiation_post</scheme>
2424
</subcycle>
2525
</group>
26-
<group name="physics">
26+
<group name="phys_ps">
2727
<subcycle loop="1">
28-
<scheme>GFS_suite_interstitial_phys_reset</scheme>
2928
<scheme>GFS_suite_stateout_reset</scheme>
3029
<scheme>get_prs_fv3</scheme>
3130
<scheme>GFS_suite_interstitial_1</scheme>
@@ -60,7 +59,11 @@
6059
<scheme>unified_ugwp_post</scheme>
6160
<scheme>GFS_GWD_generic_post</scheme>
6261
<scheme>GFS_suite_stateout_update</scheme>
63-
<scheme>h2ophys</scheme>
62+
</subcycle>
63+
</group>
64+
<group name="phys_ts">
65+
<subcycle loop="1">
66+
<scheme>GFS_photochemistry</scheme>
6467
<scheme>get_phi_fv3</scheme>
6568
<scheme>GFS_suite_interstitial_3</scheme>
6669
<scheme>GFS_DCNV_generic_pre</scheme>

ccpp/suites_not_used/suite_FV3_HAFS_v1_thompson_noahmp_nonsst.xml renamed to ccpp/suites/suite_FV3_HAFS_v2_coupled.xml

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,30 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22

3-
<suite name="FV3_HAFS_v1_thompson_noahmp_nonsst" version="1">
3+
<suite name="FV3_HAFS_v2_coupled" version="1">
44
<!-- <init></init> -->
55
<group name="time_vary">
66
<subcycle loop="1">
77
<scheme>GFS_time_vary_pre</scheme>
8-
<scheme>GFS_rrtmg_setup</scheme>
8+
<scheme>GFS_rrtmgp_setup</scheme>
99
<scheme>GFS_rad_time_vary</scheme>
1010
<scheme>GFS_phys_time_vary</scheme>
1111
</subcycle>
1212
</group>
1313
<group name="radiation">
1414
<subcycle loop="1">
15-
<scheme>GFS_suite_interstitial_rad_reset</scheme>
16-
<scheme>GFS_rrtmg_pre</scheme>
15+
<scheme>GFS_rrtmgp_pre</scheme>
1716
<scheme>GFS_radiation_surface</scheme>
18-
<scheme>rad_sw_pre</scheme>
19-
<scheme>rrtmg_sw</scheme>
20-
<scheme>rrtmg_sw_post</scheme>
21-
<scheme>rrtmg_lw</scheme>
22-
<scheme>rrtmg_lw_post</scheme>
23-
<scheme>GFS_rrtmg_post</scheme>
17+
<scheme>GFS_rrtmgp_cloud_mp</scheme>
18+
<scheme>GFS_rrtmgp_cloud_overlap</scheme>
19+
<scheme>GFS_cloud_diagnostics</scheme>
20+
<scheme>rrtmgp_aerosol_optics</scheme>
21+
<scheme>rrtmgp_sw_main</scheme>
22+
<scheme>rrtmgp_lw_main</scheme>
23+
<scheme>GFS_radiation_post</scheme>
2424
</subcycle>
2525
</group>
26-
<group name="physics">
26+
<group name="phys_ps">
2727
<subcycle loop="1">
28-
<scheme>GFS_suite_interstitial_phys_reset</scheme>
2928
<scheme>GFS_suite_stateout_reset</scheme>
3029
<scheme>get_prs_fv3</scheme>
3130
<scheme>GFS_suite_interstitial_1</scheme>
@@ -58,7 +57,11 @@
5857
<scheme>unified_ugwp_post</scheme>
5958
<scheme>GFS_GWD_generic_post</scheme>
6059
<scheme>GFS_suite_stateout_update</scheme>
61-
<scheme>h2ophys</scheme>
60+
</subcycle>
61+
</group>
62+
<group name="phys_ts">
63+
<subcycle loop="1">
64+
<scheme>GFS_photochemistry</scheme>
6265
<scheme>get_phi_fv3</scheme>
6366
<scheme>GFS_suite_interstitial_3</scheme>
6467
<scheme>GFS_DCNV_generic_pre</scheme>

fv3/moving_nest/bounding_box.F90

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,6 @@ subroutine fill_bbox_r4_2d(out_bbox, in_grid)
6464
out_bbox%je = ubound(in_grid, 2)
6565
end subroutine fill_bbox_r4_2d
6666

67-
6867
subroutine fill_bbox_r4_3d(out_bbox, in_grid)
6968
type(bbox), intent(out) :: out_bbox
7069
real*4, allocatable, intent(in) :: in_grid(:,:,:)
@@ -85,7 +84,6 @@ subroutine fill_bbox_r4_4d(out_bbox, in_grid)
8584
out_bbox%je = ubound(in_grid, 2)
8685
end subroutine fill_bbox_r4_4d
8786

88-
8987
subroutine fill_bbox_r8_2d(out_bbox, in_grid)
9088
type(bbox), intent(out) :: out_bbox
9189
real*8, allocatable, intent(in) :: in_grid(:,:)
@@ -106,7 +104,6 @@ subroutine fill_bbox_r8_3d(out_bbox, in_grid)
106104
out_bbox%je = ubound(in_grid, 2)
107105
end subroutine fill_bbox_r8_3d
108106

109-
110107
subroutine fill_bbox_r8_4d(out_bbox, in_grid)
111108
type(bbox), intent(out) :: out_bbox
112109
real*8, allocatable, intent(in) :: in_grid(:,:,:,:)
@@ -117,7 +114,6 @@ subroutine fill_bbox_r8_4d(out_bbox, in_grid)
117114
out_bbox%je = ubound(in_grid, 2)
118115
end subroutine fill_bbox_r8_4d
119116

120-
121117
!>@brief This subroutine returns the nest grid indices that correspond to the input nest domain, direction, and position
122118
!>@details Simplifies the call signature with the bbox type rather than 4 separate integers
123119
subroutine bbox_get_C2F_index(nest_domain, bbox_fine, bbox_coarse, direction, position)

0 commit comments

Comments
 (0)