Design an analog lowpass filter, where the passband is defined with Wu = 0.7 rad/sec.
using Dew.Math; using Dew.Math.Editors; using Dew.Math.Units; using Dew.Signal; using Dew.Signal.Units; using Dew.Math.Tee; using Dew.Signal.Tee; private void button1_Click(object sender, EventArgs e) { Vector z = new Vector(0); Vector p = new Vector(0); Vector num = new Vector(0); Vector den = new Vector(0); Vector Response = new Vector(0); Vector FreqFr = new Vector(0); double k,Wc,BW; double FS = 2; int Order = 5; //design a fifth order filter. IIRFilters.EllipticAnalog(Order,0.2,40,z,p,out k); //design analog protype Wc = 0.7; LinearSystems.LowpassToLowpass(z,p,ref k,Wc); //frequency transformation in s-domain LinearSystems.ZeroPoleToTransferFun(num,den,z,p,k); //Define the frequency grid (logarithmic) FreqFr.Length = 1000; SignalUtils.LogRamp(FreqFr,-1,1); //between 0.1 (=10^(-1)) and 10 (=10^1) rad/sec SignalUtils.FrequencyResponseS(num,den,FreqFr,Response,0); //Laplace TeeChart.DrawIt(Response,"Frequency response",false); //Y axis linear, X axis logarithmic }
|
Copyright (c) 1999-2010 by Dew Research. All rights reserved.
|