收藏 分享(赏)

MATLAB实现NEWTON法 割线法 抛物线法.pdf

上传人:HR专家 文档编号:5910336 上传时间:2019-03-21 格式:PDF 页数:15 大小:117.34KB
下载 相关 举报
MATLAB实现NEWTON法 割线法 抛物线法.pdf_第1页
第1页 / 共15页
MATLAB实现NEWTON法 割线法 抛物线法.pdf_第2页
第2页 / 共15页
MATLAB实现NEWTON法 割线法 抛物线法.pdf_第3页
第3页 / 共15页
MATLAB实现NEWTON法 割线法 抛物线法.pdf_第4页
第4页 / 共15页
MATLAB实现NEWTON法 割线法 抛物线法.pdf_第5页
第5页 / 共15页
点击查看更多>>
资源描述

1、( 一 ) 实 验 目 的 :熟 悉 和 掌 握 Newton法 ,割 线 法 ,抛 物 线 法 的 方 法 思 路 , 并 能 够 在matlab上 编 程 实 现( 二 ) 问 题 描 述 :问 题 一 . 方 程 求 根(1).给 定 一 个 三 次 方 程 ,分 别 用 Newton法 ,割 线 法 ,抛 物 线 法 求 解 .方 程 的 构 造 方 法 :(a)根 :方 程 的 根 为 学 号 的 后 三 位 乘 以 倒 数 第 二 位 加 1再 除 以 1000.假 设 你 的 学 号 为 B06060141,则 根 为 141*(4+1)/1000=0.564(b)方 程 :以

2、你 的 学 号 的 后 三 位 数 分 别 作 为 方 程 的 三 次 项 ,二 次 项 ,一次 项 的 系 数 ,根 据 所 给 的 根 以 及 三 个 系 数 确 定 常 数 项 .例 如 :你 的 学 号 是 B06060141,则 你 的 方 程 是 x3+4x2+x+a0=0的 形 式 .方 程 的 根 为 0.564,因 此 有0.5643+4*0.5642+0.564+a0=0,于 是 a0=-2.015790144你 的 方 程 为 x3+4x2+x-2.015790144=0.(2)假 设 方 程 是 sinx+4x2+x+a0=0 的 形 式 ( 三 个 系 数 分 别 是

3、 学 号 中 的数 字 ) , 重 新 解 决 类 似 的 问 题(3)构 造 一 个 五 次 方 程 完 成 上 面 的 工 作 .四 次 方 程 的 构 造 :将 三 次 多 项 式 再 乘 以 (x-p*)2得 到 对 应 的 五 次 多 项式 (p*为 已 经 确 定 的 方 程 的 根 ,显 然 ,得 到 的 五 次 方 程 有 重 根 ).(4)将 ( 2) 中 的 方 程 同 样 乘 以 (x-p*)得 到 一 个 新 的 方 程 来 求 解( 三 ) 算 法 介 绍在 本 文 题 中 , 我 们 用 到 了 newton法 , 割 线 法 , 抛 物 线 法 。1.Newton

4、法 迭 代 格 式 为 :当 初 值 与 真 解 足 够 靠 近 , newton迭 代 法 收 敛 , 对 于 单 根 , newton收 敛 速 度 很 快 , 对 于 重 根 , 收 敛 较 慢 。2.割 线 法 : 为 了 回 避 导 数 值 的 计 算 , 使 用 上 的 差 商 代 替 , 得 到 割线 法 迭 代 公 式 :割 线 法 的 收 敛 阶 虽 然 低 于 newton法 , 但 迭 代 以 此 只 需 计 算 一 次函 数 值 , 不 需 计 算 其 导 数 , 所 以 效 率 高 , 实 际 问 题 中 经 常 应 用 。3.抛 物 线 法 : 可 以 通 过 三

5、点 做 一 条 抛 物 线 , 产 生 迭 代 序 列 的 方 法称 为 抛 物 线 法 。 其 迭 代 公 式 为 :其 中收 敛 速 度 比 割 线 法 更 接 近 于 newton法 。对 于 本 问 题 的 解 决 就 以 上 述 理 论 为 依 据 。 终 止 准 则 为 :本 题 中 所 有 取 1e-6。( 四 ) 程 序注 : n 表 示 迭 代 步 数 。第 一 题 ( 1) 首 先 根 据 题 目 要 求 对 方 程 进 行 构 造 , 得 到 的 方 程 为 :。Newton法 求 解 算 法建 立 newton1.m源 程 序 , 源 程 序 代 码 为 :functi

6、on x=newton1(fn,dfn,x0,e)if narginex0=x;x=x0-feval(fn,x0)/feval(dfn,x0);end在 matlab软 件 中 执 行 下 列 语 句 并 得 到 最 终 结 果 截 图 clear fun=inline(x3+2*x-0.205061208); dfun=inline(3*x2+2);format long; newton1(fun,dfun,0.5,1e-6),format short并 得 到 最 终 结 果n = 4ans =0.10200000000000割 线 法 求 解 算 法建 立 gexianfa.m 源 程

7、序 , 源 程 序 代 码 为 :function x=gexian(f,x0,x1,e)if narginez=x-(feval(f,x)*(x-y)/(feval(f,x)-feval(f,y);y=x;x=z;end在 matlab软 件 中 执 行 下 列 语 句 clear fun=inline(x3+2*x-0.205061208); gexianfa(fun,0,1,1e-6),format short并 得 到 最 终 结 果 :n =5ans =0.1020抛 物 线 法 求 解 算 法建 立 paowuxian.m源 程 序 , 源 程 序 代 码 为 :function

8、x=pawuxian(f,x0,x1,x2,e)if nargineh1=y-z;h2=x-y;c1=(feval(f,y)-feval(f,z)/h1;c2=(feval(f,x)-feval(f,y)/h2;d=(c1-c2)/(h2+h1);w=c2+h2*d;xi=x-(2*feval(f,x)/(w+(w/abs(w)*sqrt(w2-4*feval(f,x)*d); z=y;y=x;x=xi;end在 matlab 软 件 中 执 行 下 列 语 句 fun=inline(x3+2*x-0.205061208); paowuxian(fun,0,0.5,1,1e-6),format

9、 short并 得 到 最 终 结 果n = 7ans =0.1020第 一 题 ( 2)根 据 要 求 , 待 求 解 的 方 程 应 为 : 。仍 然 利 用 ( 1) 中 方 法 求 解 这 一 问 题 , 并 利 用 图 解 法 找 到 初 值 ,通 过 观 察 图 像 , 将 newton法 初 值 设 为 : 0.2, 割 线 法 初 值 设 为 : 0,0.2。抛 物 线 法 初 值 设 为 : 0,0.1,0.2。图 像 见 下 图 :Newton法 求 解 :在 matlab软 件 中 执 行 下 列 语 句 clear fun=inline(sin(x)+2*x-0.205

10、061208); dfun=inline(cos(x)+2);format long; newton1(fun,dfun,0.2,1e-6),format short并 得 到 最 终 结 果n = 3ans =0.06837148815510割 线 法 求 解 :在 matlab软 件 中 执 行 下 列 语 句 clear fun=inline(sin(x)+2*x-0.205061208); gexianfa(fun,0,0.2,1e-6),format short并 得 到 最 终 结 果 截 图n =3ans =0.0684抛 物 线 法 求 解在 matlab 软 件 中 执 行

11、下 列 语 句 并 得 到 最 终 结 果 截 图 clear fun=inline(sin(x)+2*x-0.205061208); paowuxian(fun,0,0.1,0.2,1e-6),format short并 得 到 最 终 结 果n = 3ans =0.0684问 题 一 ( 3)按 照 题 目 要 求 对 五 次 方 程 进 行 构 造 为 :仍 然 利 用 ( 1) 中 方 法 求 解 这 一 问 题 , 并 利 用 图 解 法 找 到 初 值 ,通 过 观 察 图 像 , 将 newton 法 初 值 设 为 : 在 此 处 我 们 选 取 了 两 组 初 值为 0以 及

12、 0.5, 割 线 法 初 值 设 为 : -1,1。 抛 物 线 法 初 值 设 为 : 两 组 初值 为 -1,0,1以 及 0,0.5,1。Newton法 :在 matlab软 件 中 执 行 下 列 语 句 clear fun=inline(x3+2*x-0.205061208)*(x-0.102)2); dfun=diff(x3+2*x-0.205061208)*(x-0.102)2)dfun =(3*x2+2)*(x-.102)2+2*(x3+2*x-.205061208)*(x-.102)dfun=inline(3*x2+2)*(x-.102)2+2*(x3+2*x-.20506

13、1208)*(x-.102);format long; newton1(fun,dfun,0,1e-6),format short并 得 到 最 终 结 果 :n = 27ans =0.10199821300764 newton1(fun,dfun,0.5,1e-6),format shortn = 31ans =0.1020割 线 法 :在 matlab软 件 中 执 行 下 列 语 句 clear fun=inline(x3+2*x-0.205061208)*(x-0.102)2); gexianfa(fun,-1,1,1e-6),format short并 得 到 最 终 结 果 :n

14、= 41ans =0.1020抛 物 线 法 :在 matlab软 件 中 执 行 下 列 语 句 clear fun=inline(x3+2*x-0.205061208)*(x-0.102)2); paowuxian(fun,0,0.5,1,1e-6),format short并 得 到 最 终 结 果 截 图 :n = 57ans =0.1020问 题 一 ( 4)按 照 题 目 要 求 对 方 程 进 行 构 造仍 然 利 用 ( 1) 中 方 法 求 解 这 一 问 题 , 并 利 用 图 解 法 找 到 初 值 ,通 过 观 察 图 像 , 可 知 存 在 重 根 , 故 将 new

15、ton 法 初 值 设 为 : 两 组 初 值为 0以 及 0.5, 割 线 法 初 值 设 为 : 两 组 初 值 为 0,0.1以 及 -0.1,0.1。抛 物 线 法 初 值 设 为 : 两 组 初 值 为 -1,0,1以 及 0,0.5,1。绘 图 语 句 为 :fun=inline(sin(x)+2*x-0.205061208)*(x-0.102);fplot(fun,-1,1)Newton法 :在 matlab软 件 中 执 行 下 列 语 句 clearfun=inline(sin(x)+2*x-0.205061208)*(x-0.102);fplot(fun,-1,1); df

16、un=diff(sin(x)+2*x-0.205061208)*(x-0.102)dfun =(cos(x)+2)*(x-.102)+sin(x)+2*x-.205061208dfun=inline(cos(x)+2)*(x-.102)+sin(x)+2*x-.205061208);format long; newton1(fun,dfun,0,1e-6),format short并 得 到 最 终 截 图 :n = 6ans =0.06837148815484 newton1(fun,dfun,0.5,1e-6),format short并 得 到 最 终 结 果 :n = 8ans =0.

17、1020割 线 法 :在 matlab软 件 中 执 行 下 列 语 句 clear fun=inline(sin(x)+2*x-0.205061208)*(x-0.102); gexianfa(fun,0,1,1e-6),format short并 得 到 最 终 结 果 :n = 10ans =0.0684 gexianfa(fun,0,0.1,1e-6),format short并 得 到 最 终 结 果 :n = 5ans =0.1020抛 物 线 法 :在 matlab软 件 中 执 行 下 列 语 句 clear fun=inline(sin(x)+2*x-0.205061208)

18、*(x-0.102); paowuxian(fun,-0.1,0,0.05,1e-6),format short并 得 到 最 终 结 果 :n = 8ans =0.0684 paowuxian(fun,0,0.5,1,1e-6),format short并 得 到 最 终 结 果 :n = 15ans =0.1020( 五 ) 计 算 结 果 Newton法 割 线 法 抛 物 线 法问 题 一 ( 1) 0.102 0.102 0.102问 题 一 ( 2) 0.068371488155510 0.0684 0.0684问 题 一 ( 3) 0.102 0.102 0.102问 题 一 (

19、 4) 0.102和0.068148815484 0.102和0.0684 0.102和0.0684( 1) 迭 代 步 数 ( 2) 迭 代 步 数 ( 3) 迭 代 步 数 ( 4) 迭 代 步 数Newton法 4 3 31 6,8割 线 法 5 3 41 10, 5抛 物 线 法 7 3 57 8, 15( 六 ) 结 果 分 析将 Newton法 , 割 线 法 , 抛 物 线 法 进 行 比 较 可 以 看 到 在 本 文 题 中 ,三 种 方 法 计 算 得 到 的 最 终 结 果 基 本 相 同 , 但 是 迭 代 步 数 有 较 大 差 别 ,综 合 看 来 Newton法

20、迭 代 步 数 最 少 , 割 线 法 次 之 , 抛 物 线 法 最 次 。 这与 算 法 设 计 中 所 说 Newton法 收 敛 最 快 , 割 线 法 次 之 , 抛 物 线 法 最 次很 好 的 贴 合 。对 每 个 算 法 单 独 来 看 , 显 然 选 择 初 值 不 同 对 于 迭 代 步 数 影 响 较 大 ,对 于 找 到 根 也 会 有 影 响 。 因 此 应 该 先 通 过 画 图 确 定 根 的 大 致 位 置 , 给出 在 其 附 近 的 初 值 。( 七 ) 心 得 体 会在 实 现 这 三 个 算 法 的 过 程 中 , 本 身 编 程 较 易 实 现 , 最 重 要 的 是 对算 法 本 身 的 理 解 , 只 有 真 正 理 解 算 法 的 含 义 才 能 更 快 更 好 的 实 现 程 序 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 经营企划

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报