From 69d07725f9700db5793a9bbd0f86b8ae21fdf862 Mon Sep 17 00:00:00 2001 From: "anning.cheng" Date: Fri, 5 Mar 2021 15:19:07 -0600 Subject: [PATCH 01/16] changed .gitmodules to point to merra2 ccpp/physics --- .gitmodules | 6 ++++-- ccpp/physics | 2 +- gfsphysics/physics/aerclm_def.f | 2 +- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.gitmodules b/.gitmodules index d253f6966..a26b924da 100644 --- a/.gitmodules +++ b/.gitmodules @@ -8,5 +8,7 @@ branch = master [submodule "ccpp/physics"] path = ccpp/physics - url = https://github.com/NCAR/ccpp-physics - branch = master + #url = https://github.com/NCAR/ccpp-physics + #branch = master + url = https://github.com/AnningCheng-NOAA/ccpp-physics + branch = merra2 diff --git a/ccpp/physics b/ccpp/physics index 8ef88ca46..79ae254af 160000 --- a/ccpp/physics +++ b/ccpp/physics @@ -1 +1 @@ -Subproject commit 8ef88ca46c11535fc7984d39ec38d1582f9db5ff +Subproject commit 79ae254afab6f9d1dd22004fed1f6123480ebfff diff --git a/gfsphysics/physics/aerclm_def.f b/gfsphysics/physics/aerclm_def.f index 84852a1de..b5e3682a0 100644 --- a/gfsphysics/physics/aerclm_def.f +++ b/gfsphysics/physics/aerclm_def.f @@ -2,7 +2,7 @@ module aerclm_def use machine , only : kind_phys implicit none - integer, parameter :: levsaer=50, ntrcaerm=15, timeaer=12 + integer, parameter :: levsaer=72, ntrcaerm=15, timeaer=12 integer :: latsaer, lonsaer, ntrcaer character*10 :: specname(ntrcaerm) From 30051d59f7ce5e410e2d689777c771470c2905cb Mon Sep 17 00:00:00 2001 From: "anning.cheng" Date: Tue, 16 Mar 2021 08:39:57 -0500 Subject: [PATCH 02/16] remove GFDL_atmos_cubed_sphere and ccpp-framework from .git module --- .gitmodules | 8 -------- atmos_cubed_sphere | 2 +- ccpp/framework | 2 +- ccpp/physics | 2 +- 4 files changed, 3 insertions(+), 11 deletions(-) diff --git a/.gitmodules b/.gitmodules index a26b924da..6190936d1 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,11 +1,3 @@ -[submodule "atmos_cubed_sphere"] - path = atmos_cubed_sphere - url = https://github.com/NOAA-EMC/GFDL_atmos_cubed_sphere - branch = dev/emc -[submodule "ccpp/framework"] - path = ccpp/framework - url = https://github.com/NCAR/ccpp-framework - branch = master [submodule "ccpp/physics"] path = ccpp/physics #url = https://github.com/NCAR/ccpp-physics diff --git a/atmos_cubed_sphere b/atmos_cubed_sphere index 61875852b..306ff3137 160000 --- a/atmos_cubed_sphere +++ b/atmos_cubed_sphere @@ -1 +1 @@ -Subproject commit 61875852b52951f6c6215603a19c826b952fc534 +Subproject commit 306ff31371e74694e5d9f4a57584295c7122b9ac diff --git a/ccpp/framework b/ccpp/framework index dca1240e6..612dd1aa9 160000 --- a/ccpp/framework +++ b/ccpp/framework @@ -1 +1 @@ -Subproject commit dca1240e6f19a5bbcfa0b14aa8526f36e99ed135 +Subproject commit 612dd1aa9ed6f8c08b4c280ba1c992dd5357fc59 diff --git a/ccpp/physics b/ccpp/physics index 958aaae61..b55e3827b 160000 --- a/ccpp/physics +++ b/ccpp/physics @@ -1 +1 @@ -Subproject commit 958aaae6172a16ca27918dc109233f32c56d3353 +Subproject commit b55e3827beb90625839ef323891f9cd7db1e741d From dbc9d708217605ec438d3d4128ebef3a75b10b5b Mon Sep 17 00:00:00 2001 From: "anning.cheng" Date: Tue, 16 Mar 2021 09:13:46 -0500 Subject: [PATCH 03/16] remove IPD gfsphysics --- gfsphysics/physics/aerclm_def.f | 23 ----------------------- 1 file changed, 23 deletions(-) delete mode 100644 gfsphysics/physics/aerclm_def.f diff --git a/gfsphysics/physics/aerclm_def.f b/gfsphysics/physics/aerclm_def.f deleted file mode 100644 index b5e3682a0..000000000 --- a/gfsphysics/physics/aerclm_def.f +++ /dev/null @@ -1,23 +0,0 @@ - module aerclm_def - use machine , only : kind_phys - implicit none - - integer, parameter :: levsaer=72, ntrcaerm=15, timeaer=12 - integer :: latsaer, lonsaer, ntrcaer - - character*10 :: specname(ntrcaerm) - real (kind=kind_phys):: aer_time(13) - - real (kind=kind_phys), allocatable, dimension(:) :: aer_lat - real (kind=kind_phys), allocatable, dimension(:) :: aer_lon - real (kind=kind_phys), allocatable, dimension(:,:,:,:) :: aer_pres - real (kind=kind_phys), allocatable, dimension(:,:,:,:,:) :: aerin - - data aer_time/15.5, 45., 74.5, 105., 135.5, 166., 196.5, - & 227.5, 258., 288.5, 319., 349.5, 380.5/ - - data specname /'DU001','DU002','DU003','DU004','DU005', - & 'SS001','SS002','SS003','SS004','SS005','SO4', - & 'BCPHOBIC','BCPHILIC','OCPHOBIC','OCPHILIC'/ - - end module aerclm_def From 1b633bfb1c16ab0c89b622d5bb6c6420f9d2a6ac Mon Sep 17 00:00:00 2001 From: "anning.cheng" Date: Tue, 16 Mar 2021 09:35:45 -0500 Subject: [PATCH 04/16] .gitmodules update --- .gitmodules | 8 ++++++++ ccpp/physics | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/.gitmodules b/.gitmodules index 6190936d1..e3a358642 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,11 @@ +[submodule "atmos_cubed_sphere"] + path = atmos_cubed_sphere + url = https://github.com/NOAA-EMC/GFDL_atmos_cubed_sphere + branch = dev/emc +[submodule "ccpp/framework"] + path = ccpp/framework + url = https://github.com/NCAR/ccpp-framework + branch = master [submodule "ccpp/physics"] path = ccpp/physics #url = https://github.com/NCAR/ccpp-physics diff --git a/ccpp/physics b/ccpp/physics index b55e3827b..f34b1b029 160000 --- a/ccpp/physics +++ b/ccpp/physics @@ -1 +1 @@ -Subproject commit b55e3827beb90625839ef323891f9cd7db1e741d +Subproject commit f34b1b0292b75a39a7452d1536f7d8646c6ed782 From 92bb787560fdc7373c26c0ee640550061271072b Mon Sep 17 00:00:00 2001 From: Dom Heinzeller Date: Wed, 17 Mar 2021 16:33:12 -0600 Subject: [PATCH 05/16] Update .gitmodules and submodule pointer for ccpp-physics for code review and testing --- .gitmodules | 6 ++++-- ccpp/physics | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/.gitmodules b/.gitmodules index d253f6966..e55405006 100644 --- a/.gitmodules +++ b/.gitmodules @@ -8,5 +8,7 @@ branch = master [submodule "ccpp/physics"] path = ccpp/physics - url = https://github.com/NCAR/ccpp-physics - branch = master + #url = https://github.com/NCAR/ccpp-physics + #branch = master + url = https://github.com/climbfuji/ccpp-physics + branch = remove_zorl_interstitial diff --git a/ccpp/physics b/ccpp/physics index d884fb105..8c60ce57e 160000 --- a/ccpp/physics +++ b/ccpp/physics @@ -1 +1 @@ -Subproject commit d884fb105bc138216f5f213d43ee05b0481a030e +Subproject commit 8c60ce57e11d8561b221cab6bff8bb80d1ceb71d From 82a5bfbd314db0071b93a57c0c82ff7fc1b43898 Mon Sep 17 00:00:00 2001 From: Dom Heinzeller Date: Wed, 17 Mar 2021 16:33:52 -0600 Subject: [PATCH 06/16] Remove interstitial zorl composites --- ccpp/data/GFS_typedefs.F90 | 18 +++--------------- ccpp/data/GFS_typedefs.meta | 21 --------------------- 2 files changed, 3 insertions(+), 36 deletions(-) diff --git a/ccpp/data/GFS_typedefs.F90 b/ccpp/data/GFS_typedefs.F90 index f91fdc06f..b0ff4196a 100644 --- a/ccpp/data/GFS_typedefs.F90 +++ b/ccpp/data/GFS_typedefs.F90 @@ -1993,9 +1993,6 @@ module GFS_typedefs real (kind=kind_phys), pointer :: xlai1d(:) => null() !< real (kind=kind_phys), pointer :: xmu(:) => null() !< real (kind=kind_phys), pointer :: z01d(:) => null() !< - real (kind=kind_phys), pointer :: zorl_ice(:) => null() !< - real (kind=kind_phys), pointer :: zorl_land(:) => null() !< - real (kind=kind_phys), pointer :: zorl_ocean(:) => null() !< real (kind=kind_phys), pointer :: zt1d(:) => null() !< !================================================================================================== ! UGWP - five mechnanisms of momentum deposition due to various types of GWs @@ -2282,9 +2279,9 @@ subroutine sfcprop_create (Sfcprop, IM, Model) Sfcprop%tiice = clear_val Sfcprop%snowd = clear_val Sfcprop%zorl = clear_val - Sfcprop%zorlo = clear_val - Sfcprop%zorll = clear_val - Sfcprop%zorli = clear_val + Sfcprop%zorlo = huge + Sfcprop%zorll = huge + Sfcprop%zorli = huge Sfcprop%zorlw = clear_val Sfcprop%fice = clear_val ! Sfcprop%hprim = clear_val @@ -6386,9 +6383,6 @@ subroutine interstitial_create (Interstitial, IM, Model) allocate (Interstitial%xlai1d (IM)) allocate (Interstitial%xmu (IM)) allocate (Interstitial%z01d (IM)) - allocate (Interstitial%zorl_ice (IM)) - allocate (Interstitial%zorl_land (IM)) - allocate (Interstitial%zorl_ocean (IM)) allocate (Interstitial%zt1d (IM)) ! RRTMGP @@ -7048,9 +7042,6 @@ subroutine interstitial_phys_reset (Interstitial, Model) Interstitial%xlai1d = clear_val Interstitial%xmu = clear_val Interstitial%z01d = clear_val - Interstitial%zorl_ice = huge - Interstitial%zorl_land = huge - Interstitial%zorl_ocean = huge Interstitial%zt1d = clear_val ! UGWP common @@ -7435,9 +7426,6 @@ subroutine interstitial_print(Interstitial, Model, mpirank, omprank, blkno) write (0,*) 'sum(Interstitial%xlai1d ) = ', sum(Interstitial%xlai1d ) write (0,*) 'sum(Interstitial%xmu ) = ', sum(Interstitial%xmu ) write (0,*) 'sum(Interstitial%z01d ) = ', sum(Interstitial%z01d ) - write (0,*) 'sum(Interstitial%zorl_ice ) = ', sum(Interstitial%zorl_ice ) - write (0,*) 'sum(Interstitial%zorl_land ) = ', sum(Interstitial%zorl_land ) - write (0,*) 'sum(Interstitial%zorl_ocean ) = ', sum(Interstitial%zorl_ocean ) write (0,*) 'sum(Interstitial%zt1d ) = ', sum(Interstitial%zt1d ) ! UGWP common diff --git a/ccpp/data/GFS_typedefs.meta b/ccpp/data/GFS_typedefs.meta index f39248d4c..885177b53 100644 --- a/ccpp/data/GFS_typedefs.meta +++ b/ccpp/data/GFS_typedefs.meta @@ -9904,27 +9904,6 @@ dimensions = (horizontal_loop_extent) type = real kind = kind_phys -[zorl_ocean] - standard_name = surface_roughness_length_over_ocean_interstitial - long_name = surface roughness length over ocean (temporary use as interstitial) - units = cm - dimensions = (horizontal_loop_extent) - type = real - kind = kind_phys -[zorl_land] - standard_name = surface_roughness_length_over_land_interstitial - long_name = surface roughness length over land (temporary use as interstitial) - units = cm - dimensions = (horizontal_loop_extent) - type = real - kind = kind_phys -[zorl_ice] - standard_name = surface_roughness_length_over_ice_interstitial - long_name = surface roughness length over ice (temporary use as interstitial) - units = cm - dimensions = (horizontal_loop_extent) - type = real - kind = kind_phys [zt1d] standard_name = perturbation_of_heat_to_momentum_roughness_length_ratio long_name = perturbation of heat to momentum roughness length ratio From 99eddab1f6c3737bdae14735dc9e53b25a11e536 Mon Sep 17 00:00:00 2001 From: Dom Heinzeller Date: Thu, 1 Apr 2021 20:11:10 -0600 Subject: [PATCH 07/16] Update .gitmodules and submodule pointer fpor ccpp-physics for code review and testing --- .gitmodules | 4 ++-- ccpp/physics | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.gitmodules b/.gitmodules index e3a358642..281ed1cf8 100644 --- a/.gitmodules +++ b/.gitmodules @@ -10,5 +10,5 @@ path = ccpp/physics #url = https://github.com/NCAR/ccpp-physics #branch = master - url = https://github.com/AnningCheng-NOAA/ccpp-physics - branch = merra2 + url = https://github.com/climbfuji/ccpp-physics + branch = threading_aerosol_interp_noahmp_init diff --git a/ccpp/physics b/ccpp/physics index f34b1b029..15575af98 160000 --- a/ccpp/physics +++ b/ccpp/physics @@ -1 +1 @@ -Subproject commit f34b1b0292b75a39a7452d1536f7d8646c6ed782 +Subproject commit 15575af9802e274d915874418ee3a253eae77e9b From 7e4532d3fd9768bc096433a1a56ced5664640754 Mon Sep 17 00:00:00 2001 From: Dom Heinzeller Date: Fri, 2 Apr 2021 09:10:39 -0600 Subject: [PATCH 08/16] Remove or replace references to IPD in comments in atmos_model.F90 --- atmos_model.F90 | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/atmos_model.F90 b/atmos_model.F90 index 3730da692..307dc747d 100644 --- a/atmos_model.F90 +++ b/atmos_model.F90 @@ -255,7 +255,7 @@ subroutine update_atmos_radiation_physics (Atmos) jdat(5), jdat(6), jdat(7)) GFS_control%jdat(:) = jdat(:) -!--- execute the IPD atmospheric setup step +!--- execute the atmospheric setup step call mpp_clock_begin(setupClock) call CCPP_step (step="timestep_init", nblks=Atm_block%nblks, ierr=ierr) if (ierr/=0) call mpp_error(FATAL, 'Call to CCPP timestep_init step failed') @@ -279,8 +279,8 @@ subroutine update_atmos_radiation_physics (Atmos) endif - ! Calculate total non-physics tendencies by substracting old IPD Stateout - ! variables from new/updated IPD Statein variables (gives the tendencies + ! Calculate total non-physics tendencies by substracting old GFS Stateout + ! variables from new/updated GFS Statein variables (gives the tendencies ! due to anything else than physics) if (GFS_control%ldiag3d) then do nb = 1,Atm_block%nblks @@ -305,7 +305,7 @@ subroutine update_atmos_radiation_physics (Atmos) if (mpp_pe() == mpp_root_pe() .and. debug) write(6,*) "radiation driver" -!--- execute the IPD atmospheric radiation subcomponent (RRTM) +!--- execute the atmospheric radiation subcomponent (RRTM) call mpp_clock_begin(radClock) ! Performance improvement. Only enter if it is time to call the radiation physics. @@ -322,7 +322,7 @@ subroutine update_atmos_radiation_physics (Atmos) if (mpp_pe() == mpp_root_pe() .and. debug) write(6,*) "physics driver" -!--- execute the IPD atmospheric physics step1 subcomponent (main physics driver) +!--- execute the atmospheric physics step1 subcomponent (main physics driver) call mpp_clock_begin(physClock) call CCPP_step (step="physics", nblks=Atm_block%nblks, ierr=ierr) @@ -336,7 +336,7 @@ subroutine update_atmos_radiation_physics (Atmos) if (mpp_pe() == mpp_root_pe() .and. debug) write(6,*) "stochastic physics driver" -!--- execute the IPD atmospheric physics step2 subcomponent (stochastic physics driver) +!--- execute the atmospheric physics step2 subcomponent (stochastic physics driver) call mpp_clock_begin(physClock) call CCPP_step (step="stochastics", nblks=Atm_block%nblks, ierr=ierr) @@ -350,7 +350,7 @@ subroutine update_atmos_radiation_physics (Atmos) call getiauforcing(GFS_control,IAU_data) if (mpp_pe() == mpp_root_pe() .and. debug) write(6,*) "end of radiation and physics step" -!--- execute the IPD atmospheric timestep finalize step +!--- execute the atmospheric timestep finalize step call mpp_clock_begin(setupClock) call CCPP_step (step="timestep_finalize", nblks=Atm_block%nblks, ierr=ierr) if (ierr/=0) call mpp_error(FATAL, 'Call to CCPP timestep_finalize step failed') @@ -501,7 +501,7 @@ subroutine atmos_model_init (Atmos, Time_init, Time, Time_step) do i = 1, ntracers call get_tracer_names(MODEL_ATMOS, i, tracer_names(i)) enddo -!--- setup IPD Init_parm +!--- setup Init_parm Init_parm%me = mpp_pe() Init_parm%master = mpp_root_pe() Init_parm%tile_num = tile_num @@ -668,7 +668,7 @@ subroutine atmos_model_init (Atmos, Time_init, Time, Time_step) !if in coupled mode, set up coupled fields if (GFS_control%cplflx .or. GFS_control%cplwav) then - if (mpp_pe() == mpp_root_pe()) print *,'COUPLING: IPD layer' + if (mpp_pe() == mpp_root_pe()) print *,'COUPLING: CCPP layer' call setup_exportdata(ierr) endif @@ -886,7 +886,7 @@ subroutine atmos_model_end (Atmos) endif ! Fast physics (from dynamics) are finalized in atmosphere_end above; -! standard/slow physics (from IPD) are finalized in CCPP_step 'finalize'. +! standard/slow physics (from CCPP) are finalized in CCPP_step 'finalize'. ! The CCPP framework for all cdata structures is finalized in CCPP_step 'finalize'. call CCPP_step (step="finalize", nblks=Atm_block%nblks, ierr=ierr) if (ierr/=0) call mpp_error(FATAL, 'Call to CCPP finalize step failed') From 6c0cc1da61ca951f14c7dc5abfa1d8d7b961cf38 Mon Sep 17 00:00:00 2001 From: Dom Heinzeller Date: Fri, 2 Apr 2021 09:11:24 -0600 Subject: [PATCH 09/16] Initialize Sfcprop%zorlx to clear_val instead of huge --- ccpp/data/GFS_typedefs.F90 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ccpp/data/GFS_typedefs.F90 b/ccpp/data/GFS_typedefs.F90 index 0f85ab631..5609f1bea 100644 --- a/ccpp/data/GFS_typedefs.F90 +++ b/ccpp/data/GFS_typedefs.F90 @@ -2283,9 +2283,9 @@ subroutine sfcprop_create (Sfcprop, IM, Model) Sfcprop%tiice = clear_val Sfcprop%snowd = clear_val Sfcprop%zorl = clear_val - Sfcprop%zorlo = huge - Sfcprop%zorll = huge - Sfcprop%zorli = huge + Sfcprop%zorlo = clear_val + Sfcprop%zorll = clear_val + Sfcprop%zorli = clear_val Sfcprop%zorlw = clear_val Sfcprop%fice = clear_val ! Sfcprop%hprim = clear_val From 927dc2120c8ce7df7626aa1d1c0cc04278456ff4 Mon Sep 17 00:00:00 2001 From: Dom Heinzeller Date: Fri, 2 Apr 2021 10:15:03 -0600 Subject: [PATCH 10/16] Update submodule pointer for ccpp-physics --- ccpp/physics | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ccpp/physics b/ccpp/physics index 15575af98..347104a52 160000 --- a/ccpp/physics +++ b/ccpp/physics @@ -1 +1 @@ -Subproject commit 15575af9802e274d915874418ee3a253eae77e9b +Subproject commit 347104a52e127afd014965e54d28e052d3c9ac30 From 1613a3a20b3a0269d2768ebda659ececf5db444c Mon Sep 17 00:00:00 2001 From: Dom Heinzeller Date: Fri, 2 Apr 2021 09:11:59 -0600 Subject: [PATCH 11/16] Update submodule pointer for ccpp-physics --- ccpp/physics | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ccpp/physics b/ccpp/physics index 20e1ae8f0..edc919415 160000 --- a/ccpp/physics +++ b/ccpp/physics @@ -1 +1 @@ -Subproject commit 20e1ae8f0607a586852de52e47490cac068ee8b9 +Subproject commit edc9194156b7aa3aff101e70d9194a1313095d99 From f5401dd520ee8c3dbfe293f83037e38c9c11b6b9 Mon Sep 17 00:00:00 2001 From: Dom Heinzeller Date: Mon, 5 Apr 2021 08:06:19 -0600 Subject: [PATCH 12/16] Rename Fortran variables and CCPP standard names / long names of surface composites from ocean to water --- .gitmodules | 2 +- ccpp/data/GFS_typedefs.F90 | 192 ++++++++++++++++++------------------ ccpp/data/GFS_typedefs.meta | 160 +++++++++++++++--------------- ccpp/physics | 2 +- 4 files changed, 178 insertions(+), 178 deletions(-) diff --git a/.gitmodules b/.gitmodules index 114782644..4d4a4b380 100644 --- a/.gitmodules +++ b/.gitmodules @@ -11,4 +11,4 @@ #url = https://github.com/NCAR/ccpp-physics #branch = master url = https://github.com/climbfuji/ccpp-physics - branch = remove_zorl_interstitial + branch = rename_surface_composites_ocean_water diff --git a/ccpp/data/GFS_typedefs.F90 b/ccpp/data/GFS_typedefs.F90 index 006ca6729..9d74e3684 100644 --- a/ccpp/data/GFS_typedefs.F90 +++ b/ccpp/data/GFS_typedefs.F90 @@ -1700,7 +1700,7 @@ module GFS_typedefs real (kind=kind_phys), pointer :: adjsfculw_land(:) => null() !< real (kind=kind_phys), pointer :: adjsfculw_ice(:) => null() !< - real (kind=kind_phys), pointer :: adjsfculw_ocean(:) => null() !< + real (kind=kind_phys), pointer :: adjsfculw_water(:) => null() !< real (kind=kind_phys), pointer :: adjnirbmd(:) => null() !< real (kind=kind_phys), pointer :: adjnirbmu(:) => null() !< real (kind=kind_phys), pointer :: adjnirdfd(:) => null() !< @@ -1717,15 +1717,15 @@ module GFS_typedefs real (kind=kind_phys), pointer :: cd(:) => null() !< real (kind=kind_phys), pointer :: cd_ice(:) => null() !< real (kind=kind_phys), pointer :: cd_land(:) => null() !< - real (kind=kind_phys), pointer :: cd_ocean(:) => null() !< + real (kind=kind_phys), pointer :: cd_water(:) => null() !< real (kind=kind_phys), pointer :: cdq(:) => null() !< real (kind=kind_phys), pointer :: cdq_ice(:) => null() !< real (kind=kind_phys), pointer :: cdq_land(:) => null() !< - real (kind=kind_phys), pointer :: cdq_ocean(:) => null() !< + real (kind=kind_phys), pointer :: cdq_water(:) => null() !< real (kind=kind_phys), pointer :: cf_upi(:,:) => null() !< real (kind=kind_phys), pointer :: chh_ice(:) => null() !< real (kind=kind_phys), pointer :: chh_land(:) => null() !< - real (kind=kind_phys), pointer :: chh_ocean(:) => null() !< + real (kind=kind_phys), pointer :: chh_water(:) => null() !< real (kind=kind_phys), pointer :: chk_land(:) => null() !< real (kind=kind_phys), pointer :: clcn(:,:) => null() !< real (kind=kind_phys), pointer :: cldf(:) => null() !< @@ -1739,7 +1739,7 @@ module GFS_typedefs real (kind=kind_phys), pointer :: cmc(:) => null() !< real (kind=kind_phys), pointer :: cmm_ice(:) => null() !< real (kind=kind_phys), pointer :: cmm_land(:) => null() !< - real (kind=kind_phys), pointer :: cmm_ocean(:) => null() !< + real (kind=kind_phys), pointer :: cmm_water(:) => null() !< real (kind=kind_phys), pointer :: cnv_dqldt(:,:) => null() !< real (kind=kind_phys), pointer :: cnv_fice(:,:) => null() !< real (kind=kind_phys), pointer :: cnv_mfd(:,:) => null() !< @@ -1778,22 +1778,22 @@ module GFS_typedefs real (kind=kind_phys), pointer :: ep1d(:) => null() !< real (kind=kind_phys), pointer :: ep1d_ice(:) => null() !< real (kind=kind_phys), pointer :: ep1d_land(:) => null() !< - real (kind=kind_phys), pointer :: ep1d_ocean(:) => null() !< + real (kind=kind_phys), pointer :: ep1d_water(:) => null() !< real (kind=kind_phys), pointer :: evapq(:) => null() !< real (kind=kind_phys), pointer :: evap_ice(:) => null() !< real (kind=kind_phys), pointer :: evap_land(:) => null() !< - real (kind=kind_phys), pointer :: evap_ocean(:) => null() !< + real (kind=kind_phys), pointer :: evap_water(:) => null() !< real (kind=kind_phys), pointer :: evbs(:) => null() !< real (kind=kind_phys), pointer :: evcw(:) => null() !< real (kind=kind_phys), pointer :: faerlw(:,:,:,:) => null() !< real (kind=kind_phys), pointer :: faersw(:,:,:,:) => null() !< real (kind=kind_phys), pointer :: ffhh_ice(:) => null() !< real (kind=kind_phys), pointer :: ffhh_land(:) => null() !< - real (kind=kind_phys), pointer :: ffhh_ocean(:) => null() !< + real (kind=kind_phys), pointer :: ffhh_water(:) => null() !< real (kind=kind_phys), pointer :: fh2(:) => null() !< real (kind=kind_phys), pointer :: fh2_ice(:) => null() !< real (kind=kind_phys), pointer :: fh2_land(:) => null() !< - real (kind=kind_phys), pointer :: fh2_ocean(:) => null() !< + real (kind=kind_phys), pointer :: fh2_water(:) => null() !< logical, pointer :: flag_cice(:) => null() !< logical, pointer :: flag_guess(:) => null() !< logical, pointer :: flag_iter(:) => null() !< @@ -1801,11 +1801,11 @@ module GFS_typedefs logical, pointer :: flag_lsm_glacier(:)=> null() !< real (kind=kind_phys), pointer :: ffmm_ice(:) => null() !< real (kind=kind_phys), pointer :: ffmm_land(:) => null() !< - real (kind=kind_phys), pointer :: ffmm_ocean(:) => null() !< + real (kind=kind_phys), pointer :: ffmm_water(:) => null() !< real (kind=kind_phys), pointer :: fm10(:) => null() !< real (kind=kind_phys), pointer :: fm10_ice(:) => null() !< real (kind=kind_phys), pointer :: fm10_land(:) => null() !< - real (kind=kind_phys), pointer :: fm10_ocean(:) => null() !< + real (kind=kind_phys), pointer :: fm10_water(:) => null() !< real (kind=kind_phys) :: frain !< real (kind=kind_phys), pointer :: frland(:) => null() !< real (kind=kind_phys), pointer :: fscav(:) => null() !< @@ -1813,7 +1813,7 @@ module GFS_typedefs real (kind=kind_phys), pointer :: gabsbdlw(:) => null() !< real (kind=kind_phys), pointer :: gabsbdlw_ice(:) => null() !< real (kind=kind_phys), pointer :: gabsbdlw_land(:) => null() !< - real (kind=kind_phys), pointer :: gabsbdlw_ocean(:) => null() !< + real (kind=kind_phys), pointer :: gabsbdlw_water(:) => null() !< real (kind=kind_phys), pointer :: gamma(:) => null() !< real (kind=kind_phys), pointer :: gamq(:) => null() !< real (kind=kind_phys), pointer :: gamt(:) => null() !< @@ -1821,7 +1821,7 @@ module GFS_typedefs real (kind=kind_phys), pointer :: gflx(:) => null() !< real (kind=kind_phys), pointer :: gflx_ice(:) => null() !< real (kind=kind_phys), pointer :: gflx_land(:) => null() !< - real (kind=kind_phys), pointer :: gflx_ocean(:) => null() !< + real (kind=kind_phys), pointer :: gflx_water(:) => null() !< real (kind=kind_phys), pointer :: graupelmp(:) => null() !< real (kind=kind_phys), pointer :: gwdcu(:,:) => null() !< real (kind=kind_phys), pointer :: gwdcv(:,:) => null() !< @@ -1830,7 +1830,7 @@ module GFS_typedefs real (kind=kind_phys), pointer :: hflxq(:) => null() !< real (kind=kind_phys), pointer :: hflx_ice(:) => null() !< real (kind=kind_phys), pointer :: hflx_land(:) => null() !< - real (kind=kind_phys), pointer :: hflx_ocean(:) => null() !< + real (kind=kind_phys), pointer :: hflx_water(:) => null() !< !--- radiation variables that need to be carried over from radiation to physics real (kind=kind_phys), pointer :: htlwc(:,:) => null() !< real (kind=kind_phys), pointer :: htlw0(:,:) => null() !< @@ -1902,7 +1902,7 @@ module GFS_typedefs real (kind=kind_phys), pointer :: qsnw(:,:) => null() !< real (kind=kind_phys), pointer :: qss_ice(:) => null() !< real (kind=kind_phys), pointer :: qss_land(:) => null() !< - real (kind=kind_phys), pointer :: qss_ocean(:) => null() !< + real (kind=kind_phys), pointer :: qss_water(:) => null() !< real (kind=kind_phys), pointer :: qs1(:) => null() !< real (kind=kind_phys), pointer :: qv1(:) => null() !< logical :: radar_reset !< @@ -1915,7 +1915,7 @@ module GFS_typedefs real (kind=kind_phys), pointer :: rb(:) => null() !< real (kind=kind_phys), pointer :: rb_ice(:) => null() !< real (kind=kind_phys), pointer :: rb_land(:) => null() !< - real (kind=kind_phys), pointer :: rb_ocean(:) => null() !< + real (kind=kind_phys), pointer :: rb_water(:) => null() !< logical :: reset !< real (kind=kind_phys), pointer :: rhc(:,:) => null() !< real (kind=kind_phys), pointer :: rho1(:) => null() !< @@ -1930,7 +1930,7 @@ module GFS_typedefs type (cmpfsw_type), pointer :: scmpsw(:) => null() !< real (kind=kind_phys), pointer :: semis_ice(:) => null() !< real (kind=kind_phys), pointer :: semis_land(:) => null() !< - real (kind=kind_phys), pointer :: semis_ocean(:) => null() !< + real (kind=kind_phys), pointer :: semis_water(:) => null() !< real (kind=kind_phys), pointer :: sfcalb(:,:) => null() !< real (kind=kind_phys), pointer :: sigma(:) => null() !< real (kind=kind_phys), pointer :: sigmaf(:) => null() !< @@ -1945,7 +1945,7 @@ module GFS_typedefs real (kind=kind_phys), pointer :: snowd_ice(:) => null() !< real (kind=kind_phys), pointer :: snowd_land(:) => null() !< real (kind=kind_phys), pointer :: snowd_land_save(:) => null() !< - real (kind=kind_phys), pointer :: snowd_ocean(:) => null() !< + real (kind=kind_phys), pointer :: snowd_water(:) => null() !< real (kind=kind_phys), pointer :: snow_depth(:) => null() !< real (kind=kind_phys), pointer :: snohf(:) => null() !< real (kind=kind_phys), pointer :: snohf_snow(:) => null() !< @@ -1959,7 +1959,7 @@ module GFS_typedefs real (kind=kind_phys), pointer :: stress(:) => null() !< real (kind=kind_phys), pointer :: stress_ice(:) => null() !< real (kind=kind_phys), pointer :: stress_land(:) => null() !< - real (kind=kind_phys), pointer :: stress_ocean(:) => null() !< + real (kind=kind_phys), pointer :: stress_water(:) => null() !< real (kind=kind_phys), pointer :: t2mmp(:) => null() !< real (kind=kind_phys), pointer :: theta(:) => null() !< real (kind=kind_phys), pointer :: th1(:) => null() !< @@ -1968,7 +1968,7 @@ module GFS_typedefs real (kind=kind_phys), pointer :: tlyr(:,:) => null() !< real (kind=kind_phys), pointer :: tprcp_ice(:) => null() !< real (kind=kind_phys), pointer :: tprcp_land(:) => null() !< - real (kind=kind_phys), pointer :: tprcp_ocean(:) => null() !< + real (kind=kind_phys), pointer :: tprcp_water(:) => null() !< real (kind=kind_phys), pointer :: tprcp_rate_land(:) => null() !< integer :: tracers_start_index !< integer :: tracers_total !< @@ -1980,16 +1980,16 @@ module GFS_typedefs real (kind=kind_phys), pointer :: tsfc_ice(:) => null() !< real (kind=kind_phys), pointer :: tsfc_land(:) => null() !< real (kind=kind_phys), pointer :: tsfc_land_save(:) => null() !< - real (kind=kind_phys), pointer :: tsfc_ocean(:) => null() !< + real (kind=kind_phys), pointer :: tsfc_water(:) => null() !< real (kind=kind_phys), pointer :: tsfg(:) => null() !< real (kind=kind_phys), pointer :: tsurf(:) => null() !< real (kind=kind_phys), pointer :: tsurf_ice(:) => null() !< real (kind=kind_phys), pointer :: tsurf_land(:) => null() !< - real (kind=kind_phys), pointer :: tsurf_ocean(:) => null() !< + real (kind=kind_phys), pointer :: tsurf_water(:) => null() !< real (kind=kind_phys), pointer :: ud_mf(:,:) => null() !< real (kind=kind_phys), pointer :: uustar_ice(:) => null() !< real (kind=kind_phys), pointer :: uustar_land(:) => null() !< - real (kind=kind_phys), pointer :: uustar_ocean(:) => null() !< + real (kind=kind_phys), pointer :: uustar_water(:) => null() !< real (kind=kind_phys), pointer :: vdftra(:,:,:) => null() !< real (kind=kind_phys), pointer :: vegf1d(:) => null() !< real (kind=kind_phys) :: lndp_vgf !< @@ -1997,7 +1997,7 @@ module GFS_typedefs integer, pointer :: vegtype(:) => null() !< real (kind=kind_phys), pointer :: w_upi(:,:) => null() !< real (kind=kind_phys), pointer :: wcbmax(:) => null() !< - real (kind=kind_phys), pointer :: weasd_ocean(:) => null() !< + real (kind=kind_phys), pointer :: weasd_water(:) => null() !< real (kind=kind_phys), pointer :: weasd_land(:) => null() !< real (kind=kind_phys), pointer :: weasd_land_save(:) => null() !< real (kind=kind_phys), pointer :: weasd_ice(:) => null() !< @@ -6233,7 +6233,7 @@ subroutine interstitial_create (Interstitial, IM, Model) ! Allocate arrays allocate (Interstitial%adjsfculw_land (IM)) allocate (Interstitial%adjsfculw_ice (IM)) - allocate (Interstitial%adjsfculw_ocean (IM)) + allocate (Interstitial%adjsfculw_water (IM)) allocate (Interstitial%adjnirbmd (IM)) allocate (Interstitial%adjnirbmu (IM)) allocate (Interstitial%adjnirdfd (IM)) @@ -6252,14 +6252,14 @@ subroutine interstitial_create (Interstitial, IM, Model) allocate (Interstitial%cd (IM)) allocate (Interstitial%cd_ice (IM)) allocate (Interstitial%cd_land (IM)) - allocate (Interstitial%cd_ocean (IM)) + allocate (Interstitial%cd_water (IM)) allocate (Interstitial%cdq (IM)) allocate (Interstitial%cdq_ice (IM)) allocate (Interstitial%cdq_land (IM)) - allocate (Interstitial%cdq_ocean (IM)) + allocate (Interstitial%cdq_water (IM)) allocate (Interstitial%chh_ice (IM)) allocate (Interstitial%chh_land (IM)) - allocate (Interstitial%chh_ocean (IM)) + allocate (Interstitial%chh_water (IM)) allocate (Interstitial%cldf (IM)) allocate (Interstitial%cldsa (IM,5)) allocate (Interstitial%cldtaulw (IM,Model%levr+LTP)) @@ -6270,7 +6270,7 @@ subroutine interstitial_create (Interstitial, IM, Model) allocate (Interstitial%clx (IM,4)) allocate (Interstitial%cmm_ice (IM)) allocate (Interstitial%cmm_land (IM)) - allocate (Interstitial%cmm_ocean (IM)) + allocate (Interstitial%cmm_water (IM)) allocate (Interstitial%cnvc (IM,Model%levs)) allocate (Interstitial%cnvw (IM,Model%levs)) allocate (Interstitial%ctei_r (IM)) @@ -6302,39 +6302,39 @@ subroutine interstitial_create (Interstitial, IM, Model) allocate (Interstitial%ep1d (IM)) allocate (Interstitial%ep1d_ice (IM)) allocate (Interstitial%ep1d_land (IM)) - allocate (Interstitial%ep1d_ocean (IM)) + allocate (Interstitial%ep1d_water (IM)) allocate (Interstitial%evapq (IM)) allocate (Interstitial%evap_ice (IM)) allocate (Interstitial%evap_land (IM)) - allocate (Interstitial%evap_ocean (IM)) + allocate (Interstitial%evap_water (IM)) allocate (Interstitial%evbs (IM)) allocate (Interstitial%evcw (IM)) allocate (Interstitial%faerlw (IM,Model%levr+LTP,NBDLW,NF_AELW)) allocate (Interstitial%faersw (IM,Model%levr+LTP,NBDSW,NF_AESW)) allocate (Interstitial%ffhh_ice (IM)) allocate (Interstitial%ffhh_land (IM)) - allocate (Interstitial%ffhh_ocean (IM)) + allocate (Interstitial%ffhh_water (IM)) allocate (Interstitial%fh2 (IM)) allocate (Interstitial%fh2_ice (IM)) allocate (Interstitial%fh2_land (IM)) - allocate (Interstitial%fh2_ocean (IM)) + allocate (Interstitial%fh2_water (IM)) allocate (Interstitial%flag_cice (IM)) allocate (Interstitial%flag_guess (IM)) allocate (Interstitial%flag_iter (IM)) allocate (Interstitial%ffmm_ice (IM)) allocate (Interstitial%ffmm_land (IM)) - allocate (Interstitial%ffmm_ocean (IM)) + allocate (Interstitial%ffmm_water (IM)) allocate (Interstitial%fm10 (IM)) allocate (Interstitial%fm10_ice (IM)) allocate (Interstitial%fm10_land (IM)) - allocate (Interstitial%fm10_ocean (IM)) + allocate (Interstitial%fm10_water (IM)) allocate (Interstitial%frland (IM)) allocate (Interstitial%fscav (Interstitial%nscav)) allocate (Interstitial%fswtr (Interstitial%nscav)) allocate (Interstitial%gabsbdlw (IM)) allocate (Interstitial%gabsbdlw_ice (IM)) allocate (Interstitial%gabsbdlw_land (IM)) - allocate (Interstitial%gabsbdlw_ocean (IM)) + allocate (Interstitial%gabsbdlw_water (IM)) allocate (Interstitial%gamma (IM)) allocate (Interstitial%gamq (IM)) allocate (Interstitial%gamt (IM)) @@ -6342,7 +6342,7 @@ subroutine interstitial_create (Interstitial, IM, Model) allocate (Interstitial%gflx (IM)) allocate (Interstitial%gflx_ice (IM)) allocate (Interstitial%gflx_land (IM)) - allocate (Interstitial%gflx_ocean (IM)) + allocate (Interstitial%gflx_water (IM)) allocate (Interstitial%gwdcu (IM,Model%levs)) allocate (Interstitial%gwdcv (IM,Model%levs)) allocate (Interstitial%hefac (IM)) @@ -6350,7 +6350,7 @@ subroutine interstitial_create (Interstitial, IM, Model) allocate (Interstitial%hflxq (IM)) allocate (Interstitial%hflx_ice (IM)) allocate (Interstitial%hflx_land (IM)) - allocate (Interstitial%hflx_ocean (IM)) + allocate (Interstitial%hflx_water (IM)) allocate (Interstitial%htlwc (IM,Model%levr+LTP)) allocate (Interstitial%htlw0 (IM,Model%levr+LTP)) allocate (Interstitial%htswc (IM,Model%levr+LTP)) @@ -6380,7 +6380,7 @@ subroutine interstitial_create (Interstitial, IM, Model) allocate (Interstitial%prcpmp (IM)) allocate (Interstitial%qss_ice (IM)) allocate (Interstitial%qss_land (IM)) - allocate (Interstitial%qss_ocean (IM)) + allocate (Interstitial%qss_water (IM)) allocate (Interstitial%raincd (IM)) allocate (Interstitial%raincs (IM)) allocate (Interstitial%rainmcadj (IM)) @@ -6388,7 +6388,7 @@ subroutine interstitial_create (Interstitial, IM, Model) allocate (Interstitial%rb (IM)) allocate (Interstitial%rb_ice (IM)) allocate (Interstitial%rb_land (IM)) - allocate (Interstitial%rb_ocean (IM)) + allocate (Interstitial%rb_water (IM)) allocate (Interstitial%rhc (IM,Model%levs)) allocate (Interstitial%runoff (IM)) allocate (Interstitial%save_q (IM,Model%levs,Model%ntrac)) @@ -6400,7 +6400,7 @@ subroutine interstitial_create (Interstitial, IM, Model) allocate (Interstitial%scmpsw (IM)) allocate (Interstitial%semis_ice (IM)) allocate (Interstitial%semis_land (IM)) - allocate (Interstitial%semis_ocean (IM)) + allocate (Interstitial%semis_water (IM)) allocate (Interstitial%sfcalb (IM,NF_ALBD)) allocate (Interstitial%sigma (IM)) allocate (Interstitial%sigmaf (IM)) @@ -6410,43 +6410,43 @@ subroutine interstitial_create (Interstitial, IM, Model) allocate (Interstitial%snowc (IM)) allocate (Interstitial%snowd_ice (IM)) allocate (Interstitial%snowd_land (IM)) - allocate (Interstitial%snowd_ocean (IM)) + allocate (Interstitial%snowd_water (IM)) allocate (Interstitial%snohf (IM)) allocate (Interstitial%snowmt (IM)) allocate (Interstitial%soiltype (IM)) allocate (Interstitial%stress (IM)) allocate (Interstitial%stress_ice (IM)) allocate (Interstitial%stress_land (IM)) - allocate (Interstitial%stress_ocean (IM)) + allocate (Interstitial%stress_water (IM)) allocate (Interstitial%theta (IM)) allocate (Interstitial%tice (IM)) allocate (Interstitial%tlvl (IM,Model%levr+1+LTP)) allocate (Interstitial%tlyr (IM,Model%levr+LTP)) allocate (Interstitial%tprcp_ice (IM)) allocate (Interstitial%tprcp_land (IM)) - allocate (Interstitial%tprcp_ocean (IM)) + allocate (Interstitial%tprcp_water (IM)) allocate (Interstitial%trans (IM)) allocate (Interstitial%tseal (IM)) allocate (Interstitial%tsfa (IM)) allocate (Interstitial%tsfc_ice (IM)) allocate (Interstitial%tsfc_land (IM)) - allocate (Interstitial%tsfc_ocean (IM)) + allocate (Interstitial%tsfc_water (IM)) allocate (Interstitial%tsfg (IM)) allocate (Interstitial%tsurf (IM)) allocate (Interstitial%tsurf_ice (IM)) allocate (Interstitial%tsurf_land (IM)) - allocate (Interstitial%tsurf_ocean (IM)) + allocate (Interstitial%tsurf_water (IM)) allocate (Interstitial%ud_mf (IM,Model%levs)) allocate (Interstitial%uustar_ice (IM)) allocate (Interstitial%uustar_land (IM)) - allocate (Interstitial%uustar_ocean (IM)) + allocate (Interstitial%uustar_water (IM)) allocate (Interstitial%vdftra (IM,Model%levs,Interstitial%nvdiff)) !GJF first dimension was set as 'IX' in GFS_physics_driver allocate (Interstitial%vegf1d (IM)) allocate (Interstitial%vegtype (IM)) allocate (Interstitial%wcbmax (IM)) allocate (Interstitial%weasd_ice (IM)) allocate (Interstitial%weasd_land (IM)) - allocate (Interstitial%weasd_ocean (IM)) + allocate (Interstitial%weasd_water (IM)) allocate (Interstitial%wind (IM)) allocate (Interstitial%work1 (IM)) allocate (Interstitial%work2 (IM)) @@ -6934,7 +6934,7 @@ subroutine interstitial_phys_reset (Interstitial, Model) ! Interstitial%adjsfculw_land = clear_val Interstitial%adjsfculw_ice = clear_val - Interstitial%adjsfculw_ocean = clear_val + Interstitial%adjsfculw_water = clear_val Interstitial%adjnirbmd = clear_val Interstitial%adjnirbmu = clear_val Interstitial%adjnirdfd = clear_val @@ -6947,14 +6947,14 @@ subroutine interstitial_phys_reset (Interstitial, Model) Interstitial%cd = clear_val Interstitial%cd_ice = huge Interstitial%cd_land = huge - Interstitial%cd_ocean = huge + Interstitial%cd_water = huge Interstitial%cdq = clear_val Interstitial%cdq_ice = huge Interstitial%cdq_land = huge - Interstitial%cdq_ocean = huge + Interstitial%cdq_water = huge Interstitial%chh_ice = huge Interstitial%chh_land = huge - Interstitial%chh_ocean = huge + Interstitial%chh_water = huge Interstitial%cld1d = clear_val Interstitial%cldf = clear_val Interstitial%clw = clear_val @@ -6962,7 +6962,7 @@ subroutine interstitial_phys_reset (Interstitial, Model) Interstitial%clx = clear_val Interstitial%cmm_ice = huge Interstitial%cmm_land = huge - Interstitial%cmm_ocean = huge + Interstitial%cmm_water = huge Interstitial%cnvc = clear_val Interstitial%cnvw = clear_val Interstitial%ctei_r = clear_val @@ -6991,44 +6991,44 @@ subroutine interstitial_phys_reset (Interstitial, Model) Interstitial%ep1d = clear_val Interstitial%ep1d_ice = huge Interstitial%ep1d_land = huge - Interstitial%ep1d_ocean = huge + Interstitial%ep1d_water = huge Interstitial%evapq = clear_val Interstitial%evap_ice = huge Interstitial%evap_land = huge - Interstitial%evap_ocean = huge + Interstitial%evap_water = huge Interstitial%evbs = clear_val Interstitial%evcw = clear_val Interstitial%ffhh_ice = huge Interstitial%ffhh_land = huge - Interstitial%ffhh_ocean = huge + Interstitial%ffhh_water = huge Interstitial%fh2 = clear_val Interstitial%fh2_ice = huge Interstitial%fh2_land = huge - Interstitial%fh2_ocean = huge + Interstitial%fh2_water = huge Interstitial%flag_cice = .false. Interstitial%flag_guess = .false. Interstitial%flag_iter = .true. Interstitial%ffmm_ice = huge Interstitial%ffmm_land = huge - Interstitial%ffmm_ocean = huge + Interstitial%ffmm_water = huge Interstitial%fm10 = clear_val Interstitial%fm10_ice = huge Interstitial%fm10_land = huge - Interstitial%fm10_ocean = huge + Interstitial%fm10_water = huge Interstitial%frland = clear_val Interstitial%fscav = clear_val Interstitial%fswtr = clear_val Interstitial%gabsbdlw = clear_val Interstitial%gabsbdlw_ice = clear_val Interstitial%gabsbdlw_land = clear_val - Interstitial%gabsbdlw_ocean = clear_val + Interstitial%gabsbdlw_water = clear_val Interstitial%gamma = clear_val Interstitial%gamq = clear_val Interstitial%gamt = clear_val Interstitial%gflx = clear_val Interstitial%gflx_ice = clear_val Interstitial%gflx_land = clear_val - Interstitial%gflx_ocean = clear_val + Interstitial%gflx_water = clear_val Interstitial%gwdcu = clear_val Interstitial%gwdcv = clear_val Interstitial%hefac = clear_val @@ -7036,7 +7036,7 @@ subroutine interstitial_phys_reset (Interstitial, Model) Interstitial%hflxq = clear_val Interstitial%hflx_ice = huge Interstitial%hflx_land = huge - Interstitial%hflx_ocean = huge + Interstitial%hflx_water = huge Interstitial%dry = .false. Interstitial%icy = .false. Interstitial%lake = .false. @@ -7055,7 +7055,7 @@ subroutine interstitial_phys_reset (Interstitial, Model) Interstitial%prnum = clear_val Interstitial%qss_ice = huge Interstitial%qss_land = huge - Interstitial%qss_ocean = huge + Interstitial%qss_water = huge Interstitial%raincd = clear_val Interstitial%raincs = clear_val Interstitial%rainmcadj = clear_val @@ -7063,7 +7063,7 @@ subroutine interstitial_phys_reset (Interstitial, Model) Interstitial%rb = clear_val Interstitial%rb_ice = huge Interstitial%rb_land = huge - Interstitial%rb_ocean = huge + Interstitial%rb_water = huge Interstitial%rhc = clear_val Interstitial%runoff = clear_val Interstitial%save_q = clear_val @@ -7074,7 +7074,7 @@ subroutine interstitial_phys_reset (Interstitial, Model) Interstitial%sbsno = clear_val Interstitial%semis_ice = clear_val Interstitial%semis_land = clear_val - Interstitial%semis_ocean = clear_val + Interstitial%semis_water = clear_val Interstitial%sigma = clear_val Interstitial%sigmaf = clear_val Interstitial%sigmafrac = clear_val @@ -7083,32 +7083,32 @@ subroutine interstitial_phys_reset (Interstitial, Model) Interstitial%snowc = clear_val Interstitial%snowd_ice = huge Interstitial%snowd_land = huge - Interstitial%snowd_ocean = huge + Interstitial%snowd_water = huge Interstitial%snohf = clear_val Interstitial%snowmt = clear_val Interstitial%soiltype = 0 Interstitial%stress = clear_val Interstitial%stress_ice = huge Interstitial%stress_land = huge - Interstitial%stress_ocean = huge + Interstitial%stress_water = huge Interstitial%theta = clear_val Interstitial%tice = clear_val Interstitial%tprcp_ice = huge Interstitial%tprcp_land = huge - Interstitial%tprcp_ocean = huge + Interstitial%tprcp_water = huge Interstitial%trans = clear_val Interstitial%tseal = clear_val Interstitial%tsfc_ice = huge Interstitial%tsfc_land = huge - Interstitial%tsfc_ocean = huge + Interstitial%tsfc_water = huge Interstitial%tsurf = clear_val Interstitial%tsurf_ice = huge Interstitial%tsurf_land = huge - Interstitial%tsurf_ocean = huge + Interstitial%tsurf_water = huge Interstitial%ud_mf = clear_val Interstitial%uustar_ice = huge Interstitial%uustar_land = huge - Interstitial%uustar_ocean = huge + Interstitial%uustar_water = huge Interstitial%vdftra = clear_val Interstitial%vegf1d = clear_val Interstitial%lndp_vgf = clear_val @@ -7116,7 +7116,7 @@ subroutine interstitial_phys_reset (Interstitial, Model) Interstitial%wcbmax = clear_val Interstitial%weasd_ice = huge Interstitial%weasd_land = huge - Interstitial%weasd_ocean = huge + Interstitial%weasd_water = huge Interstitial%wind = huge Interstitial%work1 = clear_val Interstitial%work2 = clear_val @@ -7274,7 +7274,7 @@ subroutine interstitial_print(Interstitial, Model, mpirank, omprank, blkno) write (0,*) 'Interstitial_print: values that change' write (0,*) 'sum(Interstitial%adjsfculw_land ) = ', sum(Interstitial%adjsfculw_land ) write (0,*) 'sum(Interstitial%adjsfculw_ice ) = ', sum(Interstitial%adjsfculw_ice ) - write (0,*) 'sum(Interstitial%adjsfculw_ocean ) = ', sum(Interstitial%adjsfculw_ocean ) + write (0,*) 'sum(Interstitial%adjsfculw_water ) = ', sum(Interstitial%adjsfculw_water ) write (0,*) 'sum(Interstitial%adjnirbmd ) = ', sum(Interstitial%adjnirbmd ) write (0,*) 'sum(Interstitial%adjnirbmu ) = ', sum(Interstitial%adjnirbmu ) write (0,*) 'sum(Interstitial%adjnirdfd ) = ', sum(Interstitial%adjnirdfd ) @@ -7292,14 +7292,14 @@ subroutine interstitial_print(Interstitial, Model, mpirank, omprank, blkno) write (0,*) 'sum(Interstitial%cd ) = ', sum(Interstitial%cd ) write (0,*) 'sum(Interstitial%cd_ice ) = ', sum(Interstitial%cd_ice ) write (0,*) 'sum(Interstitial%cd_land ) = ', sum(Interstitial%cd_land ) - write (0,*) 'sum(Interstitial%cd_ocean ) = ', sum(Interstitial%cd_ocean ) + write (0,*) 'sum(Interstitial%cd_water ) = ', sum(Interstitial%cd_water ) write (0,*) 'sum(Interstitial%cdq ) = ', sum(Interstitial%cdq ) write (0,*) 'sum(Interstitial%cdq_ice ) = ', sum(Interstitial%cdq_ice ) write (0,*) 'sum(Interstitial%cdq_land ) = ', sum(Interstitial%cdq_land ) - write (0,*) 'sum(Interstitial%cdq_ocean ) = ', sum(Interstitial%cdq_ocean ) + write (0,*) 'sum(Interstitial%cdq_water ) = ', sum(Interstitial%cdq_water ) write (0,*) 'sum(Interstitial%chh_ice ) = ', sum(Interstitial%chh_ice ) write (0,*) 'sum(Interstitial%chh_land ) = ', sum(Interstitial%chh_land ) - write (0,*) 'sum(Interstitial%chh_ocean ) = ', sum(Interstitial%chh_ocean ) + write (0,*) 'sum(Interstitial%chh_water ) = ', sum(Interstitial%chh_water ) write (0,*) 'sum(Interstitial%cldf ) = ', sum(Interstitial%cldf ) write (0,*) 'sum(Interstitial%cldsa ) = ', sum(Interstitial%cldsa ) write (0,*) 'sum(Interstitial%cldtaulw ) = ', sum(Interstitial%cldtaulw ) @@ -7310,7 +7310,7 @@ subroutine interstitial_print(Interstitial, Model, mpirank, omprank, blkno) write (0,*) 'sum(Interstitial%clouds ) = ', sum(Interstitial%clouds ) write (0,*) 'sum(Interstitial%cmm_ice ) = ', sum(Interstitial%cmm_ice ) write (0,*) 'sum(Interstitial%cmm_land ) = ', sum(Interstitial%cmm_land ) - write (0,*) 'sum(Interstitial%cmm_ocean ) = ', sum(Interstitial%cmm_ocean ) + write (0,*) 'sum(Interstitial%cmm_water ) = ', sum(Interstitial%cmm_water ) write (0,*) 'sum(Interstitial%cnvc ) = ', sum(Interstitial%cnvc ) write (0,*) 'sum(Interstitial%cnvw ) = ', sum(Interstitial%cnvw ) write (0,*) 'sum(Interstitial%ctei_r ) = ', sum(Interstitial%ctei_r ) @@ -7342,32 +7342,32 @@ subroutine interstitial_print(Interstitial, Model, mpirank, omprank, blkno) write (0,*) 'sum(Interstitial%ep1d ) = ', sum(Interstitial%ep1d ) write (0,*) 'sum(Interstitial%ep1d_ice ) = ', sum(Interstitial%ep1d_ice ) write (0,*) 'sum(Interstitial%ep1d_land ) = ', sum(Interstitial%ep1d_land ) - write (0,*) 'sum(Interstitial%ep1d_ocean ) = ', sum(Interstitial%ep1d_ocean ) + write (0,*) 'sum(Interstitial%ep1d_water ) = ', sum(Interstitial%ep1d_water ) write (0,*) 'sum(Interstitial%evapq ) = ', sum(Interstitial%evapq ) write (0,*) 'sum(Interstitial%evap_ice ) = ', sum(Interstitial%evap_ice ) write (0,*) 'sum(Interstitial%evap_land ) = ', sum(Interstitial%evap_land ) - write (0,*) 'sum(Interstitial%evap_ocean ) = ', sum(Interstitial%evap_ocean ) + write (0,*) 'sum(Interstitial%evap_water ) = ', sum(Interstitial%evap_water ) write (0,*) 'sum(Interstitial%evbs ) = ', sum(Interstitial%evbs ) write (0,*) 'sum(Interstitial%evcw ) = ', sum(Interstitial%evcw ) write (0,*) 'sum(Interstitial%faerlw ) = ', sum(Interstitial%faerlw ) write (0,*) 'sum(Interstitial%faersw ) = ', sum(Interstitial%faersw ) write (0,*) 'sum(Interstitial%ffhh_ice ) = ', sum(Interstitial%ffhh_ice ) write (0,*) 'sum(Interstitial%ffhh_land ) = ', sum(Interstitial%ffhh_land ) - write (0,*) 'sum(Interstitial%ffhh_ocean ) = ', sum(Interstitial%ffhh_ocean ) + write (0,*) 'sum(Interstitial%ffhh_water ) = ', sum(Interstitial%ffhh_water ) write (0,*) 'sum(Interstitial%fh2 ) = ', sum(Interstitial%fh2 ) write (0,*) 'sum(Interstitial%fh2_ice ) = ', sum(Interstitial%fh2_ice ) write (0,*) 'sum(Interstitial%fh2_land ) = ', sum(Interstitial%fh2_land ) - write (0,*) 'sum(Interstitial%fh2_ocean ) = ', sum(Interstitial%fh2_ocean ) + write (0,*) 'sum(Interstitial%fh2_water ) = ', sum(Interstitial%fh2_water ) write (0,*) 'Interstitial%flag_cice(1) = ', Interstitial%flag_cice(1) write (0,*) 'Interstitial%flag_guess(1) = ', Interstitial%flag_guess(1) write (0,*) 'Interstitial%flag_iter(1) = ', Interstitial%flag_iter(1) write (0,*) 'sum(Interstitial%ffmm_ice ) = ', sum(Interstitial%ffmm_ice ) write (0,*) 'sum(Interstitial%ffmm_land ) = ', sum(Interstitial%ffmm_land ) - write (0,*) 'sum(Interstitial%ffmm_ocean ) = ', sum(Interstitial%ffmm_ocean ) + write (0,*) 'sum(Interstitial%ffmm_water ) = ', sum(Interstitial%ffmm_water ) write (0,*) 'sum(Interstitial%fm10 ) = ', sum(Interstitial%fm10 ) write (0,*) 'sum(Interstitial%fm10_ice ) = ', sum(Interstitial%fm10_ice ) write (0,*) 'sum(Interstitial%fm10_land ) = ', sum(Interstitial%fm10_land ) - write (0,*) 'sum(Interstitial%fm10_ocean ) = ', sum(Interstitial%fm10_ocean ) + write (0,*) 'sum(Interstitial%fm10_water ) = ', sum(Interstitial%fm10_water ) write (0,*) 'Interstitial%frain = ', Interstitial%frain write (0,*) 'sum(Interstitial%frland ) = ', sum(Interstitial%frland ) write (0,*) 'sum(Interstitial%fscav ) = ', sum(Interstitial%fscav ) @@ -7375,7 +7375,7 @@ subroutine interstitial_print(Interstitial, Model, mpirank, omprank, blkno) write (0,*) 'sum(Interstitial%gabsbdlw ) = ', sum(Interstitial%gabsbdlw ) write (0,*) 'sum(Interstitial%gabsbdlw_ice ) = ', sum(Interstitial%gabsbdlw_ice ) write (0,*) 'sum(Interstitial%gabsbdlw_land ) = ', sum(Interstitial%gabsbdlw_land ) - write (0,*) 'sum(Interstitial%gabsbdlw_ocean ) = ', sum(Interstitial%gabsbdlw_ocean ) + write (0,*) 'sum(Interstitial%gabsbdlw_water ) = ', sum(Interstitial%gabsbdlw_water ) write (0,*) 'sum(Interstitial%gamma ) = ', sum(Interstitial%gamma ) write (0,*) 'sum(Interstitial%gamq ) = ', sum(Interstitial%gamq ) write (0,*) 'sum(Interstitial%gamt ) = ', sum(Interstitial%gamt ) @@ -7383,7 +7383,7 @@ subroutine interstitial_print(Interstitial, Model, mpirank, omprank, blkno) write (0,*) 'sum(Interstitial%gflx ) = ', sum(Interstitial%gflx ) write (0,*) 'sum(Interstitial%gflx_ice ) = ', sum(Interstitial%gflx_ice ) write (0,*) 'sum(Interstitial%gflx_land ) = ', sum(Interstitial%gflx_land ) - write (0,*) 'sum(Interstitial%gflx_ocean ) = ', sum(Interstitial%gflx_ocean ) + write (0,*) 'sum(Interstitial%gflx_water ) = ', sum(Interstitial%gflx_water ) write (0,*) 'sum(Interstitial%gwdcu ) = ', sum(Interstitial%gwdcu ) write (0,*) 'sum(Interstitial%gwdcv ) = ', sum(Interstitial%gwdcv ) write (0,*) 'sum(Interstitial%hefac ) = ', sum(Interstitial%hefac ) @@ -7391,7 +7391,7 @@ subroutine interstitial_print(Interstitial, Model, mpirank, omprank, blkno) write (0,*) 'sum(Interstitial%hflxq ) = ', sum(Interstitial%hflxq ) write (0,*) 'sum(Interstitial%hflx_ice ) = ', sum(Interstitial%hflx_ice ) write (0,*) 'sum(Interstitial%hflx_land ) = ', sum(Interstitial%hflx_land ) - write (0,*) 'sum(Interstitial%hflx_ocean ) = ', sum(Interstitial%hflx_ocean ) + write (0,*) 'sum(Interstitial%hflx_water ) = ', sum(Interstitial%hflx_water ) write (0,*) 'sum(Interstitial%htlwc ) = ', sum(Interstitial%htlwc ) write (0,*) 'sum(Interstitial%htlw0 ) = ', sum(Interstitial%htlw0 ) write (0,*) 'sum(Interstitial%htswc ) = ', sum(Interstitial%htswc ) @@ -7425,7 +7425,7 @@ subroutine interstitial_print(Interstitial, Model, mpirank, omprank, blkno) write (0,*) 'sum(Interstitial%qlyr ) = ', sum(Interstitial%qlyr ) write (0,*) 'sum(Interstitial%qss_ice ) = ', sum(Interstitial%qss_ice ) write (0,*) 'sum(Interstitial%qss_land ) = ', sum(Interstitial%qss_land ) - write (0,*) 'sum(Interstitial%qss_ocean ) = ', sum(Interstitial%qss_ocean ) + write (0,*) 'sum(Interstitial%qss_water ) = ', sum(Interstitial%qss_water ) write (0,*) 'Interstitial%radar_reset = ', Interstitial%radar_reset write (0,*) 'Interstitial%raddt = ', Interstitial%raddt write (0,*) 'sum(Interstitial%raincd ) = ', sum(Interstitial%raincd ) @@ -7435,7 +7435,7 @@ subroutine interstitial_print(Interstitial, Model, mpirank, omprank, blkno) write (0,*) 'sum(Interstitial%rb ) = ', sum(Interstitial%rb ) write (0,*) 'sum(Interstitial%rb_ice ) = ', sum(Interstitial%rb_ice ) write (0,*) 'sum(Interstitial%rb_land ) = ', sum(Interstitial%rb_land ) - write (0,*) 'sum(Interstitial%rb_ocean ) = ', sum(Interstitial%rb_ocean ) + write (0,*) 'sum(Interstitial%rb_water ) = ', sum(Interstitial%rb_water ) write (0,*) 'Interstitial%reset = ', Interstitial%reset write (0,*) 'sum(Interstitial%rhc ) = ', sum(Interstitial%rhc ) write (0,*) 'sum(Interstitial%runoff ) = ', sum(Interstitial%runoff ) @@ -7453,7 +7453,7 @@ subroutine interstitial_print(Interstitial, Model, mpirank, omprank, blkno) write (0,*) 'sum(Interstitial%scmpsw%visdf ) = ', sum(Interstitial%scmpsw%visdf ) write (0,*) 'sum(Interstitial%semis_ice ) = ', sum(Interstitial%semis_ice ) write (0,*) 'sum(Interstitial%semis_land ) = ', sum(Interstitial%semis_land ) - write (0,*) 'sum(Interstitial%semis_ocean ) = ', sum(Interstitial%semis_ocean ) + write (0,*) 'sum(Interstitial%semis_water ) = ', sum(Interstitial%semis_water ) write (0,*) 'sum(Interstitial%sfcalb ) = ', sum(Interstitial%sfcalb ) write (0,*) 'sum(Interstitial%sigma ) = ', sum(Interstitial%sigma ) write (0,*) 'sum(Interstitial%sigmaf ) = ', sum(Interstitial%sigmaf ) @@ -7463,43 +7463,43 @@ subroutine interstitial_print(Interstitial, Model, mpirank, omprank, blkno) write (0,*) 'sum(Interstitial%snowc ) = ', sum(Interstitial%snowc ) write (0,*) 'sum(Interstitial%snowd_ice ) = ', sum(Interstitial%snowd_ice ) write (0,*) 'sum(Interstitial%snowd_land ) = ', sum(Interstitial%snowd_land ) - write (0,*) 'sum(Interstitial%snowd_ocean ) = ', sum(Interstitial%snowd_ocean ) + write (0,*) 'sum(Interstitial%snowd_water ) = ', sum(Interstitial%snowd_water ) write (0,*) 'sum(Interstitial%snohf ) = ', sum(Interstitial%snohf ) write (0,*) 'sum(Interstitial%snowmt ) = ', sum(Interstitial%snowmt ) write (0,*) 'sum(Interstitial%soiltype ) = ', sum(Interstitial%soiltype ) write (0,*) 'sum(Interstitial%stress ) = ', sum(Interstitial%stress ) write (0,*) 'sum(Interstitial%stress_ice ) = ', sum(Interstitial%stress_ice ) write (0,*) 'sum(Interstitial%stress_land ) = ', sum(Interstitial%stress_land ) - write (0,*) 'sum(Interstitial%stress_ocean ) = ', sum(Interstitial%stress_ocean ) + write (0,*) 'sum(Interstitial%stress_water ) = ', sum(Interstitial%stress_water ) write (0,*) 'sum(Interstitial%theta ) = ', sum(Interstitial%theta ) write (0,*) 'sum(Interstitial%tice ) = ', sum(Interstitial%tice ) write (0,*) 'sum(Interstitial%tlvl ) = ', sum(Interstitial%tlvl ) write (0,*) 'sum(Interstitial%tlyr ) = ', sum(Interstitial%tlyr ) write (0,*) 'sum(Interstitial%tprcp_ice ) = ', sum(Interstitial%tprcp_ice ) write (0,*) 'sum(Interstitial%tprcp_land ) = ', sum(Interstitial%tprcp_land ) - write (0,*) 'sum(Interstitial%tprcp_ocean ) = ', sum(Interstitial%tprcp_ocean ) + write (0,*) 'sum(Interstitial%tprcp_water ) = ', sum(Interstitial%tprcp_water ) write (0,*) 'sum(Interstitial%trans ) = ', sum(Interstitial%trans ) write (0,*) 'sum(Interstitial%tseal ) = ', sum(Interstitial%tseal ) write (0,*) 'sum(Interstitial%tsfa ) = ', sum(Interstitial%tsfa ) write (0,*) 'sum(Interstitial%tsfc_ice ) = ', sum(Interstitial%tsfc_ice ) write (0,*) 'sum(Interstitial%tsfc_land ) = ', sum(Interstitial%tsfc_land ) - write (0,*) 'sum(Interstitial%tsfc_ocean ) = ', sum(Interstitial%tsfc_ocean ) + write (0,*) 'sum(Interstitial%tsfc_water ) = ', sum(Interstitial%tsfc_water ) write (0,*) 'sum(Interstitial%tsfg ) = ', sum(Interstitial%tsfg ) write (0,*) 'sum(Interstitial%tsurf ) = ', sum(Interstitial%tsurf ) write (0,*) 'sum(Interstitial%tsurf_ice ) = ', sum(Interstitial%tsurf_ice ) write (0,*) 'sum(Interstitial%tsurf_land ) = ', sum(Interstitial%tsurf_land ) - write (0,*) 'sum(Interstitial%tsurf_ocean ) = ', sum(Interstitial%tsurf_ocean ) + write (0,*) 'sum(Interstitial%tsurf_water ) = ', sum(Interstitial%tsurf_water ) write (0,*) 'sum(Interstitial%ud_mf ) = ', sum(Interstitial%ud_mf ) write (0,*) 'sum(Interstitial%uustar_ice ) = ', sum(Interstitial%uustar_ice ) write (0,*) 'sum(Interstitial%uustar_land ) = ', sum(Interstitial%uustar_land ) - write (0,*) 'sum(Interstitial%uustar_ocean ) = ', sum(Interstitial%uustar_ocean ) + write (0,*) 'sum(Interstitial%uustar_water ) = ', sum(Interstitial%uustar_water ) write (0,*) 'sum(Interstitial%vdftra ) = ', sum(Interstitial%vdftra ) write (0,*) 'sum(Interstitial%vegf1d ) = ', sum(Interstitial%vegf1d ) write (0,*) 'sum(Interstitial%vegtype ) = ', sum(Interstitial%vegtype ) write (0,*) 'sum(Interstitial%wcbmax ) = ', sum(Interstitial%wcbmax ) write (0,*) 'sum(Interstitial%weasd_ice ) = ', sum(Interstitial%weasd_ice ) write (0,*) 'sum(Interstitial%weasd_land ) = ', sum(Interstitial%weasd_land ) - write (0,*) 'sum(Interstitial%weasd_ocean ) = ', sum(Interstitial%weasd_ocean ) + write (0,*) 'sum(Interstitial%weasd_water ) = ', sum(Interstitial%weasd_water ) write (0,*) 'sum(Interstitial%wind ) = ', sum(Interstitial%wind ) write (0,*) 'sum(Interstitial%work1 ) = ', sum(Interstitial%work1 ) write (0,*) 'sum(Interstitial%work2 ) = ', sum(Interstitial%work2 ) diff --git a/ccpp/data/GFS_typedefs.meta b/ccpp/data/GFS_typedefs.meta index a9d4cd58f..66e425bb1 100644 --- a/ccpp/data/GFS_typedefs.meta +++ b/ccpp/data/GFS_typedefs.meta @@ -544,8 +544,8 @@ type = real kind = kind_phys [zorlo] - standard_name = surface_roughness_length_over_ocean - long_name = surface roughness length over ocean + standard_name = surface_roughness_length_over_water + long_name = surface roughness length over water units = cm dimensions = (horizontal_loop_extent) type = real @@ -3979,8 +3979,8 @@ type = real kind = kind_phys [betas_deep] - standard_name = downdraft_fraction_reaching_surface_over_ocean_deep_convection - long_name = downdraft fraction reaching surface over ocean for deep convection + standard_name = downdraft_fraction_reaching_surface_over_water_deep_convection + long_name = downdraft fraction reaching surface over water for deep convection units = frac dimensions = () type = real @@ -4121,8 +4121,8 @@ type = real kind = kind_phys [sfc_z0_type] - standard_name = flag_for_surface_roughness_option_over_ocean - long_name = surface roughness options over ocean + standard_name = flag_for_surface_roughness_option_over_water + long_name = surface roughness options over water units = flag dimensions = () type = integer @@ -4950,8 +4950,8 @@ type = real kind = kind_phys [coef_ric_s] - standard_name = coefficient_for_variable_bulk_richardson_number_over_ocean - long_name = coefficient for calculating variable bulk richardson number for hurricane PBL over ocean + standard_name = coefficient_for_variable_bulk_richardson_number_over_water + long_name = coefficient for calculating variable bulk richardson number for hurricane PBL over water units = none dimensions = () type = real @@ -7500,9 +7500,9 @@ type = real kind = kind_phys active = (flag_for_microphysics_scheme == flag_for_fer_hires_microphysics_scheme) -[adjsfculw_ocean] - standard_name = surface_upwelling_longwave_flux_over_ocean_interstitial - long_name = surface upwelling longwave flux at current time over ocean (temporary use as interstitial) +[adjsfculw_water] + standard_name = surface_upwelling_longwave_flux_over_water_interstitial + long_name = surface upwelling longwave flux at current time over water (temporary use as interstitial) units = W m-2 dimensions = (horizontal_loop_extent) type = real @@ -7620,9 +7620,9 @@ dimensions = (horizontal_loop_extent) type = real kind = kind_phys -[cd_ocean] - standard_name = surface_drag_coefficient_for_momentum_in_air_over_ocean - long_name = surface exchange coeff for momentum over ocean +[cd_water] + standard_name = surface_drag_coefficient_for_momentum_in_air_over_water + long_name = surface exchange coeff for momentum over water units = none dimensions = (horizontal_loop_extent) type = real @@ -7648,9 +7648,9 @@ dimensions = (horizontal_loop_extent) type = real kind = kind_phys -[cdq_ocean] - standard_name = surface_drag_coefficient_for_heat_and_moisture_in_air_over_ocean - long_name = surface exchange coeff heat & moisture over ocean +[cdq_water] + standard_name = surface_drag_coefficient_for_heat_and_moisture_in_air_over_water + long_name = surface exchange coeff heat surface exchange coeff heat & moisture over ocean moisture over water units = none dimensions = (horizontal_loop_extent) type = real @@ -7669,9 +7669,9 @@ dimensions = (horizontal_loop_extent) type = real kind = kind_phys -[chh_ocean] - standard_name = surface_drag_mass_flux_for_heat_and_moisture_in_air_over_ocean - long_name = thermal exchange coefficient over ocean +[chh_water] + standard_name = surface_drag_mass_flux_for_heat_and_moisture_in_air_over_water + long_name = thermal exchange coefficient over water units = kg m-2 s-1 dimensions = (horizontal_loop_extent) type = real @@ -7863,9 +7863,9 @@ type = real kind = kind_phys active = (gwd_opt == 3 .or. gwd_opt == 33) -[cmm_ocean] - standard_name = surface_drag_wind_speed_for_momentum_in_air_over_ocean - long_name = momentum exchange coefficient over ocean +[cmm_water] + standard_name = surface_drag_wind_speed_for_momentum_in_air_over_water + long_name = momentum exchange coefficient over water units = m s-1 dimensions = (horizontal_loop_extent) type = real @@ -8223,9 +8223,9 @@ dimensions = (horizontal_loop_extent) type = real kind = kind_phys -[semis_ocean] - standard_name = surface_longwave_emissivity_over_ocean_interstitial - long_name = surface lw emissivity in fraction over ocean (temporary use as interstitial) +[semis_water] + standard_name = surface_longwave_emissivity_over_water_interstitial + long_name = surface lw emissivity in fraction over water (temporary use as interstitial) units = frac dimensions = (horizontal_loop_extent) type = real @@ -8251,9 +8251,9 @@ dimensions = (horizontal_loop_extent) type = real kind = kind_phys -[ep1d_ocean] - standard_name = surface_upward_potential_latent_heat_flux_over_ocean - long_name = surface upward potential latent heat flux over ocean +[ep1d_water] + standard_name = surface_upward_potential_latent_heat_flux_over_water + long_name = surface upward potential latent heat flux over water units = W m-2 dimensions = (horizontal_loop_extent) type = real @@ -8279,9 +8279,9 @@ dimensions = (horizontal_loop_extent) type = real kind = kind_phys -[evap_ocean] - standard_name = kinematic_surface_upward_latent_heat_flux_over_ocean - long_name = kinematic surface upward latent heat flux over ocean +[evap_water] + standard_name = kinematic_surface_upward_latent_heat_flux_over_water + long_name = kinematic surface upward latent heat flux over water units = kg kg-1 m s-1 dimensions = (horizontal_loop_extent) type = real @@ -8370,9 +8370,9 @@ dimensions = (horizontal_loop_extent,adjusted_vertical_layer_dimension_for_radiation,number_of_aerosol_bands_for_shortwave_radiation) type = real kind = kind_phys -[ffhh_ocean] - standard_name = Monin_Obukhov_similarity_function_for_heat_over_ocean - long_name = Monin-Obukhov similarity function for heat over ocean +[ffhh_water] + standard_name = Monin_Obukhov_similarity_function_for_heat_over_water + long_name = Monin-Obukhov similarity function for heat over water units = none dimensions = (horizontal_loop_extent) type = real @@ -8398,9 +8398,9 @@ dimensions = (horizontal_loop_extent) type = real kind = kind_phys -[fh2_ocean] - standard_name = Monin_Obukhov_similarity_function_for_heat_at_2m_over_ocean - long_name = Monin-Obukhov similarity parameter for heat at 2m over ocean +[fh2_water] + standard_name = Monin_Obukhov_similarity_function_for_heat_at_2m_over_water + long_name = Monin-Obukhov similarity parameter for heat at 2m over water units = none dimensions = (horizontal_loop_extent) type = real @@ -8451,9 +8451,9 @@ dimensions = (horizontal_loop_extent) type = logical active = (flag_for_land_surface_scheme == flag_for_noah_wrfv4_land_surface_scheme) -[ffmm_ocean] - standard_name = Monin_Obukhov_similarity_function_for_momentum_over_ocean - long_name = Monin-Obukhov similarity function for momentum over ocean +[ffmm_water] + standard_name = Monin_Obukhov_similarity_function_for_momentum_over_water + long_name = Monin-Obukhov similarity function for momentum over water units = none dimensions = (horizontal_loop_extent) type = real @@ -8479,9 +8479,9 @@ dimensions = (horizontal_loop_extent) type = real kind = kind_phys -[fm10_ocean] - standard_name = Monin_Obukhov_similarity_function_for_momentum_at_10m_over_ocean - long_name = Monin-Obukhov similarity parameter for momentum at 10m over ocean +[fm10_water] + standard_name = Monin_Obukhov_similarity_function_for_momentum_at_10m_over_water + long_name = Monin-Obukhov similarity parameter for momentum at 10m over water units = none dimensions = (horizontal_loop_extent) type = real @@ -8535,9 +8535,9 @@ dimensions = (horizontal_loop_extent) type = real kind = kind_phys -[gabsbdlw_ocean] - standard_name = surface_downwelling_longwave_flux_absorbed_by_ground_over_ocean - long_name = total sky surface downward longwave flux absorbed by the ground over ocean +[gabsbdlw_water] + standard_name = surface_downwelling_longwave_flux_absorbed_by_ground_over_water + long_name = total sky surface downward longwave flux absorbed by the ground over water units = W m-2 dimensions = (horizontal_loop_extent) type = real @@ -8654,9 +8654,9 @@ dimensions = (horizontal_loop_extent) type = real kind = kind_phys -[gflx_ocean] - standard_name = upward_heat_flux_in_soil_over_ocean - long_name = soil heat flux over ocean +[gflx_water] + standard_name = upward_heat_flux_in_soil_over_water + long_name = soil heat flux over water units = W m-2 dimensions = (horizontal_loop_extent) type = real @@ -8718,9 +8718,9 @@ dimensions = (horizontal_loop_extent) type = real kind = kind_phys -[hflx_ocean] - standard_name = kinematic_surface_upward_sensible_heat_flux_over_ocean - long_name = kinematic surface upward sensible heat flux over ocean +[hflx_water] + standard_name = kinematic_surface_upward_sensible_heat_flux_over_water + long_name = kinematic surface upward sensible heat flux over water units = K m s-1 dimensions = (horizontal_loop_extent) type = real @@ -9201,9 +9201,9 @@ dimensions = (horizontal_loop_extent) type = real kind = kind_phys -[qss_ocean] - standard_name = surface_specific_humidity_over_ocean - long_name = surface air saturation specific humidity over ocean +[qss_water] + standard_name = surface_specific_humidity_over_water + long_name = surface air saturation specific humidity over water units = kg kg-1 dimensions = (horizontal_loop_extent) type = real @@ -9294,9 +9294,9 @@ dimensions = (horizontal_loop_extent) type = real kind = kind_phys -[rb_ocean] - standard_name = bulk_richardson_number_at_lowest_model_level_over_ocean - long_name = bulk Richardson number at the surface over ocean +[rb_water] + standard_name = bulk_richardson_number_at_lowest_model_level_over_water + long_name = bulk Richardson number at the surface over water units = none dimensions = (horizontal_loop_extent) type = real @@ -9525,9 +9525,9 @@ dimensions = (horizontal_loop_extent) type = real kind = kind_phys -[snowd_ocean] - standard_name = surface_snow_thickness_water_equivalent_over_ocean - long_name = water equivalent snow depth over ocean +[snowd_water] + standard_name = surface_snow_thickness_water_equivalent_over_water + long_name = water equivalent snow depth over water units = mm dimensions = (horizontal_loop_extent) type = real @@ -9637,9 +9637,9 @@ dimensions = (horizontal_loop_extent) type = real kind = kind_phys -[stress_ocean] - standard_name = surface_wind_stress_over_ocean - long_name = surface wind stress over ocean +[stress_water] + standard_name = surface_wind_stress_over_water + long_name = surface wind stress over water units = m2 s-2 dimensions = (horizontal_loop_extent) type = real @@ -9702,9 +9702,9 @@ dimensions = (horizontal_loop_extent,adjusted_vertical_layer_dimension_for_radiation) type = real kind = kind_phys -[tprcp_ocean] - standard_name = nonnegative_lwe_thickness_of_precipitation_amount_on_dynamics_timestep_over_ocean - long_name = total precipitation amount in each time step over ocean +[tprcp_water] + standard_name = nonnegative_lwe_thickness_of_precipitation_amount_on_dynamics_timestep_over_water + long_name = total precipitation amount in each time step over water units = m dimensions = (horizontal_loop_extent) type = real @@ -9770,9 +9770,9 @@ dimensions = (horizontal_loop_extent) type = real kind = kind_phys -[tsfc_ocean] - standard_name = surface_skin_temperature_over_ocean_interstitial - long_name = surface skin temperature over ocean (temporary use as interstitial) +[tsfc_water] + standard_name = surface_skin_temperature_over_water_interstitial + long_name = surface skin temperature over water (temporary use as interstitial) units = K dimensions = (horizontal_loop_extent) type = real @@ -9813,9 +9813,9 @@ dimensions = (horizontal_loop_extent) type = real kind = kind_phys -[tsurf_ocean] - standard_name = surface_skin_temperature_after_iteration_over_ocean - long_name = surface skin temperature after iteration over ocean +[tsurf_water] + standard_name = surface_skin_temperature_after_iteration_over_water + long_name = surface skin temperature after iteration over water units = K dimensions = (horizontal_loop_extent) type = real @@ -9847,9 +9847,9 @@ dimensions = (horizontal_loop_extent,vertical_dimension) type = real kind = kind_phys -[uustar_ocean] - standard_name = surface_friction_velocity_over_ocean - long_name = surface friction velocity over ocean +[uustar_water] + standard_name = surface_friction_velocity_over_water + long_name = surface friction velocity over water units = m s-1 dimensions = (horizontal_loop_extent) type = real @@ -9910,9 +9910,9 @@ dimensions = (horizontal_loop_extent) type = real kind = kind_phys -[weasd_ocean] - standard_name = water_equivalent_accumulated_snow_depth_over_ocean - long_name = water equiv of acc snow depth over ocean +[weasd_water] + standard_name = water_equivalent_accumulated_snow_depth_over_water + long_name = water equiv of acc snow depth over water units = mm dimensions = (horizontal_loop_extent) type = real diff --git a/ccpp/physics b/ccpp/physics index bc78c25f8..267748a97 160000 --- a/ccpp/physics +++ b/ccpp/physics @@ -1 +1 @@ -Subproject commit bc78c25f87d8607d8f2639d38790d9cc0785f74e +Subproject commit 267748a9717c8dc2e9ef60af9fac39c45c030b5f From 924fe47b03e72af60cc41ddcbf84cbd2e11381bf Mon Sep 17 00:00:00 2001 From: Dom Heinzeller Date: Mon, 5 Apr 2021 15:05:23 -0600 Subject: [PATCH 13/16] Rename Sfcprop%zorlw to Sfcprop%zorlwav --- atmos_model.F90 | 4 ++-- ccpp/data/GFS_typedefs.F90 | 6 +++--- ccpp/data/GFS_typedefs.meta | 2 +- ccpp/physics | 2 +- io/FV3GFS_io.F90 | 18 +++++++++--------- 5 files changed, 16 insertions(+), 16 deletions(-) diff --git a/atmos_model.F90 b/atmos_model.F90 index ec6ff2ff6..0b2b0fb0e 100644 --- a/atmos_model.F90 +++ b/atmos_model.F90 @@ -1614,9 +1614,9 @@ subroutine assign_importdata(rc) tem = 100.0_GFS_kind_phys * min(0.1_GFS_kind_phys, datar8(i,j)) ! GFS_data(nb)%Coupling%zorlwav_cpl(ix) = tem GFS_data(nb)%Sfcprop%zorlo(ix) = tem - GFS_data(nb)%Sfcprop%zorlw(ix) = tem + GFS_data(nb)%Sfcprop%zorlwav(ix) = tem else - GFS_data(nb)%Sfcprop%zorlw(ix) = -999.0_GFS_kind_phys + GFS_data(nb)%Sfcprop%zorlwav(ix) = -999.0_GFS_kind_phys endif enddo diff --git a/ccpp/data/GFS_typedefs.F90 b/ccpp/data/GFS_typedefs.F90 index 006ca6729..8aafc9f92 100644 --- a/ccpp/data/GFS_typedefs.F90 +++ b/ccpp/data/GFS_typedefs.F90 @@ -234,7 +234,7 @@ module GFS_typedefs real (kind=kind_phys), pointer :: zorlo (:) => null() !< ocean surface roughness in cm real (kind=kind_phys), pointer :: zorll (:) => null() !< land surface roughness in cm real (kind=kind_phys), pointer :: zorli (:) => null() !< ice surface roughness in cm - real (kind=kind_phys), pointer :: zorlw (:) => null() !< wave surface roughness in cm + real (kind=kind_phys), pointer :: zorlwav(:) => null() !< wave surface roughness in cm real (kind=kind_phys), pointer :: fice (:) => null() !< ice fraction over open water grid ! real (kind=kind_phys), pointer :: hprim (:) => null() !< topographic standard deviation in m real (kind=kind_phys), pointer :: hprime (:,:) => null() !< orographic metrics @@ -2276,7 +2276,7 @@ subroutine sfcprop_create (Sfcprop, IM, Model) allocate (Sfcprop%zorlo (IM)) allocate (Sfcprop%zorll (IM)) allocate (Sfcprop%zorli (IM)) - allocate (Sfcprop%zorlw (IM)) + allocate (Sfcprop%zorlwav (IM)) allocate (Sfcprop%fice (IM)) ! allocate (Sfcprop%hprim (IM)) allocate (Sfcprop%hprime (IM,Model%nmtvr)) @@ -2296,7 +2296,7 @@ subroutine sfcprop_create (Sfcprop, IM, Model) Sfcprop%zorlo = clear_val Sfcprop%zorll = clear_val Sfcprop%zorli = clear_val - Sfcprop%zorlw = clear_val + Sfcprop%zorlwav = clear_val Sfcprop%fice = clear_val ! Sfcprop%hprim = clear_val Sfcprop%hprime = clear_val diff --git a/ccpp/data/GFS_typedefs.meta b/ccpp/data/GFS_typedefs.meta index a9d4cd58f..1c2887b0c 100644 --- a/ccpp/data/GFS_typedefs.meta +++ b/ccpp/data/GFS_typedefs.meta @@ -564,7 +564,7 @@ dimensions = (horizontal_loop_extent) type = real kind = kind_phys -[zorlw] +[zorlwav] standard_name = surface_roughness_length_from_wave_model long_name = surface roughness length from wave model units = cm diff --git a/ccpp/physics b/ccpp/physics index bc78c25f8..3f953f570 160000 --- a/ccpp/physics +++ b/ccpp/physics @@ -1 +1 @@ -Subproject commit bc78c25f87d8607d8f2639d38790d9cc0785f74e +Subproject commit 3f953f570255c216d3e713c7003a5df26492ed6a diff --git a/io/FV3GFS_io.F90 b/io/FV3GFS_io.F90 index 5fa2e13c2..d42328818 100644 --- a/io/FV3GFS_io.F90 +++ b/io/FV3GFS_io.F90 @@ -754,7 +754,7 @@ subroutine sfc_prop_restart_read (Sfcprop, Atm_block, Model, fv_domain, warm_sta sfc_name2(35) = 'zorli' !zorl on land portion of a cell ! endif if(Model%cplwav) then - sfc_name2(nvar_s2m) = 'zorlw' !zorl on land portion of a cell + sfc_name2(nvar_s2m) = 'zorlwav' !zorl on land portion of a cell endif !--- NSSTM inputs only needed when (nstf_name(1) > 0) .and. (nstf_name(2)) == 0) @@ -836,7 +836,7 @@ subroutine sfc_prop_restart_read (Sfcprop, Atm_block, Model, fv_domain, warm_sta do num = 1,nvar_s2m var2_p => sfc_var2(:,:,num) if (trim(sfc_name2(num)) == 'sncovr'.or. trim(sfc_name2(num)) == 'tsfcl' .or. trim(sfc_name2(num)) == 'zorll' & - .or. trim(sfc_name2(num)) == 'zorli' .or. trim(sfc_name2(num)) == 'zorlw') then + .or. trim(sfc_name2(num)) == 'zorli' .or. trim(sfc_name2(num)) == 'zorlwav') then id_restart = register_restart_field(Sfc_restart, fn_srf, sfc_name2(num), var2_p, domain=fv_domain, mandatory=.false.) else id_restart = register_restart_field(Sfc_restart, fn_srf, sfc_name2(num), var2_p, domain=fv_domain) @@ -993,9 +993,9 @@ subroutine sfc_prop_restart_read (Sfcprop, Atm_block, Model, fv_domain, warm_sta ! Sfcprop(nb)%zorli(ix) = Sfcprop(nb)%zorlo(ix) ! endif if(Model%cplwav) then - Sfcprop(nb)%zorlw(ix) = sfc_var2(i,j,nvar_s2m) !--- (zorw from wave model) + Sfcprop(nb)%zorlwav(ix) = sfc_var2(i,j,nvar_s2m) !--- (zorw from wave model) else - Sfcprop(nb)%zorlw(ix) = Sfcprop(nb)%zorlo(ix) + Sfcprop(nb)%zorlwav(ix) = Sfcprop(nb)%zorlo(ix) endif if(Model%frac_grid) then ! obtain slmsk from landfrac @@ -1232,11 +1232,11 @@ subroutine sfc_prop_restart_read (Sfcprop, Atm_block, Model, fv_domain, warm_sta endif if (sfc_var2(i,j,nvar_s2m) < -9990.0_r8) then - if (Model%me == Model%master ) call mpp_error(NOTE, 'gfs_driver::surface_props_input - computing zorlw') + if (Model%me == Model%master ) call mpp_error(NOTE, 'gfs_driver::surface_props_input - computing zorlwav') !$omp parallel do default(shared) private(nb, ix) do nb = 1, Atm_block%nblks do ix = 1, Atm_block%blksz(nb) - Sfcprop(nb)%zorlw(ix) = Sfcprop(nb)%zorlo(ix) !--- compute zorlw from existing variables + Sfcprop(nb)%zorlwav(ix) = Sfcprop(nb)%zorlo(ix) !--- compute zorlwav from existing variables enddo enddo endif @@ -1457,7 +1457,7 @@ subroutine sfc_prop_restart_write (Sfcprop, Atm_block, Model, fv_domain, timesta sfc_name2(35) = 'zorli' !zorl on land portion of a cell ! endif if (Model%cplwav) then - sfc_name2(nvar2m) = 'zorlw' !zorl on land portion of a cell + sfc_name2(nvar2m) = 'zorlwav' !zorl on land portion of a cell endif !--- NSSTM inputs only needed when (nstf_name(1) > 0) .and. (nstf_name(2)) == 0) sfc_name2(nvar2m+1) = 'tref' @@ -1529,7 +1529,7 @@ subroutine sfc_prop_restart_write (Sfcprop, Atm_block, Model, fv_domain, timesta do num = 1,nvar2m var2_p => sfc_var2(:,:,num) if (trim(sfc_name2(num)) == 'sncovr'.or.trim(sfc_name2(num)) == 'tsfcl'.or.trim(sfc_name2(num)) == 'zorll' & - .or.trim(sfc_name2(num)) == 'zorli' .or.trim(sfc_name2(num)) == 'zorlw') then + .or.trim(sfc_name2(num)) == 'zorli' .or.trim(sfc_name2(num)) == 'zorlwav') then id_restart = register_restart_field(Sfc_restart, fn_srf, sfc_name2(num), var2_p, domain=fv_domain, mandatory=.false.) else id_restart = register_restart_field(Sfc_restart, fn_srf, sfc_name2(num), var2_p, domain=fv_domain) @@ -1662,7 +1662,7 @@ subroutine sfc_prop_restart_write (Sfcprop, Atm_block, Model, fv_domain, timesta sfc_var2(i,j,35) = Sfcprop(nb)%zorli(ix) !--- zorli (zorl on ice) ! endif if (Model%cplwav) then - sfc_var2(i,j,nvar2m) = Sfcprop(nb)%zorlw(ix) !--- zorlw (zorl from wav) + sfc_var2(i,j,nvar2m) = Sfcprop(nb)%zorlwav(ix) !--- zorlwav (zorl from wav) endif !--- NSSTM variables if (Model%nstf_name(1) > 0) then From b5661d0d29e900769cedff19091dbca1c07d6c87 Mon Sep 17 00:00:00 2001 From: Dom Heinzeller Date: Mon, 5 Apr 2021 15:54:23 -0600 Subject: [PATCH 14/16] Rename Sfcprop%zorlo to Sfcprop%zorlw --- atmos_model.F90 | 2 +- ccpp/data/GFS_typedefs.F90 | 6 +++--- ccpp/data/GFS_typedefs.meta | 2 +- ccpp/physics | 2 +- io/FV3GFS_io.F90 | 32 ++++++++++++++++---------------- 5 files changed, 22 insertions(+), 22 deletions(-) diff --git a/atmos_model.F90 b/atmos_model.F90 index 0b2b0fb0e..231896f49 100644 --- a/atmos_model.F90 +++ b/atmos_model.F90 @@ -1613,7 +1613,7 @@ subroutine assign_importdata(rc) if (GFS_data(nb)%Sfcprop%oceanfrac(ix) > zero .and. datar8(i,j) > zorlmin) then tem = 100.0_GFS_kind_phys * min(0.1_GFS_kind_phys, datar8(i,j)) ! GFS_data(nb)%Coupling%zorlwav_cpl(ix) = tem - GFS_data(nb)%Sfcprop%zorlo(ix) = tem + GFS_data(nb)%Sfcprop%zorlw(ix) = tem GFS_data(nb)%Sfcprop%zorlwav(ix) = tem else GFS_data(nb)%Sfcprop%zorlwav(ix) = -999.0_GFS_kind_phys diff --git a/ccpp/data/GFS_typedefs.F90 b/ccpp/data/GFS_typedefs.F90 index a1367a068..074a1d0ab 100644 --- a/ccpp/data/GFS_typedefs.F90 +++ b/ccpp/data/GFS_typedefs.F90 @@ -231,7 +231,7 @@ module GFS_typedefs real (kind=kind_phys), pointer :: tiice(:,:) => null() !< internal ice temperature real (kind=kind_phys), pointer :: snowd (:) => null() !< snow depth water equivalent in mm ; same as snwdph real (kind=kind_phys), pointer :: zorl (:) => null() !< composite surface roughness in cm - real (kind=kind_phys), pointer :: zorlo (:) => null() !< ocean surface roughness in cm + real (kind=kind_phys), pointer :: zorlw (:) => null() !< water surface roughness in cm real (kind=kind_phys), pointer :: zorll (:) => null() !< land surface roughness in cm real (kind=kind_phys), pointer :: zorli (:) => null() !< ice surface roughness in cm real (kind=kind_phys), pointer :: zorlwav(:) => null() !< wave surface roughness in cm @@ -2273,7 +2273,7 @@ subroutine sfcprop_create (Sfcprop, IM, Model) allocate (Sfcprop%tiice (IM,Model%kice)) allocate (Sfcprop%snowd (IM)) allocate (Sfcprop%zorl (IM)) - allocate (Sfcprop%zorlo (IM)) + allocate (Sfcprop%zorlw (IM)) allocate (Sfcprop%zorll (IM)) allocate (Sfcprop%zorli (IM)) allocate (Sfcprop%zorlwav (IM)) @@ -2293,7 +2293,7 @@ subroutine sfcprop_create (Sfcprop, IM, Model) Sfcprop%tiice = clear_val Sfcprop%snowd = clear_val Sfcprop%zorl = clear_val - Sfcprop%zorlo = clear_val + Sfcprop%zorlw = clear_val Sfcprop%zorll = clear_val Sfcprop%zorli = clear_val Sfcprop%zorlwav = clear_val diff --git a/ccpp/data/GFS_typedefs.meta b/ccpp/data/GFS_typedefs.meta index d14c6ffaa..2abd5a7ab 100644 --- a/ccpp/data/GFS_typedefs.meta +++ b/ccpp/data/GFS_typedefs.meta @@ -543,7 +543,7 @@ dimensions = (horizontal_loop_extent) type = real kind = kind_phys -[zorlo] +[zorlw] standard_name = surface_roughness_length_over_water long_name = surface roughness length over water units = cm diff --git a/ccpp/physics b/ccpp/physics index 7f42a8f1d..7f70536b1 160000 --- a/ccpp/physics +++ b/ccpp/physics @@ -1 +1 @@ -Subproject commit 7f42a8f1d62f39df3dac8005fff97b3a98f4ef7d +Subproject commit 7f70536b15ecace42087078bcfa229a5d36a8e95 diff --git a/io/FV3GFS_io.F90 b/io/FV3GFS_io.F90 index d42328818..9d4242bb5 100644 --- a/io/FV3GFS_io.F90 +++ b/io/FV3GFS_io.F90 @@ -955,7 +955,7 @@ subroutine sfc_prop_restart_read (Sfcprop, Atm_block, Model, fv_domain, warm_sta Sfcprop(nb)%tsfco(ix) = sfc_var2(i,j,2) !--- tsfc (tsea in sfc file) Sfcprop(nb)%weasd(ix) = sfc_var2(i,j,3) !--- weasd (sheleg in sfc file) Sfcprop(nb)%tg3(ix) = sfc_var2(i,j,4) !--- tg3 - Sfcprop(nb)%zorlo(ix) = sfc_var2(i,j,5) !--- zorl on ocean + Sfcprop(nb)%zorlw(ix) = sfc_var2(i,j,5) !--- zorl on water Sfcprop(nb)%alvsf(ix) = sfc_var2(i,j,6) !--- alvsf Sfcprop(nb)%alvwf(ix) = sfc_var2(i,j,7) !--- alvwf Sfcprop(nb)%alnsf(ix) = sfc_var2(i,j,8) !--- alnsf @@ -989,13 +989,13 @@ subroutine sfc_prop_restart_read (Sfcprop, Atm_block, Model, fv_domain, warm_sta Sfcprop(nb)%zorli(ix) = sfc_var2(i,j,35) !--- zorll (zorl on ice portion of a cell) ! else ! Sfcprop(nb)%tsfcl(ix) = Sfcprop(nb)%tsfco(ix) -! Sfcprop(nb)%zorll(ix) = Sfcprop(nb)%zorlo(ix) -! Sfcprop(nb)%zorli(ix) = Sfcprop(nb)%zorlo(ix) +! Sfcprop(nb)%zorll(ix) = Sfcprop(nb)%zorlw(ix) +! Sfcprop(nb)%zorli(ix) = Sfcprop(nb)%zorlw(ix) ! endif if(Model%cplwav) then Sfcprop(nb)%zorlwav(ix) = sfc_var2(i,j,nvar_s2m) !--- (zorw from wave model) else - Sfcprop(nb)%zorlwav(ix) = Sfcprop(nb)%zorlo(ix) + Sfcprop(nb)%zorlwav(ix) = Sfcprop(nb)%zorlw(ix) endif if(Model%frac_grid) then ! obtain slmsk from landfrac @@ -1216,7 +1216,7 @@ subroutine sfc_prop_restart_read (Sfcprop, Atm_block, Model, fv_domain, warm_sta !$omp parallel do default(shared) private(nb, ix) do nb = 1, Atm_block%nblks do ix = 1, Atm_block%blksz(nb) - Sfcprop(nb)%zorll(ix) = Sfcprop(nb)%zorlo(ix) !--- compute zorll from existing variables + Sfcprop(nb)%zorll(ix) = Sfcprop(nb)%zorlw(ix) !--- compute zorll from existing variables enddo enddo endif @@ -1226,7 +1226,7 @@ subroutine sfc_prop_restart_read (Sfcprop, Atm_block, Model, fv_domain, warm_sta !$omp parallel do default(shared) private(nb, ix) do nb = 1, Atm_block%nblks do ix = 1, Atm_block%blksz(nb) - Sfcprop(nb)%zorli(ix) = Sfcprop(nb)%zorlo(ix) !--- compute zorli from existing variables + Sfcprop(nb)%zorli(ix) = Sfcprop(nb)%zorlw(ix) !--- compute zorli from existing variables enddo enddo endif @@ -1236,7 +1236,7 @@ subroutine sfc_prop_restart_read (Sfcprop, Atm_block, Model, fv_domain, warm_sta !$omp parallel do default(shared) private(nb, ix) do nb = 1, Atm_block%nblks do ix = 1, Atm_block%blksz(nb) - Sfcprop(nb)%zorlwav(ix) = Sfcprop(nb)%zorlo(ix) !--- compute zorlwav from existing variables + Sfcprop(nb)%zorlwav(ix) = Sfcprop(nb)%zorlw(ix) !--- compute zorlwav from existing variables enddo enddo endif @@ -1250,7 +1250,7 @@ subroutine sfc_prop_restart_read (Sfcprop, Atm_block, Model, fv_domain, warm_sta tem = tem1 * Sfcprop(nb)%fice(ix) ! tem = ice fraction wrt whole cell Sfcprop(nb)%zorl(ix) = Sfcprop(nb)%zorll(ix) * Sfcprop(nb)%landfrac(ix) & + Sfcprop(nb)%zorli(ix) * tem & - + Sfcprop(nb)%zorlo(ix) * (tem1-tem) + + Sfcprop(nb)%zorlw(ix) * (tem1-tem) Sfcprop(nb)%tsfc(ix) = Sfcprop(nb)%tsfcl(ix) * Sfcprop(nb)%landfrac(ix) & + Sfcprop(nb)%tisfc(ix) * tem & @@ -1262,18 +1262,18 @@ subroutine sfc_prop_restart_read (Sfcprop, Atm_block, Model, fv_domain, warm_sta !$omp parallel do default(shared) private(nb, ix, tem) do nb = 1, Atm_block%nblks do ix = 1, Atm_block%blksz(nb) - !--- specify tsfcl/zorll/zorli from existing variable tsfco/zorlo + !--- specify tsfcl/zorll/zorli from existing variable tsfco/zorlw ! Sfcprop(nb)%tsfcl(ix) = Sfcprop(nb)%tsfco(ix) -! Sfcprop(nb)%zorll(ix) = Sfcprop(nb)%zorlo(ix) -! Sfcprop(nb)%zorli(ix) = Sfcprop(nb)%zorlo(ix) -! Sfcprop(nb)%zorl(ix) = Sfcprop(nb)%zorlo(ix) +! Sfcprop(nb)%zorll(ix) = Sfcprop(nb)%zorlw(ix) +! Sfcprop(nb)%zorli(ix) = Sfcprop(nb)%zorlw(ix) +! Sfcprop(nb)%zorl(ix) = Sfcprop(nb)%zorlw(ix) if (Sfcprop(nb)%slmsk(ix) == 1) then Sfcprop(nb)%zorl(ix) = Sfcprop(nb)%zorll(ix) Sfcprop(nb)%tsfc(ix) = Sfcprop(nb)%tsfcl(ix) else tem = one - Sfcprop(nb)%fice(ix) Sfcprop(nb)%zorl(ix) = Sfcprop(nb)%zorli(ix) * Sfcprop(nb)%fice(ix) & - + Sfcprop(nb)%zorlo(ix) * tem + + Sfcprop(nb)%zorlw(ix) * tem Sfcprop(nb)%tsfc(ix) = Sfcprop(nb)%tisfc(ix) * Sfcprop(nb)%fice(ix) & + Sfcprop(nb)%tsfco(ix) * tem endif @@ -1283,7 +1283,7 @@ subroutine sfc_prop_restart_read (Sfcprop, Atm_block, Model, fv_domain, warm_sta !$omp parallel do default(shared) private(nb, ix, tem) do nb = 1, Atm_block%nblks do ix = 1, Atm_block%blksz(nb) - !--- specify tsfcl/zorll/zorli from existing variable tsfco/zorlo + !--- specify tsfcl/zorll/zorli from existing variable tsfco/zorlw Sfcprop(nb)%tsfc(ix) = Sfcprop(nb)%tsfco(ix) if (Sfcprop(nb)%slmsk(ix) == 1) then Sfcprop(nb)%zorl(ix) = Sfcprop(nb)%zorll(ix) @@ -1291,7 +1291,7 @@ subroutine sfc_prop_restart_read (Sfcprop, Atm_block, Model, fv_domain, warm_sta else tem = one - Sfcprop(nb)%fice(ix) Sfcprop(nb)%zorl(ix) = Sfcprop(nb)%zorli(ix) * Sfcprop(nb)%fice(ix) & - + Sfcprop(nb)%zorlo(ix) * tem + + Sfcprop(nb)%zorlw(ix) * tem if (Sfcprop(nb)%fice(ix) > min(Model%min_seaice,Model%min_lakeice)) then Sfcprop(nb)%tsfc(ix) = Sfcprop(nb)%tsfcl(ix) endif @@ -1621,7 +1621,7 @@ subroutine sfc_prop_restart_write (Sfcprop, Atm_block, Model, fv_domain, timesta sfc_var2(i,j,1) = Sfcprop(nb)%slmsk(ix) !--- slmsk ! if (Model%frac_grid) then sfc_var2(i,j,2) = Sfcprop(nb)%tsfco(ix) !--- tsfc (tsea in sfc file) - sfc_var2(i,j,5) = Sfcprop(nb)%zorlo(ix) !--- zorlo + sfc_var2(i,j,5) = Sfcprop(nb)%zorlw(ix) !--- zorlw ! else ! sfc_var2(i,j,2) = Sfcprop(nb)%tsfc(ix) !--- tsfc (tsea in sfc file) ! sfc_var2(i,j,5) = Sfcprop(nb)%zorl(ix) !--- zorl From 91df56743c665cd3dc1de5b7b822d8bf59b7c911 Mon Sep 17 00:00:00 2001 From: Dom Heinzeller Date: Fri, 9 Apr 2021 08:34:58 -0600 Subject: [PATCH 15/16] update submodule pointer for ccpp-physics --- ccpp/physics | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ccpp/physics b/ccpp/physics index 222ffe678..6b997420d 160000 --- a/ccpp/physics +++ b/ccpp/physics @@ -1 +1 @@ -Subproject commit 222ffe678e4562e9fdc46665da86a2156c07034f +Subproject commit 6b997420d4f40a29e2b4c40db9429a62b52dcfc5 From 903929055291b3208db089dd9c35b2dd9ee5a472 Mon Sep 17 00:00:00 2001 From: Dom Heinzeller Date: Thu, 15 Apr 2021 08:44:07 -0600 Subject: [PATCH 16/16] Revert change to .gitmodules and update submodule pointer for ccpp-physics --- .gitmodules | 6 ++---- ccpp/physics | 2 +- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/.gitmodules b/.gitmodules index 8f6be9db1..1f7526633 100644 --- a/.gitmodules +++ b/.gitmodules @@ -8,7 +8,5 @@ branch = master [submodule "ccpp/physics"] path = ccpp/physics - #url = https://github.com/NCAR/ccpp-physics - #branch = master - url = https://github.com/climbfuji/ccpp-physics - branch = zorl_ocnwat_merra2_combined + url = https://github.com/NCAR/ccpp-physics + branch = master diff --git a/ccpp/physics b/ccpp/physics index e46fe3779..26aa3d62b 160000 --- a/ccpp/physics +++ b/ccpp/physics @@ -1 +1 @@ -Subproject commit e46fe37790f75626d31e5f938262ffc1968830a8 +Subproject commit 26aa3d62ba981553a9c8d86afadfa716ad16a960