You are here: Symbol Reference > SignalUtils Namespace > Functions > SignalUtils.SavGolayImpulse Function
DSP Master VCL
ContentsIndex
Example 1

And excerpt from the Savitzky-Golay demo for a single block filter: 

 

uses MtxExpr, Math387, MtxVec, SignalUtils, MtxVecTee, MtxVecEdit;

procedure TForm1.Button1Click(Sender: TObject);
var H,D: Matrix;
    Data, Data1: Vector;
    Frs,Ord: integer;
begin
     Data.Size(100);
     Data.RandGauss;
     Data1.Copy(Data);
     Frs := 10;
     if not Odd(Frs) then Inc(Frs);
     Ord := 5;
     SavGolayImpulse(H,D,Frs,Ord,nil);   //single block processing
     SavGolayFilter(Data,H);
     DrawIt([Data,Data1],['Filtered data','Original data']);
end;

 

  #include "MtxExpr.hpp"
  #include "MtxVecEdit.hpp"
  #include "MtxVecTee.hpp"
  #include "SignalUtils.hpp"

  void __fastcall TForm1::BitBtn1Click(TObject *Sender)
  {
      sMatrix H,D;
      sVector Data, Data1;

      Data.Size(100);
      Data.RandGauss();
      Data1.Copy(Data);
      int Frs = 10;
      if ((Frs%2) == 0) Frs++;
      int Ord = 5;
      SavGolayImpulse(H,D,Frs,Ord,NULL);   //single block processing
      SavGolayFilter(Data,H);
      DrawIt(OPENARRAY(TVec*,(Data,Data1)),OPENARRAY(AnsiString,("Filtered data","Original data")));
  }
Copyright (c) 1999-2025 by Dew Research. All rights reserved.