control.sample_system
- control.sample_system(sysc, Ts, method='zoh', alpha=None, prewarp_frequency=None, name=None, copy_names=True, **kwargs)[source]
Convert a continuous-time system to discrete time by sampling.
- Parameters:
- sysc
StateSpaceorTransferFunction Continuous time system to be converted.
- Tsfloat > 0
Sampling period.
- methodstring
Method to use for conversion, e.g. ‘bilinear’, ‘zoh’ (default).
- alphafloat within [0, 1]
The generalized bilinear transformation weighting parameter, which should only be specified with method=”gbt”, and is ignored otherwise. See
scipy.signal.cont2discrete.- prewarp_frequencyfloat within [0, infinity)
The frequency [rad/s] at which to match with the input continuous- time system’s magnitude and phase (only valid for method=’bilinear’, ‘tustin’, or ‘gbt’ with alpha=0.5).
- sysc
- Returns:
- sysdLTI of the same class (
StateSpaceorTransferFunction) Discrete time system, with sampling rate
Ts.
- sysdLTI of the same class (
- Other Parameters:
- inputsint, list of str or None, optional
Description of the system inputs. If not specified, the original system inputs are used. See
InputOutputSystemfor more information.- outputsint, list of str or None, optional
Description of the system outputs. Same format as
inputs.- statesint, list of str, or None, optional
Description of the system states. Same format as
inputs. Only available if the system isStateSpace.- namestring, optional
Set the name of the sampled system. If not specified and if
copy_namesis False, a generic name ‘sys[id]’ is generated with a unique integer id. Ifcopy_namesis True, the new system name is determined by adding the prefix and suffix strings inconfig.defaults['iosys.sampled_system_name_prefix']andconfig.defaults['iosys.sampled_system_name_suffix'], with the default being to add the suffix ‘$sampled’.- copy_namesbool, optional
If True, copy the names of the input signals, output signals, and states to the sampled system.
Notes
See
StateSpace.sampleorTransferFunction.samplefor further details on implementation for state space and transfer function systems, including available methods.Examples
>>> Gc = ct.tf([1], [1, 2, 1]) >>> Gc.isdtime() False >>> Gd = ct.sample_system(Gc, 1, method='bilinear') >>> Gd.isdtime() True