[PR]
2024/12/22(Sun) 02:48:08
× [PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
予選での失態・・・・・・・・・あと固定少数点で微分方程式解けるようになった
2008/10/15(Wed) 01:34:56
動画を取り込んだので、予選での失態を公開
以前ルンゲ・クッタ法での微分方程式を数値解析的に解く方法を試みましたが、計算にかかる時間により一時断念していました。 今回、固定小数点での計算になるよう手直ししてみました。 コレでH8でも制御周期内で次の重心位置の座標を求められるかな? 問題は精度だけどね。 こんな感じのコードです。 1000倍してるだけなんですけどね。 #include <stdio.h> void drunge(long *x, long *y, long *z, long h , long (*f)(long, long, long),long (*g)(long,long,long)) long f(long x,long y,long z) long g(long x, long y, long z) int main(void){ あと、今までルートってどうやって求めればいいんだろう?と思っていたんですが、ちょっと調べて見るとえらく簡単に求められるみたいですね。ちょっと目からウロコ。 これも固定小数点で計算できるようにしました。 これも10000倍しているだけなんですけどね。(10000倍だから、返ってくる値は100倍になります) int sqrt(long a){ long b; int i; a = 10000*a; b=a; for(i=0;i<20;i++){ b = (b + (a/b))/2; } return(int(b)); } PR この記事にコメントする
|