网络知识 娱乐 matlab 符号函数 syms

matlab 符号函数 syms

matlab中可以使用指令syms x定义一个符号变量x。符号变量可以进行算数运算,积分等操作。
matlab还有一个指令sym,感觉sym功能不如syms强大。
本文只提到syms相关的函数功能,不介绍函数具体用法。所有用法都可以参考 syms官方文档

定义

syms x
syms x y z

符号矩阵

syms lamda;
A=[1-lamda,-2,4;2,3-lamda,1;1,1,1-lamda];
D=det(A);
factor(D)

四则运算

+-*/^

syms x;
f=2*x^2+3*x-5;
g=f+x

关系运算

6种关系运算符:<<=>>===~=

对应的6个函数:lt()le()gt()ge()eq()ne()

逻辑运算

3种逻辑运算:&(与)、|(或)、~(非)。
4个逻辑运算函数:and(a,b)or(a,b)not(a)xor(a,b)
这两种都可以用,是一样的;

y=and(x>0,x<10)
y=x>0&x<10 

其他

指定定义域assume(x<0);
①提取有理分式的分子分母;[n,d]=numden(s)
②提取符号表达式的系数:c=coeffs(s,x)
③符号表达式化简:simplify(s)
④符号多项式与多项式系数之间的转化:
符号多项式转化为多项式系数向量:p=sym2poly(s)
多项式系数向量转化为符号多项式:s=poly2sym(p)






相关函数

! ! ! ! 因式分解与展开

factor(s):对符号表达式s分解因式。
expand(s):对符号表达式s进行展开。
collect(s):对符号表达式s合并同类项。
collect(s,v):对符号表达式s按变量v合并同类项。

! ! ! ! 计算

计算一个符号变量组成的函数的值。
subs(f,x,y) 把f中的x换成y
subs(f,y) 把f中的主变量换成y。
symvar(f,1) 找出f的主变量。
eval(f) 重新计算f的值。

syms x
m=2^x
x=10
m19=eval(m)

极限、微分(导数)、积分

极限 limit(f,x,a)
积分 int(f,x)
导数 diff(f,x,n)

绘图

fplot绘制符号函数

syms x;
f=x^2;
fplot(f,[0,1]);

更多函数: