- 0
- 0
- 约1.97千字
- 约 19页
- 2017-01-06 发布于天津
- 举报
IT入門B2 ー 方程式の反復解法 ー * 授業内容 反復解法 ニュートン法 プログラムの作成 演習 非線形方程式 連立一次方程式を解く場合には,ガウスの消去法等といった直接解法により解の計算ができる. 非線形方程式を解く場合は直接解法が存在しないため,反復解法を用いて解を数値的に計算する. 今回の授業では,反復解法の中でもよく知られたニュートン法を用いて方程式の解を求めるプログラムを作成する. 反復解法 方程式 が与えられたとする. 適当な初期値 から出発し, のある解 に収束する列 をつくり, が に十分近づいたときに計算を打ち切り を近似解とする. 収束の判定は,ある微小な値 に対し,例えば次のような条件 とする: このとき,上の条件がすべて満たされても, が成り立つとは限らない. ニュートン法 ― 非線形方程式を解くための反復解法の一つ. を1回連続微分可能な関数とし,方程式 を解くことを考える. 適当な初期点 を選び,これを方程式の最初の近似解とする. ただし, とする. このとき ならば, を修正し とし,方程式 のより良い近似解となるようにする. ニュートン法 f を のまわりでTaylor展開すると, となる.ここで, として1次の項で打ち切ると, と近似できる.このとき,(右辺 = 0) になってほしいわけだから, と定まる.よって, である. ニュートン法 ここで, とおくと,上式は と書ける. これを繰り返して一般化すると となる.この反復解法をニュートン法と呼ぶ. ニュートン法 ニュートン法により得られる点列 が点 に収束したとする. このとき となる.すなわち したがって, が の解となっていることがわかる. ニュートン法 - 幾何学的な解釈 - 曲線 上の点 における接線 とx軸との交点のx座標 を求める操作の反復を行っている. ニュートン法 - 参考 - を定数として とする. 反復解法として を用いる方法を簡易ニュートン法と呼ぶ. とする場合や,r を のなんらかの近似とする場合が多い. プログラムの作成 以下の例題を解くためのプログラムを作成してみよう. より, とすると であり, で定まる反復により解を求める. 方程式 の解をニュートン法により求める. 例 題 プログラムの作成 ? の計算: はそれぞれ で与えられている.これらの値の計算には, をそれぞれ 関数として定義することにしよう. を以下のような関数として定義できる: も同様に関数名func_d()等として定義してみよう. double func(double x) { double y; y = x – 1.2*exp(-x); return y; } プログラムの作成 このとき,関数func()をmain関数等から呼び出すことでf (x)の値 を計算できる. double func(double x) { double y; y = x – 1.2*exp(-x); return y; } int main(void) { double f, x; x = 1.0; f = func(x); ← fにf (x)の値が代入される … プログラムの作成 ニュートン法では,適当な初期点 を選び,上式にしたがってi の値を順次変化させながら次の点を次々と計算する. 適当な停止条件を満たしたところで計算を止め,そのときの値を解とする. ?初期点の設定: 現在いる点を表す変数xをdouble型で宣言し,xに適当な値を代入. ?ニュートン法の反復: while文,for文等の繰り返し処理を利用して反復を実現する. int main(void) { double x; … x = 1.0; … *
您可能关注的文档
最近下载
- 直击中考---VB题库训练(1月30日).docx VIP
- 110kV武骏专用变电站工程--110kV电容式电压互感器招标文件(技术规范专用部分).doc VIP
- 各场所高压线的标准规范..pdf VIP
- 16S401管道和设备保温、防结露及电伴热.doc VIP
- 2026人教版小学三年级上册数学期末考试3套试卷(打印版含答案解析).docx
- 市场监管党组书记2025年度民主生活会个人对照检查发言材料(五个带头).docx VIP
- 直击中考---七年级上册1-3课题库训练(1月31日).docx VIP
- 小区物业装饰装修管理方案.docx VIP
- 物业公司“危险源”识别和管控归纳表.docx VIP
- 中国饮食文化——《全国导游基础知识》习题集.docx VIP
原创力文档

文档评论(0)