第六章 计算方法

上传人:创****公 文档编号:136495978 上传时间:2020-06-28 格式:PPT 页数:21 大小:356KB
返回 下载 相关 举报
第六章 计算方法_第1页
第1页 / 共21页
第六章 计算方法_第2页
第2页 / 共21页
第六章 计算方法_第3页
第3页 / 共21页
第六章 计算方法_第4页
第4页 / 共21页
第六章 计算方法_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《第六章 计算方法》由会员分享,可在线阅读,更多相关《第六章 计算方法(21页珍藏版)》请在金锄头文库上搜索。

1、第六章 计算方法,非线性方程求解 多项式插值与曲线拟合 数值微分与数值积分 求常微分方程数值解命令, ,(k = 1,2,),已知函数 f(x),求 x 使 f(x)=0 非线性方程,例 x = tan x,f=inline(x-tan(x) x=fzero(f,3.5) x = 4.4934,求一元函数零点 fzero(fun, x0) X = fzero(fun, x0)寻找fun在x0附近的零点,例 x 3 30 x 2 + 2552 =0 p=1 -30 0 2552; roots(p),ans = 26.3146 11.8615 -8.1761,半径r =10 cm的球体,密度 =0

2、.638.浸入水深度 x=?,15/18,求多项式零点: roots(p);,例1.求方程 x3 4x + 5 = 0 的解 P=1 0 -4 5; roots(P) ans = -2.4567 1.2283 + 0.7256i 1.2283 - 0.7256i,例2 求 x3 8x2 +6x 30=0的解 P=1 -8 6 -30; r=roots(P) r = 7.7260 0.1370 + 1.9658i 0.1370 - 1.9658i,多项式插值原理,已知 f(x) 在点 xi 上的函数值 yi=f(xi), (i=0,1,2,n),求多项式 P(x)=a0 + a1x + anxn

3、 满足: P(xk)= yk (k = 0,1,n),一维插值: yi = interp1(x, y, xi, method ),x = 0:10; y = sin(x); xi = 0:.25:10; yi = interp1(x,y,xi); plot(x,y,o,xi,yi),二维插值 zi=interp2(x, y, z, xi, yi, method),三维插值 vi = interp3(x,y,z,v,xi,yi,zi, method),17/18,例1.正弦曲线数据插值试验,已知数据表,求拟合函数: (x) = a0 + a1x + + anxn 使得,离散数据的多项式拟合,达到

4、最小,多项式拟合命令,P=polyfit(X,Y,n),求出(最小二乘意义下)n次拟合多项式 P(x)=a0 xn + a1xn-1 + + an-1x + an 计算结果为系数: P= a0, a1, , an-1, an ,多项式求值命令: y1=polyval(P, x) 其中,P是n次多项式的系数,x是自变量的值,y1是多项式在x处的值,17/18,4/16,定积分与积分和式,右矩形和,5/16,左矩形 梯形 右矩形 4.4429 4.8669 5.2908 4.6804 4.8924 5.1044 4.8139 4.8987 4.9835 4.8572 4.8996 4.9420,梯

5、形数值积分公式,梯形数值积分命令 trapz(),clear x=0:pi/100:pi; y=sin(x); trapz(x,y) ans = 1.9998,clear x=sort(rand(1,101)*pi); y=sin(x); trapz(x,y) ans = 1.9981,rand(1,101)产生101个均匀随机数,每个数都介于0-1之间,辛卜生求数值积分命令quad(),clear fun=inline(1./(x.3-2*x-5) ezplot(fun,0,2) q,n=quad(fun,0,2) q = -0.4605 n = 53,二重积分dblquad()与三重积分,

6、fun=inline(y*sin(x)+x*cos(y) Q=dblquad(fun,pi,2*pi,0,pi) Q = -9.8698 x,y=meshgrid(pi:.1:2*pi,0:.1:pi); z=fun(x,y); mesh(x,y,z),研究具有实际应用背景的数学函数,物理现象 物理定律 微分方程 数值解 建模型: 物理学家、化学家、生物学家、社会学家,物理量在空间的分布情况其及随时间变化的规律。,2/18,马尔萨斯(Malthus)人口模型,某时刻人口数为y0, 在以后某一时间 t 人口数y 的变化率正比于y,y(t)=y0 e r t,MATLAB符号求解方法 y=dsol

7、ve(Dy=r*y,t) y =C1*exp(r*t),3/18,Thomas Malthus (1766-1834),令 r = a, y0 = exp( b ) y(t) = exp( at + b) a = ?, b = ? 人口数据拟合实验,弹性力学问题 单摆问题 天体力学二体问题 电磁场计算,MATLAB求常微分方程数值解,简例,f=inline(y-x.*y.2); x,y=ode23(f,0,2,1),0 1.0000 0.0800 1.0796 0.2621 1.2485 0.4437 1.3755 0.6437 1.4402 0.8437 1.4209 1.0437 1.33

8、74 1.2437 1.2196 1.4437 1.0923 1.6437 0.9709 1.8437 0.8620 2.0000 0.7870,4/18,求常微分方程初值问题数值解函数 ode23(),ode45(),解一阶常微分方程组初值问题命令格式 T,y = ode23( F ,Tspan,y0) 其中, F是ODE文件, 表示 y = F(t,y)中右端函数 Tspan = t0 Tfinal 求解区域; y0 初始条件 注: 函数F(t,y) 必须返回列向量. 数值解 y 的每一行对应于列向量T中的每一时刻,5/18,生物学家研究发现,战争期间捕鱼量减少,食肉鱼总 数会急增,数学家

9、将鱼分成捕食者和被捕食者,分别 以y2(t) , y1(t)表示它们在时刻t 的总数。假定被捕食者 (食用鱼)有充分的食物。,捕食者和被捕食者模型,( 0 t 15 ) y1(0)=20, y2(0)=20,6/18,t0=0;tf=15; y0=20 20; t,y=ode23(lotka,t0,tf,y0); plot(t,y(:,1),t,y(:,2),r),MATLAB求解: (1)定义函数; (2)调用ode23,function yp = lotka(t,y) % predator-prey model. yp=diag(1 - .01*y(2), -1+.02*y(1)*y;,函数文件,文件名:lotka.m, 捕食者y2 被捕食者y1,7/18,洛伦兹模型与“蝴蝶效应”,Y-X平面,t0,80,x(0)=0,y(0)=0,z(0)=0.01 = 8/3 = 10 =28,y0=0;0;0.01; x,y=ode23(flo,0, 80,y0); plot(y(:,2),y(:,1),function z=flo(t,y) A=-8/3 0 y(2); 0 -10 10; -y(2) 28 -1; z=A*y;,8/18,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号