exponenta event banner

объединиться

Объединить члены идентичной алгебраической структуры

Описание

пример

Y = combine(S) переписывает произведения сил в выражении S как единая держава.

пример

Y = combine(S,T) объединяет несколько вызовов целевой функции T в выражении S. Использовать combine для реализации обратной функциональности expand в отношении большинства применяемых правил.

пример

Y = combine(___,'IgnoreAnalyticConstraints',true) упрощает вывод, применяя общие математические идентичности, такие как log(a) + log(b) = log(a*b). Эти удостоверения могут быть недопустимыми для всех значений переменных, но их применение может привести к более простым результатам.

Примеры

Полномочия одной базы

Объедините силы одной базы.

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.

Если S - символьная матрица, combine применяется ко всем элементам матрицы.

Целевая функция, указанная как 'atan', 'exp', 'gamma', 'int', 'log', 'sincos', или 'sinhcosh'. Правила перезаписи применяются только к вызовам целевой функции.

Выходные аргументы

свернуть все

Выражение с объединенными функциями, возвращаемое как символьная переменная, число, выражение или как вектор или матрица символьных переменных, чисел или выражений.

Алгоритмы

combine применяет следующие правила перезаписи к входному выражению S, в зависимости от значения целевого аргумента T.

  • Когда T = 'exp', combine применяет эти правила переписывания, если они действительны,

    eaeb = ea + b

    (ea) b = eab.

  • Когда T = 'log',

    log (a) + log (b) = log (ab).

    Если b < 1000,

    blog (a) = log (ab).

    Когда b >= 1000, combine не применяет это второе правило.

    Правила, применяемые для перезаписи логарифмов, не содержат для произвольных комплексных значений a и b. Укажите соответствующие свойства для a или b для включения этих правил перезаписи.

  • Когда T = 'int',

    a∫f (x) dx=∫af (x) dx

    ∫f (x) dx+∫g (x) dx=∫f (x) + g (x) dx

    ∫abf (x) dx+∫abg (x) dx=∫abf (x) + g (x) dx

    ∫abf (x) dx+∫abg (y) dy=∫abf (y) + g (y) dy

    ∫abyf (x) dx+∫abxg (y) dy=∫abyf (c) + xg (c) dc.

  • Когда T = 'sincos',

    sin (x) sin (y) = cos (x − y) 2 cos (x + y) 2.

    combine применяет аналогичные правила для sin(x)cos(y) и cos(x)cos(y).

    Acos (x) + Bsin (x) = A1 + B2A2cos (x + tan − 1 (− BA)).

  • Когда T = 'atan' и -1 < x < 1, -1 < y < 1,

    atan (x) + atan (y) = atan (x + y1 − xy).

  • Когда T = 'sinhcosh',

    sinh (x) sinh (y) = cosh (x + y) 2 cosh (x − y) 2.

    combine применяет аналогичные правила для sinh(x)cosh(y) и cosh(x)cosh(y).

    combine применяет предыдущие правила рекурсивно к полномочиям sinh и cosh с положительными интегральными экспонентами.

  • Когда T = 'gamma',

    (a) = Γ (a + 1).

    и,

    Γ (a + 1) Γ (a) = a.

    Для положительных целых чисел n,

    Γ (а) Γ (а) = ¼ син (¼ а).

Представлен в R2014a