nag_tsa_transf_prelim_fit (g13bdc) (PDF version)
g13 Chapter Contents
g13 Chapter Introduction
NAG C Library Manual

NAG Library Function Document

nag_tsa_transf_prelim_fit (g13bdc)

+ Contents

    1  Purpose
    7  Accuracy

1  Purpose

nag_tsa_transf_prelim_fit (g13bdc) calculates preliminary estimates of the parameters of a transfer function model.

2  Specification

#include <nag.h>
#include <nagg13.h>
void  nag_tsa_transf_prelim_fit (double r0, const double r[], Integer nl, Nag_TransfOrder *transfv, double s, double wds[], Integer isf[], NagError *fail)

3  Description

nag_tsa_transf_prelim_fit (g13bdc) calculates estimates of parameters δ1,δ2,,δp, ω0,ω1,,ωq in the transfer function model
yt=δ1yt-1+δ2yt-2++δpyt-p+ω0xt-b-ω1xt-b-1--ωqxt-b-q
given cross-correlations between the series xt and lagged values of yt:
rxyl,  l=0,1,,L
and the ratio of standard deviations sy/sx, as supplied by nag_tsa_cross_corr (g13bcc).
It is assumed that the series xt used to calculate the cross-correlations is a sample from a time series with true autocorrelations of zero. Otherwise the cross-correlations between the series bt and at, as defined in the description of nag_tsa_arma_filter (g13bac), should be used in place of those between yt and xt.
The estimates are obtained by solving for δ1,δ2,,δp the equations
rxyb+q+j=δ1rxyb+q+j-1++δprxyb+q+j-p,  j=1,2,,p
then calculating
ωi = ± sy / sx rxy b+i - δ1 rxy b+i- 1 - - δp rxy b+i-p ,   i= 0,1,,q
where the ‘+’ is used for ω0 and ‘-’ for ωi, i>0.
Any value of rxyl arising in these equations for l<b is taken as zero. The parameters δ1,δ2,,δp are checked as to whether they satisfy the stability criterion.

4  References

Box G E P and Jenkins G M (1976) Time Series Analysis: Forecasting and Control (Revised Edition) Holden–Day

5  Arguments

1:     r0doubleInput
On entry: the cross-correlation between the two series at lag 0, rxy0.
Constraint: -1.0r01.0.
2:     r[nl]const doubleInput
On entry: the cross-correlations between the two series at lags 1 to L, rxyl, for l=1,2,,L.
Constraint: -1.0r[i]1.0, for i=0,1,,nl-1.
3:     nlIntegerInput
On entry: L, the number of lagged cross-correlations in the array r.
Constraint: nlmax transfv.nag_b+transfv.nag_q+transfv.nag_p,1.
4:     transfvNag_TransfOrder *Input
On entry: the orders of the transfer function model where the triplet (transfv. nag_b, transfv. nag_q, transfv. nag_p) corresponds to the triplet b,q,p as described in Section 2.3.1 in the g13 Chapter Introduction.
Constraints:
  • transfv.nag_b0 ;
  • transfv.nag_q0 ;
  • transfv.nag_p0 .
5:     sdoubleInput
On entry: the ratio of the standard deviation of the y series to that of the x series, sy/sx.
Constraint: s>0.0.
6:     wds[dim]doubleOutput
Note: the dimension, dim, of the array wds must be at least transfv.nag_q+transfv.nag_p+1.
On exit: the preliminary estimates of the parameters of the transfer function model in the order of q+1 MA-like parameters followed by the p AR-like parameters. If the estimation of either type of parameter fails then these arguments are set to 0.0.
7:     isf[2]IntegerOutput
On exit: indicators of the success of the estimation of MA-like and AR-like parameters respectively. A value 0 indicates that there are no parameters of that type to be estimated. A value of 1 or -1 indicates that there are parameters of that type in the model and the estimation of that type has been successful or unsuccessful respectively. Note that there is always at least one MA-like parameter in the model.
8:     failNagError *Input/Output
The NAG error argument (see Section 3.6 in the Essential Introduction).

6  Error Indicators and Warnings

NE_ALLOC_FAIL
Dynamic memory allocation failed.
NE_BAD_PARAM
On entry, argument value had an illegal value.
NE_CONSTRAINT
On entry, transfv=value.
Constraint: transfv.nag_b0 .
On entry, transfv=value.
Constraint: transfv.nag_p0 .
On entry, transfv=value.
Constraint: transfv.nag_q0 .
NE_INT_4
On entry, nl=value, transfv.nag_b=value, transfv.nag_q=value and transfv.nag_p=value.
Constraint: nlmaxtransfv.nag_b+transfv.nag_q+transfv.nag_p,1.
NE_INTERNAL_ERROR
An internal error has occurred in this function. Check the function call and any array sizes. If the call is correct then please contact NAG for assistance.
NE_REAL
On entry, r0 lies outside -1.0,1.0: r0=value.
On entry, s=value.
Constraint: s>0.0.
NE_REAL_ARRAY_ELEM_CONS
On entry, r[i-1] lies outside -1.0,1.0: i=value and r[i-1]=value.

7  Accuracy

Equations used in the computations may become unstable, in which case results are reset to zero with array isf values set accordingly.

8  Further Comments

The time taken by nag_tsa_transf_prelim_fit (g13bdc) is roughly proportional to transfv.nag_q+transfv.nag_p+13.

9  Example

This example reads the cross-correlations between two series at lags 0 to 6. It then reads a 3,2,1 transfer function model and calculates and prints the preliminary estimates of the parameters of the model.

9.1  Program Text

Program Text (g13bdce.c)

9.2  Program Data

Program Data (g13bdce.d)

9.3  Program Results

Program Results (g13bdce.r)


nag_tsa_transf_prelim_fit (g13bdc) (PDF version)
g13 Chapter Contents
g13 Chapter Introduction
NAG C Library Manual

© The Numerical Algorithms Group Ltd, Oxford, UK. 2012