ISmBandpassFilter.Residuals

Синтаксис

Residuals: Array;

Описание

Свойство Residuals возвращает ряд остатков.

Пример

Sub Main;

Var

bpf: SmBandpassFilter;

can: Array[22] Of Double;

res: Integer;

Sub Print(Data: Array Of Double);

Var

i: Integer;

CI: ICultureInfo;

Begin

CI := CultureInfo.Current;

Debug.WriteLine("---Begin---");

For i := 0 To Data.Length - 1 Do

If Double.IsNan(Data[i])

Then Debug.WriteLine("---empty---");

Else Debug.WriteLine(i.ToString + ", " + CI.FormatDoublePrec(Data[i], 4));

End If;

End For;

Debug.WriteLine("---End---");

End Sub Print;

Begin

can[00] := 6209;

can[01] := 6385;

can[02] := 6752;

can[03] := 6837;

can[04] := 6495;

can[05] := 6907;

can[06] := 7349;

can[07] := 7213;

can[08] := 7061;

can[09] := 7180;

can[10] := 7132;

can[11] := 7137;

can[12] := 7473;

can[13] := 7722;

can[14] := 8088;

can[15] := 8516;

can[16] := 8941;

can[17] := 9064;

can[18] := 9380;

can[19] := 9746;

can[20] := 9907;

can[21] := 10333;

bpf := New SmBandpassFilter.Create;

bpf.ModelPeriod.FirstPoint := 0;

bpf.ModelPeriod.LastPoint := 21;

bpf.Serie.Value := can;

bpf.Width := 2;

bpf.FrequencyHigh := 7;

bpf.FrequencyLow := 2;

res := bpf.Execute;

If res <> 0 Then

Debug.WriteLine(bpf.Errors);

Else

Debug.WriteLine("=== Модельный ряд ===");

Print(bpf.Fitted);

Debug.WriteLine("=== Остатки ===");

Print(bpf.Residuals);

End If;

End Sub Main;

После выполнения примера в окно консоли будет выведен сглаженный ряд и ряд остатков:

Module execution started

=== Модельный ряд ===

---Begin---

---empty---

---empty---

2, 6 521.8215

3, 6 587.4245

4, 6 987.7807

5, 6 949.4916

6, 6 936.6029

7, 7 164.9069

8, 7 233.3035

9, 7 099.0240

10, 7 189.5365

11, 7 370.0649

12, 7 464.1300

13, 7 802.8335

14, 8 146.0180

15, 8 485.2142

16, 8 747.3239

17, 9 172.1929

18, 9 414.3872

---empty---

---empty---

---End---

=== Остатки ===

---Begin---

---empty---

---empty---

2, 230.1785

3, 249.5755

4, -492.7807

5, -42.4916

6, 412.3971

7, 48.0931

8, -172.3035

9, 80.9760

10, -57.5365

11, -233.0649

12, 8.8700

13, -80.8335

14, -58.0180

15, 30.7858

16, 193.6761

17, -108.1929

18, -34.3872

---empty---

---empty---

---End---

Module execution finished

См. также:

ISmBandpassFilter