当前位置:文档之家› 第6章MATLAB符号计算-资料

第6章MATLAB符号计算-资料

例6.9化简 命令如下:
syms x y; s=(x^2+y^2)^2+(x^2-y^2)^2; simple(s) %MATLAB自动调用多种函数对s进行化简,并显示每步结果
目录
2020/4/12
2. 符号矩阵运算 transpose(S) 返回S矩阵的转置矩阵。 determ(S) 返回S矩阵的行列式值。 colspace(S) 返回S矩阵列空间的基。 [Q,D]=eigensys(S) Q返回S矩阵的特征向量,D返回S矩阵的
g= 1/3*((x+1)*x)^(1/2)*x^2+1/12*((x+1)*x)^(1/2)*x1/8*((x+1)*x)^(1/2)+1/16*log(1/2+x+((x+1)*x)^(1/2))
2020/4/12
6.3.2 符号函数的定积分
定积分在实际工作中有广泛的应用。在MATLAB中,定 积分的计算使用函数:
f1=a*cos(t);f2=b*sin(t);
diff(f2)/diff(f1)
%求(3)。按参数方程求导公式求y对x的导数
(diff(f1)*diff(f2,2)-diff(f1,2)*diff(f2))/(diff(f1))^3 %求(3)。求y对x的二阶 导数
f=x*exp(y)/y^2;
diff(f,x)
2020/4/12
目录
例6.10求极限
11
xmam sixna ()sixna ()
lim ,lim
,
x a xa x 0/
x
在MATLAB命令窗口,输入命令:
ans =
syms a m x;
a^(1/m)/a/m
f=(x^(1/m)-a^(1/m))/(x-a);
limit(f,x,a)
%求极限(1)
命令如下:
>>syms a b c; >>U=[a,b,c]; >>A=[[1,1,1];U;U.^2] %建立范得蒙符号矩阵
A=
>>factor(ans)
ans =
[ 1, 1, 1] >[>dae,t(Ab), c] %计算A的行列式值 [anas^2=, b^2, c^2]
2020/4/12
-(-c+b)*(a-c)*(a-b)
在求函数的极限、导数和积分时,如果用户没有 明确指定自变量,MATLAB将按缺省原则确定 主变量并对其进行相应微积分运算。可用 findsym(S,1)查找系统的缺省变量,事实上, MATLAB按离字符'x'最近原则确定缺省变量。
2020/4/12
目录
6.2 符号导数及其应用
6.2.1函数的极限 limit函数的调用格式为: limit(f,x,a) limit函数的另一种功能是求单边极限,其调用格式为: limit(f,x,a,'right') 或 limit(f,x,a,'left')
目录
(2)因式分解与展开
factor(S) 对S分解因式,S是符号表达式或符号 矩阵。
expand(S) 对S进行展开,S是符号表达式或符 号矩阵。
collect(S) 对S合并同类项,S是符号表达式或符 号矩阵。
collect(S,v) 对S按变量v合并同类项,S是符号表 达式或符号矩阵。
2020/4/12
>>syms x y;
%建立符号变量x、y
>3>*Vx=^32*+x5^2*+y5+*2y*+x2**xy*+y+66%定义符号Fra bibliotek达式VV=
ans =
>> 2*U-V+6
%求符号表达式的值
3*x^2+5*y+2*x*y+6
2020/4/12
3*x^2+5*y+2*x*y+12
例6.4计算3阶范得蒙矩阵行列式的值。设A是一个由符号变量a,b,c确 定的范得蒙矩阵。
第6章 MATLAB符号计算
• 在工程、应用数学和科学上经常要用到符号 计算功能。MATLAB开发商Mathwork公司以 maple的内核为符号计算的引擎,依赖 MAOLE已有的库函数,开发了在MATLAB环 境下实现符号计算的工具箱Symbolic Math Toolbox(符号数学工具箱)。
2020/4/12
函数定义符号变量var1,var2,…,varn等。用这种格式定 义符号变量时不要在变量名上加字符分界符('),变量 间用空格而不要用逗号分隔。
2020/4/12
目录
2. 建立符号表达式 例6.3用两种方法建立符号表达式。 在MATLAB窗口,输入命令:
>>U=sym('3*x^2+5*y+2*x*y+6') %定义符号表达式U U=
int(f)
%求不定积分(1)
f=sqrt(x^3+x^4);
int(f)
%求不定积分(2)
g=simple(ans)
%调用simple函数对结果化简
2020/4/12
目录
ans = 27*x-1/7*x^7+9/5*x^5-9*x^3
ans = -1/48*(x^3+x^4)^(1/2)*(16*(x^2+x)^(3/2)+12*(x^2+x)^(1/2)*x+6*(x^2+x)^(1/2)3*log(1/2+x+(x^2+x)^(1/2)))/x/((x+1)*x)^(1/2)
2020/4/12
目录
6.3 符号积分
6.3.1不定积分 在MATLAB中,求不定积分的函数是int,其调用格式为: int(f,x) int函数求函数f对变量x的不定积分。参数x可以缺省,缺省原则
与diff函数相同。
2020/4/12
目录
例6.13求不定积分。
命令如下:
x=sym('x');
f=(3-x^2)^3;
目录
• 6.1 符号计算基础 • 6.2 符号导数及其应用 • 6.3 符号积分 • 6.4 级数 • 6.5 代数方程的符号求解 • 6.6 常微分方程的符号求解
2020/4/12
6.1 符号计算基础
• 符号数学工具箱是操作和解决符号表达式的 版本号数学工具的集合,它包含复合、简化 、微分、积分以及求代数方程和微分方程的 工具。
特征值。
2020/4/12
目录
6.1.3 符号表达式中变量的确定
MATLAB中的符号可以表示符号变量和符号常数 。findsym可以帮助用户查找一个符号表达式 中的的符号变量。该函数的调用格式为:
findsym(S,n)
函数返回符号表达式S中的n个符号变量,若没有 指定n,则返回S中的全部符号变量。
f=(sin(a+x)-sin(a-x))/x;
ans = 2*cos(a)
limit(f)
%求极限(2)
limit(f,inf) %求f函数在x→∞
(包括+∞和-∞)处的极限
ans = 0 ans = 0
limit(f,x,inf,'left')
%求极限(3)
ans =
f=(sqrt(x)-sqrt(a)-sqrt(x-a))/sqrt(x*x-a*a);
>>a=sym('a');b=sym('b');c=sym('c');d=sym('d'); %定义4个符号变量
>>w=10;x=5;y=-8;z=11;
%定义4个数值变量
>>A=[a,b;c,d]
%建立符号矩阵A
A=
>>B=[w,x;y,z] %建立数值矩阵B
[ a, b] [ c, d]
>> det(B)
目录
例6.5建立x,y的一般二元函数。 在MATLAB命令窗口,输入命令: syms x y; f=sym('f(x,y)');
2020/4/12
目录
6.1.2 基本的符号运算
f=
1. 符号表达式运算
(1)符号表达式的四则运算 例6.6符号表达式的四则运算示例。
-3f*=x+2/25*x^3 f=
目录
例6.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的每个元素分解因式
ans =
[ 2*a*b^3*x^2*(5*b^3*x^2-2*b*x+a),
limit(f,x,a,'right')
%求极限(4)
-1/2*2^(1/2)/a^(1/2)
目录
2020/4/12
6.2.2 符号函数求导及其应用 MATLAB中的求导的函数为:
diff(f,x,n)
diff函数求函数f对变量x的n阶导数。参数x的用 法同求极限函数limit,可以缺省,缺省值与 limit相同,n的缺省值是1。
%求(4)。z对x的偏导数
diff(f,y)
%求(4)。z对y的偏导数
f=x^2+y^2+z^2-a^2;
zx=-diff(f,x)/diff(f,z) %求(5)。按隐函数求导公式求z对x的偏导数
相关主题