Residuals: Array;
Свойство Residuals возвращает ряд остатков.
Sub Main;
Var
Grey: ISmGreyForecast;
d0, d1: Double;
res, i: Integer;
y: Array Of Double;
Begin
// значение y
y := New Double[43];
y[00] := 6209;
y[01] := 6385;
y[02] := 6752;
y[03] := 6837;
y[04] := 6495;
y[05] := 6907;
y[06] := 7349;
y[07] := 7213;
y[08] := 7061;
y[09] := Double.Nan;
y[10] := 7132;
y[11] := 7137;
y[12] := 7473;
y[13] := 7722;
y[14] := 8088;
y[15] := 8516;
y[16] := 8941;
y[17] := Double.Nan;
y[18] := Double.Nan;
y[19] := 9746;
y[20] := 9907;
y[21] := 10333;
y[22] := 10863;
y[23] := 11693;
y[24] := 12242;
y[25] := 12227;
y[26] := 12910;
y[27] := 13049;
y[28] := 13384;
y[29] := 14036;
y[30] := 14242;
y[31] := 14704;
y[32] := 13802;
y[33] := 14197;
y[34] := 15010;
y[35] := 15589;
y[36] := 15932;
y[37] := 16631;
y[38] := 17394;
y[39] := 17758;
y[40] := 17308;
y[41] := 16444;
y[42] := 16413;
Grey := New SmGreyForecast.Create;
Grey.Serie.Value := y;
Grey.ModelPeriod.FirstPoint := 5;
Grey.ModelPeriod.LastPoint := 40;
Grey.Forecast.LastPoint := 53;
Grey.Forecast.ConfidenceLevel := 0.8;
Grey.MissingData.Method := MissingDataMethod.SampleAverage;
res := Grey.Execute;
If res <> 0 Then
Debug.WriteLine(Grey.Errors);
Else
Debug.WriteLine(" ряд остатков ");
For i := Grey.ModelPeriod.FirstPoint To Grey.ModelPeriod.LastPoint Do
d0 := Grey.Residuals[i-1];
Debug.WriteLine(i.ToString + " " + d0.ToString);
End For;
End If;
End Sub Main;
После выполнения примера в окно консоли будут выведен ряд остатков:
Module execution started
ряд остатков
5 0
6 -86.098748379736207
7 163.08978677584673
8 -171.03781363496091
9 -526.62812438851688
10 3587.5015717593105
11 -879.80349401844433
12 -1095.702357785427
13 -986.6917738293414
14 -970.93966889486182
15 -844.61859974818071
16 -662.90588083560579
17 -490.9837154597044
18 1692.294002759174
19 1425.0682180394851
20 -487.85876322403783
21 -609.02341871452518
22 -472.96782714588335
23 -240.90648935851641
24 282.94017965852981
25 517.34568770584883
26 179.07729781331727
27 529.89585606276523
28 327.55561466090148
29 311.80405013565905
30 603.38167651905678
31 439.0218533797597
32 520.45058856206015
33 -772.61366451263893
34 -779.46021513466258
35 -379.38634933705907
36 -224.69754982728045
37 -317.70772198401392
38 -66.739426082931459
39 235.87588407157455
40 126.79761593719013
Module execution finished
См. также: