Anterior: Introducción a la trigonometría, Subir: Funciones trigonométricas [Índice general][Índice]
Valor por defecto: true
Cuando %piargs
vale true
, las funciones trigonométricas
se simplifican a constantes algebraicas cuando el argumento es múltiplo
entero de
\(%pi\), \(%pi/2\), \(%pi/3\), \(%pi/4\) o \(%pi/6\).
Maxima conoce algunas identidades aplicables cuando \(%pi\), etc., se multiplican por una variable entera (esto es, un símbolo declarado como entero).
Ejemplo:
(%i1) %piargs : 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$
(%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
Se aplican ciertas identidades cuando \(%pi\) o \(%pi/2\) se multiplican por una variable entera.
(%i1) declare (n, integer, m, even)$
(%i2) [sin (%pi * n), cos (%pi * m), sin (%pi/2 * m), cos (%pi/2 * m)]; m/2 (%o2) [0, 1, 0, (- 1) ]
Valor por defecto: true
Cuando %iargs
vale true
, las funciones trigonométricas
se simplifican a funciones hiperbólicas
si el argumento es aparentemente un múltiplo de la unidad imaginaria \(%i\).
La simplificación se lleva a cabo incluso cuando el argumento es manifiestamente real; Maxima sólo se fija en si el argumento es un múltiplo literal de \(%i\).
Ejemplos:
(%i1) %iargs : false$
(%i2) [sin (%i * x), cos (%i * x), tan (%i * x)]; (%o2) [sin(%i x), cos(%i x), tan(%i x)]
(%i3) %iargs : true$
(%i4) [sin (%i * x), cos (%i * x), tan (%i * x)]; (%o4) [%i sinh(x), cosh(x), %i tanh(x)]
La simplificación se aplica incluso en el caso de que el argumento se reduzca a un número real.
(%i1) declare (x, imaginary)$
(%i2) [featurep (x, imaginary), featurep (x, real)]; (%o2) [true, false]
(%i3) sin (%i * x); (%o3) %i sinh(x)
Arco coseno.
Arco coseno hiperbólico.
Arco cotangente.
Arco cotangente hiperbólica.
Arco cosecante.
Arco cosecante hiperbólica.
Arco secante.
Arco secante hiperbólica.
Arco seno.
Arco seno hiperbólico.
Arco tangente.
Calcula el valor de atan(y/x)
en el intervalo de -%pi
a %pi
.
Arco tangente hiperbólica.
El paquete atrig1
contiene ciertas reglas de simplificación adicionales para las funciones trigonométricas inversas. Junto con las reglas que ya conoce Maxima, los siguientes ángulos están completamente implementados:
0
, %pi/6
, %pi/4
, %pi/3
y %pi/2
.
Los ángulos correspondientes en los otros tres cuadrantes también están disponibles.
Para hacer uso de estas reglas, ejecútese load("atrig1");
.
Coseno.
Coseno hiperbólico.
Cotangente.
Cotangente hiperbólica.
Cosecante.
Cosecante hiperbólica.
Valor por defecto: false
Si halfangles
vale true
, las funciones
trigonométricas con argumentos del tipo expr/2
se simplifican a funciones con argumentos expr.
Para un argumento real x en el intervalo 0 < x < 2*%pi
el seno del semiángulo se simplifica como
sqrt(1 - cos(x)) ---------------- sqrt(2)
Se necesita un factor relativamente complicado para que esta fórmula sea también válida para cualquier argumento complejo z:
realpart(z) floor(-----------) 2 %pi (- 1) (1 - unit_step(- imagpart(z)) realpart(z) realpart(z) floor(-----------) - ceiling(-----------) 2 %pi 2 %pi ((- 1) + 1))
Maxima reconoce este factor y otros similares para las funciones sin
,
cos
, sinh
y cosh
. Para valores especiales del argumento
\(z\), estos factores se simplifican de forma apropiada.
Ejemplos:
(%i1) halfangles:false; (%o1) false (%i2) sin(x/2); x (%o2) sin(-) 2 (%i3) halfangles:true; (%o3) true (%i4) sin(x/2); x floor(-----) 2 %pi sqrt(1 - cos(x)) (- 1) (%o4) ---------------------------------- sqrt(2) (%i5) assume(x>0, x<2*%pi)$ (%i6) sin(x/2); sqrt(1 - cos(x)) (%o6) ---------------- sqrt(2)
El paquete ntrig
contiene un conjunto de reglas de simplificación que se pueden usar para simplificar funciones trigonométricas cuyos argumentos son de la forma
f(n %pi/10)
donde f es cualquiera de las funciones
sin
, cos
, tan
, csc
, sec
o cot
.
Secante.
Secante hiperbólica.
Seno.
Seno hiperbólico.
Tangente.
Tangente hiperbólica.
Expande funciones trigonométricas e hiperbólicas de sumas de ángulos y de múltiplos de ángulos presentes en expr. Para mejorar los resultados, expr debería expandirse. Para facilitar el control por parte del usuario de las simplificaciones, esta función tan solo expande un nivel de cada vez, expandiendo sumas de ángulos o de múltiplos de ángulos. A fin de obtener una expansión completa en senos y coseno, se le dará a la variable trigexpand
el valor true
.
La función trigexpand
está controlada por las siguientes variables:
trigexpand
Si vale true
, provoca la expansión de todas las expresiones que contengan senos y cosenos.
trigexpandplus
Controla la regla de la suma para trigexpand
, la expansión de una suma como sin(x + y)
se llevará a cabo sólo si trigexpandplus
vale true
.
trigexpandtimes
Controla la regla del producto para trigexpand
, la expansión de un producto como sin(2 x)
se llevará a cabo sólo si trigexpandtimes
vale true
.
Ejemplos:
(%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)
Valor por defecto: true
La variable trigexpandplus
controla la regla de la suma para trigexpand
. Así, si la instrucción trigexpand
se utiliza o si la variable trigexpand
vale true
, se realizará la expansión de sumas como sin(x+y)
sólo si trigexpandplus
vale true
.
Valor por defecto: true
La variable trigexpandtimes
controla la regla del producto para trigexpand
. Así, si la instrucción trigexpand
se utiliza o si la variable trigexpand
vale true
, se realizará la expansión de productos como sin(2*x)
sólo si trigexpandtimes
vale true
.
Valor por defecto: true
La variable triginverses
controla la simplificación de la composición de funciones trigonométricas e hiperbólicas con sus funciones inversas.
Si vale all
, tanto atan(tan(x))
como tan(atan(x))
se reducen a x.
Si vale true
, se desactiva la simplificación de arcfun(fun(x))
.
Si vale false
, se desactivan las simplificaciones de
arcfun(fun(x))
y
fun(arcfun(x))
.
Combina productos y potencias de senos y cosenos trigonométricos e hiperbólicos de x, transformándolos en otros que son múltiplos de x. También intenta eliminar estas funciones cuando aparecen en los denominadores. Si no se introduce el argumento x, entonces se utilizan todas las variables de expr.
Véase también 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
Las rutinas de simplificación trigonométrica utilizan información declarada en algunos casos sencillos. Las declaraciones sobre variables se utilizan como se indica a continuación:
(%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)
Valor por defecto: true
Si trigsign
vale true
, se permite la simplificación de argumentos negativos en funciones trigonométricas, como en sin(-x)
, que se transformará en -sin(x)
sólo si trigsign
vale true
.
Utiliza las identidades \(sin(x)^2 + cos(x)^2 = 1\) y
\(cosh(x)^2 - sinh(x)^2 = 1\) para simplificar expresiones que contienen tan
, sec
,
etc., en expresiones con sin
, cos
, sinh
, cosh
.
Las funciones trigreduce
, ratsimp
y radcan
puden seguir siendo útiles para continuar el proceso de simplificación.
La instrucción demo ("trgsmp.dem")
muestra algunos ejemplos de trigsimp
.
Devuelve una forma canónica simplificada cuasi-lineal de una expresión trigonométrica;
expr es una fracción racional que contiene sin
, cos
o tan
,
cuyos argumentos son formas lineales respecto de ciertas variables (o kernels) y %pi/n
(n entero) con coeficientes enteros. El resultado es una fracción simplificada con
el numerador y denominador lineales respecto de sin
y cos
. Así,
trigrat
devuelve una expresión lineal siempre que sea posible.
(%i1) trigrat(sin(3*a)/sin(a+%pi/3)); (%o1) sqrt(3) sin(2 a) + cos(2 a) - 1
El siguiente ejemplo se ha tomado de Davenport, Siret y Tournier, Calcul Formel, Masson (o en inglés, Addison-Wesley), sección 1.5.5, teorema de Morley.
(%i1) c : %pi/3 - a - b$
(%i2) bc : sin(a)*sin(3*c)/sin(a+b); %pi sin(a) sin(3 (- b - a + ---)) 3 (%o2) ----------------------------- sin(b + a)
(%i3) ba : bc, c=a, a=c; %pi sin(3 a) sin(b + a - ---) 3 (%o3) ------------------------- %pi sin(a - ---) 3
(%i4) ac2 : ba^2 + bc^2 - 2*bc*ba*cos(b); 2 2 %pi sin (3 a) sin (b + a - ---) 3 (%o4) --------------------------- 2 %pi sin (a - ---) 3 %pi - (2 sin(a) sin(3 a) sin(3 (- b - a + ---)) cos(b) 3 %pi %pi sin(b + a - ---))/(sin(a - ---) sin(b + a)) 3 3 2 2 %pi sin (a) sin (3 (- b - a + ---)) 3 + ------------------------------- 2 sin (b + a)
(%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
Anterior: Introducción a la trigonometría, Subir: Funciones trigonométricas [Índice general][Índice]