Residuals: Array;
The Residuals property returns a dependency form residual series without seasonality.
Sub Main;
Var
trend: SmCurveEstimation;
d0: Double;
status, i: Integer;
ar: Array Of Double;
Forms: IDependenceForms;
Dep: IDependenceForm;
Begin
trend := New SmCurveEstimation.Create;
ar := New Double[25];
ar[00] := 4110;
ar[01] := 4280;
ar[02] := 4459;
ar[03] := 4545;
ar[04] := 4664;
ar[05] := 4861;
ar[06] := 5195;
ar[07] := 5389;
ar[08] := 5463;
ar[09] := 5610;
ar[10] := 5948;
ar[11] := 6218;
ar[12] := 6521;
ar[13] := 6788;
ar[14] := 7222;
ar[15] := 7486;
ar[16] := 7832;
ar[17] := 8153;
ar[18] := 8468;
ar[19] := 9054;
ar[20] := 9499;
ar[21] := 9866;
ar[22] := 10217;
ar[23] := 10763;
ar[24] := 10683;
trend.Explained.Value := ar;
trend.Explanatory.IsTrend := True;
trend.ModelPeriod.LastPoint := 20;
trend.ForecastLastPoint := 30;
trend.SeasonalComponent.Mode := SeasonalityType.additive;
trend.SeasonalComponent.Cycle := 4;
status := trend.Execute;
If status <> 0 Then
Debug.WriteLine(trend.Errors);
Else
Forms := trend.DependenceForms;
Dep := Forms.Item(1);
Debug.WriteLine("Dependence form " + Dep.DisplayName);
Debug.WriteLine("=== Residual series without seasonality ===");
For i := 0 To Dep.Residuals.Length - 1 Do
d0 := Dep.Residuals[i];
Debug.WriteLine(i.ToString + ": " + d0.ToString);
End For;
End If;
End Sub Main;
After executing the example the console window displays the following results:
Module execution started
Dependence form: Quadratic
=== Residuals series without seasonality ===
0: -51.354545454543768
1: 27.164935064935889
2: 16.532125768969308
3: -22.452973342446057
4: -28.34036226930948
5: 13.969958988380313
6: 95.127990430623868
7: 100.93373205741682
8: -13.162816131236468
9: -84.061654135337449
10: -62.112781954886486
11: -43.516199589883399
12: 8.1780929596716305
13: -5.929904306219214
14: 48.809808612441884
15: -1.8027682843467119
16: 29.682365003418454
17: 6.3652084757359262
18: -121.10423786739557
19: 87.074025974026881
20: 1.#QNAN
21: 1.#QNAN
22: 1.#QNAN
23: 1.#QNAN
24: 1.#QNAN
Module execution finished
See also: