2.0.0b10
catchment modelling framework
Loading...
Searching...
No Matches

This connection models the water exchange between macropores and micropores as in the MACRO Model (Larsbo & Jarvis, 2003), which follows Gerke & van Genuchten 1996. More...

+ Inheritance diagram for MACROlikeMacroMicroExchange:
+ Collaboration diagram for MACROlikeMacroMicroExchange:

Detailed Description

This connection models the water exchange between macropores and micropores as in the MACRO Model (Larsbo & Jarvis, 2003), which follows Gerke & van Genuchten 1996.

Warning
Deprecated
This connection uses the diffusivity of a soil given by its retention curve. Since no retention curve provides a valid value for Diffusivity in case of saturation this connection will blow up the numerical solution for sure.

The exchange between Macropore and matrix is defined as follows: (MACRO 5 Tech report, Larsbo & Jarvis 2003)

\[q = \frac{G_f D_w \gamma_w}{d^2}(\theta_b - \theta_{mi}) V_{layer}\]

where:

  • \(G_f\) is the geometry factor. Use 3 for a rectangular slab geometry
  • \(gamma_w\) A scaling factor to fit analytical and numerical solution (0.4)
  • \(d\) is an effective diffusive path length related to aggregate size and the influence of coatings on the aggregate surfaces in m
  • \(\theta_b\) the saturated water content of the matrix
  • \(\theta_{mi}\) the actual water content of the matrix
  • \(D_w = \frac12(D(\theta_b)+D(\theta_{mi})W_{ma})\) is the effective water diffusivity in m2/day, as defined below
    • \(W_{ma}\) is the saturation of the macropores

Public Member Functions

real conc (cmf::math::Time t, const cmf::water::solute &_Solute)
 Returns the concentration of the flux.
 
flux_node::ptr get_target (const flux_node &inquirer)
 Returns the other end of a connection than the asking end.
 
flux_node::ptr get_target (int index) const
 With index 0, the left node is returned, with index 1 the right node of the connection.
 
real get_tracer_filter ()
 A value ranging from 0 to 1 to filter tracers out of the water flux.
 
real get_tracer_filter (solute S)
 A value ranging from 0 to 1 to filter tracers out of the water flux.
 
bool kill_me ()
 Deregisters this connection from its nodes. Returns true if only one reference is left.
 
flux_node::ptr left_node () const
 Returns the left node of this connection.
 
real q (const flux_node &inquirer, cmf::math::Time t)
 Returns the current flux through a connection. Negative signs mean out of the inquirer, positive are inflows to the inquirer.
 
void refresh (cmf::math::Time t)
 Performes a new calculation of the flux.
 
flux_node::ptr right_node () const
 returns the right node of this connection
 
void set_tracer_filter (real value)
 A value ranging from 0 to 1 to filter tracers out of the water flux.
 

Public Attributes

real gamma_w
 \(\gamma_w\) scaling factor set to 0.4. See Gerke & van Genuchten 1993 and van Genuchten 1985 for reference
 
real Gf
 Geometry factor.
 
const std::string type
 A string describing the type of the connection.
 

Member Function Documentation

◆ conc()

real conc ( cmf::math::Time t,
const cmf::water::solute & _Solute )
inherited

Returns the concentration of the flux.


If not overridden, it returns the concentration of the source of the flux (direction depending)

◆ get_tracer_filter()

real get_tracer_filter ( )
inherited

A value ranging from 0 to 1 to filter tracers out of the water flux.

1.0 is no filter and 0.0 means no solute is crossing this connection

◆ set_tracer_filter()

void set_tracer_filter ( real value)
inherited

A value ranging from 0 to 1 to filter tracers out of the water flux.

1.0 is no filter and 0.0 means no solute is crossing this connection

Member Data Documentation

◆ Gf

real Gf

Geometry factor.

3 means a rectangular slab geometry (see MACRO 5 tech report) Other values may be obtained from Gerke & van Genuchten 1996