逆フーリエ変換でもとの波形を作りたいです。
http://www.geocities.jp/supermisosan/fourier.html
を参考にしました。
///参考URLの逆フーリエ変換プログラム
#include <stdio.h>
#include <math.h>
#define max 10000 //Nの最大限度数
#define pi 3.1415926535 //円周率
int main()
{
int i,k,n,N;
double Ref,Imf;
double ReF[max+1],ImF[max+1];
FILE *fourier;
FILE *inversef;
//逆フーリエ変換したいデータをあらかじめfourier.dataに保存しておく
fourier=fopen("fourier.data","r");
inversef=fopen("inversef.data","w");
//データの読み込み。
for(N=0;N<max;N++) {
if(fscanf(fourier,"%d %lf %lf",&i,&ReF[N],&ImF[N]) == EOF) {
N--;
break;
}
}
//フーリエ逆変換
for(k=0;k<N;k++) {
Ref=Imf=0.0;
for(n=0;n<N;n++) {
Ref+=(ReF[n]*cos(2*pi*k*n/N)-ImF[n]*sin(2*pi*k*n/N))/N;
Imf+=(ReF[n]*sin(2*pi*k*n/N)+ReF[n]*sin(2*pi*k*n/N))/N;
}
fprintf(inversef,"%d %f %f\n",k,Ref,Imf);
}
fclose(fourier);
fclose(inversef);
return 0;
}
//////
Refが実数部分の値で、Imfが虚数部分の値になるのですが、
どうしたら元の波形データが得られるのかがわかりません。
教えて頂けたら幸いです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# 10個の実数に対する降順ソート結果を出力するプログラムを作りたいのですが、以下のプログラムをどう直せ 1 2022/07/09 22:16
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- C言語・C++・C# c言語の問題の説明、各所ごとに 5 2023/07/26 11:03
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- C言語・C++・C# LU分解法のピボッティングについて(C言語/gcc-9) 3 2022/07/11 23:10
- C言語・C++・C# バイナリファイルをコピーするのにかかる時間を測りたいのですが実行するとFatel error:gli 2 2022/11/03 01:10
- C言語・C++・C# C言語 プログラミング 4 2022/05/22 11:53
- 数学 離散フーリエ逆変換が周波数分割数をNにできる理由について 4 2022/09/18 12:56
- C言語・C++・C# C言語プログラム変更 2 2022/12/21 15:03
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
教えて下さい
-
【エクセル】測定時間がバラバ...
-
S9タイプからXタイプにデータ...
-
配列でデータが入っている要素...
-
VBA 毎日取得するデータを順番...
-
VBAで「"」[']をエスケープする...
-
Accessで該当データにフラグを...
-
エクセルで2つの時系列のデー...
-
メモ帳(テキストデータ)をExc...
-
VB6のListの使い方
-
ActiveReportについて
-
fortranでフーリエ変換→パワー...
-
MSCommを用いたRS-232-Cデータ転送
-
【VBA】データを入力後に,同一...
-
EXCELVBAでSQLserverからデータ...
-
PDOオブジェクトは使い回し可能?
-
シリアル通信でのデータ受信
-
PLSQLで文字列置換
-
VBAを使ってOutlookメール本文...
-
Excelの関数で表示されているデ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
教えて下さい
-
配列でデータが入っている要素...
-
【エクセル】測定時間がバラバ...
-
メモ帳(テキストデータ)をExc...
-
VBA 空白セルを削除ではない方...
-
多量のSUMIF式を軽くしたい
-
Excelのマクロでワードのテキス...
-
エクセルで2つの時系列のデー...
-
この行は既に別のテーブルに属...
-
VBAを使ってOutlookメール本文...
-
シーケンサにパソコンからアク...
-
EXCELVBAでSQLserverからデータ...
-
ブレーカー落ちで壊れたりしな...
-
[C言語] コメント文字列を無視...
-
オープンチヤットでデータ削除...
-
モジュラス103の算出方法について
-
javaでDBからデータを取ってき...
-
カンマからスラッシュに
-
VBA 毎日取得するデータを順番...
-
Android携帯をUSBメモリ代わりに
おすすめ情報