control.relay_hysteresis_nonlinearity

class control.relay_hysteresis_nonlinearity(b, c)

Bases: control.descfcn.DescribingFunctionNonlinearity

Relay w/ hysteresis nonlinearity for describing function analysis.

This class creates a nonlinear function representing a a relay with symmetric upper and lower bounds of magnitude b and a hysteretic region of width c (using the notation from [FBS2e](https://fbsbook.org), Example 10.12, including the describing function for the nonlinearity. The following call creates a nonlinear function suitable for describing function analysis:

F = relay_hysteresis_nonlinearity(b, c)

The output of this function is b if x > c and -b if x < -c. For -c <= x <= c, the value depends on the branch of the hysteresis loop (as illustrated in Figure 10.20 of FBS2e).

Methods

describing_function

Return the describing function for a nonlinearity.

__call__(x)

Evaluate the nonlinearity at a (scalar) input value.

describing_function(A)

Return the describing function for a nonlinearity.

This method is used to allow analytical representations of the describing function for a nonlinearity. It turns the (complex) value of the describing function for sinusoidal input of amplitude A.