# impulse

Impulse response plot of dynamic system; impulse response data

## Syntax

## Description

### Impulse Response Plots

`impulse(`

plots the response of a dynamic
system model to an impulse input. The model `sys`

)`sys`

can be continuous or
discrete.

For continuous-time

`sys`

, the impulse input is the Dirac impulse`δ(t)`

. For continuous-time`sys`

with direct feedthrough,`impulse`

ignores the infinite pulse at`t = 0`

.For discrete-time

`sys`

with sample time`Ts`

, the function computes the response to a unit-area pulse of length`Ts`

and height`1/Ts`

. This pulse approaches the continuous-time Dirac impulse`δ(t)`

as`Ts`

goes to zero.

`sys`

can be SISO or MIMO. For MIMO systems, the plot displays the
impulse responses for each I/O channel. `impulse`

automatically
determines the time steps and duration of the simulation based on the system
dynamics.

`impulse(`

specifies a color, line style, and marker for each system in the plot. You can use
`sys`

1,`LineSpec`

1,...,`sys`

N,`LineSpec`

N,___)`LineSpec`

with any of the previous input-argument combinations. When
you need additional plot customization options, use `impulseplot`

instead.

`impulse(___,`

specifies
additional options for computing the impulse response, such as the amplitude or input
offset. Use `config`

)`RespConfig`

to create the option set `config`

. You
can use `config`

with any of the previous input-argument and
output-argument combinations.

### Impulse Response Data

`[___] = impulse(___,`

specifies additional options for computing the impulse response, such as the amplitude or
input offset. Use `config`

)`RespConfig`

to create the option set `config`

. You
can use `config`

with any of the previous input-argument and
output-argument combinations.

## Examples

## Input Arguments

## Output Arguments

## Limitations

The impulse response of a continuous system with nonzero

*D*matrix is infinite at*t*=*0*.`impulse`

ignores this discontinuity and returns the lower continuity value*Cb*at*t*=*0*.The

`impulse`

command does not work on continuous-time models with internal delays. For such models, use`pade`

(Control System Toolbox) to approximate the time delay before computing the impulse response.The

`impulse`

command does not support simulation along an implicit parameter trajectory for continuous-time LPV models.

## Tips

When you need additional plot customization options, use

`impulseplot`

instead.To simulate system responses to arbitrary input signals, use

`lsim`

.

## Algorithms

Continuous-time LTI models are first converted to state-space form. The impulse response of a single-input state-space model

$$\begin{array}{l}\dot{x}=Ax+bu\\ y=Cx\end{array}$$

is equivalent to the following unforced response with initial state
*b*.

$$\begin{array}{cc}\dot{x}=Ax,& x(0)=b\\ y=Cx& \end{array}$$

To simulate this response, the system is discretized using zero-order hold on the inputs.
The sample time is chosen automatically based on the system dynamics, except when a time
vector `t = T0:dt:Tf`

is supplied. Hence, `dt`

is used as
sample time.

## Version History

**Introduced before R2006a**

## See Also

Linear System Analyzer (Control System Toolbox) | `step`

| `lsim`

| `impulseest`

| `pade`

(Control System Toolbox) | `impulseplot`