蝶形演算法
『壹』 有誰知道為啥fft蝶形演算法補零後頻率不對了
你幾年級啊??
『貳』 按時間抽取的蝶形運算是先相乘還是先加減
先向,呈現相承,現在都是先相乘然後再加減,如果加減法就算出來就結果就不對
『叄』 碟形彈簧片數的計算
碟形彈簧片數的計算比較復雜,建議找專業資料或軟體解決。
碟形彈簧是用金屬板料或鍛壓坯料而成的截錐形截面的墊圈式彈簧。在單個碟形彈簧的荷載不能滿足要求時,可用多片以串並聯疊合方式解決。所需片數可通過計算獲得。
碟形彈簧是在軸向上呈錐形並承受負載的特殊彈簧,在承受負載變形後,儲蓄一定的勢能,當螺栓出現鬆弛時,碟形彈簧釋放部分勢能以保持螺栓壓力達到要求。碟形彈簧應力分布由里到外均勻遞減,能夠實現低行程高補償力的效果。
由於蝶形簧片計算後的誤差不可控,且不同批次產品之間存在離散性。所以在大批量運用時還需根據計算結果做荷載實驗。有些場合會直接跳過計算環節而通過實驗確定所需片數。
『肆』 關於蝶形運算 vhdl
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_arith.all;
use ieee.std_logic_signed.all;----應該是unsigned
entity butterfly is
port( clk:in std_logic-------少了個時鍾埠
in1_r: in STD_LOGIC_VECTOR (3 downto 0);
in1_i: in STD_LOGIC_VECTOR (3 downto 0);
in2_r: in STD_LOGIC_VECTOR (3 downto 0);
in2_i: in STD_LOGIC_VECTOR (3 downto 0);
out1_r: out STD_LOGIC_VECTOR (7 downto 0);
out1_i: out STD_LOGIC_VECTOR (7 downto 0);
out2_r: out STD_LOGIC_VECTOR (7 downto 0);
out2_i: out STD_LOGIC_VECTOR (7 downto 0);
w_r:in STD_LOGIC_VECTOR (3 downto 0);
w_i:in STD_LOGIC_VECTOR (3 downto 0); ---多了個分號
);
end butterfly;
architecture butter of butterfly is
signal a1 : STD_LOGIC_VECTOR (3 downto 0);
signal b1 : STD_LOGIC_VECTOR (3 downto 0);
signal a : STD_LOGIC_VECTOR (3 downto 0);----應該為(7 downto 0)
signal b : STD_LOGIC_VECTOR (3 downto 0);----應該為(7 downto 0)
signal c : STD_LOGIC_VECTOR (3 downto 0);
signal ax : STD_LOGIC_VECTOR (7 downto 0);
signal bx : STD_LOGIC_VECTOR (7 downto 0);
signal cx : STD_LOGIC_VECTOR (7 downto 0);
signal dx : STD_LOGIC_VECTOR (7 downto 0);
begin
process(clk)----應該把PROCESS內所有的輸入埠都填到括弧內
begin
if(clk'event and clk='1')then
a1<=in1_r;
b1<=in1_i;
a<=c&a1; ----c&a1總共為8位 所以上面 a,b都應該為(7 downto 0)
b<=c&b1;
ax<=w_r*in2_r;
bx<=w_i*in2_i;
cx<=w_r*in2_i;
dx<=w_i*in2_r;
out1_r<=a+ax-bx;
out1_i<=b+cx+dx;
out2_r<=a-ax+bx;
out2_i<=b-cx-dx;
end if;
end process;
end butter;
『伍』 matlab能算出FFT每一級蝶形運算的結果嗎
蝶形運算指望有現成的函數是不可能的因為太簡單了根本沒人寫。所以說按照蝶形運算的原理自己寫一下就完事了。
『陸』 你好,能夠麻煩你幫我解析一下FFT 蝶形運算的C程序嗎你有完整的實現FFT的C程序嗎
用遞歸應該比較容易寫的, 雖然效率差一些
大概思路:
用一個函數做准備:
把數組排列成到位序
計算Wn
對整個數組調用 do_fft函數
do_fft函數:
如果需要計算的序列長為2,兩個位置分別寫為x[0]+x[1]和x[0]-x[1]然後返回
對需要計算的序列前半部分調用do_fft函數
對需要計算的序列後半副本調用do_fft函數
for (int i=0; i<length/2; ++i) {
x[i+length/2] *= Wi;注意這里需要先確定需要的是哪個W
x[i]和x[i+length/2] 分別改寫為 x[i]+x[i+length/2]和x[i]-x[i+length/2]
}
這樣兩個函數應該就差不多了
『柒』 誰能幫我解釋下FPGA上的蝶形運算具體是什
建議你去看一下FFT演算法實現過程,懶得復制粘貼了,網路一下就能找到
『捌』 為什麼FFT基2演算法 第一級運算時X(0)和X(4)作為蝶形運算的一組
這個你可以查網路啊,連這種問題都來問嗎,有這個時間我都早就查到了呢。。。同學你覺得呢。。是不是好有道理
『玖』 怎麼理解蝶形運算和FFT以及怎麼使用
輸出就是頻譜
之所以是蝶形運算,
實際上得出的是以2點為周期的幅值
以4點為周期的幅值
以6點為周期的幅值
以8點為周期的幅值
以此類推
『拾』 碟形彈簧 計算
GB/T
1972-2005
碟形彈簧
您可以在標准下載網上免費下載這個標准