NAG Library Routine Document
G13BDF
1 Purpose
G13BDF calculates preliminary estimates of the parameters of a transfer function model.
2 Specification
SUBROUTINE G13BDF ( |
R0, R, NL, NNA, S, NWDS, WA, IWA, WDS, ISF, IFAIL) |
INTEGER |
NL, NNA(3), NWDS, IWA, ISF(2), IFAIL |
REAL (KIND=nag_wp) |
R0, R(NL), S, WA(IWA), WDS(NWDS) |
|
3 Description
G13BDF calculates estimates of parameters
δ1,δ2,…,δp,
ω0,ω1,…,ωq in the transfer function model
given cross-correlations between the series
xt and lagged values of
yt:
and the ratio of standard deviations
sy/sx, as supplied by
G13BCF.
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
G13BAF, should be used in place of those between
yt and
xt.
The estimates are obtained by solving for
δ1,δ2,…,δp the equations
then calculating
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 Parameters
- 1: R0 – REAL (KIND=nag_wp)Input
On entry: the cross-correlation between the two series at lag 0, rxy0.
Constraint:
-1.0≤R0≤1.0.
- 2: R(NL) – REAL (KIND=nag_wp) arrayInput
On entry: the cross-correlations between the two series at lags 1 to L,
rxyl, for l=1,2,…,L.
Constraint:
-1.0≤Ri≤1.0, for i=1,2,…,NL.
- 3: NL – INTEGERInput
On entry:
L, the number of lagged cross-correlations in the array
R.
Constraint:
NL≥maxNNA1+NNA2+NNA3,1.
- 4: NNA(3) – INTEGER arrayInput
On entry: the transfer function model orders in the standard form b,q,p (i.e., delay time, number of moving-average MA-like followed by number of autoregressive AR-like parameters).
Constraint:
NNAi≥0, for i=1,2,3.
- 5: S – REAL (KIND=nag_wp)Input
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: NWDS – INTEGERInput
On entry: the exact number of parameters in the transfer function model.
Constraint:
NWDS=NNA2+NNA3+1.
- 7: WA(IWA) – REAL (KIND=nag_wp) arrayWorkspace
- 8: IWA – INTEGERInput
On entry: the dimension of the array
WA as declared in the (sub)program from which G13BDF is called.
Constraint:
IWA≥NNA3×NNA3+1.
- 9: WDS(NWDS) – REAL (KIND=nag_wp) arrayOutput
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 parameters are set to 0.0.
- 10: ISF(2) – INTEGER arrayOutput
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.
- 11: IFAIL – INTEGERInput/Output
-
On entry:
IFAIL must be set to
0,
-1 or 1. If you are unfamiliar with this parameter you should refer to
Section 3.3 in the Essential Introduction for details.
For environments where it might be inappropriate to halt program execution when an error is detected, the value
-1 or 1 is recommended. If the output of error messages is undesirable, then the value
1 is recommended. Otherwise, if you are not familiar with this parameter, the recommended value is
0.
When the value -1 or 1 is used it is essential to test the value of IFAIL on exit.
On exit:
IFAIL=0 unless the routine detects an error or a warning has been flagged (see
Section 6).
6 Error Indicators and Warnings
If on entry
IFAIL=0 or
-1, explanatory error messages are output on the current error message unit (as defined by
X04AAF).
Errors or warnings detected by the routine:
- IFAIL=1
On entry, | NNAi<0, for i=1,2,3, |
or | NL<maxNNA1+NNA2+NNA3,1, |
or | R0<-1.0 or R0>1.0, |
or | Ri<-1.0 or Ri>1.0, for some i=1,2,…,NL, |
or | S≤0.0, |
or | NWDS≠NNA2+NNA3+1, |
or | IWA<NNA3×NNA3+1. |
- IFAIL=-999
-
Internal memory allocation failed.
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
If NNA3>0,a local workspace array of fixed length is allocated internally by G13BDF. The total size of this array amounts to NNA3 integer elements and NNA3×NNA3+1 real elements.
The time taken by G13BDF is roughly proportional to NWDS3.
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 (g13bdfe.f90)
9.2 Program Data
Program Data (g13bdfe.d)
9.3 Program Results
Program Results (g13bdfe.r)