2009年06月19日

今朝の話の結論

さっきのプログラムやっと動いたよ(^-^)/


やっぱオイラー使わないとムリだったのと、fileoutはinclude忘れてただけっていう…


include忘れは日曜から数えて通算4日、一昨日から2日連続徹夜してたから頭が働いてなかったって事で許して下さい(笑)


とにかくこれで今日はガッツリ寝れますZZzz....


ブログランキング
posted by defrock at 13:30| ☁| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

発狂する元気がない

動かないぃぃ雨

//Cygwin gcc version 3.4.4//
#include
#include
#include
#define exp 2.7182818284
#define pi 3.141592
using namespace std;

int main(){
int i,j,k;
int n=16;
int a0,ak,bk;
double A=1.0,B=0.0;
double Fk[16]={};
double fn[16]={};
complex c1[16]={};

ofstream fileout;
ifstream filein;
fileout.open("dft.txt");

for(j=-8;j<8;j++){
for(i=0;i<16;i++){
fn[i] = 0;
fn[i] = A*sin(2.0*pi*i/n)+B*sin(2.0*pi*i/n);
c1[i] = complex(0.0,(2.0*pi*i*j)/n);
Fk[j] = Fk[j]+fn[i]*pow(exp,-1*c1[i]);
}
Fk[j] =Fk[j]/n;

}
fileout.close();
return 0;
}

ホント動かねぇ〜バッド(下向き矢印)バッド(下向き矢印)
プログラムは短いのに動かねぇ〜〜〜もうやだ〜(悲しい顔)
今回のプログラミング・・・なんか非線形最小二乗法のプログラムの倍近い労力を使って1/5ぐらいしか進まないあせあせ(飛び散る汗)
DFTのプログラミングをしたいのですがどうにも上手く行かない。

Fk[j] = Fk[j]+fn[i]*pow(exp,-1*c1[i]); コイツのべき乗の部分の掛け算がエラー出すんだけど、どうしたらいいんだか・・・置き換えたら置き換えた先でエラー出すし・・・
オイラーの公式を使って出すやり方に切り替えようかな〜とか諦めモードに入ってます。そしたらまたゼロからのスタートですがw
頭ん中グルグルしてきたわ。このあと更にFFTも作らなきゃならないと思うと・・・ショボーンですよね。


あ〜、あとcomplexをincludeするとfileoutが使えない謎。
この二つって仲悪いの?
犬と猿なの?
みんな仲良くしようぜ?
まぁそこは最悪省いてもいいんだけど、とりあえず動くようにしないと・・・その前にまずは「動きませんでした」って発表資料作らなきゃ・・・


あぁ、思いっきり寝たい。どっか買い物や遊びに行きたい今日この頃。


ps
ブログにプログラムをのせると改行とかにも影響するんだねww
半角の<>がhtmlと干渉するみたい。
(元のプログラムのせるとレイアウトが崩れるので一部取り除いてあります。includeはiostreamとcmathとcomplex。ちなみにcomplexの宣言も後ろにdoubleがちゃんと付いてるよw)


ブログランキング




posted by defrock at 05:23| ☁| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。