File:Butterworth filter bode plot.png
頁面內容不支援其他語言。
外觀
預覽大小:800 × 560 像素。 其他解析度:320 × 224 像素 | 640 × 448 像素 | 1,024 × 717 像素 | 1,250 × 875 像素。
原始檔案 (1,250 × 875 像素,檔案大小:110 KB,MIME 類型:image/png)
摘要
描述Butterworth filter bode plot.png |
English: The Bode plot of a Butterworth filter with logarithmic axes and various labels. Cutoff frequency is normalized to 1 rad/s. Gain is normalized to 0 dB in the passband. Phase is in degrees because that's typical. The code is kind of kludgy, but makes a good output. See Wikipedia graph-making tips. Generated in gnuplot with the script below (save as butterworth_bode_plot.plt and then open in gnuplot). Then I opened the butterworth_bode_plot.ps file in a text editor to edit the line colors and linestyles, as per this description. This avoids needing to open in proprietary software, and really isn't that difficult (especially if you don't know the commands in the proprietary software either). ;-) Identify the lines easily by their color (the arrow is currently magenta and I want it to be black. Ah, there is the entry with 1 0 1, red + blue = magenta) or by using the gnuplot linestyle−1. (For instance, gnuplot's linestyle 3 corresponds to the ps file's /LT2.) Then you can edit the colors and dashes by hand. I changed the original: /LT0 { PL [] 1 0 0 DL } def /LT1 { PL [4 dl 2 dl] 0 1 0 DL } def /LT2 { PL [2 dl 3 dl] 0 0 1 DL } def /LT3 { PL [1 dl 1.5 dl] 1 0 1 DL } def into this: /LT0 { PL [] 0 0 1 DL } def /LT1 { PL [4 dl 2 dl] 0.5 0.5 0.5 DL } def /LT2 { PL [6 dl 3 dl] 0.3 0.3 1 DL } def /LT3 { PL [] 0 0 0 DL } def /LT4–/LT8 I left unchanged. (I don't know what they're used for anyway.) /LTw, /LTb, and /LTa are for the grid lines and such. To convert the PostScript file to PNG:
|
日期 | 2005年10月8日 (上傳日期) |
來源 | 自己的作品 |
作者 | Omegatron |
其他版本 |
[編輯] .svg:
.png:
|
gnuplot source InfoField | click to expand
set samples 2001
set terminal postscript enhanced landscape color lw 2 "Times-Roman" 20
set output "butterworth bode plot.ps"
# Butterworth amplitude response and decibel calculation. n is the order, which is just 1 in this image.
G(w,n) = 1 / (sqrt(1 + w**(2*n)))
dB(x) = 20 * log10(abs(x))
# Phase is for first order
P(w) = -pi/2-atan(1.2*w)-atan(0.09*w)
# Gridlines
set grid
# Set x axis to logarithmic scale
set logscale x 10
# No need for a key
set nokey #0.1,-25
# Frequency response's line plotting style
set style line 1 lt 1 lw 2
# Asymptote lines and slope lines are the same "arrow" style
set style line 3 lt 3 lw 1
set style arrow 3 nohead ls 3
# -3 dB arrow style
set style line 4 lt 4 lw 1
set style arrow 4 head filled size screen 0.02,15,45 ls 4
# Separator between passband and stopband line style
set style line 2 lt 2 lw 1
set style arrow 2 nohead ls 2
set multiplot
# Magnitude response
# =============================================
set size 1,0.5
set origin 0,0.5
# Set range of x and y axes
set xrange [0.001:1000]
set yrange [-60:10]
# Create x-axis tic marks once per decade (every multiple of 10)
set xtics 10
#set ytics 10
# No need for two sets of numbers
set format x ""
# Use 10 x-axis minor divisions per major division
set mxtics 10
# Axis labels
set ylabel "Gain (dB)"
# Draw asymptote lines
set arrow 1 from 1,0 to 1000,-60 as 3
set arrow 2 from .001,0 to 1,0 as 3
# -3 dB arrow
set arrow 4 from 2,3 to 1,0 as 4
# "Cutoff frequency" label uses same coordinates as the function
set label 3 "Cutoff frequency" at 2,4 l
# "-3 dB" label
set arrow 5 from 0.5,-6 to 1,-3 as 4
set label 4 "-3.01 dB" at 0.5,-7 r
# Draw a separator between passband and stopband and label them
set arrow 3 from 1,-60 to 1,10 as 2
# Label coordinates are relative to the graph window, not to the function, centered at the 1/4 and 3/4 width points
set label 1 "Passband" at graph 0.25, graph 0.1 c
set label 2 "Stopband" at graph 0.75, graph 0.1 c
# Draw slope lines and label
set arrow 6 from 100,-20 to 12,-20 as 3
set arrow 7 from 100,-20 to 100,-39 as 3
set label 5 "Slope: -20 dB/decade" at 100,-15 c
plot dB(G(x,1)) ls 1 title "1st-order response"
#Phase response
# =============================================
set size 1,0.5
set origin 0,0
# Set range of x and y axes
set yrange [-105:15]
# Create y-axis tic marks every 15 degrees
set ytics 30
# Regular numbers
set format x "% g"
# Axis labels
set ylabel "Phase (degrees)"
set xlabel "Angular frequency (rad/s)"
# Draw asymptote lines
set arrow 1 from 0.1,0 to 10,-90 as 3
set arrow 2 from 0.001,0 to 0.1,0 as 3
set arrow 10 from 10,-90 to 1000,-90 as 3
# -3 dB arrow
unset arrow 4 #from 2,3 to 1,0 as 4
# "Cutoff frequency" label uses same coordinates as the function
unset label 3 #"Cutoff frequency" at 2,4 l
# "-3 dB" label
unset arrow 5 #from 0.5,-6 to 1,-3 as 4
unset label 4 #"-3.01 dB" at 0.5,-7 r
# Draw a separator between passband and stopband and label them
set arrow 3 from 1,-105 to 1,15 as 2
# Label coordinates are relative to the graph window, not to the function, centered at the 1/4 and 3/4 width points
set label 1 "Passband" at graph 0.25, graph 0.5 c
set label 2 "Stopband" at graph 0.75, graph 0.5 c
# Draw slope lines and label
unset arrow 6 #from 100,-20 to 12,-20 as 3
unset arrow 7 #from 100,-20 to 100,-39 as 3
unset label 5 #"Slope: -20 dB/decade" at 100,-18 c
plot P(x) ls 1 title "Phase response"
unset multiplot
|
File:Butterworth filter bode plot.svg是本檔案的向量版本。 如果品質不低,就應該優先使用該檔案,而非PNG檔案。
File:Butterworth filter bode plot.png → File:Butterworth filter bode plot.svg
更多資訊請參閱Help:SVG/zh。
|
授權條款
我,本作品的著作權持有者,決定用以下授權條款發佈本作品:
- 您可以自由:
- 分享 – 複製、發佈和傳播本作品
- 重新修改 – 創作演繹作品
- 惟需遵照下列條件:
- 姓名標示 – 您必須指名出正確的製作者,和提供授權條款的連結,以及表示是否有對內容上做出變更。您可以用任何合理的方式來行動,但不得以任何方式表明授權條款是對您許可或是由您所使用。
- 相同方式分享 – 如果您利用本素材進行再混合、轉換或創作,您必須基於如同原先的相同或兼容的條款,來分布您的貢獻成品。
已授權您依據自由軟體基金會發行的無固定段落、封面文字和封底文字GNU自由文件授權條款1.2版或任意後續版本,對本檔進行複製、傳播和/或修改。該協議的副本列在GNU自由文件授權條款中。http://www.gnu.org/copyleft/fdl.htmlGFDLGNU Free Documentation Licensetruetrue |
您可以選擇您需要的授權條款。
在此檔案描寫的項目
描繪內容
image/png
112,847 位元組
875 像素
1,250 像素
檔案歷史
點選日期/時間以檢視該時間的檔案版本。
日期/時間 | 縮圖 | 尺寸 | 使用者 | 備註 | |
---|---|---|---|---|---|
目前 | 2005年10月8日 (六) 20:01 | 1,250 × 875(110 KB) | Omegatron | last revision? | |
2005年10月8日 (六) 19:41 | 1,250 × 875(113 KB) | Omegatron | better | ||
2005年10月8日 (六) 19:30 | 1,250 × 875(117 KB) | Omegatron | The frequency response of a Butterworth filter with logarithmic axes (Bode plot) and various labels. Cutoff frequency is normalized to 1 rad/s. Gain is |
檔案用途
下列頁面有用到此檔案:
全域檔案使用狀況
以下其他 wiki 使用了這個檔案:
- eo.wikipedia.org 的使用狀況
- eu.wikipedia.org 的使用狀況
- fr.wikipedia.org 的使用狀況
- he.wikipedia.org 的使用狀況
- hi.wikipedia.org 的使用狀況
- hu.wikipedia.org 的使用狀況
- nn.wikipedia.org 的使用狀況
- pl.wikipedia.org 的使用狀況
- pt.wikipedia.org 的使用狀況
隱藏分類: