SpectralModelFactory

(Source code, png, hires.png, pdf)

../../_images/SpectralModelFactory.png
class SpectralModelFactory(*args)

Base class for spectral model factory.

Parameters:

mySpectralModelFactoryImplementation : SpectralModelFactoryImplementation

One spectral factory algorithm.

By default, the Welch factory algorithm WelchFactory.

Notes

Let X: \Omega \times \cD \rightarrow \Rset^d be a multivariate second order stationary process, with zero mean, where \cD \in \Rset^n. We only treat here the case where the domain is of dimension 1: \cD \in \Rset (n=1).

If we note C(\vect{s}, \vect{t})=\Expect{(X_{\vect{s}}-m(\vect{s}))\Tr{(X_{\vect{t}}-m(\vect{t}))}} its covariance function, then for all (i,j), C^{stat}_{i,j} : \Rset^n \rightarrow \Rset^n is \cL^1(\Rset^n) (ie \int_{\Rset^n} |C^{stat}_{i,j}(\vect{\tau})|\di{\vect{\tau}}\, < +\infty), with C^{stat}(\vect{\tau}) = C(\vect{s}, \vect{s}+\vect{\tau}) as this quantity does not depend on \vect{s}.

The bilateral spectral density function S : \Rset^n \rightarrow \mathcal{H}^+(d) exists and is defined as the Fourier transform of the covariance function C^{stat} :

\forall \vect{f} \in \Rset^n, \,S(\vect{f}) = \int_{\Rset^n}\exp\left\{-2i\pi <\vect{f},\vect{\tau}> \right\} C^{stat}(\vect{\tau})\di{\vect{\tau}}

where \mathcal{H}^+(d) \in \mathcal{M}_d(\Cset) is the set of d-dimensional positive definite hermitian matrices.

Depending on the available data, we proceed differently :

-if the data correspond to several independent realizations of the process, the estimation is done using the empirical estimator;

  • if the data correspond to one realization of the process, we suppose the process is ergodic to split the realization into several ones.

Methods

build(*args) Estimate the spectral model from data.
getClassName() Accessor to the object’s name.
getFFTAlgorithm() Accessor to the FFT algorithm used for the Fourier transform.
getId() Accessor to the object’s id.
getImplementation(*args) Accessor to the underlying implementation.
getName() Accessor to the object’s name.
setFFTAlgorithm(fft) Accessor to the FFT algorithm used for the Fourier transform.
setName(name) Accessor to the object’s name.
__init__(*args)
build(*args)

Estimate the spectral model from data.

Available constructors:

build(myTimeSeries)

build(myProcessSample)

Parameters:

myTimeSeries : TimeSeries

The time series from which the spectral model is estimated.

myProcessSample : ProcessSample

The sample of time series from which the spectral model is estimated.

Returns:

mySpectralModel : SpectralModel

The estimated spectral model.

getClassName()

Accessor to the object’s name.

Returns:

class_name : str

The object class name (object.__class__.__name__).

getFFTAlgorithm()

Accessor to the FFT algorithm used for the Fourier transform.

Returns:

fftAlgo : FFT

The FFT algorithm used for the Fourier transform.

getId()

Accessor to the object’s id.

Returns:

id : int

Internal unique identifier.

getImplementation(*args)

Accessor to the underlying implementation.

Returns:

impl : Implementation

The implementation class.

getName()

Accessor to the object’s name.

Returns:

name : str

The name of the object.

setFFTAlgorithm(fft)

Accessor to the FFT algorithm used for the Fourier transform.

Parameters:

fftAlgo : FFT

The FFT algorithm used for the Fourier transform.

setName(name)

Accessor to the object’s name.

Parameters:

name : str

The name of the object.