电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > PPT文档下载
分享到微信 分享到微博 分享到QQ空间

第六讲 数值计算讲课教案

  • 资源ID:137411801       资源大小:713KB        全文页数:80页
  • 资源格式: PPT        下载积分:16金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要16金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

第六讲 数值计算讲课教案

第六讲 数值计算,MATLAB提供大量具有强大数值计算功能的函数。 本章着重介绍关于数值计算的函数。,目录,6.1 多项式运算 6.2 插 值 运 算 6.3 有限差分 6.4 功 能 函 数 6.5 微分方程组数值解,6.1 多项式运算,1多项式表示法 2多项式求值 3多项式乘法和除法 4多项式的微积分 5多项式的根和由根创建多项式 6多项式曲线拟合,多项式函数,1多项式表示法,MATLAB采用行向量表示多项式系数,多项式系数按降幂排列。 函数poly2str()将多项式系数向量转换为完整形式。格式: s,len=POLY2STR(P,x) P-多项式系数行向量 x-多项式变量符号 len-字符串s的长度,2多项式求值,函数polyval()计算多项式的值,其具体使用方法如下: y = polyval(p,x),p为多项式系数行向量,x代入多项式的值。这里x为数值,向量或矩阵(对其每个元素求多项式的值)。 Y = polyvalm(p,X),把矩阵X代入多项式p中进行计算。这里要求X为方阵。,3多项式乘法和除法,函数conv()和deconv()进行多项式乘法和除法,其具体使用方法如下: w = conv(u,v),实现多项式乘法,返回结果多项式的系数行向量; q,r = deconv(u, v),实现多项式除法。,4多项式的微积分,(1)多项式的微分 函数polyder()计算多项式的微分,其具体使用方法如下: k = polyder(p),返回多项式p微分的系数向量; k = polyder(a,b),返回多项式a*b微分的系数向量;,q,d = polyder(b,a),返回多项式b/a微分的系数向量。,(2)多项式的积分,函数polyint()计算多项式的不定积分,其具体使用方法如下: s=polyint(p,k),返回多项式p不定积分的系数向量。,5多项式的根和由根创建多项式,(1)多项式的根 函数roots()求多项式的根,其具体使用方法如下: r = roots(c),返回多项式c的所有根r。,(2)由根创建多项式 函数poly()实现由根创建多项式,其具体使用方法如下: p = poly(r),输入r是多项式所有根,返回值为多项式的系数向量; p = poly(A),输入A是方阵,返回值为A的特征多项式的系数向量。,6多项式曲线拟合,函数polyfit()采用最小二乘法对给定数据进行多项式拟合,其具体使用方法如下: p = polyfit(x,y,n),采用n次多项式p来拟合数据x和y。,运行结果如下图所示。,6.2 插 值 运 算,6.2.1 一维插值 6.2.2 二维插值,插值是根据已知输入/输出数据集和当前输入估计输出值。MATLAB提供大量的插值函数,如下表所示。,插值函数,6.2.1 一维插值,一维插值就是对函数y=f(x)进行插值,一维插值的原理如下图所示。,函数interp1()实现一维插值,其具体使用方法如下: yi=interp1(x,y,xi),x,y是已知数据集且具有相同长度的向量; yi = interp1(y,xi),默认x为1:n,其中n为向量y的长度; yi=interp1(x,y,xi,method)。method用于指定插值的方法。,运行结果如下图所示。,6.2.2 二维插值,二维插值是对两变量的函数z=f(x,y)进行插值,二维插值的原理如下图所示:,函数interp2()实现二维插值,其具体使用方法如下: zi = interp2(x,y,z,xi,yi),x,y,z为原始数据,返回值zi是插值结果; zi = interp2(z,xi,yi),若z=nm,则x=1:n,y=1:m; zi = interp2(x,y,z,xi,yi,method),method用于指定插值的方法 。,运行结果如下图所示。,6.3 有限差分,函数diff()计算差分,其具体使用方法如下: Y = diff(X) ,X可以是向量或矩阵; Y = diff(X,n) ,返回n阶差分 ; Y = diff(X,n,dim) ,返回在dim维上的n阶差分 。,运行结果如下图所示。,6.4 功 能 函 数,1函数的表示 2函数画图 3函数最小值和零点 4数值积分,函数可以通过以下方式来表示: M文件; 匿名函数; 函数inline()。,1函数的表示,2函数画图,MATLAB提供函数画图的函数如下表所示。,函数画图的函数,以函数fplot()为例介绍画图函数的用法,其具体使用方法如下: fplot(function,limits),function为待画图的函数,limits是横坐标数值范围或横纵坐标数值范围;,fplot(function,limits,LineSpec),LineSpec指定画图的线条属性; fplot(function,limits,tol),tol指定画图相对精度; fplot(function,limits,tol,LineSpec),指定画图的线条属性和画图相对精度。,运行结果如下图所示。,3函数最小值和零点,求函数的最小值和零点的函数,如下表所示。,求函数最小值和零点,(1)求一元函数最小值,函数fminbnd()求一元函数在给定区间内的最小值,其具体使用方法如下: x = fminbnd(fun, ,x1,x2),在区间x1 x2内寻找函数最小值;,x = fminbnd(fun,x1,x2,options),使用options选项来指定的优化器的参数; x,fval = fminbnd(.),附加返回函数最小值。,(2)求多元函数的最小值,函数fminsearch()求多元函数的最小值。其具体使用方法如下: x = fminsearch(fun,x0),在初始x0附近寻找局部最小值; x = fminsearch(fun,x0,options),使用options选项来指定优化器的参数;,x,fval = fminsearch(.),附加返回函数最小值。,(3)求一元函数的零点,函数fzero()求一元函数的零点,其具体使用方法如下: x = fzero(fun,x0),在x0点附近寻找函数的零点; x = fzero(fun,x0,x1),在x0,x1区间内寻找函数的零点;,x = fzero(fun,x0,options),用options指定寻找零点的优化器参数; x,fval = fzero(.),附加自变量为x时的函数值。,4数值积分,MATLAB提供一些的数值积分函数,如 下表所示。,数值积分函数,(1)一元函数的数值积分,函数quad()和函数quadl()来计算一元函数的积分。函数quad()的具体使用方法如下: q = quad(fun,a,b),计算函数fun在a b区间内的定积分;,q = quad(fun,a,b,tol),以绝对误差容限tol计算函数fun在a b区间内的定积分; q = quad(fun,a,b,tol,trace),当trace为非零值时,显示迭代过程的中间值。,(2)矢量数值积分,矢量数值积分等价于多个一元定积分。,(3)二重积分,函数dblquad()计算二重积分。其具体使用方法如下: q = dblquad(fun,xmin,xmax,ymin,ymax),计算二元函数的二重积分; q= dblquad(fun,xmin,xmax,ymin,ymax,tol),用tol指定绝对计算精度;,q = dblquad(fun,xmin,xmax,ymin,ymax,tol,method),用method指定计算一维积分时采用的函数。,6.5 微分方程组数值解,6.5.1 常微分方程组的初值问题 6.5.2 延迟微分方程的问题 6.5.3 常微分方程组的边界问题,在MATLAB中,可以计算微分方程数值解,如: 常微分方程组的初值问题; 延迟微分方程的问题; 常微分方程组的边界问题。,6.5.1 常微分方程组的初值问题,1显式常微分方程组 2设置解法器参数 3线性隐式常微分方程组 4完全隐式常微分方程组,在MATLAB中可以计算以下初值问题的数值解。 显式常微分方程组; 线性隐式常微分方程组; 完全隐式常微分方程组。,1显式常微分方程组,在MATLAB中,用函数实现不同的解法,如下表所示。,常微分方程组解法对比,2设置解法器参数,函数odeset()设定解法器参数,其具体使用方法如下: options= odeset(name1,value1,name2, value2,),用参数名和相应参数值设定解法器的参数;,options= odeset(oldopts,name1, value1,),修改原来的解法器options结构体oldopts; options = odeset(oldopts,newopts),合并两个解法器options结构体oldopts和newopts; odeset,显示所有的参数值和它们的默认值。,常微分方程组解法器参数,3线性隐式常微分方程组,线性隐式常微分方程组可以利用解法器参数options来求解。,运行结果如下图所示。,4完全隐式常微分方程组,函数ode15i()求解完全隐式常微分方程组,其具体使用方法如下: t,Y = ode15i(odefun,tspan,y0,yp0) ; t,Y= ode15i(odefun,tspan,y0,yp0,options) 。,函数decic()得到自洽初始值,其具体使用方法如下: y0mod,yp0mod = decic(odefun,t0,y0,fixed_y0,yp0,fixed_yp0); y0mod,yp0mod = decic(odefun,t0,y0,fixed_y0,yp0,fixed_yp0,options) 。,运行结果如下图所示。,6.5.2 延迟微分方程的问题,函数dde23()求解延迟微分方程组,其具体使用方法如下: sol= dde23(ddefun,lags,history,tspan); sol= dde23(ddefun,lags,history,tspan,option),option结构体用于设置解法器的参数。,函数dde23()的返回值是一个结构体,它包含7个属性,其中重要的5个属性如下: sol.x,dde23选择计算的时间点; sol.y,在时间点x上的解y(x); sol.yp,在时间点x上解的一阶导数y(x);,sol.history,方程初始值; sol.solver,解法器的名字dde23; 若需得到tint时刻的解,可以使用函数deval,即yint = deval(sol,tint)。,6.5.3 常微分方程组的边界问题,函数bvp4c()的具体使用方法如下: sol = bvp4c(odefun,bcfun,solinit),odefun代表常微分方程组的函数,bcfun是描述边界条件的函数,solinit是对方程解的猜测解; sol = bvp4c(odefun,bcfun,solinit,options),使用options结构体来设定解法器的参数。,运行结果如下图所示。,End,

注意事项

本文(第六讲 数值计算讲课教案)为本站会员(yuzo****123)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.