pub struct DemandReliabilityNode {
pub node_index: usize,
pub node_id: String,
pub required_volume: f64,
pub delivered_volume: f64,
pub unmet_volume: f64,
pub surplus_volume: f64,
pub deficit_periods: usize,
pub longest_deficit_streak: usize,
pub max_deficit_rate: f64,
}Expand description
Per-junction demand-reliability metrics for a single simulation run.
Volumes are in m³ (internal SI units).
Fields§
§node_index: usizeZero-based index of this node in Network::nodes.
node_id: StringString ID of the node as it appears in the INP file.
required_volume: f64Total volume of water demanded over all reporting periods (m³).
delivered_volume: f64Total volume of water actually delivered over all reporting periods (m³).
unmet_volume: f64Total unmet demand volume over all reporting periods (m³).
surplus_volume: f64Total surplus delivered beyond demand (m³); non-zero under PDA when head exceeds the required-pressure threshold.
deficit_periods: usizeNumber of reporting periods in which delivered demand was below required.
longest_deficit_streak: usizeLength of the longest consecutive run of deficit periods.
max_deficit_rate: f64Maximum observed instantaneous deficit rate (m³/s) across all periods.
Implementations§
Source§impl DemandReliabilityNode
impl DemandReliabilityNode
Sourcepub fn served_volume(&self) -> f64
pub fn served_volume(&self) -> f64
Volume of demand that was actually served: max(required − unmet, 0) (m³).
Sourcepub fn reliability_ratio(&self) -> f64
pub fn reliability_ratio(&self) -> f64
Ratio of served to required volume in [0, 1] (1.0 when required ≤ 0).
Trait Implementations§
Source§impl Clone for DemandReliabilityNode
impl Clone for DemandReliabilityNode
Source§fn clone(&self) -> DemandReliabilityNode
fn clone(&self) -> DemandReliabilityNode
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more