Learn R Programming

freqdom (version 2.0.5)

freqdom: Create an object corresponding to a frequency domain functional

Description

Creates an object of class freqdom. This object corresponds to a functional with domain \([-\pi,\pi]\) and some complex vector space as codomain.

Usage

freqdom(F, freq)

Value

Returns an object of class freqdom. An object of class freqdom is a list containing the following components:

  • operators \(\quad\) the array F as given in the argument.

  • freq \(\quad\) the vector freq as given in the argument.

Arguments

F

a vector, a matrix or an array. For vectors \(F[k], 1\leq k\leq K\) are complex numbers. For matrices \(F[k,]\) are complex vectors. For arrays the elements \(F[,,k]\), are complex valued \((d_1\times d_2)\) matrices (all of same dimension).

freq

a vector of dimension \(K\) containing frequencies in \([-\pi,\pi]\).

Details

This class is used to describe a frequency domain functional (like a spectral density matrix, a discrete Fourier transform, an impulse response function, etc.) on selected frequencies. Formally we consider a collection \([F_1,\ldots,F_K]\) of complex-valued matrices \(F_k\), all of which have the same dimension \(d_1\times d_2\). Moreover, we consider frequencies \(\{\omega_1,\ldots, \omega_K\}\subset[-\pi,\pi]\). The object this function creates corresponds to the mapping \(f: \mathrm{freq}\to \mathbf{C}^{d_1\times d_2}\), where \(\omega_k\mapsto F_k\).

Consider, for example, the discrete Fourier transform of a vector time series \(X_1,\ldots, X_T\):. It is defined as $$ D_T(\omega)=\frac{1}{\sqrt{T}}\sum_{t=1}^T X_t e^{-it\omega},\quad \omega\in[-\pi,\pi]. $$ We may choose \(\omega_k=2\pi k/K-\pi\) and \(F_k=D_T(\omega_k)\). Then, the object freqdom creates, is corresponding to the function which associates \(\omega_k\) and \(D_T(\omega_k)\).

See Also

fourier.transform

Examples

Run this code
i = complex(imaginary=1)
OP = array(0, c(2, 2, 3))
OP[,,1] = diag(2) * exp(i)/2
OP[,,2] = diag(2)
OP[,,3] = diag(2) * exp(-i)/2
freq = c(-pi/3, 0, pi/3)
A = freqdom(OP, freq)

Run the code above in your browser using DataLab