Объедините условия идентичной алгебраической структуры
Объедините степени одной основы.
syms x y z combine(x^y*x^z)
ans = x^(y + z)
Объедините степени числовых аргументов. Чтобы предотвратить MATLAB® от оценки выражения используйте sym
для преобразования по крайней мере одного числового аргумента в символьное значение.
syms x y combine(x^(3)*x^y*x^exp(sym(1)))
ans = x^(y + exp(1) + 3)
Здесь, sym
преобразует 1
в символическое значение, препятствующее MATLAB вычислять выражение e1
.
Объедините степени с одинаковыми показателями в определенных случаях.
combine(sqrt(sym(2))*sqrt(3))
ans = 6^(1/2)
combine
обычно не объединяет степеней, поскольку внутренний упрощатель применяет те же правила в противоположном направлении, чтобы расширить результат.
syms x y combine(y^5*x^5)
ans = x^5*y^5
Объедините условия с логарифмами путем определения целевого аргумента следующим log
. Для действительных положительных чисел логарифм продукта равен сумме логарифмов его факторов.
S = log(sym(2)) + log(sym(3)); combine(S,'log')
ans = log(6)
Попробуйте объединить log(a) + log(b)
. Потому что a
и b
приняты комплексными числами по умолчанию, правило не содержит и combine
не объединяет термины.
syms a b S = log(a) + log(b); combine(S,'log')
ans = log(a) + log(b)
Примените правило, установив такие допущения, что a
и b
удовлетворить условиям правила.
assume(a > 0) assume(b > 0) S = log(a) + log(b); combine(S,'log')
ans = log(a*b)
Для будущих расчетов очистите допущения, установленные на переменных a и b, воссоздав их используя syms
.
syms a b
Кроме того, примените правило, проигнорировав аналитические ограничения с помощью 'IgnoreAnalyticConstraints'
.
syms a b S = log(a) + log(b); combine(S,'log','IgnoreAnalyticConstraints',true)
ans = log(a*b)
Перепишите продукты функций синуса и косинуса как сумму функций путем установки целевого аргумента в sincos
.
syms a b combine(sin(a)*cos(b) + sin(b)^2,'sincos')
ans = sin(a + b)/2 - cos(2*b)/2 + sin(a - b)/2 + 1/2
Перепишите суммы функций синуса и косинуса путем установки целевого аргумента в sincos
.
combine(cos(a) + sin(a),'sincos')
ans = 2^(1/2)*cos(a - pi/4)
Перепишите косинусоидную квадратную функцию путем установки целевого аргумента на sincos
.
combine(cos(a)^2,'sincos')
ans = cos(2*a)/2 + 1/2
combine
не переписывает степени синусоидальных или косинусоидальных функций с отрицательными целочисленными экспонентами.
syms a b combine(sin(b)^(-2)*cos(b)^(-2),'sincos')
ans = 1/(cos(b)^2*sin(b)^2)
Объедините условия с экспонентами путем определения целевого аргумента как exp
.
combine(exp(sym(3))*exp(sym(2)),'exp')
ans = exp(5)
syms a combine(exp(a)^3, 'exp')
ans = exp(3*a)
Объедините условия с интегралами путем определения целевого аргумента как int
.
syms a f(x) g(x) combine(int(f(x),x)+int(g(x),x),'int') combine(a*int(f(x),x),'int')
ans = int(f(x) + g(x), x) ans = int(a*f(x), x)
Объедините интегралы с теми же пределами.
syms a b h(z) combine(int(f(x),x,a,b)+int(h(z),z,a,b),'int')
ans = int(f(x) + h(x), x, a, b)
Объедините два вызова функции обратного тангенса путем определения целевого аргумента следующим atan
.
syms a b assume(-1 < a < 1) assume(-1 < b < 1) combine(atan(a) + atan(b),'atan')
ans = -atan((a + b)/(a*b - 1))
Объедините два вызова функции обратного тангенса. combine
упрощает выражение до символического значения, если это возможно.
assume(a > 0) combine(atan(a) + atan(1/a),'atan')
ans = pi/2
Для дальнейших расчетов очистите допущения:
syms a b
Объедините несколько гамма-функций путем определения цели как gamma
.
syms x combine(gamma(x)*gamma(1-x),'gamma')
ans = -pi/sin(pi*(x - 1))
combine
упрощает частные гамма-функции к рациональным выражениям.
Вычислите несколько выражений в одном вызове функции с помощью символьной матрицы в качестве входа параметра.
S = [sqrt(sym(2))*sqrt(5), sqrt(2)*sqrt(sym(11))]; combine(S)
ans = [ 10^(1/2), 22^(1/2)]
combine
применяет следующие правила перезаписи к входу выражению S
, в зависимости от значения целевого аргумента T
.
Когда T = 'exp'
, combine
применяет эти правила перезаписи, где это допустимо,
Когда T = 'log'
,
Если b < 1000,
Когда b >= 1000
, combine
не применяет это второе правило.
Правила, применяемые к переписыванию логарифмов, не удерживаются для произвольных комплексных чисел a
и b
. Задайте соответствующие свойства для a
или b
чтобы включить эти правила перезаписи.
Когда T = 'int'
,
Когда T = 'sincos'
,
combine
применяет аналогичные правила для sin(x)cos(y)
и cos(x)cos(y)
.
Когда T = 'atan'
и -1 < x < 1, -1 < y < 1,
Когда T = 'sinhcosh'
,
combine
применяет аналогичные правила для sinh(x)cosh(y)
и cosh(x)cosh(y)
.
combine
применяет предыдущие правила рекурсивно к степеням sinh
и cosh
с положительными интегральными экспонентами.
Когда T = 'gamma'
,
и,
Для положительных целых чисел n
,