Conversions to LTI representations

  • psaverage Computation of the averaged LTI system of a continuous-time periodic system.
  • psteval Computation of the time evaluated LTI system of a continuous-time periodic system.
  • ps2fls Computation of a complex frequency-lifted LTI representation of a continuous-time periodic system.
  • ps2frls Computation of a real frequency-lifted LTI representation of a continuous-time periodic system.
  • ps2ls Computation of a time-lifted LTI representation of a discrete-time periodic system.
  • ps2spls Computation of a sparse time-lifted LTI representation of a discrete-time periodic system.
PeriodicSystems.psaverageFunction
psaverage(psysc) -> sys::DescriptorStateSpace

Compute for the continuous-time periodic system psysc = (A(t),B(t),C(t),D(t)) the corresponding time averaged LTI system sys = (Am,Bm,Cm,Dm) over one period.

source
PeriodicSystems.pstevalFunction
psteval(psys,tval) -> sys::DescriptorStateSpace

Compute for the periodic system psys = (A(t),B(t),C(t),D(t)) and a time value tval, the LTI system sys = (A(tval),B(tval),C(tval),D(tval)). If A(tval) is not square, then A(tval) is padded with zeros to form a square matrix and appropriate numbers of zero rows and zero columns are added to B(tval) and C(tval), respectively.

source
PeriodicSystems.ps2flsFunction
 ps2fls(psysc::PeriodicStateSpace, N; P) -> sys::DescriptorStateSpace

Build the frequency-lifted representation of a continuous-time periodic system.

For a continuos-time periodic system psysc = (A(t),B(t),C(t),D(t)), the (complex) LTI state-space representation sys = (At-Nt,Bt,Ct,Dt) is built, where At, Bt, Ct and Dt are truncated block Toeplitz matrices and Nt is a block diagonal matrix (see [1] or [2]). N is the number of selected harmonic components in the Fourier series of system matrices and the keyword parameter P is the number of full periods to be considered (default: P = 1).

References

[1] N. M. Wereley. Analysis and control of linear periodically time varying systems. Ph.D. thesis, Department of Aeronautics and Astronautics, MIT, 1990.

[2] S. Bittanti and P. Colaneri. Periodic Systems : Filtering and Control. Springer-Verlag London, 2009.

source
PeriodicSystems.ps2frlsFunction
 ps2frls(psysc::PeriodicStateSpace, N) -> sys::DescriptorStateSpace

Build the real frequency-lifted representation of a continuous-time periodic system.

For a continuos-time periodic system psysc = (A(t),B(t),C(t),D(t)), the real LTI state-space representation sys = (At-Nt,Bt,Ct,Dt) is built, where At, Bt, Ct and Dt are truncated block Toeplitz matrices and Nt is a block diagonal matrix. N is the number of selected harmonic components in the Fourier series of system matrices.

Note: This is an experimental implementation based on the operator representation of periodic matrices in the ApproxFun.jl package.

source
PeriodicSystems.ps2lsFunction
 ps2ls(psys::PeriodicStateSpace[, kstart]; ss = false, cyclic = false) -> sys::DescriptorStateSpace

Build the discrete-time lifted LTI system equivalent to a discrete-time periodic system.

For a discrete-time periodic system psys = (A(t),B(t),C(t),D(t)) with period T and sample time Ts, the equivalent stacked (see [1]) LTI descriptor state-space representation sys = (A-λE,B,C,D) is built, with the input, state and output vectors defined over time intervals of length T (instead Ts). The optional argument kstart specifies a desired time to start the sequence of periodic matrices (default: kstart = 1).

If ss = true (default: ss = false), then all non-dynamic modes are elliminated and a standard state-space realization (with E = I) is determined, which corresponds to the lifting techniques of [2], where only the input and output vectors are defined over time intervals of length T. The determination of the standard lifted representation involves forming matrix products (e.g., by explicitly forming the monodromy matrix) and therefore is potentially less suited for numerical computations.

If cyclic = true, the cyclic reformulation of [3] is used to build a lifted standard system with the input, state and output vectors defined over time intervals of length T.

References

[1] O. M. Grasselli and S. Longhi. Finite zero structure of linear periodic discrete-time systems. Int. J. Systems Sci., 22:1785–1806, 1991.

[2] R. A. Meyer and C. S. Burrus. A unified analysis of multirate and periodically time-varying digital filters”, IEEE Transactions on Circuits and Systems, 22:162–167, 1975.

[3] D. S. Flamm. A new shift-invariant representation for periodic systems, Systems and Control Letters, 17:9–14, 1991.

source
PeriodicSystems.ps2splsFunction
 ps2spls(psys::PeriodicStateSpace[, kstart]; cyclic = false) -> sys::DescriptorStateSpace

Build the discrete-time lifted LTI system equivalent to a discrete-time periodic system.

For a discrete-time periodic system psys = (A(t),B(t),C(t),D(t)) with period T and sample time Ts, the equivalent stacked (see [1]) LTI descriptor state-space representation sys = (As-λEs,Bs,Cs,Ds) is built, with the input, state and output vectors defined over time intervals of length T (instead Ts). The optional argument kstart specifies a desired time to start the sequence of periodic matrices (default: kstart = 1). The matrices As, Es, Bs, Cs and Ds are sparce matrices as defined within the SparseArrays.jl package.

If cyclic = true, the cyclic reformulation of [2] is used to build a lifted standard system with the input, state and output vectors defined over time intervals of length T.

References

[1] O. M. Grasselli and S. Longhi. Finite zero structure of linear periodic discrete-time systems. Int. J. Systems Sci., 22:1785–1806, 1991.

[2] D. S. Flamm. A new shift-invariant representation for periodic systems, Systems and Control Letters, 17:9–14, 1991.

source