(*simple illustration of low pss filter. Nasser M. Abbasi, oct 13, \
2015*)
Manipulate[
h[k_, e_] := 1/(1 + e*s)^k;
Module[{tf, w, p},
tf = h[k, e, s];
p = BodePlot[tf, {0.1, range}, PlotLayout -> "List",
ImageSize -> 400, GridLines -> Automatic,
GridLinesStyle -> LightGray, ImageMargins -> 30,
FrameLabel -> {{{"magnitude (db)", None}, {"\[Omega] (rad/sec)",
"H(s) Magnitude plot"}}, {{"phase(deg)",
None}, {"Frequency (rad/sec)", None}}},
PlotRange -> {{{0.1, range}, Automatic}, {{0.1, 100}, Automatic}},
BaseStyle -> 14];
Text@Grid[{
{Style[
Row[{"H(s)=\!\(\*FractionBox[\(\(1\)\(\\\ \)\), \
SuperscriptBox[\((\(\(1\)\(+\)\) \[Element] \\\ s)\), \(k\)]]\) = ",
tf}], 16]},
{
p[[1]]
(*
LogPlot[1/(1+e^2*w^2)^(k/2),{w,0.1,range},PlotRange\[Rule]All,
ImageSize\[Rule]300,Frame\[Rule]True,
FrameLabel\[Rule]{{"|H(s)|",None},{"\[Omega]",
"Low pass filter"}},ImageMargins\[Rule]10,
GridLines\[Rule]Automatic,GridLinesStyle\[Rule]LightGray,
Epilog\[Rule]{Dashed,Line[{{1/e,0},{1/e,1/2^(k/2)}}],Line[{{1/e,
1/2^(k/2)},{0,1/2^(k/2)}}]}]
*)
}
}, Alignment -> Center, Frame -> All, FrameStyle -> LightGray,
Spacings -> {1, 1}
]
],
{{k, 4, "k"}, 1, 20, 1, Appearance -> "Labeled"},
{{e, .1, "\[Epsilon]"}, 0.01, 1, .01, Appearance -> "Labeled"},
{{range, 1000, "max \[Omega]"}, 1, 1000, 1, Appearance -> "Labeled"},
TrackedSymbols :> {k, e, range}
]