65 real(RP),
intent(out) :: SST_t(IA,JA)
66 real(RP),
intent(out) :: ZMFLX(IA,JA)
67 real(RP),
intent(out) :: XMFLX(IA,JA)
68 real(RP),
intent(out) :: YMFLX(IA,JA)
69 real(RP),
intent(out) :: SHFLX(IA,JA)
70 real(RP),
intent(out) :: LHFLX(IA,JA)
71 real(RP),
intent(out) :: WHFLX(IA,JA)
72 real(RP),
intent(out) :: U10 (IA,JA)
73 real(RP),
intent(out) :: V10 (IA,JA)
74 real(RP),
intent(out) :: T2 (IA,JA)
75 real(RP),
intent(out) :: Q2 (IA,JA)
77 real(RP),
intent(in) :: TMPA(IA,JA)
78 real(RP),
intent(in) :: PRSA(IA,JA)
79 real(RP),
intent(in) :: WA (IA,JA)
80 real(RP),
intent(in) :: UA (IA,JA)
81 real(RP),
intent(in) :: VA (IA,JA)
82 real(RP),
intent(in) :: RHOA(IA,JA)
83 real(RP),
intent(in) :: QVA (IA,JA)
84 real(RP),
intent(in) :: Z1 (IA,JA)
85 real(RP),
intent(in) :: PBL (IA,JA)
86 real(RP),
intent(in) :: PRSS(IA,JA)
87 real(RP),
intent(in) :: LWD (IA,JA)
88 real(RP),
intent(in) :: SWD (IA,JA)
90 real(RP),
intent(in) :: TW (IA,JA)
91 real(RP),
intent(in) :: SST (IA,JA)
92 real(RP),
intent(in) :: ALB_LW(IA,JA)
93 real(RP),
intent(in) :: ALB_SW(IA,JA)
94 real(RP),
intent(in) :: Z0M (IA,JA)
95 real(RP),
intent(in) :: Z0H (IA,JA)
96 real(RP),
intent(in) :: Z0E (IA,JA)
97 real(DP),
intent(in) :: dt
132 character(len=*),
intent(in) :: ocean_type
135 select case( ocean_type )
139 case(
'SLAB',
'FILE' )
160 real(RP),
intent(out) :: sfc_albedo_t(
ia,
ja,2)
161 real(RP),
intent(in) :: sfc_albedo (
ia,
ja,2)
162 real(RP),
intent(in) :: cossza (
ia,
ja)
163 real(DP),
intent(in) :: dt
166 real(RP) :: sfc_albedo1(
ia,
ja,2)
169 real(RP),
parameter :: c_ocean_albedo(3) = (/ -0.747900_rp, &
178 am1 = max( min( cossza(i,j), 0.961_rp ), 0.0349_rp )
181 sfc_albedo1(i,j,i_sw) = exp( ( c_ocean_albedo(3)*am1 + c_ocean_albedo(2) )*am1 + c_ocean_albedo(1) )
188 sfc_albedo_t(i,j,i_lw) = 0.0_rp
189 sfc_albedo_t(i,j,i_sw) = ( sfc_albedo1(i,j,i_sw) - sfc_albedo(i,j,i_sw) ) / dt
integer, public is
start point of inner domain: x, local
integer, public je
end point of inner domain: y, local
integer, public const_i_lw
long-wave radiation index
subroutine, public ocean_sfc_slab(SST_t, ZMFLX, XMFLX, YMFLX, SHFLX, LHFLX, WHFLX, U10, V10, T2, Q2, TMPA, PRSA, WA, UA, VA, RHOA, QVA, Z1, PBL, PRSS, LWD, SWD, TW, SST, ALB_LW, ALB_SW, Z0M, Z0H, Z0E, dt)
subroutine, public prc_mpistop
Abort MPI.
subroutine, public ocean_sfc_setup(OCEAN_TYPE)
subroutine, public ocean_sfc_simplealbedo(SFC_albedo_t, SFC_albedo, cosSZA, dt)
procedure(ocnsfc), pointer, public ocean_sfc
module OCEAN / Surface flux with slab ocean model
module OCEAN / Surface flux with constant ocean model
subroutine, public ocean_sfc_const_setup(OCEAN_TYPE)
Setup.
integer, public ia
of whole cells: x, local, with HALO
integer, public js
start point of inner domain: y, local
module OCEAN / Surface fluxes
subroutine, public ocean_sfc_slab_setup(OCEAN_TYPE)
Setup.
integer, public ie
end point of inner domain: x, local
integer, public const_i_sw
short-wave radiation index
subroutine, public ocean_sfc_const(SST_t, ZMFLX, XMFLX, YMFLX, SHFLX, LHFLX, WHFLX, U10, V10, T2, Q2, TMPA, PRSA, WA, UA, VA, RHOA, QVA, Z1, PBL, PRSS, LWD, SWD, TW, SST, ALB_LW, ALB_SW, Z0M, Z0H, Z0E, dt)
integer, public ja
of whole cells: y, local, with HALO