二阶非线性常微分方程的打靶法.ppt

二阶非线性常微分方程的打靶法.ppt

ID:61775801

大小:1.32 MB

页数:14页

时间:2021-03-20

二阶非线性常微分方程的打靶法.ppt_第1页
二阶非线性常微分方程的打靶法.ppt_第2页
二阶非线性常微分方程的打靶法.ppt_第3页
二阶非线性常微分方程的打靶法.ppt_第4页
二阶非线性常微分方程的打靶法.ppt_第5页
资源描述:

《二阶非线性常微分方程的打靶法.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、二阶非线性常微分方程的打靶法计算思路主要分为以下五步:给定容许误差ε,迭代初始值γ1,对k=1,2,...做:(1)用四阶Runge-Kutta方法求解初值问,得出u1之后取其在γk的值,从而得到F(γk)=u1(b,γk)-β(2)若

2、F(γk)

3、<ε,则u1即为所求,跳出循环。否则:(3)用四阶Runge-Kutta方法求解初值问题由此得到F'(γk)=v1(b,γk)(4)用牛顿迭代计算γk+1,即(5)置k+1→k,转(1)直到误差在范围内。综上,实现了打靶法对非线性方程的拟合。接下来是每一步的代码:程序开头各变量的设置functionys=n

4、dbf(f,g,a,b,alfa,beta,n,eps,s0)%f为二阶导数,y''=f(x,y,y'),g为f对y求偏导后的%(a,b)为自变量迭代区间%alfa,beta为给定的边值条件%eps题目规定的精度%n为迭代次数%选取适当的s0的初值循环第一步x0=[alfa,s0];%选取合适的迭代初值y0=RK4(f,a,b,h,x0);%龙格库塔算出u1(γk)constant=y0(n,1)-beta;这里的y0(n,1)即是u1(γk,b),constant即为F(γk)循环第二步检验误差以跳出ifabs(constant)

5、否合题意break;循环第三步得到F函数的导数u0=[0,1];u1=NRK4(g,a,b,h,u0,y0);通过偏导数求得的F’。循环第四步用牛顿迭代算出新的初值s0=s0-constant/u1(n,1);之后把所有的步奏放进一个while循环,跳出的条件即是constant小于给定的误差数值实验微分方程得到图像可以看出精度还是蛮高的与matlab自带函数的比较分别用Bvp4c函数和打靶法解微分方程:得到结论:图像上的拟合度差不多,但是具体做数值误差之后Bvp4c函数的精确度比较高。Bvp4c大概为1.0e-10,打靶法只有1.0e-4再改变迭代方

6、法进行比较用二分法迭代γk此时不用再求F的导数,所以也不用输入偏导数g同样解上面的微分方程:图像的拟合度也比较高。数值误差方面和牛顿迭代在同一数量级,所以相差不大。算法总结牛顿打靶法精度比较高但是对于初值的选取要求很高,需要在精确值附近而且在开头需要手动输入偏导数谢谢观赏,祝大家期末满绩!

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。