This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.


Generate test input signals for lsim


[u,t] = gensig(type,tau)
[u,t] = gensig(type,tau,Tf,Ts)


[u,t] = gensig(type,tau) generates a scalar signal u of class type and with period tau (in seconds). The following types of signals are available.


Sine wave.


Square wave.


Periodic pulse.

gensig returns a vector t of time samples and the vector u of signal values at these samples. All generated signals have unit amplitude.

[u,t] = gensig(type,tau,Tf,Ts) also specifies the time duration Tf of the signal and the spacing Ts between the time samples t.

You can feed the outputs u and t directly to lsim and simulate the response of a single-input linear system to the specified signal. Since t is uniquely determined by Tf and Ts, you can also generate inputs for multi-input systems by repeated calls to gensig.


Generate a square wave with period 5 seconds, duration 30 seconds, and sampling every 0.1 second.

[u,t] = gensig('square',5,30,0.1)

Plot the resulting signal.

axis([0 30 -1 2])

See Also

Introduced before R2006a