Simulation of Discrete time transfer function

16 views (last 30 days)
Given a transfer function like 1 / (1-z^(-1)), and a ExperimentInput.mat file where the values are in step size 1ms. How do I run a simulation similar to lsim for a s-domain transfer function?

Accepted Answer

Raj
Raj on 12 Apr 2019
Correct me if I am wrong but i think "lsim" works for both continuous (S Domain) and discrete (Z Domain) transfer functions.
"The command lsim(sys,U,T,X0) plots the time response of a linear time-invariant system. This system can be continuous or discrete. For a continuous-time system, the differential equation is integrated from time T(0) to T(length(T)), starting at the initial condition X0 and using the input U. The input vector must have the same number of entries as the time vector. If the initial conditions are all zero, X0 may be omitted.
For a discrete-time system, U should be sampled at the same rate as the system (T is then redundant and may be omitted or set to the empty matrix, i.e. [ ])."
  3 Comments
Raj
Raj on 12 Apr 2019
Edited: Raj on 12 Apr 2019
Just use
lsim(sys,SpecialExperimentOutput_num,TimeVector_num)
your input SpecialExperimentOutput_num should be 1x4600 i.e. take a transpose of your original data because TimeVector_num = (0:0.001:4.599); will give you a 1x4600 matrix. OR you can take transpose of your time matrix and keep input as it is.
works perfectly!

Sign in to comment.

More Answers (0)

Categories

Find more on Mathematics in Help Center and File Exchange

Products


Release

R2018b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!