# etfe

Estimate empirical transfer functions and periodograms

## Description

estimates a transfer function of the form:`g`

= etfe(`data`

)

$$y(t)=G(q)u(t)+v(t)$$

`data`

contains time-domain or frequency-domain input/output
data or time series data. `data`

can be in the form of a `timetable`

, comma-separated pair of numeric matrices, or time-domain or
frequency-domain `iddata`

object.

If

`data`

contains time-domain input/output signals, then`g`

is the ratio of the output Fourier transform to the input Fourier transform for the data.For nonperiodic data, the transfer function is estimated at 128 equally-spaced frequencies

`[1:128]/128*pi/Ts`

.For periodic data that contains a whole number of periods (

`data.Period = integer`

), the response is computed at the frequencies`k*2*pi/period/Ts`

for`k = 0`

up to the Nyquist frequency (`pi/Ts`

), where`Ts`

is the data sample time. The software removes the frequency points where the input signal has insignificant energy from the result.If

`data`

contains frequency-domain input/output signals,`g`

is the ratio of output to input at all frequencies, where the input is nonzero.If

`data`

contains time-series data (no input channels),`g`

is the periodogram, that is, the normed absolute square of the Fourier transform, of the data. The corresponding spectral estimate is normalized, as described in Spectrum Normalization and differs from the`spectrum`

normalization in the Signal Processing Toolbox™ product.

If `data`

is a timetable, the software interprets the last
variable is the single output variable. To change this interpretation, use the
`InputName`

and `OutputName`

name-value
arguments.

applies a smoothing operation on the raw spectral estimates using a Hamming Window
that yields a frequency resolution of about `g`

= etfe(`data`

,`M`

)`pi/M`

. The effect of
`M`

is similar to the effect of `M`

in
`spa`

. `M`

is
ignored for periodic data. Use this syntax as an alternative to
`spa`

for narrowband spectra and systems that require large
values of `M`

.

specifies the frequency spacing `g`

= etfe(`data`

,`M`

,`N`

)`N`

for nonperiodic data.

For nonperiodic time-domain data,

`N`

specifies the frequency grid`[1:N]/N*pi/Ts`

rad/`TimeUnit`

. When not specified,`N`

is 128.For periodic time-domain data,

`N`

is ignored.For frequency-domain data, the

`N`

is`fmin:delta_f:fmax`

, where`[fmin fmax]`

is the range of frequencies in`data`

, and`delta_f`

is`(fmax-fmin)/(N-1)`

rad/`TimeUnit`

. When not specified, the response is computed at the frequencies contained in data where input is nonzero.

uses additional model options specified by one or more name-value arguments. `g`

= etfe(___,`Name,Value`

)

For example, specify the input and output signal variable names using ```
g =
etfe(data,'InputName',["u1","u3"],'OutputName',["y1","y4"])
```

.

You can use this syntax with any of the previous input-argument combinations.

## Examples

## Input Arguments

## Output Arguments

## Version History

**Introduced before R2006a**