powers 0.2.0

Power flow simulation and optimization
Documentation
use crate::order::Order;
use caseformat::{Branch, Bus, Gen};

#[derive(Clone, Default)]
pub struct MPC {
    pub name: String,

    /// System MVA base used for converting power into per-unit quantities.
    /// Default value is 100.
    pub base_mva: f64,

    /// Power system nodes, including static loads and shunts.
    pub bus: Vec<Bus>,

    /// Generators and dispatchable loads.
    pub gen: Vec<Gen>,

    /// Transmission lines/cables and transformers.
    pub branch: Vec<Branch>,

    // pub areas: Option<Vec<Area>>,
    pub(crate) order: Option<Order>,
    // pub(crate) a_mat: Option<CSR<usize, f64>>,
    // pub(crate) n_mat: Option<CSR<usize, f64>>,
}

impl MPC {
    pub fn order(&self) -> &Option<Order> {
        &self.order
    }
}