数値解析 平成29年度前期 第4週 [5月1日] 静岡大学 創造科学技術大学院 情報科学専攻 工学部機械工学科 計測情報講座 三浦 憲二郎

Slides:



Advertisements
Similar presentations
情報基礎実習 I (第6回) 木曜4・5限 担当:北川 晃. Stream クラスを用いたファイルの接続 … Dim インスタンス名 As New IO.StreamReader( _ “ ファイルの絶対パス ”, _ System.Text.Encoding.Default) … s = インスタンス名.
Advertisements

数値解析シラバス C言語環境と数値解析の概要(1 回) C言語環境と数値解析の概要(1 回) 方程式の根(1回) 方程式の根(1回) 連立一次方程式(2回) 連立一次方程式(2回) 補間と近似(2回) 補間と近似(2回) 数値積分(1回) 数値積分(1回) 中間試験(1回) 中間試験(1回) 常微分方程式(1回)
だい六か – クリスマスとお正月 ぶんぽう. て form review ► Group 1 Verbs ► Have two or more ひらがな in the verb stem AND ► The final sound of the verb stem is from the い row.
第 5 章 2 次元モデル Chapter 5 2-dimensional model. Contents 1.2 次元モデル 2-dimensional model 2. 弱形式 Weak form 3.FEM 近似 FEM approximation 4. まとめ Summary.
Essay writing rules for Japanese!!. * First ・ There are two directions you can write. ・よこがき / 横書き (same as we write English) ・たてがき / 縦書き (from right to.
VE 01 え form What is え form? え? You can do that many things with え form?
第6回条件による分岐.
Fortran と有限差分法の 入門の入門の…
英語勉強会.
プログラミング論 数値積分
解析的には解が得られない 方程式を数値的に求める。 例:3次方程式
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
連立一次方程式 a11x1+a12x2+a13x3+...+a1nxn= b1
1 次方程式 直線   と 軸が交わる点 解ける! 解析的に解ける(解析解)   または 厳密に解ける (厳密解)
Scilab で学ぶ  わかりやすい数値計算法 舞鶴高専 電子制御工学科 川田 昌克.
第2回ネットワークプログラミング 中村 修.
日本人の英語文章の中で「ENJOY」はどういうふうに使われているのか
IT入門B2 ー 連立一次方程式 ー.
第二回 連立1次方程式の解法 内容 目標 連立1次方程式の掃出し法 初期基底を求める 連立1次方程式を掃出し法を用いてExcelで解析する
A, An & The Exercises.
Let’s learn how to say where the zoo animals have come from in Japanese! Listen and repeat.
4.2 連立非線形方程式 (1)繰返し法による方法
数値解析シラバス C言語環境と数値解析の概要(1回) 方程式の根(1回) 連立一次方程式(2回) 補間と近似(2回) 数値積分(1回)
非線形方程式の近似解 (2分法,はさみうち法,Newton-Raphson法)
十年生の 日本語 Year 10 Writing Portfolio
Let’s learn how to say where the zoo animals have come from in Japanese! Listen and repeat.
Licensing information
定期考査2 英語.
The Sacred Deer of 奈良(なら)
CRLA Project Assisting the Project of
What is the English Lounge?
第7回 条件による繰り返し.
ストップウォッチの カード ストップウォッチの カード
Session 8: How can you present your research?
関数とポインタ 値呼び出しと参照呼び出し swapのいろいろ 関数引数 数値積分
数値積分.
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
Term paper, Report (1st, first)
My Favorite Movie I will introduce my favorite movie.
第7回 条件による繰り返し.
岩村雅一 知能情報工学演習I 第10回(後半第4回) 岩村雅一
Where is Wumpus Propositional logic (cont…) Reasoning where is wumpus
プログラミング演習I ―数値解析― 平成16年度 前期 上 村 佳 嗣.
ルンゲクッタ法 となる微分方程式の解を数値的に解く方法.
知能情報工学演習I 第7回( C言語第1回) 課題の回答
プログラミング基礎B 文字列の扱い.
PADのテンプレート 処理、連接 x0 ← x x ← x0+ u(x0) err ← |x - x0| 判断(選択) x2 ← x3
PADのテンプレート 処理、連接 x0 ← x x ← x0+ u(x0) err ← |x - x0| 判断(選択) x2 ← x3
2分法のプログラム作成方法 2分法のプログラム(全体構成) プログラム作成要領 2分法のメイン関数(変数宣言)
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
ロールプレイアクティビティ ある状況設定の中で、登場人物になりきり会話をします。 CAN-DO: 状況に応じた適切な質問をすることができる。
疑似乱数, モンテカルロ法によるシミュレーション
計算機プログラミングI 第6回 2002年11月14日(木) アルゴリズムと計算量 第1回課題の説明 平方根を計算するアルゴリズム 計算量
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
連立一次方程式 a11x1+a12x2+a13x3+...+a1nxn= b1
IF文 START もしも宝くじが当たったら 就職活動する 就職活動しない YES END NO.
数値解析 第6章.
13.ニュートン法.
2008年6月5日 非線形方程式の近似解 2分法,はさみうち法,Newton-Raphson法)
ニュートン法による 非線型方程式の解.
cp-15. 疑似乱数とシミュレーション (C プログラミング演習,Visual Studio 2019 対応)
Cプログラミング演習 ニュートン法による方程式の求解.
岩村雅一 知能情報工学演習I 第10回(後半第4回) 岩村雅一
プログラミング入門2 第3回 条件分岐(2) 繰り返し文 篠埜 功.
コンピュータの高速化により, 即座に計算できるようになってきたが, 手法的にはコンピュータ出現以前に考え出された 方法が数多く使われている。
計算技術研究会 第5回 C言語勉強会 関数(function)を使う
プログラミング言語によっては,複素数が使えない。
C言語講座 四則演算  if ,  switch 制御文.
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
8.数値微分・積分・微分方程式 工学的問題においては 解析的に微分値や積分値を求めたり, 微分方程式を解くことが難しいケースも多い。
Presentation transcript:

数値解析 平成29年度前期 第4週 [5月1日] 静岡大学 創造科学技術大学院 情報科学専攻 工学部機械工学科 計測情報講座 三浦 憲二郎 数値解析 平成29年度前期 第4週 [5月1日]  静岡大学    創造科学技術大学院      情報科学専攻    工学部機械工学科      計測情報講座 三浦 憲二郎 1

講義アウトライン [5月1日] 非線形方程式 2分法 The outline of the 1st lecture is as follows: At first, I will introduce you several sources of information on how to take this lecture and information assisting your studies. Second, I will explain the syllabus of the lecture and you will know what you will learn through this lecture. Then, I will refer the trends of the computer graphics. The computer graphics is an exciting research area and many techniques to create very impressive images have been invented and now it gives huge influences to our daily lives as well. We can see many computer-generated images everywhere and we know visual effects of many movies and commercial films are very attractive. I will survey the trends of such an exciting technical field. Next, I will briefly discuss several software tools to make programs, especially useful for our lecture. Cygnus gives us a comfortable environment of the program development and the GNU Emacs is an editor to write programs. Finally, I will start the study on the C programming language from simple grammars on the statement "for" and two functions printf() and scanf() for output and input.

非線形方程式 p.70 代数方程式の解 4次方程式までは公式があり,解ける. 5次以上の方程式に代数的解法は存在しない. 代数方程式の解     4次方程式までは公式があり,解ける. 5次以上の方程式に代数的解法は存在しない. 数値的に解くしかない. 高次の連立方程式,三角関数など変数のn乗で表せない項を含む方程式

2分法 p.70 定理4.1 (中間値の定理) 関数f(x)は閉区間[a,b]で連続で f(a)≠f(b) な  らば,f(a) と f(b) の間の任意の数 k に対して f(c)=k となる c (a<c<b)が   存在する.   2分法 中間値の定理より,f(a) f(b) < 0 ならば,f(c) =0, a < c < b となる cが存在する. (1) 何らかの方法で f(a) f(b) < 0 となる閉区間 [a, b] を求める. (2) c1 = (a+b)/2 (2a) f(a) f(c1) < 0 のとき,解αは [a, c1] に存在する. (2b) f(c1) f(b) < 0 のとき,解αは [c1, b] に存在する. (2a) では [a, b] の代わりに[a,c1], (2b)では [c1, b]とする. ステップ(2)に戻り,閉区間が十分に小さくなるまで繰り返す

2分法のアルゴリズム p.71

2分法 区間 [a, b]に解が1つしか存在しないのならば, n回目の区間 dn < εのときに計算を打ち切るとすると,必要な計算回数nは, を満たす最小の自然数 絶対値誤差 ステップ1) 区間 [a, b] の求め方 (1) 最初の区間 [xmin, xmax] ,および 微小区間の幅 h を与える. (2) n=(xmax-xmin) / h として分割数を定め,x0=xminとする. (3) k=1,2,…,nに対して,xk=xmin+khとし,f(xk-1) f(xk) < 0 なら     [xk-1, xk] を対象区間にする.

2分法:プログラム #include <stdio.h> #include <math.h> double bisection(double a,double b,double eps); /* 2分法 */ double f(double x); /* 関数の定義 */ int main(void){ double a,b,x,h,y1,y2,eps=pow(2.0,-30.0); int n; printf("初期区間[a,b]を入力してください.---> a b\n"); scanf("%lf%lf",&a,&b); printf("区間の分割数nを入力してください.---> n\n"); scanf("%d",&n); /* 対象区間を探索しながら2分法を適用 */ h=(b-a)/n; y1=f(a); for(x=a+h;x<=b;x+=h){ y2=f(x); if(y1*y2<0.0){ printf("求める答えはx=%fです.\n",bisection(x-h,x,eps)); } y1=y2; return 0;

2分法:プログラム /* 2分法 */ double bisection(double a,double b,double eps){ double c; do{ c=0.5*(a+b); if(f(a)*f(c)<0){ b=c; } else{ a=c; }while(fabs(b-a) >=eps);/* fabs()は絶対値を返す.「C言語入門」p.264 */ return c; /* 関数の定義 */ double f(double x){ return x*(x*x*(x*x-5.0)+4.0); /* x*x*x*x*x-5.0*x*x*x+4.0*x */

プログラム:実行結果 区間の分割数nを入力してください.- - -> n 10 求める答えはx=-2.000000です. 初期区間[a,b]を入力してください.- - ->a b -3 3 区間の分割数nを入力してください.- - -> n 10 求める答えはx=-2.000000です. 求める答えはx=-1.000000です. 求める答えはx=-0.000000です. 求める答えはx=1.000000です. 求める答えはx=2.000000です.

まとめ 非線形方程式 2分法 The summary of this lecture is as follows: We have learn the basics of the C language, The for statement, printf() and scanf(). This is the end of the 1st lecture. I hope everybody has enjoyed the lecture and will enjoy the exercises. See you next time.