File:Phase Plots.svg

From testwiki
Revision as of 21:48, 21 March 2012 by imported>Helpful Pixie Bot (Dated {{Copy to Wikimedia Commons}}. (Build J/))
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Summary

This svg file is made by Ugur Zongur using GNU Octave and Gnuplot in order to demonstrate linearity or non-linearity of phase plots of various filters.

These are the phase plots of:

a) FIR Filter (Type II) with impulse response: h[n]=δ[n3]+δ[n2]+δ[n1]+δ[n]

b) FIR Filter (Type IV) with impulse response: h[n]=δ[n3]+δ[n2]δ[n1]δ[n]

c) IIR Filter with impulse response: h[n]=δ[n1]+2δ[n]3h[n1]4

d) FIR Filter with impulse response: h[n]=4δ[n3]+3δ[n2]+2δ[n1]+δ[n]

All plots are Arg[H(ejω)] vs normalized ω with pi .

GNU Octave and Gnuplot codes used to create the file is given below:


GNU Octave Code:

% Phase Demonstration of basic Filters
% Written By: Ugur Zongur

a=[1 1 1 1]; % Symmetrical (So this has got Linear Phase)
[pp_1,w] = freqz(a,1);

a=[1 1 -1 -1]; % Symmetrical (So this has got Linear Phase)
[pp_2,w] = freqz(a,1);

a=[1 2]; % Numerator
b=[3 4]; % Denominator
[pp_3,w] = freqz(a,b);

a=[4 3 2 1]; % Not Symmetrical (So this hasn't got Linear Phase)
[pp_4,w] = freqz(a,1);

data = [w/pi ; arg(pp_1); arg(pp_2); arg(pp_3); arg(pp_4)]';

save -ascii 'Phase_Plots.dat' data;

Gnuplot Code:

# set the output
set terminal svg
set output "Phase_Plots.svg"

# axis properties
set xrange [0:1]
set key off

# Set up a four-pane multiplot
set size 1, 1
set origin 0, 0
set multiplot

set title "a) FIR Filter (Type II) having Linear Phase"
set size 0.5,0.5
set origin 0 , 0.5
plot "Phase_Plots.dat" using 1:2 with lines linewidth 2

set title "b) FIR Filter (Type IV) having Linear Phase"
set size 0.5, 0.5
set origin 0.5 , 0.5
plot "Phase_Plots.dat" using 1:3 with lines linewidth 2

set title "c) IIR Filter having Non-Linear Phase"
set size 0.5, 0.5
set origin 0 , 0
plot "Phase_Plots.dat" using 1:4 with lines linewidth 2

set title "d) FIR Filter having Non-Linear Phase"
set size 0.5, 0.5
set origin 0.5 , 0
plot "Phase_Plots.dat" using 1:5 with lines linewidth 2


Licensing

Template:PD-self

Template:Copy to Wikimedia Commons

The following page uses this file: