Matlab 符号运算的因式分解、展开与合并、简化

对于matlab求解符号运算中几个常用的函数,主要说一下因式分解、展开还有合并。

(1)对于因式分解使用的是factor()函数。

例1:factor函数对于纯数字也可以进行分解的

factor(112)
ans =
2 2 2 2 7

例2:对于符号函数

syms x y;

factor(x^3-y^3)

ans =

(x – y)*(x^2 + x*y + y^2)

(2)对于代数式的展开使用的是expand()函数。

例3:对于符号变量的代数展开式

syms x;

expand((x-2)*(x-4))

ans =

x^2 – 6*x + 8

例4:

syms x y;

expand(cos(x+y))

ans =

cos(x)*cos(y) – sin(x)*sin(y)

(3)同幂系数的合并。

语法规则如下:

R = collect(S)
R = collect(S,v)

例5:

syms x y;

R1 = collect((exp(x)+x)*(x+2))

R2 = collect((x+y)*(x^2+y^2+1), y)

R3 = collect([(x+1)*(y+1),x+y])

运行结果如下

R1 =

x^2 + (exp(x) + 2)*x + 2*exp(x)

R2 =

y^3 + x*y^2 + (x^2 + 1)*y + x*(x^2 + 1)

R3 =

[ y + x*(y + 1) + 1, x + y]

(4)简化

D =
 
[ a*x + b*y, a*y + b*z, b*x + a*z]
[ a*y + b*z, b*x + a*z, a*x + b*y]
[ b*x + a*z, a*x + b*y, a*y + b*z]

det(D) = - a^3*x^3 + 3*a^3*x*y*z - a^3*y^3 - a^3*z^3 - b^3*x^3 + 3*b^3*x*y*z - b^3*y^3 - b^3*z^3;

factor(det(D))=-(x + y + z)*(x^2 - x*y - x*z + y^2 - y*z + z^2)*(a + b)*(a^2 - a*b + b^2);

simplify(det(D))=-(a^3 + b^3)*(x^3 - 3*x*y*z + y^3 + z^3);

完!

  • 15
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值