1pub const VERSION: &str = env!("CARGO_PKG_VERSION");
49
50mod collect;
51pub mod contingency;
52pub mod dc;
53pub mod diagnostics;
54pub mod dynamic;
55pub mod error;
56pub mod format;
57pub mod gen_cost;
58pub mod geo;
59pub mod hvdc;
60pub mod indexed;
61pub mod islands;
62pub mod lcc;
63pub mod merge;
64pub mod network;
65mod normalize;
66mod operations;
67#[doc(hidden)]
68pub mod version;
69
70#[doc(hidden)]
75pub mod __internal {
76 use powerio_core::ComponentId;
77
78 #[doc(hidden)]
79 pub use crate::format::goc3::{Goc3Document, Goc3Record, parse_goc3_instance_network};
80
81 use crate::{BalancedNetwork, Generator, Load, OmittedFieldName};
82
83 #[doc(hidden)]
84 pub fn edit_load_assignment<R>(
85 network: &mut BalancedNetwork,
86 index: usize,
87 component: &ComponentId,
88 field: OmittedFieldName,
89 edit: impl FnOnce(&mut Load) -> R,
90 ) -> R {
91 network.edit_load_assignment(index, component, field, edit)
92 }
93
94 #[doc(hidden)]
95 pub fn edit_generator_assignment<R>(
96 network: &mut BalancedNetwork,
97 index: usize,
98 component: &ComponentId,
99 field: OmittedFieldName,
100 edit: impl FnOnce(&mut Generator) -> R,
101 ) -> R {
102 network.edit_generator_assignment(index, component, field, edit)
103 }
104}
105
106pub use contingency::{
107 AutomaticOrder, AutomaticSpec, AutomaticTarget, BranchRef, Change, ChangeOp, ChangeUnit,
108 ContingencyAction, ContingencyCase, ContingencyParsed, ContingencyResolution, ContingencySet,
109 DefaultDispatch, DispatchBlock, DispatchEntry, DispatchLevel, DispatchedAction, Expanded,
110 InterfaceMember, JoinName, MonitorScope, MonitorStatement, MonitoredParsed,
111 MonitoredResolution, MonitoredSet, PsseEquipmentIndex, ResolvedCase, ResolvedComponent,
112 ResolvedInterface, ResolvedVoltageScope, RetainedStatement, ScaledQuantity, SelectorGroup,
113 SharedPsseEquipmentIndex, SkipRule, Subsystem, SubsystemDispatchRule, SubsystemParsed,
114 SubsystemSelector, SubsystemSet, UnresolvedAction, UnresolvedMonitor, UnresolvedMonitorReason,
115 UnresolvedReason,
116};
117pub use dc::BranchSusceptanceFormula;
118pub use diagnostics::{Diagnostic, DiagnosticCode, DiagnosticSeverity, EmitFamily};
119pub use error::{Error, ErrorCategory, Result};
120pub use format::routing::{
121 Detection, JSON_CLASSES, JsonClass, classify_json_bytes, classify_json_text,
122 parse_distribution_format, parse_transmission_format,
123};
124#[cfg(test)]
125pub(crate) use format::test_parse::{parse_file, parse_str};
126pub use format::{
127 EmitOptions, PwdDisplay, PwdSubstation, SOURCE_FORMAT_NAMES, TargetFormat, emit,
128 emit_with_options, parse, parse_format_id, parse_target_format,
129};
130
131#[doc(hidden)]
132pub use format::{
133 __emit_pypsa_csv, __emit_pypsa_csv_with_options, __parse_opfdata_json,
134 __parse_pypsa_csv_time_series,
135};
136pub use gen_cost::{GenCostPatch, GenCostPolicyReport, MissingGenCostPolicy, parse_gen_cost_csv};
137pub use geo::{
138 Canvas, CoordinateSpace, CoordsKind, ElementKey, GeoApplyReport, GeoFeature, GeoGeometry,
139 GeoLayer, GeoMeta, GeoParsed, GeoTarget, Location, apply_substation_points,
140 to_geo_layer_from_aux_substations, to_geo_layer_from_pwd, to_lonlat_from_pwd_mercator,
141};
142pub use hvdc::{HvdcInjections, HvdcTerminalInjection, HvdcTerminalPowers, HvdcTreatment};
143pub use indexed::{ConnectivityReport, IndexCore, IndexedNetwork};
144pub use islands::{Island, IslandPartition, IslandReferencePolicy, IslandReferenceReport};
145pub use lcc::{LccConverterState, LccOperatingPoint};
146pub use merge::{
147 BusGroup, BusMerge, BusMergeRule, MergeSurvivor, MergedCharging, MergedFlows,
148 PSSE_DEFAULT_ZERO_IMPEDANCE_THRESHOLD, RemovalReason, RemovedBranch, RemovedFlow,
149 RemovedFlowMethod, RemovedFlows, RemovedSwitch, ZeroImpedanceRule,
150};
151pub use network::{
152 AcDcConverterControlMode, ActivePowerControl, Area, BalancedNetwork, BoundaryLine,
153 BoundaryLineGeneration, Branch, BranchCharging, BranchCurrentRatings, BranchRatingSet,
154 BranchSolution, Bus, BusBreakerBus, BusId, BusType, BusbarSection, CalculatedBus, CaseMetadata,
155 ComponentAlias, ComponentMetadata, ConnectivityNode, CurveStyle, DEFAULT_BASE_FREQUENCY,
156 DcBusbar, DcConverterOperatingMode, DcConverterUnit, DcGround, DcLine, DcNode, DcPolarity,
157 DcSeriesDevice, DcSwitch, DcSwitchKind, DcTerminal, DcTopologicalNode, DetailedConnectivity,
158 DroopCurve, DroopCurveSegment, ExternalIdentifier, Extras, GenCaps, GenCost, Generator,
159 GeneratorEnergySource, Hvdc, HvdcConverter, HvdcConverterKind, HvdcConvertersMode, Impedance,
160 ImpedanceCorrection, ImpedanceCorrectionPoint, ImpedanceCorrectionVariable, InternalConnection,
161 Junction, LineCommutatedConverter, LineCommutatedConverterOperatingMode,
162 LineCommutatedConverterReactiveModel, Load, LoadVoltageModel, LoadingLimits,
163 MinMaxReactiveLimits, OmittedField, OmittedFieldName, OperationalLimitGroup,
164 ReactiveCapabilityCurve, ReactiveCapabilityCurvePoint, ReactiveLimits, Shunt, ShuntBlock,
165 SolverParams, SourceFormat, StaticVarCompensator, StaticVarCompensatorRegulationMode, Storage,
166 Subnetwork, Substation, Switch, SwitchKind, SwitchedShuntControl, SwitchedShuntMode,
167 TapChanger, TapChangerKind, TapChangerRegulationMode, TapChangerStep, TemporaryLimit, Terminal,
168 TerminalReference, TieLine, TopologyEndpoint, TopologyKind, TopologySwitch, Transformer3W,
169 TransformerControl, TransformerControlMode, VoltageLevel, VoltageSourceConverter, Winding,
170 calc_series_admittance_of, repair_values,
171};
172pub use normalize::{
173 AngleDifferenceBounds, ClosedSwitchPolicy, NormalizeOptions, NormalizeReport,
174 NormalizeSettings, NormalizeSourceRows, NormalizedNetwork, POWER_MODELS_ANGLE_BOUND_PAD,
175 correct_angle_difference_bounds, stated_angle_difference_bounds,
176};
177pub use operations::{BusSubset, Selector, ZeroImpedanceReduction};