Width: Integer;
Свойство Width определяет размер окна.
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);
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---
Module execution finished
См. также: