文档介绍:第七讲 MATLAB的符号计算
所谓符号计算是指在运算时,无须事先对变量赋值,而将所得到结果以标准的符号形式来表示。
MathWorks公司以Maple的内核作为符号计算引擎(Engine),依赖Maple已有的函数库,开发了实现符号计算的两个工具箱:基本符号工具箱和扩展符号工具箱。
一、符号计算基础
一、符号计算基础
(一) 定义符号变量
参与符号运算的对象可以是符号变量、符号表达式或符号矩阵。符号变量要先定义,后引用。可以用sym函数、syms函数将运算量定义为符号型数据。引用符号运算函数时,用户可以指定函数执行过程中的变量参数;若用户没有指定变量参数,则使用findsym函数默认的变量作为函数的变量参数。
1、sym函数
sym函数的主要功能是创建符号变量,以便进行符号运算,也可以用于创建符号表达式或符号矩阵。用sym函数创建符号变量的一般格式为:
x = sym(‘x’)
其目的是将’x’创建为符号变量,以x作为输出变量名。每次调用该函数,可以定义一个符号变量。
一、符号计算基础
(一) 定义符号变量
【例1】作符号计算:
a,b,x,y均为符号运算量。在符号运算前,应先将a,b,x,y定义为符号运算量
一、符号计算基础
(一) 定义符号变量
a=sym(‘a’); %定义‘a’为符号运算量,输出变量名为a
y =2/bb=sym(‘b’);
x=sym(‘x’);
y=sym(‘y”);
[x,y]=solve(a*x-b*y-1,a*x+b*y-5,x,y)
%以a,b为符号常数,x,y为符号变量
即可得到方程组的解:
x =3/a
y =2/b
一、符号计算基础
(一) 定义符号变量
【例2】已知一复数表达式 z=x+i*y, 试求其共轭复数,并求该表达式与其共轭复数乘积的多项式。
为了使乘积表达式x^2+y^2非负,这里,把变量x和y定义为实数。
x=sym(‘x’,’real’);
y=sym(‘y’,’real’);
一、符号计算基础
(一) 定义符号变量
z=x+i*y; %定义复数表达式
conj(z); %求共轭复数
expand(z*conj(z)) %求表达式与其共轭复数乘积的多项式
ans =
x^2+y^2
若要去掉’x’的属性,可以使用下面语句
x = sym(‘x’,’unreal’)
将’x’创建为纯格式的符号变量。
一、符号计算基础
(一) 定义符号变量
2、syms函数
syms函数的功能与sym函数类似。syms函数可以在一个语句中同时定义多个符号变量,其一般格式为:
syms arg1 arg2 …argN
用于将rg1, arg2,…,argN等符号创建为符号型数据。
一、符号计算基础
(一) 定义符号变量