NGen
|
#include <HY_PointHydroNexus.hpp>
Public Types | |
typedef long | time_step_t |
using | Catchments = std::vector<std::string> |
using | HydroLocation = std::shared_ptr<hy_features::hydrolocation::HY_HydroLocation> |
Public Member Functions | |
HY_PointHydroNexus (std::string nexus_id, Catchments receiving_catchments) | |
HY_PointHydroNexus (std::string nexus_id, Catchments receiving_catchments, Catchments contributing_catchments) | |
virtual | ~HY_PointHydroNexus () |
double | get_downstream_flow (std::string catchment_id, time_step_t t, double percent_flow) override |
get the request percentage of downstream flow through this nexus at timestep t. | |
void | add_upstream_flow (double val, std::string catchment_id, time_step_t t) override |
add flow to this nexus for timestep t. | |
std::pair< double, int > | inspect_upstream_flows (time_step_t t) override |
inspect a nexus to see what flows are recorded at a time step. | |
virtual std::pair< double, int > | inspect_downstream_requests (time_step_t t) override |
inspect a nexus to see what requests are recorded at a time step. | |
std::string | get_flow_units () override |
get the units that flows are represented in. | |
void | set_mintime (time_step_t) |
const Catchments & | get_receiving_catchments () |
const Catchments & | get_contributing_catchments () |
std::string & | get_id () |
Protected Types | |
using | flows = std::pair<std::string, double> |
using | flow_vector = std::vector< flows > |
Protected Attributes | |
std::unordered_map< time_step_t, flow_vector > | upstream_flows |
The current downstream flow through this Point Nexus. | |
std::unordered_map< time_step_t, flow_vector > | downstream_requests |
std::unordered_map< time_step_t, double > | summed_flows |
std::unordered_map< time_step_t, double > | total_requests |
time_step_t | min_timestep {0} |
std::unordered_set< time_step_t > | completed |
std::string | id |
Private Attributes | |
HydroLocation | realization |
Catchments | receiving_catchments |
Catchments | contributing_catchments |
int | number_of_downstream_catchments |
|
inherited |
|
protected |
|
protected |
|
inherited |
|
inherited |
HY_PointHydroNexus::HY_PointHydroNexus | ( | std::string | nexus_id, |
Catchments | receiving_catchments ) |
HY_PointHydroNexus::HY_PointHydroNexus | ( | std::string | nexus_id, |
Catchments | receiving_catchments, | ||
Catchments | contributing_catchments ) |
|
virtual |
|
overridevirtual |
add flow to this nexus for timestep t.
Implements HY_HydroNexus.
References completed, min_timestep, summed_flows, and upstream_flows.
|
inlineinherited |
References HY_HydroNexus::contributing_catchments.
|
overridevirtual |
get the request percentage of downstream flow through this nexus at timestep t.
Implements HY_HydroNexus.
References completed, downstream_requests, min_timestep, summed_flows, total_requests, and upstream_flows.
|
overridevirtual |
get the units that flows are represented in.
Implements HY_HydroNexus.
|
inlineinherited |
References HY_HydroNexus::id.
|
inlineinherited |
References HY_HydroNexus::receiving_catchments.
Referenced by ngen::SurfaceLayer::update_models().
|
overridevirtual |
inspect a nexus to see what requests are recorded at a time step.
Implements HY_HydroNexus.
References downstream_requests.
|
overridevirtual |
inspect a nexus to see what flows are recorded at a time step.
Implements HY_HydroNexus.
References upstream_flows.
void HY_PointHydroNexus::set_mintime | ( | time_step_t | t | ) |
References completed, downstream_requests, min_timestep, summed_flows, total_requests, and upstream_flows.
|
protected |
Referenced by add_upstream_flow(), get_downstream_flow(), and set_mintime().
|
privateinherited |
Referenced by HY_HydroNexus::get_contributing_catchments().
|
protected |
Referenced by get_downstream_flow(), inspect_downstream_requests(), and set_mintime().
|
protectedinherited |
Referenced by HY_HydroNexus::get_id().
|
protected |
Referenced by add_upstream_flow(), get_downstream_flow(), and set_mintime().
|
privateinherited |
Referenced by HY_HydroNexus::HY_HydroNexus().
|
privateinherited |
|
privateinherited |
Referenced by HY_HydroNexus::get_receiving_catchments().
|
protected |
Referenced by add_upstream_flow(), get_downstream_flow(), and set_mintime().
|
protected |
Referenced by get_downstream_flow(), and set_mintime().
|
protected |
The current downstream flow through this Point Nexus.
Referenced by add_upstream_flow(), get_downstream_flow(), inspect_upstream_flows(), and set_mintime().