ARMASpectrum (FPScript)

21.09.2021

Computes the Autoregressive-Moving-Average (ARMA) high-resolution frequency estimation spectrum.

Syntax

ARMASpectrum(Signal, [ SpectrumType = SPECTRUM_ARMA_DB ], [ Algorithm = ALGORITHM_ARMA_NLSVD ], [ OrderP ], [ OrderQ ], [ SignalSpace ], [ FrequencyCount ], [ StartingFrequency = 0 ] [ , EndingFrequency = 0.5 ])

 

The syntax of the ARMASpectrum function consists of the following parts:

Part

Description

Signal

The data to be analyzed. The data must have a constant sampling rate and must not contain void values.

Permitted data structures are data series, data matrix, signal und signal series. All numeric data types are permitted.

Void values are not permitted in this argument.

For the X component additional restrictions do apply.The values must have a constant positive spacing. Void values are not permitted in this argument.

If the argument is a list, then the function is executed for each element of the list and the result is also a list.

SpectrumType

The autoregressive moving average spectral format to be computed.

The argument SpectrumType can have the following values:

Constant

Meaning

SPECTRUM_ARMA_DB

dB (decibels)

SPECTRUM_ARMA_TISA

Integral is TISA Power (Time Integral Squared Amplitude)

SPECTRUM_ARMA_MSA

Integral is MSA Power (Mean Squared Amplitude)

SPECTRUM_ARMA_SSA

Integral is SSA Power (Sum Squared Amplitude)

+ SPECTRUM_PEAKS O

If this constant is added to one of the spectrum types above, then only peaks in the spectrum are output.

O This constant requires the option Spectral Analysis to be licensed.

Permitted data structures are scalar value. All integral data types are permitted.

If the argument is a list, then the first element in the list is taken. If this is also a list, then the process is repeated.

If this argument is omitted, it will be set to the default value SPECTRUM_ARMA_DB.

Algorithm

The ARMA modeling algorithm to be used.

The argument Algorithm can have the following values:

Constant

Meaning

ALGORITHM_ARMA_NL

Non-linear optimization

ALGORITHM_ARMA_NLSF

Non-linear with spectral factorization

ALGORITHM_ARMA_NLSVD

Non-linear optimization with singular value decomposition (SVD)

ALGORITHM_ARMA_NLSVDSF

Non-linear with SVD and spectral factorization

If the argument is a list, then the first element in the list is taken. If this is also a list, then the process is repeated.

If this argument is omitted, it will be set to the default value ALGORITHM_ARMA_NLSVD.

OrderP

The autoregressive model order. The valid range is 1 to the smaller of 100 and the data length / 2 - 1. The default is the smaller of 30 and the data length / 2 - 1.

Permitted data structures are scalar value. All numeric data types are permitted.

If the argument is a list, then the first element in the list is taken. If this is also a list, then the process is repeated.

OrderQ

The moving average model order. The valid range is 0 to the smaller of 100 and the data length / 2 - 1. The default is the smaller of 10 and the data length / 2 - 1.

Permitted data structures are scalar value. All numeric data types are permitted.

If the argument is a list, then the first element in the list is taken. If this is also a list, then the process is repeated.

SignalSpace

The number of principal components in the SVD algorithm. The valid range is between 1 and the sum of the AR and MA model orders. The default is the smaller of 6 and the sum of the orders.

Permitted data structures are scalar value. All numeric data types are permitted.

If the argument is a list, then the first element in the list is taken. If this is also a list, then the process is repeated.

FrequencyCount

The number of frequencies to be computed in the spectrum. The valid range is between 257 and 65537 for a spectrum with a fixed length. The value 0 calculates an adaptive spectrum. The default is 8193 in case of a signal series or data matrix and adaptive otherwise.

Permitted data structures are scalar value. All numeric data types are permitted.

If the argument is a list, then the first element in the list is taken. If this is also a list, then the process is repeated.

StartingFrequency

The starting frequency at which to begin the spectrum. The normalized frequency range is between 0 and the Nyquist frequency of 0.5.

Permitted data structures are scalar value. All numeric data types are permitted.

The value must be greater or equal to 0 and less or equal to 0.5.

If the argument is a list, then the first element in the list is taken. If this is also a list, then the process is repeated.

If this argument is omitted, it will be set to the default value 0.

EndingFrequency

The ending frequency for the spectrum. The normalized frequency range is between 0 and the Nyquist frequency of 0.5.

Permitted data structures are scalar value. All numeric data types are permitted.

The value must be greater or equal to 0 and less or equal to 0.5.

If the argument is a list, then the first element in the list is taken. If this is also a list, then the process is repeated.

If this argument is omitted, it will be set to the default value 0.5.

Remarks

If the argument Signal is a data series or data matrix, then the X component of the result contains Nyquist-normalized frequencies.

Available in

Option Spectral Analysis

Examples

ARMASpectrum(Signal, SPECTRUM_ARMA_DB, ALGORITHM_ARMA_NLSVD, 40, 20, 6, 0, 0, 0)

Calculates the ARMA spectrum of the 'Signal' signal. An ARMA model is generally regarded as superior for fitting both signal and noise. The dB spectrum type, the non-linear SVD algorithm, the order of 40 and the MA order of 20 are selected. The signal subspace is set to 6 and the spacing is set to adaptive.

See Also

ARSpectrum Function

EigenSpectrum Function

Spectral Analysis Option

Spectral Estimators Analysis Object

ARMA Algorithms

Autoregressive Modeling

Spectral Estimators Tutorial

Share article or send as email:

You might be interested in these articles