Skip to content
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

Loosen restriction on optional arguments. #248

Open
wants to merge 20 commits into
base: ufs/dev
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 17 commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
1fc0f54
Optional argument cleanup: Radiation
dustinswales Nov 18, 2024
e2eea95
Optional argument cleanup: Convection
dustinswales Nov 18, 2024
76eaf4a
Optional argument cleanup: GWD
dustinswales Nov 19, 2024
bff271c
Optional argument cleanup: MP
dustinswales Nov 19, 2024
6e0e2f7
Optional argument cleanup: PBL
dustinswales Nov 19, 2024
4572f46
Optional argument cleanup: Surface Layer
dustinswales Nov 19, 2024
8f1c7af
Optional argument cleanup: Surface Models
dustinswales Dec 13, 2024
53d02a9
Optional argument cleanup: CICE and Smoke
dustinswales Dec 13, 2024
c6ad766
Optional argument cleanup: Some interstitials
dustinswales Dec 13, 2024
a6cbcd9
Revert removal of optional arguments in Interstitial schemes.
dustinswales Dec 17, 2024
382cdb0
Merge branch 'ufs/dev' of https://github.com/ufs-community/ccpp-physi…
dustinswales Dec 17, 2024
bdeab29
REvert one more change
dustinswales Dec 18, 2024
339f4b8
Merge branch 'ufs/dev' of https://github.com/ufs-community/ccpp-physi…
dustinswales Jan 3, 2025
03610ea
Merge branch 'ufs/dev' of https://github.com/ufs-community/ccpp-physi…
dustinswales Jan 14, 2025
9576598
Bug
dustinswales Jan 27, 2025
0b21754
Merge branch 'ufs/dev' of https://github.com/ufs-community/ccpp-physi…
dustinswales Jan 27, 2025
6a46eed
Anothe bug
dustinswales Jan 27, 2025
8706c32
One last bug from testing
dustinswales Jan 28, 2025
2e6aff1
SOme more changes from RTs
dustinswales Feb 12, 2025
ef9f759
Merge branch 'ufs/dev' of https://github.com/ufs-community/ccpp-physi…
dustinswales Feb 12, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions physics/CONV/C3/cu_c3_deep.F90
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,7 @@ subroutine cu_c3_deep_run( &
real(kind=kind_phys), dimension (its:) &
,intent (in ) :: rand_mom,rand_vmas
!$acc declare copyin(rand_clos,rand_mom,rand_vmas)
real(kind=kind_phys), intent(in), dimension (its:), optional :: ca_deep(:)
real(kind=kind_phys), intent(in), dimension (its:) :: ca_deep(:)
integer, intent(in) :: do_capsuppress
real(kind=kind_phys), intent(in), dimension(:) :: cap_suppress_j
!$acc declare create(cap_suppress_j)
Expand All @@ -190,7 +190,7 @@ subroutine cu_c3_deep_run( &
,intent (in ) :: &
tmf
real(kind=kind_phys), dimension (its:,kts:) &
,intent (in ), optional :: &
,intent (in ) :: &
qmicro, sigmain, forceqv_spechum
real(kind=kind_phys), dimension (its:) &
,intent (inout ) :: &
Expand Down Expand Up @@ -226,7 +226,7 @@ subroutine cu_c3_deep_run( &
q,qo,zuo,zdo,zdm
!$acc declare sigmaout
real(kind=kind_phys), dimension (its:,kts:) &
,intent (out), optional :: &
,intent (out) :: &
sigmaout
real(kind=kind_phys), dimension (its:) &
,intent (in ) :: &
Expand Down
22 changes: 11 additions & 11 deletions physics/CONV/C3/cu_c3_driver.F90
Original file line number Diff line number Diff line change
Expand Up @@ -117,13 +117,13 @@ subroutine cu_c3_driver_run(ntracer,garea,im,km,dt,flag_init,flag_restart,&
index_of_x_wind, index_of_y_wind, index_of_temperature, &
index_of_process_scnv, index_of_process_dcnv, ntqv, ntcw, ntiw
!$acc declare copyin(dtidx)
real(kind=kind_phys), dimension( : , : ), intent(in ), optional :: forcet,forceqv_spechum
real(kind=kind_phys), dimension( : , : ), intent(in ) :: forcet,forceqv_spechum
real(kind=kind_phys), dimension( : , : ), intent(in ) :: w,phil,delp
real(kind=kind_phys), dimension ( : , : ), intent(in ), optional :: sigmain,qmicro
real(kind=kind_phys), dimension ( : , : ), intent(in ) :: sigmain,qmicro
real(kind=kind_phys), dimension( : , : ), intent(inout ) :: t,us,vs
real(kind=kind_phys), dimension( : , : ), intent(inout ), optional :: qci_conv
real(kind=kind_phys), dimension( : , : ), intent(inout ) :: qci_conv
real(kind=kind_phys), dimension( : , : ), intent(out ) :: cnvw_moist,cnvc
real(kind=kind_phys), dimension ( : , : ), intent(out ), optional :: sigmaout
real(kind=kind_phys), dimension ( : , : ), intent(out ) :: sigmaout
real(kind=kind_phys), dimension( : , : ), intent(inout ) :: cliw, clcw
real(kind=kind_phys), dimension ( : , : , :), intent(in ) :: tmf
!$acc declare copyin(forcet,forceqv_spechum,w,phil)
Expand All @@ -135,31 +135,31 @@ subroutine cu_c3_driver_run(ntracer,garea,im,km,dt,flag_init,flag_restart,&
integer, intent(in) :: dfi_radar_max_intervals
real(kind=kind_phys), intent(in) :: fhour, fh_dfi_radar(:)
integer, intent(in) :: num_dfi_radar, ix_dfi_radar(:)
real(kind=kind_phys), intent(in), optional :: cap_suppress(:,:)
real(kind=kind_phys), intent(in) :: cap_suppress(:,:)
!$acc declare copyin(fh_dfi_radar,ix_dfi_radar,cap_suppress)

integer, dimension (:), intent(out) :: hbot,htop,kcnv
integer, dimension (:), intent(in) :: xland
real(kind=kind_phys), dimension (:), intent(in) :: pbl
real(kind=kind_phys), dimension (:), intent(in), optional :: maxMF
real(kind=kind_phys), dimension (:), intent(in) :: maxMF
!$acc declare copyout(hbot,htop,kcnv)
!$acc declare copyin(xland,pbl)
integer, dimension (im) :: tropics
!$acc declare create(tropics)
! ruc variable
real(kind=kind_phys), dimension (:), intent(in) :: hfx2,qfx2,psuri
real(kind=kind_phys), dimension (:), intent(in), optional :: ca_deep
real(kind=kind_phys), dimension (:,:), intent(out), optional :: ud_mf
real(kind=kind_phys), dimension (:), intent(in) :: ca_deep
real(kind=kind_phys), dimension (:,:), intent(out) :: ud_mf
real(kind=kind_phys), dimension (:,:), intent(out) :: dd_mf,dt_mf
real(kind=kind_phys), dimension (:), intent(out) :: raincv,cld1d,rainevap
real(kind=kind_phys), dimension (:), intent(out), optional :: maxupmf
real(kind=kind_phys), dimension (:), intent(out) :: maxupmf
real(kind=kind_phys), dimension (:,:), intent(in) :: t2di,p2di
!$acc declare copyin(hfx2,qfx2,psuri,t2di,p2di)
!$acc declare copyout(ud_mf,dd_mf,dt_mf,raincv,cld1d)
! Specific humidity from FV3
real(kind=kind_phys), dimension (:,:), intent(in) :: qv2di_spechum
real(kind=kind_phys), dimension (:,:), intent(inout) :: qv_spechum
real(kind=kind_phys), dimension (:), intent(inout), optional :: aod_gf
real(kind=kind_phys), dimension (:), intent(inout) :: aod_gf
!$acc declare copyin(qv2di_spechum) copy(qv_spechum,aod_gf)
! Local water vapor mixing ratios and cloud water mixing ratios
real(kind=kind_phys), dimension (im,km) :: qv2di, qv, forceqv, cnvw
Expand All @@ -170,7 +170,7 @@ subroutine cu_c3_driver_run(ntracer,garea,im,km,dt,flag_init,flag_restart,&
real(kind=kind_phys), intent(in ) :: dt

integer, intent(in ) :: imfshalcnv
integer, dimension(:), intent(inout), optional :: cactiv,cactiv_m
integer, dimension(:), intent(inout) :: cactiv,cactiv_m
!$acc declare copy(cactiv,cactiv_m)

character(len=*), intent(out) :: errmsg
Expand Down
14 changes: 0 additions & 14 deletions physics/CONV/C3/cu_c3_driver.meta
Original file line number Diff line number Diff line change
Expand Up @@ -156,15 +156,13 @@
dimensions = (horizontal_loop_extent)
type = integer
intent = inout
optional = True
[cactiv_m]
standard_name = counter_for_grell_freitas_mid_level_convection
long_name = mid-level cloud convective activity memory
units = none
dimensions = (horizontal_loop_extent)
type = integer
intent = inout
optional = True
[g]
standard_name = gravitational_acceleration
long_name = gravitational acceleration
Expand Down Expand Up @@ -221,7 +219,6 @@
type = real
kind = kind_phys
intent = in
optional = True
[forceqv_spechum]
standard_name = tendendy_of_specific_humidity_due_to_nonphysics
long_name = moisture tendency due to dynamics only
Expand All @@ -230,7 +227,6 @@
type = real
kind = kind_phys
intent = in
optional = True
[tmf]
standard_name = tendency_of_vertically_diffused_tracer_concentration
long_name = updated tendency of the tracers due to vertical diffusion in PBL scheme
Expand All @@ -247,7 +243,6 @@
type = real
kind = kind_phys
intent = in
optional = True
[sigmain]
standard_name = prognostic_updraft_area_fraction_in_convection
long_name = convective updraft area fraction
Expand All @@ -256,7 +251,6 @@
type = real
kind = kind_phys
intent = in
optional = True
[sigmaout]
standard_name = updraft_area_fraction_updated_by_physics
long_name = convective updraft area fraction updated by physics
Expand All @@ -265,7 +259,6 @@
type = real
kind = kind_phys
intent = out
optional = True
[betascu]
standard_name = tuning_param_for_shallow_cu
long_name = tuning param for shallow cu in case prognostic closure is used
Expand Down Expand Up @@ -445,7 +438,6 @@
type = real
kind = kind_phys
intent = inout
optional = True
[cliw]
standard_name = ice_water_mixing_ratio_convective_transport_tracer
long_name = ratio of mass of ice water to mass of dry air plus vapor (without condensates) in the convectively transported tracer array
Expand Down Expand Up @@ -478,7 +470,6 @@
type = real
kind = kind_phys
intent = out
optional = True
[dd_mf]
standard_name = instantaneous_atmosphere_downdraft_convective_mass_flux
long_name = (downdraft mass flux) * delt
Expand Down Expand Up @@ -626,7 +617,6 @@
type = real
kind = kind_phys
intent = inout
optional = True
[fhour]
standard_name = forecast_time
long_name = current forecast time
Expand Down Expand Up @@ -672,7 +662,6 @@
type = real
kind = kind_phys
intent = in
optional = True
[ca_deep]
standard_name = cellular_automata_area_fraction_for_deep_convection_from_coupled_process
long_name = fraction of cellular automata for deep convection
Expand All @@ -681,7 +670,6 @@
type = real
kind = kind_phys
intent = in
optional = True
[rainevap]
standard_name = physics_field_for_coupling
long_name = physics_field_for_coupling
Expand All @@ -698,7 +686,6 @@
type = real
kind = kind_phys
intent = out
optional = True
[maxMF]
standard_name = maximum_mass_flux
long_name = maximum mass flux within a column
Expand All @@ -707,7 +694,6 @@
type = real
kind = kind_phys
intent = in
optional = True
[do_mynnedmf]
standard_name = flag_for_mellor_yamada_nakanishi_niino_pbl_scheme
long_name = flag to activate MYNN-EDMF
Expand Down
14 changes: 7 additions & 7 deletions physics/CONV/C3/cu_c3_driver_post.F90
Original file line number Diff line number Diff line change
Expand Up @@ -26,16 +26,16 @@ subroutine cu_c3_driver_post_run (im, km, t, q, prevst, prevsq, cactiv, cactiv_m
real(kind_phys), intent(in) :: t(:,:)
real(kind_phys), intent(in) :: q(:,:)
real(kind_phys), dimension(:),intent(in) :: garea
real(kind_phys), intent(out), optional :: prevst(:,:)
real(kind_phys), intent(out), optional :: prevsq(:,:)
integer, intent(in), optional :: cactiv(:)
integer, intent(in), optional :: cactiv_m(:)
real(kind_phys), intent(out), optional :: conv_act(:)
real(kind_phys), intent(out), optional :: conv_act_m(:)
real(kind_phys), intent(out) :: prevst(:,:)
real(kind_phys), intent(out) :: prevsq(:,:)
integer, intent(in) :: cactiv(:)
integer, intent(in) :: cactiv_m(:)
real(kind_phys), intent(out) :: conv_act(:)
real(kind_phys), intent(out) :: conv_act_m(:)
! for Radar reflectivity
real(kind_phys), intent(in) :: dt
real(kind_phys), intent(in) :: raincv(:)
real(kind_phys), intent(in), optional :: maxupmf(:)
real(kind_phys), intent(in) :: maxupmf(:)
real(kind_phys), intent(inout) :: refl_10cm(:,:)
character(len=*), intent(out) :: errmsg
!$acc declare copyin(t,q,cactiv,cactiv_m) copyout(prevst,prevsq,conv_act,conv_act_m)
Expand Down
7 changes: 0 additions & 7 deletions physics/CONV/C3/cu_c3_driver_post.meta
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,6 @@
type = real
kind = kind_phys
intent = out
optional = True
[prevsq]
standard_name = specific_humidity_on_previous_timestep
long_name = moisture from previous time step
Expand All @@ -54,23 +53,20 @@
type = real
kind = kind_phys
intent = out
optional = True
[cactiv]
standard_name = counter_for_grell_freitas_convection
long_name = convective activity memory
units = none
dimensions = (horizontal_loop_extent)
type = integer
intent = in
optional = True
[cactiv_m]
standard_name = counter_for_grell_freitas_mid_level_convection
long_name = midlevel convective activity memory
units = none
dimensions = (horizontal_loop_extent)
type = integer
intent = in
optional = True
[conv_act]
standard_name = consecutive_calls_for_grell_freitas_convection
long_name = Memory counter for GF
Expand All @@ -79,7 +75,6 @@
type = real
kind = kind_phys
intent = out
optional = True
[conv_act_m]
standard_name = consecutive_calls_for_grell_freitas_mid_level_convection
long_name = Memory counter for GF midlevel
Expand All @@ -88,7 +83,6 @@
type = real
kind = kind_phys
intent = out
optional = True
[dt]
standard_name = timestep_for_physics
long_name = physics time step
Expand Down Expand Up @@ -121,7 +115,6 @@
type = real
kind = kind_phys
intent = in
optional = True
[refl_10cm]
standard_name = radar_reflectivity_10cm
long_name = instantaneous refl_10cm
Expand Down
16 changes: 8 additions & 8 deletions physics/CONV/C3/cu_c3_driver_pre.F90
Original file line number Diff line number Diff line change
Expand Up @@ -30,16 +30,16 @@ subroutine cu_c3_driver_pre_run (flag_init, flag_restart, kdt, fhour, dtp, t, q,
real(kind_phys), intent(in) :: dtp
real(kind_phys), intent(in) :: t(:,:)
real(kind_phys), intent(in) :: q(:,:)
real(kind_phys), intent(in), optional :: prevst(:,:)
real(kind_phys), intent(in), optional :: prevsq(:,:)
real(kind_phys), intent(in) :: prevst(:,:)
real(kind_phys), intent(in) :: prevsq(:,:)
!$acc declare copyin(t,q,prevst,prevsq)
real(kind_phys), intent(out), optional :: forcet(:,:)
real(kind_phys), intent(out), optional :: forceq(:,:)
integer, intent(out), optional :: cactiv(:)
integer, intent(out), optional :: cactiv_m(:)
real(kind_phys), intent(out) :: forcet(:,:)
real(kind_phys), intent(out) :: forceq(:,:)
integer, intent(out) :: cactiv(:)
integer, intent(out) :: cactiv_m(:)
!$acc declare copyout(forcet,forceq,cactiv,cactiv_m)
real(kind_phys), intent(in), optional :: conv_act(:)
real(kind_phys), intent(in), optional :: conv_act_m(:)
real(kind_phys), intent(in) :: conv_act(:)
real(kind_phys), intent(in) :: conv_act_m(:)
!$acc declare copyin(conv_act,conv_act_m)
character(len=*), intent(out) :: errmsg
integer, intent(out) :: errflg
Expand Down
8 changes: 0 additions & 8 deletions physics/CONV/C3/cu_c3_driver_pre.meta
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,6 @@
type = real
kind = kind_phys
intent = in
optional = True
[prevsq]
standard_name = specific_humidity_on_previous_timestep
long_name = moisture from previous time step
Expand All @@ -77,7 +76,6 @@
type = real
kind = kind_phys
intent = in
optional = True
[forcet]
standard_name = tendency_of_air_temperature_due_to_nonphysics
long_name = temperature tendency due to dynamics only
Expand All @@ -86,7 +84,6 @@
type = real
kind = kind_phys
intent = out
optional = True
[forceq]
standard_name = tendendy_of_specific_humidity_due_to_nonphysics
long_name = moisture tendency due to dynamics only
Expand All @@ -95,23 +92,20 @@
type = real
kind = kind_phys
intent = out
optional = True
[cactiv]
standard_name = counter_for_grell_freitas_convection
long_name = convective activity memory
units = none
dimensions = (horizontal_loop_extent)
type = integer
intent = out
optional = True
[cactiv_m]
standard_name = counter_for_grell_freitas_mid_level_convection
long_name = midlevel convective activity memory
units = none
dimensions = (horizontal_loop_extent)
type = integer
intent = out
optional = True
[conv_act]
standard_name = consecutive_calls_for_grell_freitas_convection
long_name = Memory counter for GF
Expand All @@ -120,7 +114,6 @@
type = real
kind = kind_phys
intent = in
optional = True
[conv_act_m]
standard_name = consecutive_calls_for_grell_freitas_mid_level_convection
long_name = Memory counter for GF midlevel
Expand All @@ -129,7 +122,6 @@
type = real
kind = kind_phys
intent = in
optional = True
[errmsg]
standard_name = ccpp_error_message
long_name = error message for error handling in CCPP
Expand Down
4 changes: 2 additions & 2 deletions physics/CONV/C3/cu_c3_sh.F90
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ subroutine cu_c3_sh_run ( &
,intent (in ) :: &
tmf
real(kind=kind_phys), dimension (its:,kts:) &
,intent (in ), optional :: &
,intent (in ) :: &
qmicro, sigmain, forceqv_spechum

real(kind=kind_phys), dimension (its:) &
Expand Down Expand Up @@ -139,7 +139,7 @@ subroutine cu_c3_sh_run ( &
dtime,tcrit,fv,r_d,betascu,betamcu,betadcu
!$acc declare sigmaout
real(kind=kind_phys), dimension (its:,kts:) &
,intent (out), optional :: &
,intent (out) :: &
sigmaout


Expand Down
Loading