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.
getFrequencyGrid() Accessor to the frequency grid.
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.
setFrequencyGrid(point) Accessor to the frequency grid.
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.

getFrequencyGrid()

Accessor to the frequency grid.

Returns:

freqGrid : RegularGrid

Grid on which the spectral model is estimated.

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.

setFrequencyGrid(point)

Accessor to the frequency grid.

Parameters:

freqGrid : RegularGrid

Grid on which the spectral model is estimated.

setName(name)

Accessor to the object’s name.

Parameters:

name : str

The name of the object.