geopulse.devices.base
Abstract base class for nonlinear device models.
A DeviceModel takes a GIC time series (from the solver) and computes
the device response: transformer magnetisation current, harmonic content,
hot-spot temperature proxy, or cathodic-protection shift.
Classes
Abstract base class for nonlinear device models. |
|
|
Container for a device response to GIC injection. |
- class geopulse.devices.base.DeviceModel[source]
Bases:
ABCAbstract base class for nonlinear device models.
Subclasses:
TransformerModel— saturation curve → half-cycle → THD.RectifierModel— bridge rectifier under DC bias.CathodicProtectionModel— PSP shift under telluric E-field.
- class geopulse.devices.base.DeviceResponse(time_s, response_current_A, thd, harmonics, top_oil_C=None, hotspot_C=None, metadata=<factory>)[source]
Bases:
objectContainer for a device response to GIC injection.
- Parameters:
- time_s
Time array in seconds. Shape
(n_times,).- Type:
- response_current_A
Device response current (e.g. magnetisation current). Shape
(n_times,). Units: Amperes.- Type:
- harmonics
Harmonic amplitudes. Shape
(n_harmonics,). Index 0 = fundamental.- Type:
- top_oil_C
Top-oil temperature time series in °C. Shape
(n_times,). Set byTransformerModel;Nonefor devices without a thermal model.- Type:
numpy.ndarray or None
- hotspot_C
Winding hot-spot temperature time series in °C. Shape
(n_times,). Set byTransformerModel.- Type:
numpy.ndarray or None