1、sym 和 syms 符号数字、变量和表达式
符号方面就用sym 或者 syms 来进行定义,根据内容来区分是否是变量,数字,还是表达式。
(1)定义一个符号变量,直接用 syms x 或者 x = sym(‘x’) 就可以了。
如果定义多个符号变量,那么就用syms x y z 或者 一个一个用sym来定义。
syms x
x =
x
分析:推荐用syms,总觉的这样方便啊。
(2) 如果要定义一个符号变量,它的值是数字,那么只能用sym来定义
x = sym(5)
x =
5
(3)表达式。比如一个函数 x^2,或者 x+y等
要么先用syms 定义变量,然后直接赋值,或者直接用char2sym函数,看例子:
>> syms x y
>> z = x+y
z =
x + y
>>z2 = str2sym('x+y')
z2 =
x + y
2、定义了这些符号变量,有什么作用呢?其中一个,我可以计算表达式的值啊,这样,就会用到subs函数。
比如,我这边定义了一个表达式 x^3 +6 或者 sin(x)+cos(y),我想知道当x=4,y=5的时候,结果是多少。
>> syms x
>> z = x^3+6
z =
x^3 + 6
>> n = subs(z,{x},{2})
n =
14
>> m = subs(z,2)
m =
14
>> m = subs(z,x,2)
m =
14
换一个例子,看看
>> syms x y
z = sin(x)+cos(y)
z =
cos(y) + sin(x)
>> m = subs(z,[x,y],[4,5])
m =
cos(5) + sin(4)
3、这个一般要配合symvar函数,要知道表达式里面的有哪些变量,这样才能替换那个变量。
4、符号矩阵和函数
符号方面,有sym 类型的,根据内容包括变量,数字和表达式,矩阵等,但是,还有一种类型是symfun,符号函数。这种不知道在什么地方用到,看例子:
syms f(x,y)
f(x,y) = x^2*y;
z = f(3,2);
至于符号矩阵等,这个用的也比较少。不过可以看看怎么定义的:
A = sym('a', [1 6])
A =
[ a1, a2, a3, a4, a5, a6]
B = sym('b', [2 4])
B =
[ b1_1, b1_2, b1_3, b1_4]
[ b2_1, b2_2, b2_3, b2_4]