NGen
Loading...
Searching...
No Matches
HY_Catchment Class Reference

#include <HY_Catchment.hpp>

+ Inheritance diagram for HY_Catchment:
+ Collaboration diagram for HY_Catchment:

Public Member Functions

 HY_Catchment ()
 
 HY_Catchment (std::string id, Nexuses inflows, Nexuses outflows, std::shared_ptr< HY_CatchmentRealization > realization, long lyr=0)
 
virtual ~HY_Catchment ()
 
const Nexusesget_outflow_nexuses ()
 
long get_layer ()
 get the hydrofabric layer of this catchment
 
void set_layer (long lyr)
 set the layer of this catchment
 

Public Attributes

std::shared_ptr< HY_CatchmentRealizationrealization
 
const long ATMOSPHERIC_LAYER_HIGH = 80
 This is the catchment layer for high air atmospheric models.
 
const long ATMOSPHERIC_Layer_LOW = 60
 This is the catchment layer for low air atmospheric models.
 
const long CANOPY_LAYER = 40
 This is the catchment layer for canopy layer models.
 
const long SNOW_LAYER = 20
 This is the catchment layer for surface snow models.
 
const long SURFACE_LAYER = 0
 This is the catchment layer for surface water models

 
const long GROUND_WATER_SHALLOW_LAYER = -20
 This is the catchment layer for shallow groundwater models.
 
const long GROUND_WATER_DEEP_LAYER = -40
 This is the catchment layer for deep groundwater models.
 

Private Types

using Nexus = std::string
 
using Nexuses = std::vector< Nexus >
 
using Catchment = std::string
 
using Catchments = std::vector< Catchment >
 

Private Attributes

std::string id
 
Nexuses inflows
 
Nexuses outflows
 
Catchments contained_catchments
 
Catchment containing_catchment
 
Catchment conjoint_catchment
 
Catchment upper_catchment
 
Catchment lower_catchment
 
long layer
 

Member Typedef Documentation

◆ Catchment

using HY_Catchment::Catchment = std::string
private

◆ Catchments

using HY_Catchment::Catchments = std::vector< Catchment >
private

◆ Nexus

using HY_Catchment::Nexus = std::string
private

◆ Nexuses

using HY_Catchment::Nexuses = std::vector< Nexus >
private

Constructor & Destructor Documentation

◆ HY_Catchment() [1/2]

HY_Catchment::HY_Catchment ( )

◆ HY_Catchment() [2/2]

HY_Catchment::HY_Catchment ( std::string id,
Nexuses inflows,
Nexuses outflows,
std::shared_ptr< HY_CatchmentRealization > realization,
long lyr = 0 )
inline

◆ ~HY_Catchment()

HY_Catchment::~HY_Catchment ( )
virtual

Member Function Documentation

◆ get_layer()

long HY_Catchment::get_layer ( )
inline

get the hydrofabric layer of this catchment

The hydrofabric is divided into multiple layers which are intended to be processed in decreasing numeric order. The current defined layers are: 80 – Atmospheric Models (high) 60 – Atmospeheric Models (low) 40 – Canopy Models 20 – Snow melt models 0 – Surface water processes -20 – Ground Water (Shallow) -40 – Ground Water (Deep)

References layer.

◆ get_outflow_nexuses()

const Nexuses & HY_Catchment::get_outflow_nexuses ( )
inline

References outflows.

◆ set_layer()

void HY_Catchment::set_layer ( long lyr)
inline

set the layer of this catchment

This function changes the layer of a catchment. It should only be used if the type of model being used in the catchment changes.

References layer.

Member Data Documentation

◆ ATMOSPHERIC_LAYER_HIGH

const long HY_Catchment::ATMOSPHERIC_LAYER_HIGH = 80

This is the catchment layer for high air atmospheric models.

◆ ATMOSPHERIC_Layer_LOW

const long HY_Catchment::ATMOSPHERIC_Layer_LOW = 60

This is the catchment layer for low air atmospheric models.

◆ CANOPY_LAYER

const long HY_Catchment::CANOPY_LAYER = 40

This is the catchment layer for canopy layer models.

◆ conjoint_catchment

Catchment HY_Catchment::conjoint_catchment
private

◆ contained_catchments

Catchments HY_Catchment::contained_catchments
private

◆ containing_catchment

Catchment HY_Catchment::containing_catchment
private

◆ GROUND_WATER_DEEP_LAYER

const long HY_Catchment::GROUND_WATER_DEEP_LAYER = -40

This is the catchment layer for deep groundwater models.

◆ GROUND_WATER_SHALLOW_LAYER

const long HY_Catchment::GROUND_WATER_SHALLOW_LAYER = -20

This is the catchment layer for shallow groundwater models.

◆ id

std::string HY_Catchment::id
private

◆ inflows

Nexuses HY_Catchment::inflows
private

◆ layer

long HY_Catchment::layer
private

Referenced by get_layer(), and set_layer().

◆ lower_catchment

Catchment HY_Catchment::lower_catchment
private

◆ outflows

Nexuses HY_Catchment::outflows
private

Referenced by get_outflow_nexuses().

◆ realization

std::shared_ptr<HY_CatchmentRealization> HY_Catchment::realization

◆ SNOW_LAYER

const long HY_Catchment::SNOW_LAYER = 20

This is the catchment layer for surface snow models.

◆ SURFACE_LAYER

const long HY_Catchment::SURFACE_LAYER = 0

This is the catchment layer for surface water models

◆ upper_catchment

Catchment HY_Catchment::upper_catchment
private

The documentation for this class was generated from the following files: