public subroutine calcul_fluxs(knon, nisurf, dtime, tsurf, p1lay, cal, beta, cdragh, cdragq, ps, precip_rain, precip_snow, snow, qsurf, radsol, dif_grnd, t1lay, q1lay, u1lay, v1lay, gustiness, fqsat, petAcoef, peqAcoef, petBcoef, peqBcoef, tsurf_new, evap, fluxlat, fluxsens, dflux_s, dflux_l, sens_prec_liq, sens_prec_sol, lat_prec_liq, lat_prec_sol, rhoa)
Uses
proc~~calcul_fluxs~~UsesGraph
proc~calcul_fluxs
calcul_fluxs
module~yomcst_mod_h
yomcst_mod_h
proc~calcul_fluxs->module~yomcst_mod_h
module~yoethf_mod_h
yoethf_mod_h
proc~calcul_fluxs->module~yoethf_mod_h
module~dimphy~3
dimphy
proc~calcul_fluxs->module~dimphy~3
module~indice_sol_mod
indice_sol_mod
proc~calcul_fluxs->module~indice_sol_mod
module~sens_heat_rain_m
sens_heat_rain_m
proc~calcul_fluxs->module~sens_heat_rain_m
Nodes of different colours represent the following:
Graph Key
Module
Module
Submodule
Submodule
Subroutine
Subroutine
Function
Function
Program
Program
This Page's Entity
This Page's Entity
Solid arrows point from a submodule to the (sub)module which it is
descended from. Dashed arrows point from a module or program unit to
modules which it uses.
$ WRITE(, )'test calcul_flux, surface ', nisurf
PB test
$ if (nisurf == is_oce) then
$ snow = 0.
$ qsol = max_eau_sol
$ else
$ where (precip_snow > 0.) snow = snow + (precip_snow * dtime)
$ where (snow > epsilon(snow)) snow = max(0.0, snow - (evap * dtime))
$! snow = max(0.0, snow + (precip_snow - evap) * dtime)
$ where (precip_rain > 0.) qsol = qsol + (precip_rain - evap) * dtime
$ endif
$ IF (nisurf /= is_ter) qsol = max_eau_sol
$ if (nisurf == is_ter) &
$ & run_off(i) = run_off(i) + max(qsol(i) - max_eau_sol, 0.0)
$ qsol(i) = min(qsol(i), max_eau_sol)
sens_prec_liq(i) = rcw * (t1lay(i) - RTT) * precip_rain(i)
sens_prec_sol(i) = rcs * (t1lay(i) - RTT) * precip_snow(i)
Arguments
Type
Intent Optional Attributes
Name
integer,
intent(in)
::
knon
integer,
intent(in)
::
nisurf
real,
intent(in)
::
dtime
real,
intent(in),
DIMENSION(klon)
::
tsurf
real,
intent(in),
DIMENSION(klon)
::
p1lay
real,
intent(in),
DIMENSION(klon)
::
cal
real,
intent(in),
DIMENSION(klon)
::
beta
real,
intent(in),
DIMENSION(klon)
::
cdragh
real,
intent(in),
DIMENSION(klon)
::
cdragq
real,
intent(in),
DIMENSION(klon)
::
ps
real,
intent(in),
DIMENSION(klon)
::
precip_rain
real,
intent(in),
DIMENSION(klon)
::
precip_snow
real,
intent(inout),
DIMENSION(klon)
::
snow
real,
intent(out),
DIMENSION(klon)
::
qsurf
real,
intent(in),
DIMENSION(klon)
::
radsol
real,
intent(in),
DIMENSION(klon)
::
dif_grnd
real,
intent(in),
DIMENSION(klon)
::
t1lay
real,
intent(in),
DIMENSION(klon)
::
q1lay
real,
intent(in),
DIMENSION(klon)
::
u1lay
real,
intent(in),
DIMENSION(klon)
::
v1lay
real,
intent(in),
DIMENSION(klon)
::
gustiness
real,
intent(in)
::
fqsat
real,
intent(in),
DIMENSION(klon)
::
petAcoef
real,
intent(in),
DIMENSION(klon)
::
peqAcoef
real,
intent(in),
DIMENSION(klon)
::
petBcoef
real,
intent(in),
DIMENSION(klon)
::
peqBcoef
real,
intent(out),
DIMENSION(klon)
::
tsurf_new
real,
intent(out),
DIMENSION(klon)
::
evap
real,
intent(out),
DIMENSION(klon)
::
fluxlat
real,
intent(out),
DIMENSION(klon)
::
fluxsens
real,
intent(out),
DIMENSION(klon)
::
dflux_s
real,
intent(out),
DIMENSION(klon)
::
dflux_l
real,
intent(out),
optional
::
sens_prec_liq (:)
real,
intent(out),
optional
::
sens_prec_sol (:)
real,
optional,
DIMENSION(klon)
::
lat_prec_liq
real,
optional,
DIMENSION(klon)
::
lat_prec_sol
real,
intent(in),
optional
::
rhoa (:)
Calls
proc~~calcul_fluxs~~CallsGraph
proc~calcul_fluxs
calcul_fluxs
proc~sens_heat_rain
sens_heat_rain
proc~calcul_fluxs->proc~sens_heat_rain
proc~esat
esat
proc~sens_heat_rain->proc~esat
Nodes of different colours represent the following:
Graph Key
Subroutine
Subroutine
Function
Function
Interface
Interface
Unknown Procedure Type
Unknown Procedure Type
Program
Program
This Page's Entity
This Page's Entity
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Called by
proc~~calcul_fluxs~~CalledByGraph
proc~calcul_fluxs
calcul_fluxs
proc~surf_land_bucket
surf_land_bucket
proc~surf_land_bucket->proc~calcul_fluxs
proc~ocean_forced_noice~2
ocean_forced_noice
proc~ocean_forced_noice~2->proc~calcul_fluxs
proc~surf_land_bucket_hetero~2
surf_land_bucket_hetero
proc~surf_land_bucket_hetero~2->proc~calcul_fluxs
proc~surf_land_bucket_hetero
surf_land_bucket_hetero
proc~surf_land_bucket_hetero->proc~calcul_fluxs
proc~ocean_forced_noice
ocean_forced_noice
proc~ocean_forced_noice->proc~calcul_fluxs
proc~ocean_forced_ice
ocean_forced_ice
proc~ocean_forced_ice->proc~calcul_fluxs
proc~ocean_forced_ice~2
ocean_forced_ice
proc~ocean_forced_ice~2->proc~calcul_fluxs
proc~ocean_cpl_noice
ocean_cpl_noice
proc~ocean_cpl_noice->proc~calcul_fluxs
proc~ocean_slab_ice~2
ocean_slab_ice
proc~ocean_slab_ice~2->proc~calcul_fluxs
proc~ocean_slab_noice
ocean_slab_noice
proc~ocean_slab_noice->proc~calcul_fluxs
proc~surf_landice
surf_landice
proc~surf_landice->proc~calcul_fluxs
proc~surf_landice~2
surf_landice
proc~surf_landice~2->proc~calcul_fluxs
proc~ocean_slab_noice~2
ocean_slab_noice
proc~ocean_slab_noice~2->proc~calcul_fluxs
proc~ocean_cpl_noice~2
ocean_cpl_noice
proc~ocean_cpl_noice~2->proc~calcul_fluxs
proc~ocean_cpl_ice~2
ocean_cpl_ice
proc~ocean_cpl_ice~2->proc~calcul_fluxs
proc~ocean_slab_ice
ocean_slab_ice
proc~ocean_slab_ice->proc~calcul_fluxs
proc~surf_land_bucket~2
surf_land_bucket
proc~surf_land_bucket~2->proc~calcul_fluxs
proc~ocean_cpl_ice
ocean_cpl_ice
proc~ocean_cpl_ice->proc~calcul_fluxs
proc~surf_ocean~2
surf_ocean
proc~surf_ocean~2->proc~ocean_forced_noice
proc~surf_ocean~2->proc~ocean_cpl_noice
proc~surf_ocean~2->proc~ocean_slab_noice
proc~surf_seaice
surf_seaice
proc~surf_seaice->proc~ocean_forced_ice
proc~surf_seaice->proc~ocean_slab_ice
proc~surf_seaice->proc~ocean_cpl_ice
proc~surf_land
surf_land
proc~surf_land->proc~surf_land_bucket
proc~surf_land->proc~surf_land_bucket_hetero
proc~surf_seaice~2
surf_seaice
proc~surf_seaice~2->proc~ocean_forced_ice
proc~surf_seaice~2->proc~ocean_slab_ice
proc~surf_seaice~2->proc~ocean_cpl_ice
proc~pbl_surface
pbl_surface
proc~pbl_surface->proc~surf_landice
proc~pbl_surface->proc~surf_seaice
proc~pbl_surface->proc~surf_land
proc~surf_ocean
surf_ocean
proc~pbl_surface->proc~surf_ocean
proc~pbl_surface~2
pbl_surface
proc~pbl_surface~2->proc~surf_landice
proc~pbl_surface~2->proc~surf_seaice
proc~pbl_surface~2->proc~surf_land
proc~pbl_surface~2->proc~surf_ocean
proc~surf_land~2
surf_land
proc~surf_land~2->proc~surf_land_bucket
proc~surf_land~2->proc~surf_land_bucket_hetero
proc~surf_ocean->proc~ocean_forced_noice
proc~surf_ocean->proc~ocean_cpl_noice
proc~surf_ocean->proc~ocean_slab_noice
proc~physiq
physiq
proc~physiq->proc~pbl_surface
proc~physiq~2
physiq
proc~physiq~2->proc~pbl_surface
proc~old_lmdz1d
old_lmdz1d
proc~old_lmdz1d->proc~physiq
proc~call_physiq
call_physiq
proc~call_physiq->proc~physiq
proc~call_physiq~2
call_physiq
proc~call_physiq~2->proc~physiq
proc~scm
scm
proc~scm->proc~physiq
program~lmdz1d
lmdz1d
program~lmdz1d->proc~old_lmdz1d
program~lmdz1d->proc~scm
proc~calfis
calfis
proc~calfis->proc~call_physiq
proc~leapfrog
leapfrog
proc~leapfrog->proc~calfis
program~gcm~2
gcm
program~gcm~2->proc~leapfrog
Nodes of different colours represent the following:
Graph Key
Subroutine
Subroutine
Function
Function
Interface
Interface
Unknown Procedure Type
Unknown Procedure Type
Program
Program
This Page's Entity
This Page's Entity
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.