Matlab 符号运算的因式分解、展开与合并、简化
2015-07-27 11:37
561 查看
对于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);
完!
(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);
完!
相关文章推荐
- Matlab--二维绘图
- libsvm在matlab中使用
- matlab如何求矩阵行列式
- Matlab--函数
- matlab 图片批量读取
- 在matlab中进行遥感影像地理坐标的相互转换
- 在matlab中实现遥感影像和shp文件的结合显示
- vs2008中调用matlab3013a程序配置方法
- matlab cosd,cos,acos,acosd
- matlab图像处理 笔记
- matlab中find函数的使用
- Caffe+Ubunt14.04+Cuda7.0+Opencv3.0+MKL+Matlab2014a安装教程
- VS2010和Matlab2012b混合编程 配置详解
- MATLAB 修改启动路径
- MATLAB图像函数 块和邻域的处理
- Matlab稀疏矩阵
- Matlab中fread函数的高级使用方法及其帮助文档中容易引起歧义的地方
- Matlab工具箱下载地址汇总
- MATLAB中的ind2vec和vec2ind函数
- Latex 中插入 Matlab 代码