当前位置:
文档之家› AMATLAB微积分及泰勒级数计算 ppt课件
AMATLAB微积分及泰勒级数计算 ppt课件
第2章 MATLAB
2.1 符号计算基础 2.2 2.3 积分运算 2.4 泰勒级数 2.5 求解方程 2.6 积分变换
AMATLAB微积分及泰勒级数计算
1
2.1 符号计算基础
2.1.1 符号对象
1. 建立符号变量和符号常数
(1)sym函数 S=sym(A)
sym函数用来建立单个符号变量,例如,a=sym(‘a’)建 立符号变量a,此后,用户可以在表达式中使用变量a 进行各种运算。
A=[a,b;c,d]
%建立符号矩阵A
B=[w,x;y,z]
%建立数值矩阵B
det(A)
%计算符号矩阵A的行列式
det(B)
%计算数值矩阵B的行列式
AMATLAB微积分及泰勒级数计算
3
例2.2 比较符号常数与数值变量在代数运算时 的差别。
在 MATLAB命令窗口,输入命令:
pi1=sym(‘pi’);k1=sym(‘8’);k2=sym(‘2’);k3=sym(‘3’); % 定义符号常数
findsym(S,n)
函数返回符号表达式S中的n个符号变量,若没有指 定n,则返回S中的全部符号变量。
在求函数的极限、导数和积分时,如果用户没有明 确指定自变量,MATLAB将按缺省原则确定主变量 并对其进行相应微积分运算。可用findsym(S,1) 查找系统的缺省变量,事实上,MATLAB按离字符 'x'最近原则确定缺省变量。
式进行综合化简,并显示化简过程。
例2.9化简
命令如下:
syms x y;
s=(x^2+y^2)^2+(x^2-y^2)^2;
simplify(s)
%应用函数规则对s进行化简。
AMATLAB微积分及泰勒级数计算
12
(5) 符号表达式中变量的确定
MATLAB中的符号可以表示符号变量和符号常数。 findsym可以帮助用户查找一个符号表达式中的符 号变量。该函数的调用格式为:
符号矩阵。
例2.7 对符号矩阵A的每个元素分解因式。
命令如下:
syms a b x y;
A=[2*a^2*b^3*x^2-4*a*b^4*x^3+10*a*b^6*x^4,3*x*y5*x^2;4,a^3-b^3];
factor(A)
%对A的每个元素分解因式
AMATLAB微积分及泰勒级数计算
10
例2.8 计算表达式S的值。
AMATLAB微积分及泰勒级数计算
13
2.2 微分运算
2.2.1符号表达式的极限运算 limit
%建立范得蒙符号矩阵
det(A)
%计算A的行列式值
例2.5 建立x,y的一般二元函数。
在MATLAB命令窗口,输入命令: syms x y;
f=sym('f(x,y)');
A符号运算
(1)符号表达式的代数运算 与矩阵运算基本一致,详见P35。 (2)符号与数值的转换:sym,numeric,eval,sym2poly,poly2sym
pi2=pi;r1=8;r2=2;r3=3; % 定义数值变量
sin(pi1/3)
% 计算符号表达式值
sin(pi2/3)
% 计算数值表达式值
sqrt(k1)
% 计算符号表达式值
sqrt(r1)
% 计算数值表达式值
sqrt(k3+sqrt(k2))
% 计算符号表达式值
sqrt(r3+sqrt(r2))
% 计算数值表达式值
AMATLAB微积分及泰勒级数计算
4
区别
数值数字并不能保证被完全准确存储,运算时 也会引进截断误差;
符号类数字总是被准确记录和计算。
AMATLAB微积分及泰勒级数计算
5
(2)syms函数
1.用于定义多个符号变量。
syms函数的一般调用格式为:
syms var1 var2 … varn 函数定义符号变量var1,var2,…,varn等。
定义符号常量
如pi=sym(pi)
a=sym(3/4)
AMATLAB微积分及泰勒级数计算
2
例2.1考察符号变量和数值变量的差别。
在 MATLAB命令窗口,输入命令:
a=sym('a');b=sym('b');c=sym('c');d=sym('d'); %定义4个符号变量
w=10;x=5;y=-8;z=11; %定义4个数值变量
➢ Numeric,eval:将符号常数转换为数字或计算表达式的 函数;
➢ Sym2poly:将符号多项式变换为等价系数向量。 ➢ Poly2sym:要求用户指定用于表达式的变量(x,y等) 例2.6 f=sym(‘2*x^2+7*x+9’) n=sym2poly(f) f1=poly2sym(n,y)
%建立符号变量x、y
V=3*x^2+5*y+2*x*y+6 式V
%定义符号表达
2*U-V+6
%求符号表达式的值
AMATLAB微积分及泰勒级数计算
7
例2.4 计算3阶范得蒙矩阵行列式的值。设A是一个 由符号变量a,b,c确定的范得蒙矩阵。
命令如下:
syms a b c;
U=[a,b,c]; A=[[1,1,1];U;U.^2]
用这种格式定义符号变量时不要在变量名上加 字符分界符(‘),变量间用空格而不要用逗号分 隔。
AMATLAB微积分及泰勒级数计算
6
2. 建立符号表达式
例2.3用2种方法建立符号表达式。
在MATLAB窗口,输入命令:
U=sym('3*x^2+5*y+2*x*y+6') %定义符号表 达式U
syms x y;
AMATLAB微积分及泰勒级数计算
9
(3)因式分解与展开
factor(S) 对S分解因式,S是符号表达式或符号矩阵。 expand(S) 对S进行展开,S是符号表达式或符号矩阵。 collect(S) 对S合并同类项,S是符号表达式或符号矩阵。 collect(S,v) 对S按变量v合并同类项,S是符号表达式或
命令如下:
syms x y;
s=sym((-7*x^2-8*y^2)*(-x^2+3*y^2));
s1=expand(s)
%对s展开
s2=collect(s,x) %对s按变量x合并同类项(无同 类项)
factor(s2)
% 对s2分解因式
AMATLAB微积分及泰勒级数计算
11
(4)表达式化简 MATLAB提供的对符号表达式化简的函数有: simplify(S) 应用函数规则对S进行化简。 simple(S) 调用MATLAB的其他函数对表达