From e0a6754605275b104b0416906c10107c902591ed Mon Sep 17 00:00:00 2001 From: Julia Putko Date: Fri, 6 Aug 2021 10:06:31 -0700 Subject: [PATCH 1/3] making vars available outside of ice --- src/gotm/gotm.F90 | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gotm/gotm.F90 b/src/gotm/gotm.F90 index e7b5c168..5a85c0e2 100644 --- a/src/gotm/gotm.F90 +++ b/src/gotm/gotm.F90 @@ -61,9 +61,10 @@ module gotm #ifdef _ICE_ use ice, only: init_ice, post_init_ice, do_ice, clean_ice, ice_cover use stim_variables, only: Tice_surface,albedo_ice,transmissivity,nilay,ice_uvic_Tice +#endif use stim_variables, only: ice_hs,ice_hi,ice_uvic_topmelt,ice_uvic_topgrowth,ice_uvic_termelt,ice_uvic_botmelt,ice_uvic_botgrowth,ice_uvic_tb,ice_uvic_ts use stim_variables, only: ice_uvic_Fs,ice_uvic_Ff,ice_uvic_parb,ice_uvic_parui,ice_uvic_Amelt -#endif + use turbulence, only: turb_method use turbulence, only: init_turbulence,post_init_turbulence,do_turbulence From 272189a71012f7f77ce46d076f7b2d31340f203e Mon Sep 17 00:00:00 2001 From: Patrick Farnole Date: Wed, 11 Aug 2021 11:30:32 -0700 Subject: [PATCH 2/3] update submodules stim, fabm and flexout. --- extern/fabm | 2 +- extern/flexout | 2 +- extern/stim | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/extern/fabm b/extern/fabm index ab8a6ffc..2e580282 160000 --- a/extern/fabm +++ b/extern/fabm @@ -1 +1 @@ -Subproject commit ab8a6ffc5ceecd6e467878fe7e3142adcc49ab3a +Subproject commit 2e5802828fe242d3144740332224db424e142cde diff --git a/extern/flexout b/extern/flexout index 274133ea..f129ad21 160000 --- a/extern/flexout +++ b/extern/flexout @@ -1 +1 @@ -Subproject commit 274133ea7c52a8e4a67fbe4f0791b6ad98cc4a79 +Subproject commit f129ad2181576624ae929331388d0a69bc574f7f diff --git a/extern/stim b/extern/stim index 990f67d2..4a67e03b 160000 --- a/extern/stim +++ b/extern/stim @@ -1 +1 @@ -Subproject commit 990f67d244af98094d6a76ad8956df8bc5cfbd90 +Subproject commit 4a67e03ba3347fe9a98d077a5ab3d2f15deedd56 From 84dbc760e81237b589bbc4ee99e5409378d644f9 Mon Sep 17 00:00:00 2001 From: Julia Putko Date: Tue, 24 Aug 2021 16:44:25 -0700 Subject: [PATCH 3/3] adding Qfluxes_uvic --- extern/stim | 2 +- src/airsea/airsea.F90 | 36 ++++++++++++++++++++++++++++++++++++ src/gotm/gotm.F90 | 15 +++++++++------ 3 files changed, 46 insertions(+), 7 deletions(-) diff --git a/extern/stim b/extern/stim index 4a67e03b..a8d2346f 160000 --- a/extern/stim +++ b/extern/stim @@ -1 +1 @@ -Subproject commit 4a67e03ba3347fe9a98d077a5ab3d2f15deedd56 +Subproject commit a8d2346f08b61012d4ba015eb5a9d3d1a86305df diff --git a/src/airsea/airsea.F90 b/src/airsea/airsea.F90 index 1468b148..34b0e832 100644 --- a/src/airsea/airsea.F90 +++ b/src/airsea/airsea.F90 @@ -49,6 +49,7 @@ module airsea_driver public :: set_sst public :: set_ssuv public :: surface_fluxes + public :: surface_fluxes_uvic !jpnote added public :: integrated_fluxes #ifdef _PRINTSTATE_ public :: print_state_airsea @@ -735,6 +736,41 @@ subroutine post_init_airsea(lat,lon) end subroutine post_init_airsea !EOC +!----------------------------------------------------------------------- +!BOP + !jpnote added + subroutine surface_fluxes_uvic(surface_temp,sensible,latent,longwave_radiation_value) + ! + ! !USES: + IMPLICIT NONE + ! + ! !INPUT PARAMETERS: + REALTYPE, intent(in) :: surface_temp + ! !OUTPUT PARAMETERS: + REALTYPE, intent(out) :: sensible,latent,longwave_radiation_value + ! + ! LOCAL VARIABLES: + REALTYPE :: tw,tw_k,ta_k + !EOP + !----------------------------------------------------------------------- + !BOC + + tw = surface_temp-KELVIN + tw_k= surface_temp + ta_k = airt%value + KELVIN + + ! call humidity(hum_method,rh,airp,TTss-kelvin,airt) + call humidity(hum_method,hum%value,airp%value,tw,airt%value) + ! call longwave_radiation(longwave_radiation_method, & + ! lat,TTss,airt+kelvin,cloud,qb) + call longwave_radiation(ql%method, & + dlat,tw_k,ta_k,cloud%value,longwave_radiation_value) + !call airsea_fluxes(fluxes_method, & + !TTss-kelvin,airt,u10,v10,precip,evap,tx,ty,qe,qh) + call airsea_fluxes(fluxes_method, & + tw,airt%value,u10%value,v10%value,precip%value,evap,tx_%value,ty_%value,latent,sensible) + + end subroutine surface_fluxes_uvic !----------------------------------------------------------------------- !BOP subroutine surface_fluxes(surface_temp,sensible,latent,longwave_radiation) diff --git a/src/gotm/gotm.F90 b/src/gotm/gotm.F90 index 5a85c0e2..7ddc9724 100644 --- a/src/gotm/gotm.F90 +++ b/src/gotm/gotm.F90 @@ -49,7 +49,7 @@ module gotm use time use airsea_driver, only: init_airsea,post_init_airsea,do_airsea,clean_airsea - use airsea_driver, only: surface_fluxes + use airsea_driver, only: surface_fluxes, surface_fluxes_uvic !jpnote use airsea_driver, only: set_sst,set_ssuv,integrated_fluxes use airsea_driver, only: fluxes_method use airsea_driver, only: wind=>w,tx,ty,hum,I_0,cloud,heat,precip,evap,airp,albedo @@ -753,12 +753,15 @@ subroutine integrate_gotm() #ifdef _ICE_ Qsw = I_0%value - + !jpnote call do_ice(h(nlev),dt,T(nlev),S(nlev),ta,precip%value,Qsw, & - surface_fluxes,julianday,secondsofday,longitude, & - latitude,I_0%value,airt%value,airp%value,hum%value, & - u10%value,v10%value,cloud%value,rho(nlev),rho_0,ql%method, & - hum_method,fluxes_method,albedo,heat%value) + surface_fluxes,surface_fluxes_uvic,julianday,secondsofday, & + I_0%value,airt%value,rho(nlev),rho_0,albedo,heat%value) + ! call do_ice(h(nlev),dt,T(nlev),S(nlev),ta,precip%value,Qsw, & + ! surface_fluxes,surface_fluxes_uvic,julianday,secondsofday,longitude, & + ! latitude,I_0%value,airt%value,airp%value,hum%value, & + ! u10%value,v10%value,cloud%value,rho(nlev),rho_0,ql%method, & + ! hum_method,fluxes_method,albedo,heat%value) #endif