ONLY DO WHAT ONLY YOU CAN DO

こけたら立ちなはれ 立ったら歩きなはれ

2014-01-01から1ヶ月間の記事一覧

C++で常微分方程式(ホイン法)

再度修正版 初速 250 km/h で, 45°の角度で打ったボールの軌跡をホイン法で計算する (空気抵抗係数を 0.01 で計算) 重力による鉛直方向の減速分は, 重力加速度を g, 時間を t とすると, 空気抵抗による水平方向の減速分は,速度を v, 速度の水平方向成分を vx…

Haskellで常微分方程式(オイラー法)

初速 250 km/h で, 45°の角度で打ったボールの軌跡をオイラー法で計算する (空気抵抗係数を 0.01 で計算) 重力による鉛直方向の減速分は, 重力加速度を g, 時間を t とすると, 空気抵抗による水平方向の減速分は,速度を v, 速度の水平方向成分を vx, 空気抵…

C++で常微分方程式(中点法)

修正版 初速 250 km/h で, 45°の角度で打ったボールの軌跡を中点法で計算する (空気抵抗係数を 0.01 で計算) 重力による鉛直方向の減速分は, 重力加速度を g, 時間を t とすると, 空気抵抗による水平方向の減速分は,速度を v, 速度の水平方向成分を vx, 空気…

C++で常微分方程式(ルンゲ・クッタ・ギル法)

Amazon Top 2! ※修正版 初速 250 km/h で, 45°の角度で打ったボールの軌跡をルンゲ・クッタ・ギル法で計算する (空気抵抗係数を 0.01 で計算) 重力による鉛直方向の減速分は, 重力加速度を g, 時間を t とすると, 空気抵抗による水平方向の減速分は,速度を v…

C++で常微分方程式(ルンゲ・クッタ法)

※再度修正 参考 http://www.enjoy.ne.jp/~k-ichikawa/Satellite3.html 初速 250 km/h で, 45°の角度で打ったボールの軌跡をルンゲ・クッタ法で計算する (空気抵抗係数を 0.01 で計算) 重力による鉛直方向の減速分は, 重力加速度を g, 時間を t とすると, 空…

C++で常微分方程式(後退オイラー法)

初速 250 km/h で, 45°の角度で打ったボールの軌跡を後退オイラー法で計算する (空気抵抗係数を 0.01 で計算) #include <iostream> #include <iomanip> #include <math.h> using namespace std; // 重力加速度 const double g = -9.8; // 空気抵抗係数 const double k = -0.01; // 時間</math.h></iomanip></iostream>…

3冊同時に Amazon Top 10

C++で常微分方程式(オイラー法)

初速 250 km/h で, 45°の角度で打ったボールの軌跡をオイラー法で計算する (空気抵抗係数を 0.01 で計算) 重力による鉛直方向の減速分は, 重力加速度を g, 時間を t とすると, 空気抵抗による水平方向の減速分は,速度を v, 速度の水平方向成分を vx, 空気抵…

C++で常微分方程式(ホイン法)

初速 150 km/h で, 45°の角度で投げたボールの軌跡をホイン法で計算する (空気抵抗を考慮しない) #include <iostream> #include <iomanip> #include <math.h> using namespace std; // 重力加速度 const double g = 9.8; // 水平方向の速度 double fx(double t, double vx) { // 水平方</math.h></iomanip></iostream>…

C++で常微分方程式(オイラー法)

初速 150 km/h で, 45°の角度で投げたボールの軌跡をオイラー法で計算する (空気抵抗を考慮しない) #include <iostream> #include <iomanip> #include <math.h> using namespace std; int main(void) { // 角度 double degree = 45; double radian = degree * M_PI / 180.0; // 初速 150</math.h></iomanip></iostream>…

C++で常微分方程式(オイラー法)

をオイラー法で近似する #include <iostream> #include <iomanip> #include <math.h> using namespace std; // 元の関数 double f(double x); // 導関数 double fd(double x); // Euler法 void euler(double x, double y, int n, double max); int main(void) { double x = 0.0; double </math.h></iomanip></iostream>…

JScriptで関数の近似(ラグランジュ補間)

をラグランジュ補間で近似するn+1個の点 (x0, y0), (x1, y1) … (xn, yn) が与えられているとき, これらすべての点を通る n次式は次のように表すことができる. この式を使って, 与えられた点以外の点の値を求める. // データ点の数 var N = 7 var x = [] var …

VBScriptで関数の近似(ラグランジュ補間)

をラグランジュ補間で近似するn+1個の点 (x0, y0), (x1, y1) … (xn, yn) が与えられているとき, これらすべての点を通る n次式は次のように表すことができる. この式を使って, 与えられた点以外の点の値を求める. Option Explicit 'データ点の数 - 1 Private…

「関数の近似」本日発売

本日発売 さまざまな言語で数値計算 第3巻 関数の近似作者: 山岡直樹出版社/メーカー: ForNext発売日: 2014/01/01メディア: Kindle版この商品を含むブログ (2件) を見る 既刊 さまざまな言語で数値計算 第1巻 級数展開・連分数展開作者: 山岡直樹出版社/メ…

Haskell で 積分(ロンバーグ積分)して π を求める

πの求め方 積分(ロンバーグ積分) まず, T1,1 から Tn,1 を, 台形則を使って求める. 次に, T2,2 から Tn,n まで, 以下の計算を行う. import Text.Printf import Control.Monad f::Double->Double f x = 4 / (1 + (x * x)) -- Richardsonの補外法 rich_sub n […

Haskell で 積分(Simpson則)して π を求める

πの求め方 積分(Simpson則) import Text.Printf import Control.Monad f::Double->Double f x = 4 / (1 + (x * x)) main = do forM_ ([1..5::Integer]) $ \j -> do let n = 2 ^ j let a = 0.0 let b = 1.0 let h = (b - a) / (fromIntegral n) -- シンプソン…