Previous: Тригонометрия в Maxima, Up: Тригонометрия [Contents][Index]
Значение по умолчанию: true
Если %piargs равно true, то тригонометрические функции упрощаются до
алгебраических констант, если аргумент кратен
%pi, %pi/2, %pi/3, %pi/4 или %pi/6.
Maxima использует некоторые тождества, применимые, если %pi домножается на целую переменную (символ, определенный как целое число).
Примеры:
(%i1) %piargs : false;
(%o1)                         false
(%i2) [sin (%pi), sin (%pi/2), sin (%pi/3)];
                                %pi       %pi
(%o2)            [sin(%pi), sin(---), sin(---)]
                                 2         3
(%i3) [sin (%pi/4), sin (%pi/5), sin (%pi/6)];
                      %pi       %pi       %pi
(%o3)            [sin(---), sin(---), sin(---)]
                       4         5         6
(%i4) %piargs : true;
(%o4)                         true
(%i5) [sin (%pi), sin (%pi/2), sin (%pi/3)];
                                sqrt(3)
(%o5)                    [0, 1, -------]
                                   2
(%i6) [sin (%pi/4), sin (%pi/5), sin (%pi/6)];
                         1         %pi   1
(%o6)                [-------, sin(---), -]
                      sqrt(2)       5    2
(%i7) [cos (%pi/3), cos (10*%pi/3), tan (10*%pi/3), cos (sqrt(2)*%pi/3)];
                1    1               sqrt(2) %pi
(%o7)          [-, - -, sqrt(3), cos(-----------)]
                2    2                    3
Некоторые тождества применяются, если %pi и %pi/2 домножается
на целую переменную (символ, определенный как целое число):
(%i1) declare (n, integer, m, even);
(%o1)                         done
(%i2) [sin (%pi * n), cos (%pi * m), sin (%pi/2 * m), cos (%pi/2 * m)];
                                      m/2
(%o2)                  [0, 1, 0, (- 1)   ]
Значение по умолчанию: true
Если %iargs равно true, то тригонометрические функции упрощаются
до гиперболических, если аргумент явно домножается на мнимую единицу %i.
Упрощение производится, даже если аргумент явно является вещественным; Maxima лишь проверяет, просматривается ли явно в аргументе множитель %i.
Примеры:
(%i1) %iargs : false; (%o1) false (%i2) [sin (%i * x), cos (%i * x), tan (%i * x)]; (%o2) [sin(%i x), cos(%i x), tan(%i x)] (%i3) %iargs : true; (%o3) true (%i4) [sin (%i * x), cos (%i * x), tan (%i * x)]; (%o4) [%i sinh(x), cosh(x), %i tanh(x)]
Упрощение проводится, даже если аргумент явно является вещественным:
(%i1) declare (x, imaginary); (%o1) done (%i2) [featurep (x, imaginary), featurep (x, real)]; (%o2) [true, false] (%i3) sin (%i * x); (%o3) %i sinh(x)
- Арккосинус.
- Ареакосинус (гиперболический арккосинус).
- Арккотангенс.
- Ареакотангенс (гиперболический арккотангенс).
- Арккосеканс.
- Ареакосеканс (гиперболический арккосеканс).
- Арксеканс.
- Ареасеканс (гиперболический арксеканс).
- Арксинус.
- Ареасинус (гиперболический арксинус).
- Арктангенс.
- соответствует значению atan(y/x) на интервале
(-%pi, %pi).
- Ареатангенс (гиперболический арктангенс).
Пакет atrig1 содержит несколько дополнительных правил упрощения
для обратных тригонометрических функций. Вместе с уже известными Maxima правилами,
полностью реализована работа с углами 0, %pi/6, %pi/4,
%pi/3 и %pi/2, а также соответствующими углами в трех других четвертях.
Для использования пакета выполните load("atrig1");.
- Косинус.
- Ареакосинус (гиперболический арккосинус).
- Котангенс.
- Ареакотангенс (гиперболический арккотангенс).
- Косеканс.
- Ареакосеканс (гиперболический арккосеканс).
Значение по умолчанию: false
Если halfangles равно true, то тригонометрические функции 
аргументов expr/2 упрощаются в функции от expr.
Примеры:
(%i1) halfangles : false;
(%o1)                         false
(%i2) sin (x / 2);
                                 x
(%o2)                        sin(-)
                                 2
(%i3) halfangles : true;
(%o3)                         true
(%i4) sin (x / 2);
                        sqrt(1 - cos(x))
(%o4)                   ----------------
                            sqrt(2)
Пакет ntrig содержит набор правил упрощения для тригонометрических
функций с аргументами вида f(n %pi/10), где f - одна из
функций sin, cos, tan, csc, sec и cot.
- Секанс.
- Гиперболический секанс.
- Синус.
- Гиперболический синус.
- Тангенс.
- Гиперболический тангенс.
Раскрывает тригонометрические и гиперболические функции суммы или произведения углов в
expr. Для получения лучших результатов нужно сначала раскрыть expr. Для
повышения пользовательского контроля за упрощением функция раскрывает только один
уровень сумм/произведений за раз. Для полного раскрытия в синусы и косинусы укажите
trigexpand: true.
trigexpand управляется следующими глобальными флагами:
trigexpandРаскрывать все получающиеся в последствии выражения с синусами и косинусами.
halfanglesРаскрывать функции половинных углов в функции полных углов.
trigexpandplusРаскрывать функции сумм аргументов (например, sin(x + y)).
trigexpandtimesРаскрывать функции кратных аргументов (например, sin(2 x)).
Примеры:
(%i1) x+sin(3*x)/sin(x),trigexpand=true,expand;
                         2           2
(%o1)               - sin (x) + 3 cos (x) + x
(%i2) trigexpand(sin(10*x+y));
(%o2)          cos(10 x) sin(y) + sin(10 x) cos(y)
Значение по умолчанию: true
trigexpandplus управляет раскрытием функций от сумм аргументов в trigexpand
(если trigexpand равно true, либо в функции trigexpand), например,
sin(x+y). Упрощение производится, только если trigexpandplus равно true.
Значение по умолчанию: true
trigexpandplus управляет раскрытием функций от произведений аргументов в
trigexpand (если trigexpand равно true, либо в функции trigexpand),
например, sin(2*x). Упрощение производится, только если trigexpandtimes равно
true.
Значение по умолчанию: all
triginverses управляет раскрытием композиций тригонометрических и гиперболических
функций со своими обратными функциями.
Если all, то и atan(tan(x)), и tan(atan(x))
упрощается в x.
Если true, то упрощение arcfun(fun(x)) не производится.
Если false, то ни arcfun(fun(x)), ни
fun(arcfun(x)) не будет упрощено.
Раскрывает произведения и степени sin, cos, sinh, cosh в
функции кратных аргументов x. Также производится попытка исключить такие функции из
знаменателей. Если x не указано, будут использоваться все переменные из expr.
См. также poissimp.
(%i1) trigreduce(-sin(x)^2+3*cos(x)^2+x);
               cos(2 x)      cos(2 x)   1        1
(%o1)          -------- + 3 (-------- + -) + x - -
                  2             2       2        2
В некоторых простых случаях команды упрощения используют информацию о переменных, объявленную следующим образом:
(%i1) declare(j, integer, e, even, o, odd)$ (%i2) sin(x + (e + 1/2)*%pi); (%o2) cos(x) (%i3) sin(x + (o + 1/2)*%pi); (%o3) - cos(x)
Значение по умолчанию: true
Если trigsign равно true, допускается упрощение отрицательных аргументов
тригонометрических функций. Например, sin(-x) раскроется в -sin(x).
Применяет тождества sin(x)^2 + cos(x)^2 = 1 и cosh(x)^2 - sinh(x)^2 = 1
для упрощения выражений с tan, sec, и так далее, до выражений с sin,
cos, sinh, cosh.
Результат может упрощаться далее с trigreduce, ratsimp, и radcan.
demo ("trgsmp.dem") показывает несколько примеров для trigsimp.
Возвращает канонический упрощенный квазилинейный вид тригонометрического выражения;
expr - рациональная дробь с функциями sin, cos или tan,
аргументы которых - линейные формы некоторых переменных и %pi/n
(n - целое) с целыми коэффициентами. Результат - упрощенная дробь с линейным
числителем и знаменателем с sin и cos. Таким образом, trigrat
переходит к линейному виду, только если это возможно.
(%i1) trigrat(sin(3*a)/sin(a+%pi/3)); (%o1) sqrt(3) sin(2 a) + cos(2 a) - 1
Следующий пример взят из раздела 1.5.5, "Теорема Морлея", книги Davenport, Siret, Tournier, Calcul Formel, изд-во Masson (английский перевод - Addison-Wesley).
(%i1) c: %pi/3 - a - b;
                                    %pi
(%o1)                     - b - a + ---
                                     3
(%i2) bc: sin(a)*sin(3*c)/sin(a+b);
                      sin(a) sin(3 b + 3 a)
(%o2)                 ---------------------
                           sin(b + a)
(%i3) ba: bc, c=a, a=c$
(%i4) ac2: ba^2 + bc^2 - 2*bc*ba*cos(b);
         2       2
      sin (a) sin (3 b + 3 a)
(%o4) -----------------------
               2
            sin (b + a)
                                        %pi
   2 sin(a) sin(3 a) cos(b) sin(b + a - ---) sin(3 b + 3 a)
                                         3
 - --------------------------------------------------------
                           %pi
                   sin(a - ---) sin(b + a)
                            3
      2         2         %pi
   sin (3 a) sin (b + a - ---)
                           3
 + ---------------------------
             2     %pi
          sin (a - ---)
                    3
(%i5) trigrat (ac2);
(%o5) - (sqrt(3) sin(4 b + 4 a) - cos(4 b + 4 a)
 - 2 sqrt(3) sin(4 b + 2 a) + 2 cos(4 b + 2 a)
 - 2 sqrt(3) sin(2 b + 4 a) + 2 cos(2 b + 4 a)
 + 4 sqrt(3) sin(2 b + 2 a) - 8 cos(2 b + 2 a) - 4 cos(2 b - 2 a)
 + sqrt(3) sin(4 b) - cos(4 b) - 2 sqrt(3) sin(2 b) + 10 cos(2 b)
 + sqrt(3) sin(4 a) - cos(4 a) - 2 sqrt(3) sin(2 a) + 10 cos(2 a)
 - 9)/4
Previous: Тригонометрия в Maxima, Up: Тригонометрия [Contents][Index]