cimoxide-structs 0.3.3

Generated Rust structs for the IEC 61970/61968 Common Information Model as profiled by ENTSO-E CGMES
Documentation
/// Type of static load model.
#[derive(Debug, Clone, PartialEq, serde::Serialize, serde::Deserialize)]
pub enum StaticLoadModelKind {
    /// This model is an exponential representation of the load. Exponential equations for active and reactive power are used and the following attributes are required: kp1, kp2, kp3, kpf, ep1, ep2, ep3 kq1, kq2, kq3, kqf, eq1, eq2, eq3.
    exponential,
    /// This model integrates the frequency-dependent load (primarily motors). ZIP1 equations for active and reactive power are used and the following attributes are required: kp1, kp2, kp3, kpf kq1, kq2, kq3, kqf.
    zIP1,
    /// This model separates the frequency-dependent load (primarily motors) from other load. ZIP2 equations for active and reactive power are used and the following attributes are required: kp1, kp2, kp3, kq4, kpf kq1, kq2, kq3, kq4, kqf.
    zIP2,
    /// The load is represented as a constant impedance. ConstantZ equations are used for active and reactive power and no attributes are required.
    constantZ,
}

impl StaticLoadModelKind {
    pub fn uri(&self) -> &'static str {
        match self {
            StaticLoadModelKind::exponential => "http://iec.ch/TC57/CIM100#StaticLoadModelKind.exponential",
            StaticLoadModelKind::zIP1 => "http://iec.ch/TC57/CIM100#StaticLoadModelKind.zIP1",
            StaticLoadModelKind::zIP2 => "http://iec.ch/TC57/CIM100#StaticLoadModelKind.zIP2",
            StaticLoadModelKind::constantZ => "http://iec.ch/TC57/CIM100#StaticLoadModelKind.constantZ",
        }
    }
}