pub const VERSION: &str = env!("CARGO_PKG_VERSION");
mod collect;
pub mod contingency;
pub mod dc;
pub mod diagnostics;
pub mod dynamic;
pub mod error;
pub mod format;
pub mod gen_cost;
pub mod geo;
pub mod hvdc;
pub mod indexed;
pub mod islands;
pub mod lcc;
pub mod merge;
pub mod network;
mod normalize;
mod operations;
#[doc(hidden)]
pub mod version;
#[doc(hidden)]
pub mod __internal {
use powerio_core::ComponentId;
#[doc(hidden)]
pub use crate::format::goc3::{Goc3Document, Goc3Record, parse_goc3_instance_network};
use crate::{BalancedNetwork, Generator, Load, OmittedFieldName};
#[doc(hidden)]
pub fn edit_load_assignment<R>(
network: &mut BalancedNetwork,
index: usize,
component: &ComponentId,
field: OmittedFieldName,
edit: impl FnOnce(&mut Load) -> R,
) -> R {
network.edit_load_assignment(index, component, field, edit)
}
#[doc(hidden)]
pub fn edit_generator_assignment<R>(
network: &mut BalancedNetwork,
index: usize,
component: &ComponentId,
field: OmittedFieldName,
edit: impl FnOnce(&mut Generator) -> R,
) -> R {
network.edit_generator_assignment(index, component, field, edit)
}
}
pub use contingency::{
AutomaticOrder, AutomaticSpec, AutomaticTarget, BranchRef, Change, ChangeOp, ChangeUnit,
ContingencyAction, ContingencyCase, ContingencyParsed, ContingencyResolution, ContingencySet,
DefaultDispatch, DispatchBlock, DispatchEntry, DispatchLevel, DispatchedAction, Expanded,
InterfaceMember, JoinName, MonitorScope, MonitorStatement, MonitoredParsed,
MonitoredResolution, MonitoredSet, PsseEquipmentIndex, ResolvedCase, ResolvedComponent,
ResolvedInterface, ResolvedVoltageScope, RetainedStatement, ScaledQuantity, SelectorGroup,
SharedPsseEquipmentIndex, SkipRule, Subsystem, SubsystemDispatchRule, SubsystemParsed,
SubsystemSelector, SubsystemSet, UnresolvedAction, UnresolvedMonitor, UnresolvedMonitorReason,
UnresolvedReason,
};
pub use dc::BranchSusceptanceFormula;
pub use diagnostics::{Diagnostic, DiagnosticCode, DiagnosticSeverity, EmitFamily};
pub use error::{Error, ErrorCategory, Result};
pub use format::routing::{
Detection, JSON_CLASSES, JsonClass, classify_json_bytes, classify_json_text,
parse_distribution_format, parse_transmission_format,
};
#[cfg(test)]
pub(crate) use format::test_parse::{parse_file, parse_str};
pub use format::{
EmitOptions, PwdDisplay, PwdSubstation, SOURCE_FORMAT_NAMES, TargetFormat, emit,
emit_with_options, parse, parse_format_id, parse_target_format,
};
#[doc(hidden)]
pub use format::{
__emit_pypsa_csv, __emit_pypsa_csv_with_options, __parse_opfdata_json,
__parse_pypsa_csv_time_series,
};
pub use gen_cost::{GenCostPatch, GenCostPolicyReport, MissingGenCostPolicy, parse_gen_cost_csv};
pub use geo::{
Canvas, CoordinateSpace, CoordsKind, ElementKey, GeoApplyReport, GeoFeature, GeoGeometry,
GeoLayer, GeoMeta, GeoParsed, GeoTarget, Location, apply_substation_points,
to_geo_layer_from_aux_substations, to_geo_layer_from_pwd, to_lonlat_from_pwd_mercator,
};
pub use hvdc::{HvdcInjections, HvdcTerminalInjection, HvdcTerminalPowers, HvdcTreatment};
pub use indexed::{ConnectivityReport, IndexCore, IndexedNetwork};
pub use islands::{Island, IslandPartition, IslandReferencePolicy, IslandReferenceReport};
pub use lcc::{LccConverterState, LccOperatingPoint};
pub use merge::{
BusGroup, BusMerge, BusMergeRule, MergeSurvivor, MergedCharging, MergedFlows,
PSSE_DEFAULT_ZERO_IMPEDANCE_THRESHOLD, RemovalReason, RemovedBranch, RemovedFlow,
RemovedFlowMethod, RemovedFlows, RemovedSwitch, ZeroImpedanceRule,
};
pub use network::{
AcDcConverterControlMode, ActivePowerControl, Area, BalancedNetwork, BoundaryLine,
BoundaryLineGeneration, Branch, BranchCharging, BranchCurrentRatings, BranchRatingSet,
BranchSolution, Bus, BusBreakerBus, BusId, BusType, BusbarSection, CalculatedBus, CaseMetadata,
ComponentAlias, ComponentMetadata, ConnectivityNode, CurveStyle, DEFAULT_BASE_FREQUENCY,
DcBusbar, DcConverterOperatingMode, DcConverterUnit, DcGround, DcLine, DcNode, DcPolarity,
DcSeriesDevice, DcSwitch, DcSwitchKind, DcTerminal, DcTopologicalNode, DetailedConnectivity,
DroopCurve, DroopCurveSegment, ExternalIdentifier, Extras, GenCaps, GenCost, Generator,
GeneratorEnergySource, Hvdc, HvdcConverter, HvdcConverterKind, HvdcConvertersMode, Impedance,
ImpedanceCorrection, ImpedanceCorrectionPoint, ImpedanceCorrectionVariable, InternalConnection,
Junction, LineCommutatedConverter, LineCommutatedConverterOperatingMode,
LineCommutatedConverterReactiveModel, Load, LoadVoltageModel, LoadingLimits,
MinMaxReactiveLimits, OmittedField, OmittedFieldName, OperationalLimitGroup,
ReactiveCapabilityCurve, ReactiveCapabilityCurvePoint, ReactiveLimits, Shunt, ShuntBlock,
SolverParams, SourceFormat, StaticVarCompensator, StaticVarCompensatorRegulationMode, Storage,
Subnetwork, Substation, Switch, SwitchKind, SwitchedShuntControl, SwitchedShuntMode,
TapChanger, TapChangerKind, TapChangerRegulationMode, TapChangerStep, TemporaryLimit, Terminal,
TerminalReference, TieLine, TopologyEndpoint, TopologyKind, TopologySwitch, Transformer3W,
TransformerControl, TransformerControlMode, VoltageLevel, VoltageSourceConverter, Winding,
calc_series_admittance_of, repair_values,
};
pub use normalize::{
AngleDifferenceBounds, ClosedSwitchPolicy, NormalizeOptions, NormalizeReport,
NormalizeSettings, NormalizeSourceRows, NormalizedNetwork, POWER_MODELS_ANGLE_BOUND_PAD,
correct_angle_difference_bounds, stated_angle_difference_bounds,
};
pub use operations::{BusSubset, Selector, ZeroImpedanceReduction};