integrator¶
- typhoon.test.signals.control.integrator(input, initial_value, limit_output=False, max_limit=None, min_limit=None)¶
Integrates provided input signal. It is implemented by using Backward Euler method.
- Parameters:
input (pandas.Series with timedelta index values) – Input signal to be integrated.
initial_value (int, float) – Initial value of the integrated output signal
limit_output (bool) – If set to True, limits the output signal. In this case, parameters max_limit and min_limit have to be specified.
max_limit (int, float) – If limit_output argument is specified, this value limits the output from the upper side. Otherwise, it doesn’t take effect.
min_limit (int, float) – If limit_output argument is specified, this value limits the output from the lower side. Otherwise, it doesn’t take effect.
- Returns:
result
- Return type:
pandas.Series
Examples
Simple test for the integrator with a constant input
>>> from typhoon.test.signals.control import integrator >>> from typhoon.test.signals import pandas_sine, assert_is_ramp >>> >>> def test_integrator(): >>> const, initial_value = 1, 0 >>> input_sig = pandas_sine(Ts=1e-4) >>> input_sig[:] = const >>> output_sig = integrator(input_sig, initial_value=initial_value) >>> assert_is_ramp(output_sig, slope=const, tol=1e-4, initial_value=initial_value)