类型的转换 | 函数 |
---|---|
结合相同代数结构的条款 | 结合 |
展开表达式 | 扩大 |
因素表达 | 因素 |
从Expression中提取子表达式 | 孩子们 |
以相同权力收取条款 | 收集 |
以其他功能重写表达式 | 重写 |
计算表达式的部分分式分解 | partfrac |
计算正常形式的理性表达式 | simplifyFraction |
使用霍纳嵌套形式表示多项式 | 霍纳 |
符号数学工具箱™提供结合
用于组合原始表达式的子表达式的函数。的结合
函数使用您指定的函数的数学标识。例如,组合三角形表达式。
Syms x y组合(2*sin(x)*cos(x),'sincos')
ans = sin(2 * x)
如果不指定目标函数,结合
在这些身份有效的地方使用这些身份获取权力:
一个b一个c=一个b+c
一个cbc=(一个b)c
(一个b)c=一个公元前
例如,默认情况下,该函数合并下列平方根。
组合(SQRT(2)* SQRT(x))
ans = (2 * x) ^ (1/2)
函数不结合平方根sqrt(x)* sqrt(y)
因为恒等式对于负的变量无效。
组合(SQRT(x)* sqrt(y))
ans = x ^ (1/2) * y ^ (1/2)
结合这些平方根,使用IgnoreAnalyticConstraints
选择。
结合(sqrt (x) * sqrt (y),‘IgnoreAnalyticConstraints’,真的)
ans = (x * y) ^ (1/2)
IgnoreAnalyticConstraints
提供一个快捷方式,使您可以在有关变量值的常用假设下组合表达式。或者,您可以明确地对变量设置适当的假设。例如,假设x
和y
是积极的价值观。
假设([x,y],'正')组合(sqrt(x)* sqrt(y))
ans = (x * y) ^ (1/2)
为了进一步的计算,请明确对的假设x
和y
通过使用它们进行重新创建信谊
.
信谊x y
作为目标函数,结合
接受:
,经验值
,γ
,int
,日志
,要求
,sinhcosh
.
对于基本表达式,使用扩大
通过乘以产品和乘以改造原始表达式的功能。下载188bet金宝搏该功能提供了一种展开多项式的简单方法。
将(x - 1)*(x - 2)*(x - 3)
Ans = x^3 - 6*x^2 + 11*x - 6
展开(x *(x *(x-6)+ 11) - 6)
Ans = x^3 - 6*x^2 + 11*x - 6
该函数还扩展指数和对数表达式。例如,展开包含指数的以下表达式。
扩展(exp(x + y)*(x + exp(x - y)))
Ans = exp(2*x) + x*exp(x)*exp(y)
展开包含对数的表达式。扩展对数对通用复合值无效,但它对正值有效。
Syms a b c positive expand(log(a*b*c))
Ans = log(a) + log(b) + log(c)
为了进一步的计算,澄清假设。
syms a b c
另外,使用IgnoreAnalyticConstraints
扩展对数时的选项。
扩大(日志(a * b * c)、“IgnoreAnalyticConstraints”,真的)
Ans = log(a) + log(b) + log(c)
扩大
也学习三角表达式。例如,展开这个表达式。
扩大(cos (x + y))
Ans = cosx * cosy - sinx *sin(y)
扩大
在函数之间使用数学恒等式。
扩大(罪(5 * x))
ans = sin(x) - 12 * cos(x)^ 2 * sin(x)+ 16 * cos(x)^ 4 * sin(x)
扩大(cos(3 *这些“可信赖医疗组织”(x)))
ans = 4 * x ^ 3 - 3 * x
扩大
为所有子表达式递归操作。
将sin(3*x) + 1 *(cos(2*x) - 1)展开
ans = 2 * sin(x)+ 2 * cos(x)^ 2 - 10 * cos(x)^ 2 * sin(x)+ 8 * cos(x)^ 4 * sin(x) - 2
为了防止所有三角、对数和指数子表达式的展开,请使用该选项ArithmeticOnly
.
展开(exp(x + y)*(x + exp(x-y)),'arthmiticonly',true)
ans = exp(x - y)* exp(x + y)+ x * exp(x + y)
扩大(罪(3 * x) + 1) * (cos (2 * x) - 1),‘ArithmeticOnly’,真的)
ans = cos(2 * x) - sin(3 * x)+ cos(2 * x)* sin(3 * x) - 1
要返回表达式的所有不可约因子,请使用因素
函数。例如,找到这种多项式表达的所有不可缩短的多项式因子。结果表明,这种多项式有三根:x = 1
,x = 2
,x = 3
.
Syms x factor(x^3 - 6*x^2 + 11*x - 6)
ans = [x - 3,x - 1,x - 2]
如果多项式表达式是不可约的,因素
返回原始表达式。
因子(x ^ 3 - 6 * x ^ 2 + 11 * x - 5)
Ans = x^3 - 6*x^2 + 11*x - 5
求表达式的不可约多项式因子x ^ 6 + 1
.默认情况下,因素
使用对Rational Numbers的因子,以确切的符号形式保持有理数。此表达的结果因子不显示多项式根。
因素(x ^ 6 + 1)
Ans = [x^2 + 1, x^4 - x^2 + 1]
使用其他分解模式允许您进一步提供此表达式。例如,因子对复杂数字的表达相同。
因子(x ^ 6 + 1,“FactorMode”,“复杂的”)
Ans = [x + 0.86602540378443864676372317075294 + 0.5i,…]X + 0.86602540378443864676372317075294 - 0.5i,…1.0 x +我,……x - 1.0我,……X - 0.86602540378443864676372317075294 + 0.5i,…X - 0.86602540378443864676372317075294 - 0.5i]
因素
也适用于多项式和有理表达式以外的表达式。例如,可以分解包含对数、正弦和余弦函数的下列表达式。在内部,因素
通过用变量替换子表达式,将这些表达式转换为多项式和有理表达式。在计算了不可约因子之后,函数恢复了原始的子表达式。
因式(log(x)^2 - 1)/(cos(x)^2 - sin(x)^2))
ans =[日志(x) - 1,日志(x) + 1, 1 / cos (x) - (sin (x)), 1 / cos (x) + sin (x)))
用因素
分解符号整数和符号有理数。
因子(信谊(902834092))因子(1 /信谊(210))
ANS = [2,2,47,379,12671] ANS = [1/2,1 / 3,1 / 5,1 / 7]
因素
也可以分解大于Flintmax.
MATLAB的®因素
不能。要准确地表示较大的数字,请将数字放在引号内。
因子(信谊(' 41758540882408627201 '))
ANS = [479001599,87178291199]
的孩子们
函数返回表达式的子表达式。
定义一个表达式f
有几个子表达。
syms x y f = exp(3 * x)* y ^ 3 + exp(2 * x)* y ^ 2 + exp(x)* y;
的子表达式f
通过使用孩子们
.
expr =孩子(f)
[y^2*exp(2*x), y^3*exp(3*x), y*exp(x)]
您可以通过调用提取较低级别的子表达式孩子们
反复对结果。
的子表达式expr (1)
通过调用孩子们
反复。当输入到孩子们
是一个矢量,输出是一个单元数组。
Expr1 =儿童(expr(1))expr2 =儿童(expr1)
expr1 = [y ^ 2,exp(2 * x)] expr2 = 1×2单元阵列{1×2 sym} {1×1 sym}
访问单元格数组的内容expr2.
使用括号。
EXPR2 {1} EXPR2 {2}
ans = [y,2] ans = 2 * x
如果数学表达式包含具有指定变量或表达式相同权力的术语,则收集
函数通过对这些术语进行分组来重新组织表达式。当调用收集
,指定函数必须视为未知的变量。的收集
函数把原始表达式看作是给定未知数的多项式,并将系数按幂等分组。将表达式的各项用幂相等的集合x
.
信谊x y z expr = x * y ^ 4 + x * z + 2 * x ^ 3 + x ^ 2 * y * z +……3*x^3*y^4*z^2 + y*z^2 + 5*x*y*z收集(expr x)
ans =(3 * y ^ 4 * z ^ 2 + 2)* x ^ 3 + y * z * x ^ 2 +(y ^ 4 + 5 * z * y + z)* x + y * z ^ 2
将同一表达式的各项用幂等分组y
.
收集(expr, y)
ans =(3 * x ^ 3 * z ^ 2 + x)* y ^ 4 +(x ^ 2 * z + 5 * x * z + z ^ 2)* y + 2 * x ^ 3 + z * x
将同一表达式的各项用幂等分组z
.
收集(expr, z)
ans = (3 * x ^ 3 * y ^ 4 + y) * z ^ 2 + (x + 5 * * y + x ^ 2 * y) * z + 2 * x ^ 3 + x * y ^ 4
如果你没有指定变量收集
必须认为是未知的,功能使用symvar
确定默认变量。
收集(expr)
ans =(3 * y ^ 4 * z ^ 2 + 2)* x ^ 3 + y * z * x ^ 2 +(y ^ 4 + 5 * z * y + z)* x + y * z ^ 2
通过将这些未知数指定为载体来收集关于几个未知的表达式的术语。
收集(expr [y, z])
ans = 3 * x ^ 3 * y ^ 4 * z x ^ 2 + y ^ * 4 + y * z ^ 2 + (x ^ 2 + 5 * x) * y * z + x * z + 2 * x ^ 3
在特定功能方面呈现表达式,使用重写
.此函数使用函数之间的数学标识。例如,根据特定三角函数重写包含三角函数函数的表达式。
信谊x重写(sin (x),“谭”)
Ans = (2*tan(x/2))/(tan(x/2)^2 + 1)
重写(cos (x),“谭”)
Ans = -(tan(x/2)²- 1)/(tan(x/2)²+ 1)
重写(SIN(2 * x)+ cos(3 * x)^ 2,'tan')
谭ans = (((3 * x) / 2) ^ 2 - 1) ^ 2 / (tan ((3 * x) / 2) ^ 2 + 1) ^ 2 +…(2 * tan (x)) / (tan (x) ^ 2 + 1)
用重写
用指数函数来表示三角函数。
重写(sin (x),“经验值”)
Ans = (exp(-x*1i)*1i)/2 - (exp(x*1i)*1i)/2
重写(cos (x),“经验值”)
exp(-x*1i)/2 + exp(x*1i)/2
用重写
用指数函数来表示双曲函数。
重写(sinh (x),“经验值”)
ans = exp(x)/ 2 - exp(-x)/ 2
重写(cosh (x),“经验值”)
exp(-x)/2 + exp(x)/2
重写
也用对数表示反双曲函数。
重写(双曲正弦(x),“日志”)
ans = log(x +(x ^ 2 + 1)^(1/2))
重写(作用(x),“日志”)
ans = log(x +(x - 1)^(1/2)*(x + 1)^(1/2))
的partfrac
功能以多项式和Rational术语的总和的形式返回合理表达。在每个Rational项中,分子的程度小于分母的程度。对于一些表达,partfrac
返回明显更简单的表单。
Syms x n = x^6 + 15*x^5 + 94*x^4 + 316*x^3 + 599*x^2 + 602*x + 247;D = x^6 + 14*x^5 + 80*x^4 + 238*x^3 + 387*x^2 + 324*x + 108;partfrac (n / d, x)
Ans = 1/(x + 1) + 1/(x + 2)^2 + 1/(x + 3)^3 + 1
理性术语中的分母代表了原始表达的常见常见分支。
因素(d)
ans = [x + 1,x + 2,x + 2,x + 3,x + 3,x + 3]
的simplifyFraction
函数表示原始合理表达式作为具有扩展分器和分母的单个Rational术语。返回表达式的分子和分母的最大常见除数是1.该功能对于简化分数而不是简化的功能更有效简化
函数。
syms x y simplifyFraction(x^3 + 3*y^2)/(x^2 - y^2) + 3
Ans = (x^3 + 3*x^2)/(x^2 - y^2)
simplifyFraction
消去分子和分母上的公因数。
(x^2/(x + y) - y^2/(x + y))
ans = x - y
simplifyFraction
也处理多项式和有理函数以外的表达式。在内部,它通过用标识符替换子表达式,将这些表达式转换成多项式或有理函数。用临时变量对表达式进行规范化后,simplifyFraction
恢复原始子表达式。
SimpleIffileFraction((exp(2 * x) - exp(2 * y))/(exp(x) - exp(y)))
ans = exp(x)+ exp(y)
霍纳式或嵌套式多项式表达式对于数值计算是有效的,因为与相同多项式的其他数学等价形式相比,它通常涉及较少的算术运算。通常,这种形式的表达式在数值上是稳定的。要用嵌套形式表示多项式表达式,请使用霍纳
函数。
Syms x horner(x^3 - 6*x^2 + 11*x - 6)
ans = x *(x *(x-6)+ 11) - 6
如果多项式系数是浮点数,得到的霍纳形式将它们表示为有理数。
霍纳(1.1 + 2.2*x + 3.3*x^2)
Ans = x*((33*x)/10 + 11/5) + 11/10
若要将结果中的系数转换为浮点数,请使用vpa.
.
vpa (ans)
Ans = x*(3.3*x + 2.2) + 1.1