powerio_matrix/matrix/
bdoubleprime.rs1use sprs::CsMat;
12
13use crate::Result;
14use crate::indexed::IndexedNetwork;
15
16use super::ybus::{YbusFlags, build_ybus_with_flags};
17use super::{BuildOptions, Scheme, negate_into};
18
19pub fn build_bdoubleprime(case: &IndexedNetwork, opts: &BuildOptions) -> Result<CsMat<f64>> {
20 let flags = YbusFlags {
21 zero_resistance: matches!(opts.scheme, Scheme::Bx),
22 zero_charging: false,
23 unity_taps: false,
24 zero_shifts: true,
25 skip_bus_shunts: false,
26 skip_zero_impedance: opts.skip_zero_impedance,
27 };
28 let parts = build_ybus_with_flags(case, flags)?;
31 Ok(negate_into(parts.b))
32}