HYPE
Functions/Subroutines
tracer_processes Module Reference

Functions/Subroutines

subroutine, public add_tracer_point_source_to_river (i, itype, qin, cin)
 
subroutine, public add_tracer_point_source_to_lake (i, itype, qin, cin)
 
subroutine, public soil_tracer_processes (i, j, ct, thickness, soilstate, miscstate, infilt, T1release)
 
subroutine, public tracer_processes_in_river (i, itype, riverarea, depth, transq, qbank, riverstate)
 
subroutine, public tracer_processes_in_lake (i, itype, lakearea, pooladd_t1, lakestate)
 
subroutine decay_of_tracer (timesteps, vol, conc)
 
subroutine decay_of_tracer_sorbedphase (timesteps, pool)
 
subroutine sorption_of_tracer (vol, conc, sorbed, layerthick)
 
subroutine sedimentation_resuspension_of_tracer (i, watertype, area, sedexppar, riverstate, riverq, qbank, depth)
 
subroutine t1_crop_sources (i, j, yearno, partT1sf)
 
subroutine t1_incorporation (i, j, jday, soillayers, soilstate, miscstate)
 
subroutine release_from_source (sourceT1, qmm, releaseT1, relpar)
 
subroutine, public set_soil_t2_from_soiltemp_model (i, j, surfflow1, surfflow2, csurfflow2, cweights, crunoff1, crunoff2, crunoff3, csrunoff, crunoffd, soilstate)
 
subroutine, public craig_gordon_18o (watertype, temp, relh, crain, csource, cevap)
 
subroutine, public craig_gordon_2h (watertype, temp, relh, crain, csource, cevap)
 

Detailed Description

General substance (T1) and water temperature (T2) processes in HYPE.

Function/Subroutine Documentation

◆ add_tracer_point_source_to_lake()

subroutine, public tracer_processes::add_tracer_point_source_to_lake ( integer, intent(in)  i,
integer, intent(in)  itype,
real, intent(inout)  qin,
real, dimension(numsubstances), intent(inout)  cin 
)

Add T1-T2 load from point sources to lake inflow.

Reference ModelDescription Chapter Water management (Point sources - Tracer T1 point sources)

Parameters
[in]iindex of subbasin
[in]itypetype of lake
[in,out]qinflow into lake (m3/s)
[in,out]cinconcentration of flow into lake (-)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ add_tracer_point_source_to_river()

subroutine, public tracer_processes::add_tracer_point_source_to_river ( integer, intent(in)  i,
integer, intent(in)  itype,
real, intent(inout)  qin,
real, dimension(numsubstances), intent(inout)  cin 
)

Add T1-T2 load from point sources to river inflow.

Reference ModelDescription Chapter Water management (Point sources - Tracer T1 point sources)

Parameters
[in]iindex of subbasin
[in]itypetype of river
[in,out]qinflow into river (m3/s)
[in,out]cinconcentration of flow into river (-)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ craig_gordon_18o()

subroutine, public tracer_processes::craig_gordon_18o ( integer, intent(in)  watertype,
real, intent(in)  temp,
real, intent(in)  relh,
real, intent(in)  crain,
real, intent(in)  csource,
real, intent(out)  cevap 
)

Calculate isotope 18O fractionation of evaporation part of ET by a method from Craig and Gordon (...) that was implemented by Tricia Stadnyk and Tegan Holmes in isoWATFLOOD. Units are in delta permil.

Parameters
[in]watertype1=soil water,2=river,3=lake,4=wetland (?) isoWATFLOOD definitions, maybe we can set by slc, or specialclassmodel, different for ilkae/olake?
[in]tempair temperature (degree Celcius)
[in]relhrelative humuidity
[in]crainisotop of rain (delta permil) !I use cpT1, should be of rain and is double precision in isoWATFLOOD
[in]csourceisotop of evaporating water source (delta permil) (dell in isoWATFLOOD)
[out]cevapisotop of evaporation (delta permil) (dele in isoWATFLOOD)
+ Here is the caller graph for this function:

◆ craig_gordon_2h()

subroutine, public tracer_processes::craig_gordon_2h ( integer, intent(in)  watertype,
real, intent(in)  temp,
real, intent(in)  relh,
real, intent(in)  crain,
real, intent(in)  csource,
real, intent(out)  cevap 
)

Calculate isotope 18O fractionation of evaporation part of ET by a method from Craig and Gordon (...) that was implemented by Tricia Stadnyk and Tegan Holmes in isoWATFLOOD. Units are in delta permil.

Parameters
[in]watertype1=soil water,2=river,3=lake,4=wetland (?) isoWATFLOOD definitions, maybe we can set by slc, or specialclassmodel, different for ilkae/olake?
[in]tempair temperature (degree Celcius)
[in]relhrelative humuidity
[in]crainisotop of rain (delta permil) !I use cpT3, should be of rain and is double precision in isoWATFLOOD
[in]csourceisotop of evaporating water source (delta permil) (dell in isoWATFLOOD)
[out]cevapisotop of evaporation (delta permil) (dele in isoWATFLOOD)
+ Here is the caller graph for this function:

◆ decay_of_tracer()

subroutine tracer_processes::decay_of_tracer ( integer, intent(in)  timesteps,
real, intent(in)  vol,
real, dimension(numsubstances), intent(inout)  conc 
)

Decay processes of tracer T1.

Reference ModelDescription Chapter Tracer simulation (General tracer (T1) - Processes)

Parameters
[in]timestepsnumber of timesteps
[in]volvolume of water
[in,out]concconcentration of water (-)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ decay_of_tracer_sorbedphase()

subroutine tracer_processes::decay_of_tracer_sorbedphase ( integer, intent(in)  timesteps,
real, intent(inout)  pool 
)

Decay of tracer in sorbed phase.

Reference ModelDescription Chapter Tracer simulation (General tracer (T1) - Processes)

Parameters
[in]timestepsnumber of timesteps
[in,out]poolamount of T1
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ release_from_source()

subroutine tracer_processes::release_from_source ( real, intent(inout)  sourceT1,
real, intent(in)  qmm,
real, intent(out)  releaseT1,
real, intent(in)  relpar 
)

Release sorbed T1 to dissolved T1 on ground due to rain/snowmelt or surface runoff.

Reference ModelDescription Chapter Tracer simulation (General tracer (T1) - Processes)

Parameters
[in,out]sourcet1pool of tracer
[in]qmmwater in mm in precipitation or surface runoff
[out]releaset1release of tracer from source
[in]relparrelease parameter
+ Here is the caller graph for this function:

◆ sedimentation_resuspension_of_tracer()

subroutine tracer_processes::sedimentation_resuspension_of_tracer ( integer, intent(in)  i,
integer, intent(in)  watertype,
real, intent(in)  area,
real, intent(in)  sedexppar,
type(riverstatetype), intent(inout)  riverstate,
real, intent(in)  riverq,
real, intent(in)  qbank,
real, intent(in)  depth 
)

Sedimentation and resuspension of tracer in river flow.

Reference ModelDescription Chapter Tracer simulation (General tracer (T1) - Processes)

Parameters
[in]iindex of current subbasin
[in]watertyperiver type (1=local, 2=main)
[in]areariver surface area (m2)
[in]sedexpparsedimentation/resuspension parameter
[in,out]riverstateRiver states
[in]riverqriver discharge
[in]qbankQ bank full
[in]depthriver depth (m)

Select current model for river resuspension/sedimentation

For model 0:

Calculate sedimentation and resuspension factor (per day)

For model 2: Simplified Bagnold Equation

Calculate river peak velocity across channel

Calculate amount of tracer to transfer

Transfer SS between sediment and water pools

Update state variables

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ set_soil_t2_from_soiltemp_model()

subroutine, public tracer_processes::set_soil_t2_from_soiltemp_model ( integer, intent(in)  i,
integer, intent(in)  j,
real, intent(in)  surfflow1,
real, intent(in)  surfflow2,
real, dimension(numsubstances), intent(in)  csurfflow2,
real, dimension(maxsoillayers), intent(in)  cweights,
real, dimension(numsubstances), intent(inout)  crunoff1,
real, dimension(numsubstances), intent(inout)  crunoff2,
real, dimension(numsubstances), intent(inout)  crunoff3,
real, dimension(numsubstances), intent(inout)  csrunoff,
real, dimension(numsubstances), intent(inout)  crunoffd,
type(soilstatetype), intent(inout)  soilstate 
)

T2 soil and runoff temperatures are determined by calculated soil temperature.

Parameters
[in]icurrent subbasin
[in]jcurrent class
[in]surfflow1runoff saturaed overland flow
[in]surfflow2runoff excess infiltration
[in]csurfflow2concentration of runoff excess infiltration
[in]cweightssoillayer with tile drainage
[in,out]crunoff1concentration of runoff
[in,out]crunoff2concentration of runoff
[in,out]crunoff3concentration of runoff
[in,out]csrunoffconcentration of runoff
[in,out]crunoffdconcentration of runoff
[in,out]soilstatesoil states
+ Here is the caller graph for this function:

◆ soil_tracer_processes()

subroutine, public tracer_processes::soil_tracer_processes ( integer, intent(in)  i,
integer, intent(in)  j,
type(timeinformationtype), intent(in)  ct,
real, dimension(maxsoillayers), intent(in)  thickness,
type(soilstatetype), intent(inout)  soilstate,
type(miscstatetype), intent(inout)  miscstate,
real, intent(in)  infilt,
real, intent(out)  T1release 
)

Calculate tracer processes in soil.

Reference ModelDescription Chapter Tracer simulation (General tracer (T1) - Processes)

Parameters
[in]iindex of subbasin
[in]jindex of class
[in]ctcurrent time
[in]thicknessthickness of soil layers
[in,out]soilstateSoil states
[in,out]miscstateMiscellaneous states
[in]infiltinfiltration (snowmelt and precip)
[out]t1releaserelease of T1 from surface sources
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ sorption_of_tracer()

subroutine tracer_processes::sorption_of_tracer ( real, intent(in)  vol,
real, dimension(numsubstances), intent(inout)  conc,
real, intent(inout)  sorbed,
real, intent(in)  layerthick 
)

Adsorption of traced to soil particles.

Reference ModelDescription Chapter Tracer simulation (General tracer (T1) - Processes)

Parameters
[in]volvolume of water (mm)
[in,out]concconcentration in water (-)
[in,out]sorbedT1 sorbed phase
[in]layerthickthickness of soil layer (m)
+ Here is the caller graph for this function:

◆ t1_crop_sources()

subroutine tracer_processes::t1_crop_sources ( integer, intent(in)  i,
integer, intent(in)  j,
integer, intent(in)  yearno,
real, intent(inout)  partT1sf 
)

Add T1 from manure application to above-soil pool of sorbed T1.

Reference ModelDescription Chapter Tracer simulation (General tracer (T1) - Sources)

Parameters
[in]isubbasin
[in]jclass
[in]yearnoyear
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ t1_incorporation()

subroutine tracer_processes::t1_incorporation ( integer, intent(in)  i,
integer, intent(in)  j,
integer, intent(in)  jday,
integer, intent(in)  soillayers,
type(soilstatetype), intent(inout)  soilstate,
type(miscstatetype), intent(inout)  miscstate 
)

Move sorbed T1 from above-soil pool to soil pool (tilling)

Reference ModelDescription Chapter Tracer simulation (General tracer (T1) - Sources)

Parameters
[in]isubbasin
[in]jclass
[in]jdayday number of the year
[in]soillayersnumber of soil layers T1 will be added to
[in,out]soilstatesoil states
[in,out]miscstatemiscellaneous states
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ tracer_processes_in_lake()

subroutine, public tracer_processes::tracer_processes_in_lake ( integer, intent(in)  i,
integer, intent(in)  itype,
real, intent(in)  lakearea,
real, intent(out)  pooladd_t1,
type(lakestatetype), intent(inout)  lakestate 
)

Lake processes of tracer T1.

Reference ModelDescription Chapter Tracer simulation (General tracer (T1) - Processes)

Parameters
[in]iindex of subbasin
[in]itypeindex of lake type (ilake = 1, olake = 2)
[in]lakearealake area (m2)
[out]pooladd_t1T1 added to lake sediment
[in,out]lakestateLake state

Add sedimentation to the sediment pool

Calculate the new concentration in the water due to the change in the water pool

Calculate the new concentration in the water due to the change in the water pool

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ tracer_processes_in_river()

subroutine, public tracer_processes::tracer_processes_in_river ( integer, intent(in)  i,
integer, intent(in)  itype,
real, intent(in)  riverarea,
real, intent(in)  depth,
real, intent(in)  transq,
real, intent(in)  qbank,
type(riverstatetype), intent(inout)  riverstate 
)

River processes of tracer T1.

Reference ModelDescription Chapter Tracer simulation (General tracer (T1) - Processes)

Parameters
[in]iindex of subbasin
[in]itypeindex of river type (local = 1, main = 2)
[in]riverareariver area
[in]depthriver depth (m)
[in]transqflow out of translation box chain (m3/s)
[in]qbankbank full river flow
[in,out]riverstateRiver states
+ Here is the call graph for this function:
+ Here is the caller graph for this function: