符号对象(2)

符号表达式化简

1)函数factor(E)
此函数功能是对富豪表达式E进行因式分解。对于大于252的整数的分解,可使用语句factor(sym('N'))

2)函数expand(E)
此函数功能是将符号表达式E展开,应用于多项式表达式、三角函数、指数函数、对数函数的展开。

3)函数collect(E,v):其作用是将符号表达式E中的v的同幂项系数合并。
collect(E)是将符号表达式E中由函数findsym()确定的默认变量的系数合并。

4)函数simplify(E):将符号表达式E运用多种恒等式变换进行综合化简。
函数simple(E):是对符号表达式E尝试多种不同(包括simplify)的化简方法,以得到符号表达式E的长度最短的化简形式。若E为一符号矩阵,则为全矩阵的最短形
[R,HOW]=simple(E):对符号表达式E尝试多种不同(包括simplify)的简化方法,返回参数R为表达式的简化型,HOW为简化过程中使用的简化方法。

注:发现在R2016版本上是无法使用的。

5)[N,D]=numden(E):将符号表达式E通分,分别返回E通分后的分子N与分母D

>>syms x y k p;
  f=x/(k*y)+y/(p*x);
  [n,d] = numden(f) 
  n = 
      p*x^2 + k*y^2  
  d = 
      k*p*x*y 
>>f1 = n/d 
  f1 = 
       (p*x^2 + k*y^2)/(k*p*x*y) 
>>numden(f) 
  ans = 
      p*x^2 + k*y^2

6)函数horner(E):将符号表达式E转换成嵌套形式表达式。
syms a b c d x;

>> f = -a*x^4+b*x^3-c*x^2+x+d;
   f1=horner(f)
   f1 =
          d - x*(x*(c - x*(b - a*x)) - 1)

7)函数char(S):将符号对象转换为字符对象

>>syms a b c x y;
  c = 123456;
  ans1 = class(c)
  c1=char(sym(c))
  ans2=class(c1)
  f=sym('x+y+z');
  ans3=class(f)
  f1=char(f)
  ans4=class(f1)

ans1 =  
         double    
c1 =
         123456       
ans2 =    
         char           
ans3 =    
         sym        
f1 =    
         x + y + z        
ans4 =    
         char

8)函数pretty(E):以习惯书写的形式显示。

9)函数compose():及复合函数运算,运算方向从右至左。

  • compose(f,g):f(g(x))
  • compose(f,g,z):f(g(z)),以g=g(z)代入f(x)中的x
  • compose(f,g,x,z):f(g(z)),以g=g(z)代入f(t)中的t
  • compose(f,g,t,u,z):当f=f(t)与g=g(u)返回以z为自变量的复合函数f(g(z)),即用g=g(u)代入f(t)中的t,且自变量g(y)中的y改换为z。

10)函数finverse():求反函数命令

  • g=finverse(f,v):求符号函数f的自变量为v的反函数g。
  • g=finverse(f):求符号函数f的反函数g,函数表达式f有单变量x,函数g也是符号函数,并且有g(f(x))=x。

你可能感兴趣的:(matlab)