编辑: 鱼饵虫 2015-06-25

, '

real'

);

(3) MatLab 提倡使用 syms 命令,因为书写更方便、清楚.

83 第5章MATLAB 符号运算 【例5-1】以下是 sym 命令与 syms 命令的区别. (1) sym 命令. >

>

y=sym a >

>

y=sym b >

>

y=a*b >

>

f=y^3-y^2-y f = a^3*b^3 - a^2*b^2 - a*b (2) syms 命令. >

>

syms a b >

>

y=a*b >

>

f=y^3-y^2-y f = a^3*b^3 - a^2*b^2 - a*b 3.建立符号表达式 含有符号对象的表达式称为符号表达式.建立符号表达式有以下

2 种方法. 1) 用sym 函数建立符号表达式 【例5-2】用sym 建立符号表达式

2 y ax bx = + 和3ex y x + = - . (1)

2 y ax bx = + . 第一步:在matlab 命令窗口中输入如下命令. >

>

y=sym('

a*x^2+b*x'

) %括号的内容必须是字符串 第二步:按 enter 键,得到的结果如下. y = a*x^2 + b*x (2)

3 ex y x + = - . 第一步:在matlab 命令窗口中输入如下命令. >

>

y=sym('

exp(x+3)-sqrt(x)'

) 第二步:按 enter 键,得到的结果如下. y = exp(x + 3) - x^(1/2) 2) 使用已经定义的符号变量组成符号表达式 【例5-3】建立表达式 y=sin(xy). 方法一: >

>

syms x y

84 MATLAB 基础及实验教程 >

>

y=sym(sin(x*y)) y = sin(x*y) 方法二: >

>

syms x y >

>

y=sin(x*y) y = sin(x*y) 4.符号矩阵 符号矩阵也是一种符号表达式.符号表达式运算都可以在矩阵意义下进行. 符号矩阵的创建方法: >

>

syms a b c d >

>

A=[a b;

c d] >

>

B=[a c;

b d];

>

>

A*B ans = [ a^2+b^2, a*c+b*d] [ a*c+b*d, c^2+d^2] MATLAB 还有一些专用于符号矩阵的函数, 这些函数作用于单个的数据无意义. 例如 transpose(A):返回 A 矩阵的转置矩阵 det (A):返回 A 矩阵的行列式值 其实,许多应用于数值矩阵的函数,如diag、triu、tril、inv、rank、eig 等,也可直接 应用于符号矩阵. 【例5-4】求矩阵

11 1

0 9

3 5

4 2

8 ? ? ? ? ? ? ? ? ? ? - = - A 转置矩阵和行列式值. 解: 第一步:在matlab 命令窗口中输入如下命令. >

>

A=[11 -1 0;

9

3 5;

-4

2 8] >

>

t=transpose(A) >

>

d=det(A) 第二步:按 enter 键,得到的结果如下. t=

11 9 -4 -1

3 2

0 5

8 85 第5章MATLAB 符号运算 d = 246.0000 5.1.2 findsym 函数和 subs 函数 1.findsym 函数 MATLAB 中的符号可以表示符号变量和符号常量.findsym 可以帮助用户查找一个符 号表达式中的的符号变量(自变量).该函数的调用格式为: findsym(s,n) findsym 函数通常由系统自动调用,在进行符号运算时,系统调用该函数确定表达式 中的符号变量,执行相应的操作.函数返回符号表达式 s 中的 n 个符号变量,若没有指定 n,则返回 s 中的全部符号变量.优先选择靠近 x 的小写字母和 x 后面的字母. 【例5-5】求符号变量 z y x f y x z = + + . >

>

syms x y z >

>

f=z^x+x^y+y^z >

>

findsym(f,1) ans = X >

>

findsym(f,2) ans = x,y >

>

findsym(f) ans = x,y,z 2.subs 函数 subs 是单词 substitution 的缩写,意思就是 替代 .函数 subs 可以用指定符号替换表 达式中的某一个特定符号.该函数的调用格式为: R=subs(S) 对于 S 中出现的全部符号变量,如果在调用函数或工作区间中存在相应值,则将值代 入,如果没有相应值,则对应的变量保持不变;

R=subs(S,new)

86 MATLAB 基础及实验教程 用新的符号变量替换 S 中的默认变量,即有 findsym 函数返回的变量;

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题