|
Para reescrever um produto de senos e cossenos como uma soma finita de Fourier, podemos usar a função trigreduce:
trigreduce(sin(x)^3*cos(x));
Obtemos:
2 sin(2 x) - sin(4 x)
---------------------
8
Para obter uma representação que não contém funções trigonométricas de arcos multiplos, escrevemos:
trigexpand(%);
3 3
4 cos(x) sin (x) - 4 cos (x) sin(x) + 4 cos(x) sin(x)
-----------------------------------------------------
8
Isso parece um pouco insatisfatório, mas podemos agora usar
trigsimp para executar simplificações que usam a identidade
Pitagórica
sin(x)^2 + cos(x)^2 = 1:
trigsimp(%);
3
cos(x) sin (x)
Aqui obtemos exatamente a expressão inicial. Isso não é sempre possível.
Várias questões em várias listas na internet sobre o máxima são sobre problemas que requerem simplificações sofisticadas de expressões trigonométricas. Algum tempo atrás, um usuário do máxima entrou em uma confusão quando ele resolveu essa integral integral:
result:integrate(9/cos(7*x)^2, x);
Maxima respondeu
18 sin(14 x)
(%o20) ----------------------------------------------
2 2
7 sin (14 x) + 7 cos (14 x) + 14 cos(14 x) + 7
que não é uma solução muito bonita. O usuário queria que
9*tan(7*x)
----------
7
fosse uma integral para
9
---------
2
cos(7*x)
mas achou difícil simplificar a resposta do Maxima nessa forma. Ele achou isso também difícil provar que a derivada da resposta é de fato o integrando. Vamos olhar em ambos os problemas:
Podemos simplificar a resposta com trigsimp:
simp1: trigsimp(result);
e obter
9 sin(14 x)
---------------
7 cos(14 x) + 7
O uso de trigexpand não é muito útil: Essa função pode reescrever sin(14*x) and cos(14*x) em termos de sin(x) e cos(x). Podemos de outra forma querer reescrever sin(14*x) e cos(14*x) em termos de sin(7*x) e cos(7*x). Isso é possível, mas somente com um artifício: temos que substituir 14*x por 2*y:
simp1, 14*x=2*y;
9 sin(2 y)
--------------
7 cos(2 y) + 7
Agora podemos aplicar trigexpand:
trigexpand(%);
18 cos(y) sin(y)
-------------------------
2 2
7 (cos (y) - sin (y)) + 7
trigsimp(%);
9 sin(y)
--------
7 cos(y)
Um trigreduce final fornece o resultado desejado:
trigreduce(%);
9 tan(y)
--------
7
Para obter o integrando original, temos que desfazer a troca de variável:
%, y = 7*x;
9 tan(7*x)
----------
7
Uma substituição de variável é um instrumento poderoso para influenciar em simplificações com trigexpand.
Pode ser dito que o problema dado pode ser simplificado mais rapidamente:
trigrat(result);
9 sin(7 x)
----------
7 cos(7 x)
trigreduce(%);
9 tan(7*x)
----------
7
Agora podemos olhar para a derivada do resultado:
(%i7)deriv: diff(result, x);
252 cos(14 x)
----------------------------------------------
2 2
7 sin (14 x) + 7 cos (14 x) + 14 cos(14 x) + 7
2
3528 sin (14 x)
+ -------------------------------------------------
2 2 2
(7 sin (14 x) + 7 cos (14 x) + 14 cos(14 x) + 7)
Primeiro vamos tentar trigrat, a função que elimina os excessos para ser útil no exemplo prévio:
trigrat(deriv);
18
(%o8) -------------
cos(14 x) + 1
Bem, isso é simplificado, mas está ainda de uma forma não esperada por nós. Vamos tentar uma substituição de variável e um trigexpand:
%, 14*x = 2*y;
18
(%o9) ------------
cos(2 y) + 1 trigexpand(%); 18
(%o10) -----------------------
2 2
- sin (y) + cos (y) + 1 trigsimp(%); 9
(%o11) -------
2
cos (y) %, y = 7*x; 9
(%o15) ---------
2
cos (7 x)
|