常微分方程式と偏微分方程式 1.常微分方程式 独立変数が一個のもの 振動の運動方程式 2.偏微分方程式 独立変数が二個以上のもの

Slides:



Advertisements
Similar presentations
1 微分・ベクトル解析 (4) 講師:幹 浩文( A314) TA :西方良太 M 1 ( A305 ) A 1 03 ( 10 : 50~12 : 20 ) 【金】 https://
Advertisements

コンピュータ基礎実験 第1 4回 コンピュータープログラミン グ ( C 言語)(11) 1.ファイル入出力(復習) 2.物理現象とプログラミン グ.
8.4 偏微分方程式の数値解 法 [偏微分の復習 (1)] のとき このこの と を 座標系の座標値とすると, と は独立。お互いに直交する値であるから, は意味がない。
1 運動方程式の例2:重力. 2 x 軸、 y 軸、 z 軸方向の単位ベクトル(長さ1)。 x y z O 基本ベクトルの復習 もし軸が動かない場合は、座標で書くと、 参考:動く電車の中で基本ベクトルを考える場合は、 基本ベクトルは時間の関数になるので、 時間で微分して0にならない場合がある。
数値解析シラバス C言語環境と数値解析の概要(1 回) C言語環境と数値解析の概要(1 回) 方程式の根(1回) 方程式の根(1回) 連立一次方程式(2回) 連立一次方程式(2回) 補間と近似(2回) 補間と近似(2回) 数値積分(1回) 数値積分(1回) 中間試験(1回) 中間試験(1回) 常微分方程式(1回)
Computational Fluid Dynamics(CFD) 岡永 博夫
医薬品素材学 I 1 物理量と単位 2 気体の性質 1-1 物理量と単位 1-2 SI 誘導単位の成り立ち 1-3 エネルギーの単位
自己重力多体系の 1次元シミュレーション 物理学科4年 宇宙物理学研究室  丸山典宏.
Fortran と有限差分法の 入門の入門の…
4.3 連立1次方程式   Ax = b   (23) と書くことができる。
数個、数十個のデータ点から その特徴をつかむ
2009年8月27日 熱流体力学 第14回 担当教員: 北川輝彦.
連立一次方程式 a11x1+a12x2+a13x3+...+a1nxn= b1
スペクトル法による数値計算の原理 -一次元線形・非線形移流問題の場合-
数楽(微分方程式を使おう!) ~第5章 ラプラス変換と総仕上げ~
原子動力工学特論 課題 3、4 交通電子機械工学専攻   齋藤 泰治.
P129 モンテカルロ シミュレーション 乱数を使ったシミュレーション.
水中で落下する球体の運動.
重力3体問題の数値積分Integration of 3-body encounter.
高等学校(工業) 国際単位系(SI).
大阪工業大学 情報科学部 情報システム学科 宇宙物理研究室 B 木村悠哉
IT入門B2 ー 連立一次方程式 ー.
第二回 連立1次方程式の解法 内容 目標 連立1次方程式の掃出し法 初期基底を求める 連立1次方程式を掃出し法を用いてExcelで解析する
1.Atwoodの器械による重力加速度測定 2.速度の2乗に比例する抵抗がある場合の終端速度 3.減衰振動、強制振動の電気回路モデル
周期境界条件下に配置されたブラックホールの変形
数値解析シラバス C言語環境と数値解析の概要(1回) 方程式の根(1回) 連立一次方程式(2回) 補間と近似(2回) 数値積分(1回)
反応性流体力学特論  -燃焼流れの力学- 燃焼の流体力学 4/22,13 燃焼の熱力学 5/13.
流体のラグランジアンカオスとカオス混合 1.ラグランジアンカオス 定常流や時間周期流のような層流の下での流体の微小部分のカオス的運動
Nagaoka University of Technology Graduate Student, Yoshio TATSUMI
コンピュータープログラミング (C言語)(11) 1.ファイル入出力(復習) 2.物理現象とプログラミング
数楽(微分方程式を使おう!) ~第4章 他分野への応用(上級編)~
電気回路Ⅱ 演習 特別編(数学) 三角関数 オイラーの公式 微分積分 微分方程式 付録 三角関数関連の公式
Ibaraki Univ. Dept of Electrical & Electronic Eng.
SPH法を用いた重力の潮汐力効果のシミュレーション
奈良女子大集中講義 バイオインフォマティクス (9) 相互作用推定
スペクトル法の一部の基礎の初歩への はじめの一歩
タップ長が一般化された 適応フィルタの統計力学
8.伝熱(2).
電界中の電子の運動 シミュレータ作成 精密工学科プログラミング基礎 資料.
傾きがわかった関数の軌跡を求める. 変数は二つ以上
LU分解を用いた連立一次方程式.
カオス水車のシミュレーションと その現象解析
第10回 FIR回路とIIR回路.
深海底は海嶺軸から遠ざかるにつれ、規則正しく深くなる。 なぜか?
電気回路学Ⅱ コミュニケーションネットワークコース 5セメ 山田 博仁.
シリカガラスの熱的性質 I 粘度,特性温度,熱膨張,比熱,熱伝導 福井大学工学部 葛生 伸.
動力学(Dynamics) 力と運動方程式 2008.6.10
化学工学基礎 −後半の後半− 第1回目講義 (2009年7月10日) 1 担当 二又裕之 物質工学1号館別館253ー3号室
4章 開水路における不等流(2) 漸変流 4-1漸変流とは ① 断面形状や底面形状が緩やかに変わる流れ。
プレートテクトニクス 講義レジメ [VI] 固体地球を“生きさせている”エネルギー源
連続体とは 連続体(continuum) 密度*が連続関数として定義できる場合
Chapter 26 Steady-State Molecular Diffusion
基礎水理学実験1 蛇口から水流を垂下し、水流の形状と乱れるところまでの距離を測定
低温物体が得た熱 高温物体が失った熱 = 得熱量=失熱量 これもエネルギー保存の法則.
建築環境工学・建築設備工学入門 <空気調和設備編> <換気設備> 自然換気の仕組みと基礎
データ解析 静岡大学工学部 安藤和敏
連立一次方程式 a11x1+a12x2+a13x3+...+a1nxn= b1
ニュートン力学(高校レベル) バージョン.2 担当教員:綴木 馴.
熱量 Q:熱量 [ cal ] or [J] m:質量 [g] or [kg] c:比熱 [cal/(g・K)] or [J/(kg・K)]
情報科学 第6回 数値解析(1).
C:開放,L:短絡として回路方程式を解く
シミュレーション物理4 運動方程式の方法.
Cプログラミング演習 ニュートン法による方程式の求解.
3 一次関数 1章 一次関数とグラフ §4 方程式とグラフ         (3時間).
* Ehime University, Japan
プログラミング言語によっては,複素数が使えない。
熱伝導方程式の導出 熱伝導:物質の移動を伴わずに高温側から低温側へ熱が伝わる現象 対流、輻射 フーリエの法則Fourier’s law:
8.数値微分・積分・微分方程式 工学的問題においては 解析的に微分値や積分値を求めたり, 微分方程式を解くことが難しいケースも多い。
Presentation transcript:

常微分方程式と偏微分方程式 1.常微分方程式 独立変数が一個のもの 振動の運動方程式 2.偏微分方程式 独立変数が二個以上のもの   独立変数が一個のもの 二階の常微分方程式 振動の運動方程式 2.偏微分方程式   独立変数が二個以上のもの 二階の偏微分方程式 一次元熱伝導

一階の常微分方程式の解析 初期値から解を求める。 与えられる式 与えられる初期条件 求める値

オイラー法 h = xn/n y yn x1 x y0 xn x0 y1 = y0 + y’(x0,y0)h 初期値が既知なので、逐次的に値を求める。 h = xn/n y yn x1 x y0 xn x0 y1 = y0 + y’(x0,y0)h

オイラー法の流れ x0=0, y0=1 y(1)? START 例題:dy/dx=y+x2-2x h=(xn-x0)/n yi+1=yi+yi’h i=n END No Yes 例題:dy/dx=y+x2-2x x0=0, y0=1 y(1)? y x0 y0 x1 h x xn y1 = y0 + y’(x0,y0)h

エクセルで作ってみよう(1) 時間: 位置: 空気密度: 投影面積: 抗力係数: 水滴の落下

エクセルで作ってみよう(1) 水滴の落下 水滴半径: 水密度: 球とすると とすると

=-$B$6*$B$5*$B$4/$B$3*E2^2+$B$8 A B C D E F 1 半径 0.002 時刻 位置 速度 加速度 2 水密度 μ 1000 3 質量 m 4 投影面積S 5 抗力係数CD 0.4 6 空気密度ρ 1.4 7 時間刻みΔt 0.01 8 重力加速度g 9.8 =-$B$6*$B$5*$B$4/$B$3*E2^2+$B$8 コピー =C2+$B$7 =4/3*PI()*B1^3*B2 =PI()*B1^2

=D2+0.5*(E2+E3)*$B$7 =E2+F2*$B$7 Dt dx dt d2x dt2 A B C D E F 1 半径 0.002 時刻 位置 速度 加速度 2 水 密度 1000 9.8 3 質量 3.35E-5 0.01 4 投影面積 1.26E-5 0.02 5 抗力係数 0.4 0.03 6 空気密度 1.4 0.04 7 時間刻み 0.05 8 重力加速度 0.06 微分値から次の値を求める =D2+0.5*(E2+E3)*$B$7 =E2+F2*$B$7 Dt dx dt d2x dt2

Cプログラムへ A B C D E F 1 半径 0.002 時刻 位置 速度 加速度 2 水 密度 1000 9.8 3 質量 9.8 3 質量 3.35E-5 0.01 4 投影面積 1.26E-5 0.02 5 抗力係数 0.4 0.03 6 空気密度 1.4 0.04 7 時間刻み 0.05 8 重力加速度 0.06 すべて配列にする すべて変数にする

int i,n=200; double r=0.002, dw=1000.0, da=1.4; double dt=0.01, m, s, cd=0.4, g=9.8 double t[200], x[100], v[200], a[200]; m=4.0/3.0*3.1415*r*r*r; s=3.1415*r*r; t[0]=0.0; x[0]=0.0; v[0]=0.0; a[0]=g; for(i=1;i<n;i++){ t[i]=t[i-1]+dt; v[i]=v[i-1]+a[i-1]*dt; x[i]=x[i-1]+v[i-1]*dt; a[i]=-cd*da*s/m*v[i]*v[i]+g;

振動のシミュレーション 1.常微分方程式 k =100 N/m c = 500N/(m/s) t = 0 (s)のとき m = 2 kg x = 0.2 m v = 0 m/s m = 2 kg m

振動のシミュレーション 1.常微分方程式 k =100 N/m c = 500N/(m/s) t = 0 (s)のとき m = 2 kg x = 0.2 m v = 0 m/s m = 2 kg

=-1/$B$3*($B$2*E2+$B$1*D2) A B C D E F 1 ばね定数 k 100 時刻 位置 速度 加速度 2 粘性係数 c 500 3 質量 m 4 時間刻み 0.01 5 初期位置 0.0 6 初期速度 7 =-1/$B$3*($B$2*E2+$B$1*D2) =A5 =A6 コピー =C2+$B$4

FILE *fp = fopen("data.csv","w"); int i,n=20000; double k=100.0, c=500.0, dt=0.01, m=2.0; double t[20000], x[20000], v[20000], a[20000]; t[0]=0.0; x[0]=0.2; v[0]=0.0; a[0]= -1.0/m*(c*v[0]+k*x[0]); for(i=1;i<n;i++){ t[i]=t[i-1]+dt; v[i]=v[i-1]+a[i-1]*dt; x[i]=x[i-1]+v[i-1]*dt; a[i]=-1.0/m*(c*v[i]+k*x[i]); fprintf(fp,"%d,%f,%f\n",i,t[i],x[i]); } fclose(fp);

熱伝導の基礎 温度T x x l:熱伝導率 A:断面積 伝わる熱量は温度勾配に比例

偏微分方程式 例:熱伝導 x x l:熱伝導率 c:比熱 r:密度 A:断面積 流入する熱量は温度上昇を引き起こす。

差分法による解法 Dt:時間における熱の移動 T(i,j - 1) T(i,j) T(i,j + 1) x h h

差分法による解法 Dt:時間における熱の移動 T(i,j - 1) T(i,j) T(i,j + 1) x h h h h 前と後ろの温度を足して、現在の温度の2倍を引く。

t = 0, x<1m;T=0Co, x=1;T=100Co 偏微分方程式 T = 100 Co x 1 t = 0, x<1m;T=0Co, x=1;T=100Co

=D3+$B$1/($B$2*$B$3)*(E3-2*D3+C3)*$B$4/$B$7^2 A B C D E F N 1 熱伝導率 W/mK 390 座標 2 比熱 J/kgK 380 時刻 0.1 0.2 1.0 3 密度 Kg/m3 8900 4 時間刻み 0.01 5 初期温度 ℃ 0.0 6 端点温度 100 7 X座標 刻み =D2+$B$7 =$B$5 =$B$6 =C3+$B$4 =D3+$B$1/($B$2*$B$3)*(E3-2*D3+C3)*$B$4/$B$7^2

t[i][j], 時間 位置 時間の数 要素の数 int i, j, m=100, n=10; double x[100], t[1000][100], h, dt=5.0; double k=390.0, c=380.0, r=8900.0, t1=100.0; x[0]=0.0, x[n]=1.0; for(i=0,i<m+1;i++){ t[i][0]=0.0; t[i][n]=t1; } h = (x[n] - x[0])/(double)n; for(j=0,j<n;n++){ x[j+1] = h * (double) (j + 1) t[0][j]=0.0; for(i=0;i<m;i++){ for(j=1;j<n;j++){ t[i+1][j] = t[i][j] + k/(c*r)*(t[i][j-1]-2.0*t[i][j]+t[i][j+1])/(h*h)*dt; return 0; 温度の変数 t[i][j], 時間の変数 要素の変数