タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

fftに関するmistakeのブックマーク (6)

  • 高速フーリエ変換 - [物理のかぎしっぽ]

    ここで上の行列の真ん中で左右に分けて考えると,添字が偶数の行については左と右の部分が同じで,添字が奇数の行については左と右の部分が半周期ずれたものになっているのがわかります.そのため上の式は以下と等価です. 図1 図1を見てもわかる通りxの並びが変わっています.このように並び替えることで計算がしやすくなります.それではソースコードを見てみます. dfttimes = num; power = power_two(num); //2の何乗かを返す for(i=0; i<power-1; i++){ indexto = offset = 0; while(indexto < num){ indexfrom = 0; while(indexfrom < dfttimes){ rbuf[indexto] = re[indexfrom + offset]; ibuf[indexto] = im[in

    mistake
    mistake 2008/11/11
  • Cooley-Tukey 型 FFT(高速フーリエ変換)のアルゴリズムについて

    Cooley-Tukey 型 FFT (高速フーリエ変換)について by 池田 幹男 since 2002 Oct 22 このページの内容は、 四日市大学教育支援システム のコース Cooley Tukey 型高速フーリエ変換に移動しました。内容はゲストでログインして見ることができます。 プログラムはこのアーカイブを参照して下さい。 FFT (Fast Fourier Transform)とは DFT(Discrete Fourier Transform) の高 速算法(アルゴリズム)のことで、高速フーリエ変換と呼ぶ。DFT は式(1) のように定義される。 F(k) = Σn=0N-1 s(n) Wnk/N (n,k=0,1,...,N-1) ....(1) ただし、Wnk/N = exp(j2πnk/N) = cos(2πnk/N) + j sin(2πnk/N) であり、 j は虚数

    mistake
    mistake 2008/11/11
  • 高速フーリエ変換ライブラリ

    /* fft.c */ #include <stdio.h> #include <stdlib.h> #include "sslib.h" void fft1(double ar[], double ai[], int n, int iter, int flag) { int i, it, j, j1, j2, k, xp, xp2; double arg, dr1, dr2, di1, di2, tr, ti, w, wr, wi; if(n < 2) { fprintf(stderr, "Error : n < 2 in fft1()\n"); return; } if(iter <= 0) { iter = 0; i = n; while((i /= 2) != 0) iter++; } j = 1; for(i = 0; i < iter; i++) j *= 2; if(n !=

    mistake
    mistake 2008/11/11
  • 高速フーリエ変換 Excel VBA用FFTプログラム - 研究と教育と追憶と展望

    ちまたには高速フーリエ変換(FFT)のプログラムが出回っているが、これをExcel VBA(いわゆるマクロ)で使えるようにしたところ、机上作業の効率が飛躍的にアップした。下記にプログラム等をノートしておく。ちまたに出回っているFFTのプログラムは利用者の知らないうちに窓関数がかけられていたり、周波数を自動的に計算したりするので、あまり教育的ではない。一番シンプルなFFTのプログラムで、生の処理を体験すべきである。 ちなみに、フーリエ変換とは、理工系の大学で習う数学的処理の方法の一つで端的に言えば、横軸が時間となっているグラフをフーリエ変換すると、横軸が周波数のグラフとなるもの。 例えば左図は横軸が時間で、周波数の異なるサインカーブを3つ足し合わせたグラフである。0.001秒毎に(サンプリング周波数1 kHz)、1024個のデータを取得したもの。横軸が時間だと、この波の周波数を読み取るのに一

    高速フーリエ変換 Excel VBA用FFTプログラム - 研究と教育と追憶と展望
    mistake
    mistake 2008/11/11
  • 高速フーリエ変換 - Wikipedia

    クーリー–テューキー型アルゴリズムは、代表的な高速フーリエ変換 (FFT) アルゴリズムである。 分割統治法を使ったアルゴリズムで、N = N1 N2 のサイズの変換を、より小さいサイズである N1, N2 のサイズの変換に分割していくことで高速化を図っている。 最もよく知られたクーリー–テューキー型アルゴリズムは、ステップごとに変換のサイズをサイズ N/2 の2つの変換に分割するので、2 の累乗次数に限定される。しかし、一般的には次数は 2 の累乗にはならないので、素因数が偶数と奇数とで別々のアルゴリズムに分岐する。 伝統的なFFTの処理実装の多くは、再帰的な処理を、系統だった再帰をしないアルゴリズムにより実現している。 クーリー–テューキー型アルゴリズムは変換をより小さい変換に分解していくので、後述のような他の離散フーリエ係数のアルゴリズムと任意に組み合わせることができる。とりわけ、N

    高速フーリエ変換 - Wikipedia
    mistake
    mistake 2008/11/11
  • FFT (高速フーリエ・コサイン・サイン変換) の概略と設計法

    はじめに FFT とは離散フーリエ変換に関連する変換を高速に実行する一連の 計算方法のことです.ここでは,FFT の考え方とその設計方法について 具体的なプログラムを用いて示します.これは,FFT のライブラリを 作成したときのメモがもとになっています.専門的な説明は極力避けたので, エレガントでない説明になっているかもしれません.基礎知識として, 複素数の演算規則とフーリエ変換が何かということさえ知っていれば 理解できると思います.また,数学の知識がある程度あり 時間を節約したい方は, 1.2節と1.3節の要約(pdf 53KB) を一読していただければ速く理解できると思います. 目次 1 FFT 概略 1.1 離散 Fourier 変換 1.1.1 DFT の定義 1.1.2 DFT と通常の Fourier 変換 1.1.3 DFT の性質 1.2 Cooley-Tukey 型 FF

    mistake
    mistake 2008/11/11
  • 1