经常使用算法

经常使用算法

ID:78570479

大小:76.80 KB

页数:10页

时间:2022-02-03

经常使用算法_第1页
经常使用算法_第2页
经常使用算法_第3页
经常使用算法_第4页
经常使用算法_第5页
经常使用算法_第6页
经常使用算法_第7页
经常使用算法_第8页
经常使用算法_第9页
经常使用算法_第10页
资源描述:

《经常使用算法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第9章经常使用算法求任意实函数的单实根设任意实函数f(x)=Of(x)是x的非线性或线性函数,求它的单实根的方式很多,如二分法,弦截法,优选法,插值法等,各类方式大同小异。下面介绍弦截法求实函数在给定一个区间[xmin,xmax]中的所有单实根。这种方式求根分两步进行。第一步,判定某个小区间内是不是有根存在,其原理是xb=xa+h,自变量从原先的一个初值xa向前跨出一步h,若是在[xa,xa+h]中有根存在,那么必有函数值f(xa)与f(xb)异号或f(xb)=0,这时转到第二步,不然将xbxa,继续第一步的工作。第二步,以(xa,f(xa))和(x

2、b,f(xb))作一直线,取得直线方程:一一f(xb)-f(xa)y=f(xa)+•(x-xa)xb-xa以y=0时的x值xO作为实验根,那么xO=xa-f(xa)«——"'二——f(xb)-f(xa),求得f(xO)=yOo若是f(xO)=yO<£或xb-xa<£l,能够以为xO是方程f(x)=O的一个根,如不知足条件,依照yO的符号使得xO->xa,yO->ya或xO-xb,yO->yb,继续第二步的操作,直到知足条件。当xb+h>xmax时,搜索进程终止。计算步长选择原那么是,保证在一个步长区间内的根不能多于1个互异根(重肃除外),不然将造成丢

3、根现象,这就要求h取得较小,但增加计算时刻,因此应综合考虑,对周期函数,h应小于周期的1/2。操纵精度£的大小直接阻碍求根精度,应依照需要设定,一样可取10渣~io10,£1可取口几种经常使用的数字积分方式(微分方程的数字解)y(to)=y()1欧拉法(折线法)设一阶微分方程&=y=f(t,y)dx由图可知,过(to,yo)点的斜率为y(>=f(to,y。)若是L离t。很近,即&很小,曲线y⑴可用切线来近似,其切线方程y=yo+f(to,y°)(t-to)其微分方程在时,可近似表示为y(L)=y1=yo+f(to,y<))(L重复上述近似进程,当t=

4、时,y(t2)=y2=yi+f(tPyi)(t2-tj那么有一样近似公式=+-1=+/'(,〃,X%-乙)若是令tz-tn=I",称为计算步矩,那么y(tn+l)=yn+l=yn+f(tn,Yn)・hn这确实是欧拉法数字积分的递推计算公式。由公式可看出,只要咱们给出方程的初值(to,yo)和相应的步距,慢慢进行递推就可取得微分方程的近似数字解。欧拉法的计算是十分简单的,其计算误差正比于1/,由此,要取得高精度解,必需减小步距,但这使得计算次数增加,乂由于运算机的字长有限,h减小得过小,将引入舍入误差,因此此方式的精度提高有限,实际应用中较少采纳。2梯

5、形法(预报一一校正法)欧拉法精度低,却给咱们一些启发,对微分方程y=可改写成y(t)=yo+flf(t,y)dxJlo当t=L时,那么从此式能够看出,要求得y(t,)的值,等式右边中含有未知函数,因此不能取得y3)的值,但如果是咱们用已知的函数值y(t°)来代替y(t),用不变取代转变的函数,即['f(t,y(t))dt〜0f(t0,y(t()))dt“to〜事实上右边是一个矩形面积「f(t,y(t))dt=f(t0,y(t。))•(t,一t0)“%则%=yo+h「f(to,y°)递推公式为yz=yn+3用此矩形的面积的算法,其计算误差是显然的(欧拉

6、法),为了提高精度,咱们能够用梯形面积来取代矩形的面积,即[l,f(t,y(t))dt=4(f0+f)•ho八o则y1=yo+:(fo+fi)・h。递推形式为丫2=%+1hn(fn+fn+I)或Ye=yn+hn•[f(tn,yn)+f(tn+ryn+1)]应用上式求积分,产生了新的问题,即在计算yz时,要用九川,而丫2不知,那么f(tz,yz)是未知的,要取得y-i通常可用迭代方式,即在心与小之间迭代多次,使其计算的y.慢慢收敛于y(t。,即y3=yn+h「f(tn,yn)y;+i=yn+hn•[f(tn,yn)+f(tn+i,y:L)]Yn+1=Y

7、n+hn•[f(tn^n)+f(tn+pyn;,l)]若是序列y3极限存在,那么当k-8时,y3-y(tz),要保证上述极限存在,只要选取h小到必然程度,就能够取得知足。被选取必然的知足了收敛条件,但在计算上要迭代多次才以为求得了准确值,迭代次数越多,计算精度越高,但计算工作量加大,因此一样只迭代一次即可,那么算法写成yn+i=yn+hn•f(tn,yn)yn+i=yn+1hn•tf(tn,yn)+f(tn+1,y;;+1)⑵上式为预报校正公式。应用梯形近似进行校正求得的值,事实上此方式是将欧拉法与梯形法的结合的一种算法,计算量比欧拉法增加了一倍。3

8、龙格一库塔法(runge-kutta)将梯形法进一步扩展,能够取得常常利用的一种算法。考虑如下的微分方程:半

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

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

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