Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion extern/flexout
Submodule flexout updated 0 files
36 changes: 36 additions & 0 deletions src/airsea/airsea.F90
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -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)
Expand Down
15 changes: 9 additions & 6 deletions src/gotm/gotm.F90
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -776,12 +776,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

Expand Down