harold.frequency_response

harold.frequency_response(G, w=None, samples=None, w_unit='Hz', output_unit='Hz', use_minreal=False)

Compute the frequency response of a State() or Transfer() representation.

Parameters:
  • G (State of Transfer) – The realization for which the frequency response is computed
  • w (array_like, optional) – If not None, then this array will be used as the frequency points. If it is None then the routine will examine the pole/zero structure and create a frequency grid automatically.
  • samples (int, optional) – Lower bound on the number of samples to be evaluated if w is None
  • w_unit (str, optional) – Hz or rad/s
  • output_unit (str, optional) – Hz or rad/s
  • use_minreal (bool, optional) – If set to True, G will be passed through a minimal realization check and its uncontrollable/unobservable modes, if any, will be removed.
Returns:

  • fr_arr (ndarray) – The frequency response of the system G with the shape (p, m, #freq) For SISO systems, the response is squeezed and a 1D array is returned.
  • w (ndarray) – Frequency grid that is used to evaluate the frequency response. The input/output units are taken into account.