Skip to Main Content Skip to Search
Product Documentation

gensig - Generate test input signals for lsim

Syntax

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

Description

[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.

'sin'

Sine wave.

'square'

Square wave.

'pulse'

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.

Examples

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.

plot(t,u)
axis([0 30 -1 2])

See Also

lsim

  


Free Control Systems Interactive Kit

Learn more about resources for designing, testing, and implementing control systems.

Get free kit

Trials Available

Try the latest control systems products.

Get trial software
 © 1984-2012- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS