dysys.statespacesymbolic

Module Contents

Classes

StateSpaceSymbolic

Represents a continuous LTI state-space model in symbolic form

Functions

sss(A, B, C, D[, E, F])

Create a StateSpaceSymbolic object

class dysys.statespacesymbolic.StateSpaceSymbolic(A, B, C, D, E=None, F=None)

Represents a continuous LTI state-space model in symbolic form

eig()

Returns L, M: the eigenvalue and eigenvector matrices of A

diag_transformation(reals_only=False, sort=True, normalize=False)

Return (P, D), where D is diagonal and D = P^-1 * self.A * P

This returns self.A.diagonalize() from SymPy.

Parameters:
  • reals_only – bool. Whether to throw an error if complex numbers are need to diagonalize. (Default: False)

  • sort – bool. Sort the eigenvalues along the diagonal. (Default: True)

  • normalize – bool. If True, normalize the columns of P. (Default: False)

is_diagonalizable(reals_only=False, **kwargs)

Returns True if self.A is diagonalizable.

This returns self.A.is_diagonalizable() from SymPy.

Parameters:

reals_only (-) – bool, optional If True, it tests whether the matrix can be diagonalized to contain only real numbers on the diagonal. If False, it tests whether the matrix can be diagonalized at all, even with numbers that may not be real.

state_transition_matrix(t)

Returns the state transition matrix

state_free_response(t, x0)

Returns the free response of the state vector

output_free_response(t, x0)

Returns the free response of the output vector

state_forced_response(t, u)

Returns the forced response of the state vector

output_forced_response(t, u)

Returns the forced response of the output vector

state_response(t, x0=None, u=None)

Returns the state response for initial condition x0 and input u

output_response(t, x0=None, u=None)

Returns the output response for initial condition x0 and input u

to_numpy(params={})

Returns A, B, C, D as NumPy arrays

Parameters:

params (dict) –

to_control(params={})

Returns an equivalent Control Systems package control.StateSpace object

Parameters:

params (dict) –

dysys.statespacesymbolic.sss(A, B, C, D, E=None, F=None)

Create a StateSpaceSymbolic object