gwexpy.interop.control_
gwexpy.interop.control
Interoperability with the python-control library for control systems analysis.
Provides conversion between FrequencySeries and control.FRD (Frequency Response Data).
Functions
|
Create FrequencySeries from control.FRD. |
|
Create TimeSeries or TimeSeriesDict from control.TimeResponseData. |
|
Convert FrequencySeries to control.FRD. |
- gwexpy.interop.control_.to_control_frd(fs: FrequencySeries, frequency_unit: Literal['rad/s', 'Hz'] = 'rad/s') control.FRD[source]
Convert FrequencySeries to control.FRD.
- Parameters:
fs (FrequencySeries) – Input frequency response data. Frequencies are assumed to be in Hz.
frequency_unit (str, optional) – Unit for the frequency axis in the output FRD object. Either
'rad/s'or'Hz'. Default is'rad/s'(standard forcontrol.FRD).
- Returns:
Frequency response data object compatible with python-control.
- Return type:
control.FRD
Examples
>>> from gwexpy.frequencyseries import FrequencySeries >>> from gwexpy.interop.control_ import to_control_frd >>> fs = FrequencySeries([1+0j, 0.5+0.5j], f0=1, df=1) >>> frd = to_control_frd(fs)
- gwexpy.interop.control_.from_control_frd(cls: Type[T_fs], frd: control.FRD, frequency_unit: Literal['Hz', 'rad/s'] = 'Hz') T_fs | FrequencySeriesMatrix[source]
Create FrequencySeries from control.FRD.
- Parameters:
cls (type) – The FrequencySeries class to instantiate.
frd (control.FRD) – Frequency response data from python-control.
frequency_unit (str, optional) – Unit of the input FRD’s omega attribute. Either
'Hz'or'rad/s'. Default is'Hz'(output will be in Hz).
- Returns:
The converted frequency response. Returns FrequencySeriesMatrix for MIMO systems.
- Return type:
FrequencySeries or FrequencySeriesMatrix
Examples
>>> from gwexpy.frequencyseries import FrequencySeries >>> from gwexpy.interop.control_ import from_control_frd >>> # frd = control.frd(data, omega) >>> # fs = from_control_frd(FrequencySeries, frd)
- gwexpy.interop.control_.from_control_response(cls: Type[TimeSeries | TimeSeriesDict], response: control.TimeResponseData, **kwargs: Any) TimeSeries | TimeSeriesDict[source]
Create TimeSeries or TimeSeriesDict from control.TimeResponseData.
- Parameters:
cls (type) – The TimeSeries (or TimeSeriesDict) class.
response (control.TimeResponseData) – The simulation result from python-control (e.g., from forced_response).
**kwargs (dict) – Additional arguments passed to the TimeSeries constructor (e.g., unit).
- Returns:
The converted time-domain data.
- Return type:
TimeSeries or TimeSeriesDict