版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于MATLAB的高等数学问题求解学习笔记第六章:函数,极限与连续的MATLAB1 映射与函数。(1) 集合(更多的是用于数组间的运算):ismember(一个个元素判断是否是子集,返回一个数组);intersect(求交集,返回结果数组);setdiff(a,b)(求差集,属于a不属于b的数组);union(求并集)。(2) 函数:定义方法:y=(x)f(x); syms x y=f(x);y=sym(f(x);求反函数:finverse(f,t);求复合函数f(g(x):y=compose(f,g); 2 求极限。(1) 求数列极限:limit(xn, n, inf);limit(xn,
2、inf)。(2) 求函数极限:limit(fx, x, x0(, left) );limit(fx, x, inf)。3 函数的连续性与间断点。(1) 判断连续性的函数代码:P144。(2) 判断x0是否是函数f(x)的间断点的函数代码:(P146,文件夹MATLAB学习中的程序储存里)。实际应用中,可以根据绘图来判定是否是间断点。(3) 求函数区间的方法:P215。第七章:导数与微分的MATLAB求解1 导数求解:diff(fx,x,n)后面2个可以省略,则是求导函数;隐函数的导数求解见P156的2个例子;稍微总结就是把y定义为y=sym(y(x),然后定义隐函数的表达式为F=,把表达式等号
3、右侧置为0,左侧为F函数表达式,之后:diff(F,x)。参数方程确定的函数的导数P157。2 洛必达法则:P168.3 泰勒公式:P172.另外,MATLAB有taylor(fx,x,n,a)。MATLAB提供了泰勒级数逼近分析界面:taylortool,4 函数的凹凸性与曲线的单调性:求函数单调区间及各个区间单调性的判定:P175。求凹凸性与拐点的程序:P179。求方程实根从而可以进行一些特殊数值表达式的求解(比如(-8)(1/3)的求解)的函数代码:P176。5 函数的极值与最值:求极值点与极值:P182。MATLAB自带求极小值的函数:x,fval,exitflag,output=fm
4、inbnd(fun,x1,x2,options,p1,p2,)求在(x1,x2)范围内fun函数的极值,后面几项内容可以不填,那么输出的也只有前面两项了。余下的参数都是与优化有关的参数。在求极值的基础上可以进行最值的求取。6 曲线的渐近线:求曲线渐近线的代码:P186。7 曲线的曲率:求一般函数和由参数方程确定的函数的曲率的代码:curvature.m绘制一般函数或者由参数方程决定的函数的渐屈线(曲率圆圆心形成坐标点形成的曲线)的代码:Evolute_Draw.m8 求方程的近似解(待学习数值分析):(1) 逐步扫描法求根所有可能存在的区间代码:RootInterval.m。(2) 二分法在M
5、ATLAB上的实现:bisect.m。(EZPLOT即:Easy to use function plotter。它是一个易用的一元函数绘图函数 。特别是在绘制含有符号变量的函数的图像时,ezplot要比plot更方便。因为plot绘制图形时要指定自变量的范围,而ezplot无需数据准备1 ,直接绘出图形。)(3) 牛顿法及其在MATLAB上的实现:newton.m。(4) MATLAB自带求解函数,求解一元函数的零点:x, fval, exitflag, output=fzero(fun, x0, options, p1, p2, );求fun函数的零点,x0是初始值,
6、可以是标量也可以是长度为2的向量,options是设置的过程参数,p1,p2是附加参数,x是返回的根,fval是根x处的目标函数值,exitflag表明解存在的情况。 注:xlim的代指功能,可以直接代指上次使用的取值范围。9 导数的数值求解(待学习数值分析):(1) 插值型求导公式:polyfit函数:Polyder函数:k = polyder(p)返回多项式 p的导数表达式的系数。k = polyder(a,b)返回多项式a和b乘积的导数表达式系数。q,d = polyder(b,a)返回多项式b/a的分子q和分母d。求出插值函数并求在xi处n阶导的程序:poly_str.m。(2) 中心
7、差分公式:仍用diff公式来求。自编函数:diff_ctr.m。第八章:积分的MATLAB求解1 不定积分与定积分求解与一部分应用:(1) MATLAB:int(fx, x)。MATLAB自带求定积分函数:int(fx, x, a, b)。在a,b区间上的定积分。(2) 自编求解定积分的函数:int_geo.m。(3) 使用定积分求平面图形面积(平面坐标与极坐标):GraphicArea.m。(4) 求两个函数交点从而确定区间的方法:CrossPoint.m。(5) 求立体体积并绘制出来:SolidVolume.m(求立体体积,其中包含子函数DrawSolid用来绘制图形)。(6) 平面曲线弧
8、长计算(由参数方程表示的函数曲线,在直角坐标与曲线坐标下实现):ArcLength.m。2 反常积分:(1) 积分区间涉及到无穷大的积分称为反常积分,可以收敛也可以发散:int(fx, x, -inf, a);int(fx, x, a, inf)。(2) 无界函数(存在瑕点)的反常积分:任然使用int函数。(3) 函数(意义以及用途?)求积分:gamma(x),x为自变量的值,必须是实数。3 积分的数值求解(待学习数值分析):(1) 定积分的数值求解:a.插值型求积方法Newton-Cotes公式(存在原理上的不理解,待学习数值分析):InterpolatoryQuad.m。polyfit函数
9、是matlab中用于进行曲线拟合的一个函数。其数学基础是最小二乘法曲线拟合原理。曲线拟合:已知离散点上的数据集,即已知在点集上的函数值,构造一个解析函数(其图形为一曲线)使在原离散点上尽可能接近给定的值。调用方法:polyfit(x,y,n)。用多项式求过已知点的表达式,其中x为源数据点对应的横坐标,可为行向量、矩阵,y为源数据点对应的纵坐标,可为行向量、矩阵,n为你要拟合的阶数,一阶直线拟合,二阶抛物线拟合,并非阶次越高越好,看拟合情况而定。对之进行精确度上的改进,使用各种复化求积公式:程序见ComplexQuad.m。(2) 高斯求积方法:程序见Gauss_legendre.m。(3) M
10、ATLAB自带定积分数值求解函数:trapz(x,y,dim)基于复化梯形公式编写的;quad(fun,a,b,tol,trace,p1,p2,)辛普森法设计,还有更高精的quad1函数。quad用的是Simpson积分法,在低精度的非光滑曲线计算中是最有效的。而quadl用的是Lobatto积分法,在高精度的光滑曲线计算中更为高效。(4) 反常积分的数值求解:a.遇到无界函数的反常积分时,优先使用MATLAB自带函数;b.无穷限的反常积分的无穷区间逼近法:求解程序:quad_inf.m。c.使用变量替换的方法把无穷区间变为有限区间的积分然后求解。d.MATLAB自带函数:q,errbnd=q
11、uadgk(fun,a,b,param1,vall,param2,val2)第九章:级数的MATLAB求解1 常数项级数及其审敛法常数项级数(这里假设所有项均>=0)及其审敛法:a.与等比级数比较:比值审敛法与根值审敛法,基于以上2种方法的程序:PositiveIermSeries.m。b.基于与p级数比较得出的审敛法,程序:LimitSeries.m。c.交错级数审敛法:AlternatingSeries.m。2 幂级数(1) 求幂级数的收敛半径(关于界点处的收敛情况要视情况而定):ConvergenceRadius.m。(2) 函数展开成幂级数:MATLAB自带的taylor求解.3
12、 傅里叶级数(展开成三角级数):(1) 函数的傅里叶级数的符号求解程序:fseriessym.m;利用数值积分求解傅里叶级数的程序:fseriesquad1.m。(2) 正弦级数与余弦级数(与函数的奇偶性有关,奇函数为正弦函数,偶函数为余弦函数,返回函数的性质):fseries.m。4 级数求和与序列求和。(1) 常数项级数求和:MATLAB:symsum(s,v,a,b)来求。(2) 幂级数求和也是用symsum来求。(3) 序列求和经过变化后借用symsum求和。第十章:代数方程组的MATLAB求解1 线性方程组的求解。(1) 克莱姆法则的实现(求解恰定方程组):Cramer.m。程序中用
13、到了MATLAB自带的函数det(A),求解行列式A的值。运行速度极慢。(2) 消去法及其MATLAB实现:A.上三角方程组的求解:TRIUEQU.m。B.高斯消去法:Gauss.m。C.矩阵分解法(LU分解):LU_Equ.m。D.迭代法(各种迭代法的集大成,查阅数值分析):Equ_iter.m。E.MATLAB自带求通解的函数(只能求线性方程组):null()(需要查阅线性代数相关书籍。)G.非齐次线性方程组求解:g1:恰定线性方程组:逆矩阵法:x=inv(A)*b;左除法:x=Ab(这个好些)。g2:欠定线性方程组:左除法与伪逆法求特解,用null函数求通解。g3:超定线性方程组:(求最
14、小二乘解)左除法:x=Ab;伪逆法:x=pinv(A)*b。(求非负最小二乘解)x=lsqnonneg(A,b)。综合的程序见LinearEqs.m(有具体求解通解以及特解的方法)。2 多项式方程组的准解析解法:用solve函数求解,要求内部是符号变量。3 超越方程组的求解。(1) 牛顿法(查阅数值分析)及其MATLAB实现:Newtons.m。(2) 超越方程组的MATLAB自带函数求解:使用fsolve函数,其参数类似于fzero函数。arrayfun函数用于对数组中每个元素进行相同的函数操作。第十一章:向量代数与空间解析几何的MATLAB求解1 向量及其线性运算(1) 向量的绘制函数:P
15、290(欠缺绘图函数)。(2) MATLAB自带norm函数计算向量的模或者两点间的距离,鉴于不支持符号量的输入,编写了新的程序:P293。(3) 求向量方向余弦的函数(绘制或者计算):P295。2 数量积,向量积与混合积(1) 两向量的数量积:dot(a,b)。(2) 两向量的向量积:cross(a,b)。(3) 两向量的混合积:(a×b)·c。3 曲面及其方程(1) 绕x轴旋转方程为:f(x,±y2+z2)=0,绕y轴旋转方程为:f(y,±x2+z2)=0,绕z轴旋转方程:f(±x2+y2,z)=0。(2) MATLAB中提供了cylind
16、er(r,n)函数来绘制绕z轴旋转的曲面。更具有一般性的函数:P303。(没看懂,待复习绘图后看)(3) 绘制柱面函数:P304。(4) 绘制二次曲面的MATLAB函数:P307。(没看懂,待复习绘图后看)4 空间曲线及其方程(1)第十二章:多元函数微分学的MATLAB求解1多元函数的基本概念。(1) 多元函数在MATLAB中的定义方法:P323,建议使用syms x,y,z f=;f=();f=(x,y,z)。(2) 多元函数的极限求法:P326,求2次limit,一次求x0的,一次求y0的。(3) 多元函数连续性的定义。2偏导数求解程序:PartialDerivative.m。也可以用MA
17、TLAB中的diff函数P333,diff还可以求复合函数的偏导数。隐函数的偏导数求解:P335隐函数的存在定理以及求解公式。相应的MATLAB语句为:xixj=F=-diff(f,xj)/diff(f,xi)。多个隐函数确定的偏导数求解公式以及隐函数存在定理P335。求解雅克比矩阵的方法:jacobian(f,v)。两个二阶混合偏导数相等。理解偏导数的几何意义。MATLAB中simple函数用来获取化简之后的最简表达式。3全微分的求法4多元函数的集合应用绘制空间曲线在某点处的切线以及法平面:TangentNormPlane.m。适用于xyz均用参数t来表示,即用参数方程来表示。可以将其他形式
18、的空间曲线表达式转化为参数方程形式,再进行求解。绘制曲面上某点处的切平面和法线:TangentPlaneNormLine.m。5方向导数与梯度(1) 计算方向导数:DirectionalDerivative.m。使用公式为:fl=fxx0,y0cos+fyx0,y0cos.(2) dot函数:如果a,b均为实数的情况下,dot(a,b)与dot(b,a)并无区别;但是在复数范围内取值,就是不同的情况了,MATLAB中的dot为内积函数,其定义为 dot(A,B)= A'*B,即A的共轭转置乘以B,那么显然 在复数范围内,dot(A,B)和 dot(B,A)就是两个不同的向量了。(3)
19、matlab中三角函数sin、cos、tan等都是以弧度为单位的。 如果想用角度有两种方法。一种是用sind、cosd、tand等,他们是角度为单位的 另一种就是用deg2rad将角度转换为弧度。(4) 梯度的概念及计算P346。6多元函数的极值(1) 求二元函数的极值与极值点:Extremum2.m。MATLAB自带函数求取多元函数的极值:fminsearch(fun,x0,options,p1,p2)与fminunc(fun,x0,options,p1,p2)(2) 加ez的是处理符号函数的,不加ez的是处理数值函数的。mesh的调用格式是mesh(X,Y,Z),其中X Y Z都必须是数值
20、矩阵;ezmesh的调用格式是ezmesh(FUN,DOMAIN),FUN为函数表达式,DOMAIN为自变量的取值范围。(3) 条件极值求法:P350。MATLAB自带公式:fmincon.m(参数太多,未懂)。7多元函数的泰勒公式:mtaylor.m。8最小二乘法及其MATLAB实现通用最小二乘法求解程序:Least_square.m。实质就是在整个定义域范围里,函数拟合时使得函数算出来的值与该点真值的差最小。MATLAB中提供的求解最小二乘法类的函数:lsqcurvefit(fun,x0,xdata,ydata)。x0是最优化的初始值,该初值的选取要靠反复试验得出,最常见的是,第一步随意给
21、一个,算出参数后,代入猜测的数据点的x值,以此为初值再次进行计算。第十三章:重积分的MATLAB求解1二重积分。(1) 计算:dbldefinition.m。IN = inpolygon(X,Y,xv,yv)X,Y是待判断点的X和Y坐标,xv和yv是多边形的顶点坐标,要顺时针或者逆时针饶一圈的,也就是xv(1)和xv(end),yv(1)和yv(end)是同一个值;IN是逻辑量,1表示在多边形内,0表示在外面。(2) 二重积分的计算重要的是确定积分限,之后用2次int函数即可计算。(3) fil(x1,y1,选项1,x2,y2,选项2,·····
22、;·)按向量元素的下标渐增次序依次用直线段连接x,y对应元素定义的数据点。假如这样连线所得的折线不封闭,那MATLAB会自动将折线首尾连接起来,形成封闭多边形。然后在多边形内部涂满指定颜色。(4) 采用换元法进行计算,公式:2三重积分(1) 进行三次积分运算,关键还是积分限的确定。理解代数限定法。(2) 三重积分的换元法。公式见PPT。3曲线积分(1) 第一类曲线积分的计算:ArcCurveInt.m。(2) 第二类曲线积分:CoordinateCurveInt.m。4曲面积分,2类,见讲解视频。5重积分的数值计算(1) MATLAB矩形区域二重积分计算:dblquad(fun,a,
23、b,c,d)。还可以继续设定参数进行运算。(2) MATLAB一般区域二重积分计算:quad2d(fun,a,b,c,d),余下同上(效率最高)。也可以使用2次quad1函数进行计算。直接2次int,再用一次vpa函数。也可以使用区域延拓法(效率最低)。(3) 三重积分数值计算:使用MATLAB自带:triplequad(fun,a,b,c,d,e,f)函数。也可以直接3次int。第十四章:常微分方程的求解1几种常用微分方程的求解(1) 可分离变量方程的求解:SeparableVarseDe.m。(2) 齐次方程求解:HomogenDE.m。(3) 一阶线性微分方程求解套公式:(4) 伯努利方
24、程的求解向一阶线性微分方程公式靠近,通过引入一个新的因子z进行变换。(5) 可降阶的高阶微分方程:。使用:ReduceDE1.m。还可以解决以及类型的微分方程。2高阶线性微分方程(1) 线性微分方程解的结构。(2) MATLAB使用dsolve函数求解微分方程组。3一阶微分方程初值问题的数值解(1) 数值分析里的Euler法:Explicit_Euler.m。(2) 经典4阶龙格库塔法:Classical_RK4.m。4一阶微分方程组和高阶微分方程的数值解(1) 将第三节的单个一阶微分方程中的x,y代为向量,即可表示一阶微分方程组,解法:四阶龙格库塔法:Classical_RK4s.m。(2)
25、 高阶微分方程组解法:先化为一阶微分方程组问题,具体讲解见PPT。(3) MATLAB自带函数:ode系列函数:t,y=ode45(odefun,tspan,y0,options,p1,p2)。参数解释:odefun代表等号右边表达式所组成的数组,tspan代表取值范围,y0代表初值,options代表优化方法,p代表方程中的参数.5边值问题的数值解(1) 线性方程边值问题的打靶法求解:lineshoot.m。(2) 非线性方程边值问题的打靶法,引入了牛顿迭代法进行求解:nlshoot.m。具体是利用了迭代公式:(3) 边值问题的MATLAB求解:依次调用3个函数:bvpinit();bvps
26、olver();deval()。第十五章:积分变换的MATLAB求解1傅里叶变换(1) MATLAB自带函数求取方法:求傅里叶变换fourier(fx,x,w);求逆傅里叶变换:ifourier(Fx,w,x)。若令y=heaviside(x)则当x<0时,y的值为0;当x>0时,y的值为1;当x等于0时,y=0.5。这是一个单位阶跃函数。利用heaviside将定义域控制在-t/2,t/2内。(2) 求多维傅里叶变换:fouriern.m。(略了)(3) 离散傅里叶变换:dft.m(如果数据量很大,则延迟很大,效率低下)。书中对离散傅里叶变换讲解的很好。MATLAB自带求解离散傅
27、里叶变换的函数:fft(x,n);ifft(X).(4) 多维离散傅里叶变换:fft2(x,m,n);ifft2(X)。更高维使用fftn与iffn函数,用法类似。(5) 离散傅里叶变换在求解微分方程中的作用:具体函数:D=simple(fourier(); D=subs(D,transform:fourier(x(t),t, -w) , Xw); Xw=solve(D, Xw); xt=ifourier(Xw)。还可以应用的求解偏微分方程中。2拉普拉斯变换(1) 克服傅里叶变换的2个缺点:满足狄利克雷条件以及在负无穷大到正无穷大区间内绝对可积这两个要求。具体定义见PPT。(2) 求拉式变化的
28、函数:Laplace_Define.m。其中用到了自编函数:FrequencyTable.m,作用是统计数组元素出现的频数。numden函数用途:做通分的然后得到分子分母。sort函数同STL中的sort函数。(3) MATLAB自带函数求解拉式变化:Fs=laplace(ft,t,s)。ft=ilaplace(Fs,s,t)。(4) 拉普拉斯变换的应用:类似于傅里叶变换。3Z变换(1) 与拉普拉斯变换的关系:积分区域从0到无穷大扩展到了负无穷大到正无穷大,积分区域与傅里叶变换相同。与傅里叶变换主要体现在单位圆上的采样。(2) 自编函数求Z变换:ztrans_define.m。MATLAB自带
29、函数:ztrans(fn,n,z)与iztrans(Fz,z,n)。学习过程中学到的一些函数:1 subexprsubexpr是替换表达式命令,很多解析表达式非常繁琐,原因之一是其中包含的一个很长的子表达式重复出现在了很多不同的地方,而且这种情况下simple或者simplify都无法化简,通过这个命令可以得到很好的简化结果,直接写subexpr(expr)即可,matlab会自动搜寻需要被替代的子表达式,如果希望指定用来替换子表达式的变量名称,并将子表达式和简化后的总表达式都存在指定的符号变量中,可以用Y,SIGMA = subexpr(X,'SIGMA');如果简化没什么效
30、果(重复出现的子表达式不多),或者依然非常繁琐,可以使用pretty命令,将一维的表达式改为二维形式,以方便理解。以书写习惯显示符号表达式的函数就是pretty f1=a/(a2+b2)*exp(a*x)*cos(b*x)+b/(a2+b2)*exp(a*x)*sin(b*x)这个式子,只要输入:>> pretty(f1) a exp(a x) co
31、s(b x) b exp(a x) sin(b x) - + -
32、; 2 2 2 2 a + b a +
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 学校社团活动奖惩制度
- 环境保护管理奖惩制度
- 电梯维修人员奖惩制度
- 初中德育班级奖惩制度
- 火锅店奖惩制度实施细则
- 平安建设年终奖惩制度
- 医药公司采购部奖惩制度
- 益性岗位考核奖惩制度
- 相关方内部管理奖惩制度
- 三甲医院单病种奖惩制度
- 近三年内未发生重大事故的安全生产承诺范本
- 岳阳职业技术学院单招职业技能测试参考试题库(含答案)
- 量子密码学与后量子密码学
- 部编版四年级下册语文写字表生字加拼音组词
- 威斯特年产10000吨纳米铜盐系列产品、6000吨叔丁基过氧化氢精馏及3000吨糊状过氧化二苯甲酰项目环境影响报告
- 广西-黄邵华-向量的数量积
- 1.2 国内外网络空间安全发展战略
- 2023年湖南省长沙县初中学生学科核心素养竞赛物理试题(含答案)
- 东北大学最优化方法全部课件
- 人教新课标六年级数学下册全册大单元教学设计(表格式)
- EBSD入门简介姚宗勇课件
评论
0/150
提交评论