StatTimeSerAnalysis::Innovations Function

Overload List

#SignatureDescription
1void Innovations(TDenseMtxVec *kappa, TVec *Theta, double &Sigma2, const int NumEvals, TVec *ThetaVar = null, TVec *SumSqr = null);The innovations algorithm.
2void Innovations(TDenseMtxVec *kappa, const int q, TMtx *ThetaMtx, TVec *Variances, const int NumEvals);Uses the Innnovations algorithm to recursively calculate Theta[1,1]...Theta[n,n] coefficients (all coefficients).

Overload 1: void Innovations(TDenseMtxVec *kappa, TVec *Theta, double &Sigma2, const int NumEvals, TVec *ThetaVar = null, TVec *SumSqr = null);

The innovations algorithm.

#NameTypeDescription
1kappaTDenseMtxVec *Defines covariances for innovations algorithm.
2ThetaTVec *Returns Theta[n,1]...Theta[n,n] coefficients.
3Sigma2double &Returns variance.
4NumEvalsconst intDefines number of iterations of the innovation algorithm.
5ThetaVar = nullTVec *If not nil, returns theta[n,1]..Theta[n,n] variances.
6SumSqr = nullTVec *If not nil, returns sum of squares for each theta[n,i] element.
Remarks:

Uses the Innnovations algorithm to recursively calculate Theta[n,1]...Theta[n,n] coefficients.

See Also: StatTimeSerAnalysis::DurbinLevinson
Declared in Dew::Stats::Units::StatTimeSerAnalysis · Dew.Stats/Units.StatTimeSerAnalysis.h · Cross-compiler

Overload 2: void Innovations(TDenseMtxVec *kappa, const int q, TMtx *ThetaMtx, TVec *Variances, const int NumEvals);

Uses the Innnovations algorithm to recursively calculate Theta[1,1]...Theta[n,n] coefficients (all coefficients).

#NameTypeDescription
1kappaTDenseMtxVec *
2qconst int
3ThetaMtxTMtx *
4VariancesTVec *
5NumEvalsconst int
Remarks:

The recursion relations are defined by the following equations:

v0=κ(1,1)θn,nk=vk1(κ(n+1,k+1)j=0k1θk,kjθn,njvj),0k<nvn=κ(n+1,n+1)j=0n1θn,nj2vj.\begin{aligned} v_0 &= \kappa (1,1) \\ \theta_{n,n-k}&= v_k ^{-1} \left( \kappa (n+1,k+1) - \sum _{j=0} ^{k-1} \theta_{k,k-j}\theta_{n,n-j}v_j \right) \quad , \quad 0\leq k < n \\ v_n &= \kappa(n+1,n+1) - \sum _{j=0} ^{n-1} \theta_{n,n-j} ^2 v_j \quad . \end{aligned}

where kappa(i,j) are covariances. Use this overloaded variant only when you need all theta[1,1]..theta[n,n] values, otherwise use vector version.

Declared in Dew::Stats::Units::StatTimeSerAnalysis · Dew.Stats/Units.StatTimeSerAnalysis.h · Cross-compiler