极限与级数的符号运算
MATLAB的极限与级数运算在符号系统中进行
极限运算
limit(f, x, a) 求符号函数f的极限 lim a f ( x ) x limit(f, x, a, ’right’) 求符号函数f的右极限 limf(x)xa limit(f, x, a, ’left’) 求符号函数f的左极限 limf(x)xa说明:上述命令中的a可以是无穷大 inf 或 -inf
说明:多元函数的极限需要使用累次极限来计算 举例
级数运算
symsum(an, n, i, j) j 求符号通项an的和 anni
其中,当j为无穷大inf时,即为无穷级数。 举例
级数运算
taylor(f, n, a, x)
求符号函数f在点a关于变量x的n-1阶泰勒多项式 举例
taylortool 泰勒工具 举例
微积分的符号运算
导函数与偏导函数
diff(f, x) 求符号函数f对x的一阶导函数或偏导函数 diff(f, x, n) 求符号函数f对x的n阶导函数或偏导函数 注:diff是differential(微分)的缩写
- 1 -
例:计算
问:如何求符号函数在给定点的导数值或偏导数值?
dsinx(2x),dxe1322ln(xyxy)2xy
求完导函数或偏导函数之后,使用符号替换命令 subs 可以求得导函数值或偏导函数值
不定积分与定积分
int(f, x)
求符号函数f关于变量x的不定积分 注:int是integration(积分)的缩写 int(f, x, a, b)
求符号函数f关于变量x的定积分,a、b分别是积分下限和上限,a、b可以是函数表达式,也可以是无穷大inf或-inf 举例
对于定积分,当系统求不出精确解时,如果被积函数中不含待定符号,可以使用vpa命令给出近似解 例如: syms x a=int(sin(sin(x)), 1, 2) vpa(a)
说明: 参数方程求导和隐函数求导需要使用相关数学公式(见教材66-67页) 重积分、曲线积分与曲面积分需要使用数学方法转化为累次积分来计算
微积分的数值运算
微积分的数值运算特点
采用数值算法,主要用于解决导数和定积分的近似计算问题 还可以解决离散数据的相关计算问题
实例:某河床的横断面如图所示,试根据图示的测量数据(单位: m),计算各测量点的坡度和横断面的面积。
- 2 -
0
4 1
10 12 15 3
6
8
22 9
28 5
34 3
40
数值导数
gradient(f, x)
该命令求一元函数 f 的数值导数f ’(x)
其中,x是自变量的一组取值(离散数据),f是因变量的对应取值(离散数据) ,计算结果是各离散数据点的导数值(近似解)。
说明:
x的取值越密集,得到的导数值就越精确。 该命令常用于求解离散型数据的变化率。
例:计算前例中的坡度
x=[0,4,10,12,15,22,28,34,40]; f=[0,-1,-3,-6,-8,-9,-5,-3,0]; fx=gradient(f,x)
例:求函数y=x2sinx在区间[-3,3]的一阶和二阶数值导数,作出原函数与一、二阶导函数的图形,并观察函数的单调性、凹凸性、极值、拐点与一、二阶导数之间的关系。 x=-3:0.01:3; f=x.^2.*sin(x);
fx=gradient(f,x) fxx=gradient(fx,x) plot(x,f, x,fx,'r--', x,fxx,'k--'), grid on
思考:怎样求函数在指定点的数值导数?
比如:上面函数在x=1.5和x=1.501的数值导数是多少? f(find(x==1.5)) 或者 f(x==1.5) 一般方法:[p,q]=min(abs(x-x0)); f(q)
数值偏导数
[fx, fy]=gradient(f, x, y)
该命令求二元函数f的数值偏导数f ’x和f ’y
- 3 -
其中,x, y 分别是自变量x和y的一组取值(向量表示) ;
f 是定义在x-y平面点集区域上的函数值(矩阵表示),平面点集区域可以使用meshgrid命令生成;
fx和fy分别得到每个点处偏x和偏y的偏导数值(矩阵表示)。 说明:x和y的取值越密集,得到的偏导数值就越精确;该命令常用于求解离散型数据的方向导数、梯度、散度、旋度等。 举例
数值定积分
梯形法数值积分:trapz(x, y)
其中x 表示自变量在积分区间的一组取值,y 表示被积函数对应于x 的一组函数值。
例:计算前面例题中的横断面积
x=[0,4,10,12,15,22,28,34,40]; y=[0,1,3,6,8,9,5,3,0]; s=trapz(x, y)
例:求积分
解:x=-1: 0.1: 1 ; y=exp(-x.^2) ; trapz(x,y)
高精度数值积分:quad(f, a, b)或quadl(f, a, b)
求函数f 在区间[a, b] 上的定积分,其中:f 使用字符串函数表达式或内联函数,定义函数的乘、除、乘方时要使用点运算 。积分限 a 、b 必须是常量 。
quad 采用自适应步长Simpson 积分法 quadl 采用高精度Lobatto 积分法
例 求积分
解:z=quadl('exp(-x.^2)', -1, 1)
注意:trapz, quad, quadl都不能用于求反常积分。
数值重积分
矩形区域上的二重积分和立方体区域上的三重积分: 二重积分命令 dblquad(f, a1, a2, b1, b2)
- 4 -
f 为被积函数, 积分区域为矩形[a1, a2; b1, b2] 三重积分命令 triplequad(f, a1, a2, b1, b2 , c1, c2)
f 为被积函数, 积分区域为立方体[a1, a2; b1, b2; c1, c2]
说明:①被积函数使用字符串函数表达式或内联函数;②乘、除、乘方要用点运算;③积分限必须是常量;④f是字符串函数表达式时,积分的顺序按照自变量的字典顺序进行,f是内联函数时,积分的顺序按照自变量的定义顺序进行。
积分顺序举例
dblquad('sin(t./r.^2)',1,2,6,9)
即 二重积分 92tdtsin61r2dr
f=inline('sin(t./r.^2)', 't', 'r') dblquad(f,1,2,6,9)
即 二重积分 9
6dr21tsin2dtr微积分的数值运算
数值重积分
例 计算重积分
- 5 -
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- igat.cn 版权所有 赣ICP备2024042791号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务