Buscar

Métodos Matemáticos para Engenharia Química (2015)

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 123 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 123 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 123 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Métodos Matemáticos
para Engenharia
Química
uma abordagem prática com o software livre Maxima
Adilson José de Assis
Métodos Matemáticos para Engenharia
Química: uma abordagem prática com o
software livre Maxima
Adilson José de Assis
Faculdade de Engenharia Química
Universidade Federal de Uberlândia
http://www.feq.ufu.br
Métodos Matemáticos para Engenharia Química: uma abordagem prática com o software livre
Maxima
Copyright © 2015 Adilson J. de Assis
E-mail: ajassis@ufu.br
Versão: 17-02-2015
ISBN:
Este livro pode ser copiado e reproduzido livremente, respeitando os termos da Licença Creative
Commons Atribuição-Partilha (versão 3.0). Para obter uma cópia desta licença, visite
http://creativecommons.org/licenses/by-sa/3.0/ ou envie uma carta para Creative
Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
�A Matemática é o alfabeto com o qual Deus escreveu o Universo.�
�O livro da Natureza está escrito em caracteres matemáticos ...sem um conhecimento dos mesmos os homens
não poderão compreendê-lo�.
Galileu Galilei
�A matemática, corretamente vista, possui não apenas a verdade, mas suprema beleza - uma beleza fria e
austera, sem os enfeites lindos da pintura ou da música.�
Bertrand Russell
'
&
$
%
A natureza e a matemática são complementares e belas. Veja os exemplos nos vídeos a seguir:
https://vimeo.com/77330591: Beauty of mathematics
https://www.youtube.com/watch?v=CzqQyamt6Jw: A beleza da matemática
https://www.youtube.com/watch?v=QaWepnGWRs8: Sequência de Fibonacci e Número de Ouro
https://www.youtube.com/watch?v=BTiZD7p_oTc: Best fractals zoom ever
3
Sumário
Sumário 4
Lista de Figuras 7
1. Introdução: modelagem matemática, engenharia e equações diferenciais 9
2. Revisão de Matemática Básica e Cálculo Diferencial e Integral 12
3. Breve apresentação do software livre Maxima 19
3.1. Iniciando o uso do Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.2. Processando um comando . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.3. Manipulação de variáveis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.4. Funções matemáticas elementares no Maxima . . . . . . . . . . . . . . . . . . . . . . . 22
3.5. Operações básicas com matrizes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.6. Solução de sistemas lineares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.7. Solução analítica de uma equação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.8. Solução numérica de uma equação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.9. Manipulação algébrica de equações e funções . . . . . . . . . . . . . . . . . . . . . . . 26
3.10. Simplificações diversas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.11. Gráficos bi e tridimensionais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.12. Limites e continuidade de funções . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.13. Derivadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.13.1. Derivadas simples e pontos críticos de uma função . . . . . . . . . . . . . . . . 31
3.13.2. Derivadas parciais de uma função . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.14. Integrais indefinidas, definidas e área abaixo de uma curva . . . . . . . . . . . . . . . . 32
3.15. Programação no Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.15.1. Instrução: if . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.15.2. Instrução: for...end . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.15.3. Instrução block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.16. Séries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.16.1. Série de Taylor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.16.2. Série de Fourier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.17. Regressão Linear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4
SUMÁRIO
4. Campo de direções no Maxima 39
4.1. Exemplo 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.2. Exemplo 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.3. Exemplo 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.4. Exemplo 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.5. Função drawdf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5. Solução analítica de equações diferenciais ordinárias (EDOs) 45
5.1. Verificando se uma dada equação é solução de uma EDO . . . . . . . . . . . . . . . . . 45
5.2. Equações diferenciais de 1ª ordem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.2.1. Encontrando a solução geral de uma ED de 1ª ordem . . . . . . . . . . . . . . . 45
5.2.2. Encontrando a solução particular de uma ED de 1ª ordem . . . . . . . . . . . . 46
5.2.3. EDO com solução implícita . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.2.4. Solução de EDOs exatas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
5.2.5. Exemplo 1: variação da massa de um soluto com o tempo a volume constante . 48
5.2.6. Exemplo 2: lei do resfriamento de Newton . . . . . . . . . . . . . . . . . . . . . 49
5.3. Equações diferenciais lineares de 2ª ordem . . . . . . . . . . . . . . . . . . . . . . . . . 50
5.3.1. Solução geral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
5.3.2. Solução de PVIs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.3.3. Exemplo: difusão e reação de um componente gasoso em um líquido (Rice and
Do., 1995, exemplo 2.7) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.3.4. Solução de PVCs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
5.3.5. EDOs não homogêneas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
5.3.6. Exemplo: Dinâmica de um tanque agitado com aquecimento elétrico . . . . . . 55
5.3.7. Wronkiano . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
5.4. Pacote contrib_ode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
5.5. Solução usando série de potências para EDOs lineares de 2ª ordem . . . . . . . . . . . 59
5.6. Solução de EDOs por transformada de Laplace (EDOs simples e sistemas de EDOs) . 62
5.6.1. Transformada de Laplace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
5.6.2. Solução de EDOs por transformada de Laplace . . . . . . . . . . . . . . . . . . 63
5.7. Sistemas de EDOs lineares de 1ª ordem no plano . . . . . . . . . . . . . . . . . . . . . 65
5.7.1. Autovalores e autovetores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
5.7.2. Retrato de fase de sistemas lineares . . . . . . . . . . . . . . . . . . . . . . . . . 67
6. Solução numérica de equações diferenciais ordinárias usando o método de Runge-Kutta 72
7. Solução analítica de equações diferencias parciais (EDPs) 75
7.1. Exemplos de EDPs na Engenharia Química . . . . . . . . . . . . . . . . . . . . . . . . 75
7.2. Séries de Fourier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
7.3. Solução de EDPs por separação de variáveis . . . . . . . . . . . . . . . . . . . . . . . . 82
5
SUMÁRIO
8. Solução numérica deequações diferencias parciais (EDPs) usando o método das diferenças
finitas 88
8.1. EDP parabólica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
8.2. EDP hiperbólica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
8.3. EDP elíptica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Referências Bibliográficas 94
A. Lista de exercícios n. 1: Revisão de matemática básica e cálculo diferencial e integral 95
B. Lista de exercícios n. 2: Classificação, campo de direções e EDOs de 1ª ordem 98
C. Lista de exercícios n. 3: EDOs de 2ª ordem, solução em série de potências de EDOs 103
D. Lista de exercícios n. 4: solução de EDOs por transformada de Laplace, sistemas de EDOs107
E. Lista de exercícios n. 5: EDPs 112
F. Revisão de matemática básica e de cálculo diferencial e integral: uma abordagem prática
com o Maxima 115
6
Lista de Figuras
1.0.1.Matemática como literatura de suspense, segundo Calvin! . . . . . . . . . . . . . . . . 10
2.0.1.Definição das funções trigonométricas . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.0.2.Gráficos das funções exponencial e logarítmica . . . . . . . . . . . . . . . . . . . . . . . 13
2.0.3.Gráficos das funções hiperbólicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.1.1.Imagem de uma tela do Maxima, com a interface gráfica wxMaxima. . . . . . . . . . . 20
3.8.1.Função sin(x) exp(x) + x− 3 usada para o cálculo numérico de suas raízes. . . . . . . . 25
3.11.1.Gráficos bidimensionais no Maxima. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.11.2.Gráfico bidimensional com pontos discretos e curva contínua. . . . . . . . . . . . . . . 30
3.11.3.Gráficos tridimensionais no Maxima. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.12.1.Limites simples e laterais no Maxima. . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.13.1.Função usada no exemplo de derivadas e pontos críticos. . . . . . . . . . . . . . . . . . 32
3.14.1.Função usada no exemplo de integração. . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.16.1.Aproximações por série de Taylor para a função cos(x). . . . . . . . . . . . . . . . . . 36
3.16.2.Série de Fourier da função usada no exemplo. . . . . . . . . . . . . . . . . . . . . . . . 37
3.17.1.Exercício de aplicação de regressão linear. . . . . . . . . . . . . . . . . . . . . . . . . . 38
4.0.1.Campo de direções como vetores tangentes à solução de uma EDO. . . . . . . . . . . . 40
4.1.1.Campo de direções: exemplo 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.2.1.Campo de direções: exemplo 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.3.1.Campo de direções: exemplo 3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.4.1.Campo de direções: exemplo 4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.5.1.Campo de direções com a função drawdf. . . . . . . . . . . . . . . . . . . . . . . . . . . 44
5.2.1.Solução de um PVI, com equação diferencial de 1ª ordem. . . . . . . . . . . . . . . . . 47
5.2.2.Variação da massa com o tempo para um tanque agitado (m0=1, c0=1, V= 2, r=1) . . 49
5.2.3.Solução do problema envolvendo a lei de resfriamento de Newton. . . . . . . . . . . . . 50
5.3.1.Funções de Bessel J0(x) e Y0(x). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.3.2.PVI envolvendo uma EDO de 2ª ordem. . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.3.3.Difusão e reação de um componente gasoso. . . . . . . . . . . . . . . . . . . . . . . . . 54
5.3.4.Solução de uma EDO de segunda ordem, não homogênea. . . . . . . . . . . . . . . . . 55
5.3.5.Tanque agitado com aquecimento elétrico. . . . . . . . . . . . . . . . . . . . . . . . . . 57
7
LISTA DE FIGURAS
5.6.1.Solução de um sistema de EDOs, por transformada de Laplace, sem usar o comando
desolve. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
5.7.1.Retrato de fase e evolução no tempo. O gráfico da direita é obtido clicando no último
ícone da barra superior da figura à esquerda. . . . . . . . . . . . . . . . . . . . . . . . 68
5.7.2.Retrato de fase: nó atrator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
5.7.3.Retrato de fase: foco atrator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
6.0.1.Solução numérica de EDOs: única EDO. . . . . . . . . . . . . . . . . . . . . . . . . . . 73
6.0.2.Solução numérica de EDOs: sistema de duas EDOs. . . . . . . . . . . . . . . . . . . . 73
7.1.1.Reator modelado no Exemplo 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
7.1.2.Solução, na forma gráfica, da EDP do Exemplo 1 (Rice and Do., 1995). . . . . . . . . . 77
7.1.3.Solução gráfica do Exemplo 3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
7.1.4.Solução analítica na forma gráfica do Exemplo 4 (Rice and Do., 1995). . . . . . . . . . 79
7.1.5.Solução analítica na forma gráfica do Exemplo 5 (Rice and Do., 1995). . . . . . . . . . 81
7.2.1.Exemplo de série de Fourier no Maxima. . . . . . . . . . . . . . . . . . . . . . . . . . . 83
7.3.1.Resposta, na forma tridimensional, para o exemplo numérico da condução de calor em
uma barra, com extremidades a temperaturas fixas. . . . . . . . . . . . . . . . . . . . . 86
7.3.2.Variação da temperatura, com o tempo, no centro da barra. . . . . . . . . . . . . . . . 86
7.3.3.Variação da temperatura, com a posição, para vários tempos diferentes. . . . . . . . . 87
8.1.1.Solução numérica da equação da difusão, transiente, unidimensional. . . . . . . . . . . 89
8.2.1.Solução numérica da equação da onda, transiente, unidimensional. . . . . . . . . . . . 90
8.3.1.Solução numérica da equação de Laplace. . . . . . . . . . . . . . . . . . . . . . . . . . 92
8.3.2.Solução numérica da equação de Poisson. . . . . . . . . . . . . . . . . . . . . . . . . . . 93
B.0.1.Campo de direções de uma determinada equação diferencial. . . . . . . . . . . . . . . . 100
B.0.2.Tanque cilíndrico com entrada e saída de líquido. . . . . . . . . . . . . . . . . . . . . . 101
D.0.1.Dois tanques aquecidos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
D.0.2.Campo das direções de um circuito elétrico. . . . . . . . . . . . . . . . . . . . . . . . . 109
D.0.3.Sistema massa-mola, com dois corpos e três molas. . . . . . . . . . . . . . . . . . . . . 110
E.0.1.Esquema 2D de um aquífero. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
8
1. Introdução: modelagem matemática,
engenharia e equações diferenciais
�A modelagem matemática é a area do conhecimento que estuda a simulação de sistemas reais a fim
de prever o comportamento dos mesmos, sendo empregada em diversos campos de estudo, tais como
física, química, biologia, economia e engenharias. Ou seja, modelagem matemática consiste na arte
(ou tentativa) de se descrever matematicamente um fenômeno.
Dentre as diferentes formas e métodos de modelagem temos a modelagem via autômatos celulares e
equações diferenciais, parciais e/ou ordinárias. A modelagem matemática via equações diferenciais
tem um papel de enorme destaque, visto que tal técnica vem sendo utilizada para modelar fenômenos
desde o século XVII por Malthus e Verhulst,no final dos anos 1700. Pode-se, então, dizer que um
modelo matemático é desenvolvido para simular a realidade usando a linguagem matemática.
Os modelos matemáticos se subsidiam, por exemplo, das leis da física (como as leis de Kirchhoff para
sistemas eletricos e as leis de Newton para mecânicos) ou dados experimentais.
Frequentemente, os modelos atingem grau de sofisticação suficiente para justificar ferramentas compu-
tacionais, envolvendo sistemas deequações diferenciais.
A modelagem de um fenômeno via equações diferenciais é, normalmente, feita da seguinte forma:
através da simples observação conseguem-se informações sobre as taxas de variação do fenômeno (que
do ponto de vista matemático são derivadas), escreve-se a equação que relaciona as taxas de variação
e a função, isto é, a equação diferencial associada e, a partir da solução desta equação tem-se uma
possível descrição do fenômeno.
Então, tal modelo matemático será também composto por parâmetros (constantes), que são intrínsecas
ao sistema a ser estudado; variáveis que afetam o sistema, porém o modelo não foi designado para
estudar seu comportamento (variáveis independentes) e as variáveis as quais o modelo foi designado
para estudar (variáveis dependentes). Quando o sistema em questão busca retratar um fenômeno que
consiste na interação entre duas ou mais entidades, então a modelagem é feita através de um sistema
de equações diferenciais
9
1. Introdução: modelagem matemática, engenharia e equações diferenciais
Os modelos matemáticos apresentam uma série de aspectos úteis do ponto de vista científico. Além de
apresentar naturalmente uma linguagem concisa, que pode vir a facilitar sua manipulação, um modelo
matemático traz também aspectos como a possibilidade de confirmar ou rejeitar determinadas hipóteses
relacionadas a complexos sistemas, revelar contradições em dados obtidos e/ou hipóteses formuladas,
prever o comportamento de um sistema sob condições não testadas ou ainda não �testáveis�, dentre
outros.
Por outro lado, quanto maior é a proximidade do modelo com a realidade, mais complexo será o
modelo. Isto significa um maior numero de parâmetros e conseqüentemente uma maior dificuldade
tanto na obtenção de dados a partir do modelo quanto na interpretação desses dados gerados pelo
modelo em questão.
Figura 1.0.1.: Matemática como literatura de sus-
pense, segundo Calvin!
Modelos simples são mais fáceis de lidar, porém
modelos mais sofisticados são frequentemente ne-
cessários. É importante ressaltar que as previ-
sões do comportamento de um determinado mo-
delo matemático, caso se faça necessário depen-
dendo de sua complexidade, se dão através de si-
mulações computacionais do mesmo. Caso o mo-
delo seja suficientemente simples, teorias mate-
máticas são eficientes ferramentas para se obter
conclusões gerais. Então, pode-se dizer que ao
desenvolver um modelo matemático busca-se um
ponto ótimo entre a representação da realidade e
a complexidade do modelo, para que a obtenção
de resultados coerentes seja possível, bem como
sua interpretação. Segundo Howard Emmons, �o
desafio em modelagem matemática não é produ-
zir os modelos descritivos mais compreensíveis,
mas sim produzir modelos suficientemente sim-
ples que incorporam as principais características
do fenômeno em questão�. Portanto, a modela-
gem matemática ajuda a evitar ou reduzir a ne-
cessidade de gastos excessivos em experimentos,
ou até mesmo simular experimentos impossíveis
de serem realizados na prática.�Wikipédia (2013)
Particularmente, em Engenharia Química, os mo-
delos matemáticos na forma de equações diferencias tem um papel extremamente importante, pois
servem para descrever matematicamente:
1. Fenômenos físicos e químicos, tais como a transferência de quantidade de movimento (mecânica
dos fluidos), a transferência de calor e de massa, a velocidade de reações (bio)químicas;
2. Os balanços de massa, energia e quantidade de movimento em equipamentos (ou operações
unitárias);
3. A dinâmica de processos no estado transiente, base para o controle de processos;
Espero que este material contribua para que o universo das equações diferenciais deixe de ser um
�mistério�, como é para o Calvin, e se torne algo palpável em sua vida! LOL
No conteúdo que se encontra a seguir, o leitor encontrará uma abordagem prática, com o uso de um
�software� livre e gratuito, dos métodos matemáticos para a Engenharia Química, com ênfase na
solução analítica de equações diferenciais. A teoria dos métodos utilizados não será coberta aqui
e o leitor deve consultar os manuais clássicos de equações diferenciais, como por exemplo Kreyszig
et al. (2011) e Boyce and DiPrima (2010), ou materiais disponíveis gratuitamente na rede, como por
exemplo Villate (2011).
10
1. Introdução: modelagem matemática, engenharia e equações diferenciais
Este livro parte da premissa que conhecer o processo matemático de, por exemplo, resolver uma equação
diferencial ordinária é importante. Entretanto, com o advendo e o avanço da informática, permitindo
hoje o acesso a �softwares� que podem fazer boa parte do trabalho antes as vezes trabalhoso ou tedioso,
de manipulação de equações, o engenheiro pode concentrar seus esforços mais nas etapas de desenvol-
vimento do modelo matemático e na análise da solução, por economizar tempo na etapa de solução
do modelo. Com isto, sua atuação enfatiza mais a ênfase como engenheiro e não como matemático.
Com isto não se quer dizer que o lado matemático do engenheiro não seja importante, até porque
todos os softwares disponíveis são limitados e não livres de erros; porém, no estado da arte em que eles
se encontram, pelo menos os métodos clássicos estão relativamente bem implementados, permitindo
principalmente que a formação acadêmica em métodos matemáticos considere também os aspectos
práticos, permitindo ao estudante avançar na aplicação nos métodos estudados e o desenvolvimento de
projetos didáticos mais elaborados ou mais próximos dos modelos que serão encontrados nos ambientes
de atuação profissional onde tais modelos desempenham um papel relevante.
11
2. Revisão de Matemática Básica e Cálculo
Diferencial e Integral
A seguir será apresentada uma breve revisão de matemática básica e de cálculo diferencial e integral,
com o objetivo de melhor compreender os conteúdos que serão abordados posteriormente. No Apêndice
A encontra-se esta revisão com os comandos do Maxima apropriados.
ˆ (x± y)2 = x2 ± 2xy + y2
ˆ x2 − y2 = (x− y)(x+ y)
ˆ Fatorial de n: n! = 1.2.3. · · · .n
ˆ Para o triângulo retângulo mostrado na Fig. 2.0.1:
* Teorema de Pitágoras: OB
2
= OA
2
+AB
2
* sen2α+ cos2α = 1
Figura 2.0.1.: Definição das funções trigonométricas
ˆ ap.aq = ap+q
ˆ ap/aq = ap−q
ˆ (ap)q = apq
ˆ a0 = 1, a 6= 0
ˆ 0a = 0, a 6= 0
ˆ
0
5
= 0, mas
5
0
é indefinido
12
2. Revisão de Matemática Básica e Cálculo Diferencial e Integral
ˆ a−p = 1/ap, a 6= 0
ˆ (ab)p = apbp
ˆ
(a
b
)−n
=
(
b
a
)n
=
bn
an
ˆ a
n
m =
(
a
1
m
)n
= (an)
1
m
ˆ
n
√
a = a1/n
ˆ
n
√
am = am/n
ˆ
n
√
a/b = n
√
a/ n
√
b
ˆ Cuidado!!!
* (a+ b)2 6= a2 + b2
*
√
a2 + b2 6= a+ b
*
3a+ b
3a+ c
6= b
c
*
dpi3
dx
6= 3pi2
ˆ Função logarítmica −→ y = loga x. Ver Fig. 2.0.2
Figura 2.0.2.: Gráficos das funções exponencial e logarítmica
ˆ logaMN = logaM + logaN
ˆ logaM/N = logaM − logaN
ˆ logaM
p = p logaM
ˆ blogb x = x
ˆ i =
√−1
ˆ i2 = −1
ˆ
√−a = i√a se a ≥ 0
ˆ eiθ = cos θ + i senθ
ˆ e−iθ = cos θ − i senθ
ˆ sen θ =
eiθ − e−iθ
2i
13
2. Revisão de Matemática Básica e Cálculo Diferencial e Integral
ˆ cos θ =
eiθ + e−iθ
2
ˆ Seno hiperbólico de x : senh x =
ex − e−x
2
Ver Fig. 2.0.3.
Figura 2.0.3.: Gráficos das funções hiperbólicas
ˆ Cosseno hiperbólico de x : cosh x =
ex + e−x
2
ˆ Equação quadrática ou do 2º grau: ax2 + bx + c = 0; raízes: x =
−b±√b2 − 4ac
2a
. Se a, b e c
são reais e se D = b2 − 4ac é o discriminante, as raízes da equação são:
i) reais e desiguais se D > 0
ii) reais e iguais se D = 0
iii) conjugadas e complexas se D < 0
ˆ lim
x→a bf(x) = b limx→a f(x)
ˆ lim
x→a[f(x) + g(x)] =limx→a f(x) + limx→a g(x)
ˆ lim
x→a[f(x)g(x)] = limx→a f(x) · limx→a g(x)
ˆ lim
x→a
f(x)
g(x)
=
limx→a f(x)
limx→a g(x)
, se lim
x→a g(x) 6= 0
ˆ lim
x→a[f(x)]
n = [lim
x→a f(x)]
n
ˆ lim
x→∞ e
x =∞ e lim
x→−∞ e
x = 0
ˆ lim
x→∞ ln(x) =∞ e limx→0+ ln(x) = −∞
ˆ Descontinuidades:
* Removível: y = sen x/x, quando x = 0
* Infinita: y = 1/x, quando x = 0
* Salto: y = 10/(1 + e1/x), quando x = 0+ y = 0+ ou x = 0 y = 0 ou x = 0− y = 10
14
2. Revisão de Matemática Básica e Cálculo Diferencial e Integral
ˆ Se y = P (x), a derivada de y ou de P(x) em relação à x é definida como
dy
dx
= lim
h→0
f(x+ h)− f(x)
h
=
lim
∆x→0
f(x+ ∆x)− f(x)
∆x
ˆ A derivada é também designada por y′, df/dx ou f ′(x). O processo de derivar/obter uma derivada
é chamado diferenciação.
ˆ
d
dx
(c) = 0
ˆ
d
dx
(cx) = c
ˆ
d
dx
(cxn) = ncxn−1
ˆ
d
dx
(u± v ± w ± . . .) = du
dx
± dv
dx
± dw
dx
± . . .
ˆ
d
dx
(cv) = c
dv
dx
ˆ
d
dx
(uv) = u
dv
dx
+ v
du
dx
ˆ
d
dx
(u
v
)
=
v dudx − u dvdx
v2
ˆ
d
dx
(un) = nun−1
du
dx
ˆ Regra da cadeia:
dy
dx
=
dy
du
du
dx
ˆ
du
dx
=
1
dx/du
ˆ
dy
dx
=
dy/du
dx/du
ˆ
d
dx
senu = cosu
du
dx
ˆ
d
dx
cosu = −senudu
dx
ˆ
d
dx
loga u =
loga e
u
du
dx
, a 6= 0, 1
ˆ
d
dx
lnu =
d
dx
loge u =
1
u
du
dx
ˆ
d
dx
au = au ln a
du
dx
ˆ
d
dx
eu = eu
du
dx
ˆ
d
dx
uv =
d
dx
ev lnu = ev lnu
d
dx
[v lnu] = vuv−1
du
dx
+ uv lnu
dv
dx
ˆ
d
dx
senh u = coshu
du
dx
ˆ
d
dx
cosh u = senh u
du
dx
ˆ Derivadas superiores −→ segunda derivada: d
dx
(
dy
dx
)
=
d2y
dx2
= f”(x) = y”
ˆ Diferencial: d(u± v ± w ± . . .) = du± dv ± dw ± . . .
15
2. Revisão de Matemática Básica e Cálculo Diferencial e Integral
ˆ Diferencial: d(uv) = udv + vdu
ˆ Seja f(x, y), uma função de duas variáveis x e y. Então definimos a derivada parcial de f(x, y)
com relação a x, considerando y constante, por
∂f
∂x
= lim
∆x→0
f(x+ ∆x, y)− f(x, y)
∆x
Igualmente a derivada parcial de f(x, y) com relação a y, considerando x constante é definida
por:
∂f
∂y
= lim
∆y→0
f(x, y + ∆y)− f(x, y)
∆y
ˆ A diferencial de f(x, y) (ou derivada total de f) é definida como: df =
(
∂f
∂x
)
y
dx+
(
∂f
∂y
)
x
dy
ˆ Teorema de L'Hospital: Formas como 0/0,∞/∞, 0×∞ etc são chamadas de indeterminadas;
se lim
x→a
f(x)
g(x)
=
0
0
ou
±∞
±∞ então limx→a
f(x)
g(x)
= lim
x→a
f ′(x)
g′(x)
. Exemplo: lim
x→0
sen(x)
x
= lim
x→0
d sen(x)
dx
=
lim
x→0
cos(x)
1
= 1
ˆ Se
dy
dx
= f(x), então y é a função cuja derivada é f(x) e é chamada de anti-derivada de f(x) ou
integal indefinida de f(x), designada por y =
∫
f(x)dx
ˆ
∫
a dx = ax+ C [as constantes de integração serão omitidas, mas estão implícitas]
ˆ
∫
af(x) dx = a
∫
f(x) dx
ˆ
∫
(u± v ± w ± . . .) dx =
∫
u dx±
∫
v dx±
∫
w dx± . . .
ˆ Integração por partes:∫
u dv = uv −
∫
v du
ˆ
∫
un du =
un+1
n+ 1
, com n 6= −1
ˆ
∫
du
u
= lnu se u > 0 ou ln(−u) se u < 0 = ln |u|
ˆ
∫
eu du = eu
ˆ
∫
sen u du = − cosu
ˆ
∫
cosu du = sen u
ˆ Transformações importantes:
*
∫
F (ax+ b) dx =
1
a
∫
F (u) du onde u = ax+ b
*
∫
F (
√
ax+ b) dx =
2
a
∫
uF (u) du onde u =
√
ax+ b
*
∫
F (
n
√
ax+ b) dx =
n
a
∫
un−1F (u) du onde u = n
√
ax+ b
*
∫
F (eax) dx =
1
a
∫
F (u)
u
du onde u = eax
16
2. Revisão de Matemática Básica e Cálculo Diferencial e Integral
*
∫
F (lnx) dx =
∫
F (u)eu du onde u = lnx
ˆ Métodos de integração
1
* Fórmula direta: quando o integrando pode ser transformado numa forma facilmente
integrável;
* Substituição trigonomética: aplica-se em geral quando o integrando está na forma de
um radical;
* Substituição algébrica: aplica-se em geral quando há funções da forma (a+ bx)1/n;
* Frações parciais: redução de funções racionais na forma f(x)/g(x) para frações mais
facilmente integráveis;
* Integração por partes
* Expansão em séries
ˆ
∫ b
a
f(x) dx = g(x)|ba = g(b)− g(a)
ˆ
∫ a
a
f(x) dx = 0
ˆ
∫ b
a
f(x) dx = −
∫ a
b
f(x) dx
ˆ
∫ b
a
f(x) dx =
∫ c
a
f(x) dx+
∫ b
c
f(x) dx com a < c < b
ˆ Função Gama: Γ(n) =
∫ ∞
0
tn−1e−t dt com n > 0
ˆ Função Erro: erf(x) =
2√
pi
∫ x
0
e−u
2
du
ˆ erf(x) =
2√
pi
(
x− x
3
3.1!
+
x5
5.2!
− x
7
7.3!
+ . . .
)
ˆ erf(−x) = −erf(x), erf(0) = 0, erf(∞) = 1
ˆ Série de Taylor [expansão de uma função f(x) em torno de um ponto a]: f(x) = f(a) +
f ′(a)(x− a) + f
′′(a)(x− a)2
2!
+ . . .+
f (n−1)(a)(x− a)n−1
(n− 1)! +Rn onde Rn é o resto após n termos.
Se a = 0 a série é frequentemente chamada série de Maclaurin
ˆ ex = 1 + x+
x2
2!
+
x3
3!
+ . . . com −∞ < x <∞
ˆ ln(1 + x) = x− x
2
2
+
x3
3
− x
4
4
+ . . . com −1 < x < 1
ˆ lnx =
(
x− 1
x
)
+
1
2
(
x− 1
x
)2
+
1
3
(
x− 1
x
)3
+ . . . com x ≥ 12
ˆ sen x = x− x
3
3!
+
x5
5!
− x
7
7!
+ . . . com −∞ < x <∞
ˆ cosx = 1− x
2
2!
+
x4
4!
− x
6
6!
+ . . . com −∞ < x <∞
ˆ Laplaciano: U = ∇2U = ∇ · (∇U) = ∂
2U
∂x2
+
∂2U
∂y2
+
∂2U
∂z2
1
Consultar a literatura de Cálculo Diferencial e Integral para detalhes dos métodos.
17
2. Revisão de Matemática Básica e Cálculo Diferencial e Integral
ˆ Equação diferencial de Bessel: x2y′′ + xy′ + (x2 − n2)y = 0 com n > 0. As soluções desta
equação são chamadas funções de Bessel de ordem n.
ˆ Funções de Bessel de primeira classe de ordem n:
* Jn(x) =
∞∑
k=0
(−1)k(x/2)n+2k
k!Γ(n+ k + 1)
* J−n(x) =
∞∑
k=0
(−1)k(x/2)2k−n
k!Γ(k + 1− n)
* J−n(x) = (−1)nJn(x) n = 0, 1, 2, . . .
* J0(x) = 1− x
2
22
+
x4
22 · 42 −
x6
22 · 42 · 62 + . . .
* J1(x) =
x
2
− x
3
22 · 4 +
x5
22 · 42 · 6 −
x7
22 · 42 · 62 · 8 + . . .
* J ′0(x) = −J1(x)
ˆ Funções de Bessel de segunda classe de ordem n: Yn(x)
18
3. Breve apresentação do software livre
Maxima
3.1. Iniciando o uso do Maxima
O Maxima é um sistema de computação algébrica baseado em uma versão de 1982 do Macsyma. Ele
é escrito em Common Lisp e funciona em todas as plataformas POSIX, tais como Mac OS X, Unix,
BSD, e GNU/Linux bem como no Microsoft Windows e mesmo em dispositivos que rodam o Android.
Trata-se de um software livre
1
cuja licença é a GNU General Public License.
O Maxima é um sistema para a manipulação de expressões simbólicas, semelhantemente ao Maple e ao
Mathematica, e numéricas, semelhante ao Matlab e ao Scilab, incluindo diferenciação, integração, série
de Taylor, transformadas de Laplace, equações diferenciais ordinárias, sistemas de equações lineares,
polinômios, conjuntos, listas, vetores, matrizes e tensores. O Maxima produz resultados numéricos de
alta precisão usando frações exatas, inteiros de precisão arbitrária e números de ponto flutuante de
precisão variável. O Maxima pode plotar funções e dados em duas e três dimensões.
O Maxima é um sistema de propósito geral, e cálculos de casos especiais tais como a fatoração de
números grandes, a manipulação de polinômios extremamente grandes, etc, algumas vezes são melhor
desempenhados com sistemas especializados.
O Maxima é constituído de um núcleo, que recebe e interpreta os comandos e devolve os resulta-
dos. Entretanto, não é prático usar diretamente o núcleo, pois ele carece de opções de salvamento,
menus e configurações. Há diversas interfaces gráficas para o núcleo,sendo a mais amigável delas a
wxMaxima, mostrada na Figura 3.1.1. Link para baixar o Maxima, já com a inteface wxMaxima:
http://maxima.sourceforge.net/
Quando se instala o Maxima no computador, há na aba �Ajuda� o manual do software. Entretanto, é
a versão em Inglês que está disponível. No link a seguir, há uma tradução para o Português do manual
do Maxima: http://maxima.sourceforge.net/docs/manual/pt/maxima.html
Há várias boas apostilas na internet abordando o uso do Maxima para fins diversos. Os principais
materiais que foram usados para este tutorial foram: Santos (2009), do Prado et al. (2008), de Oliveira
(2014); Torres et al. (2006), Woollett (2009) e Nodarse (2014).
3.2. Processando um comando
Após abrir o wxMaxima, comece digitando os comandos a seguir; para o Maxima processar as entradas,
pressione simultaneamente SHIFT+ENTER. Caso seja pressionado apenas ENTER, o Maxima apenas
cria uma nova linha de comando. Cada linha em uma célula deve ser finalizada por ponto e vírgula
(;):
1
�Os objetivos do Software Livre e (controle na própria computação e cooperação livre) são atingidas por concessão do
seguinte-direitos de liberdade: os usuários são livres para executar, copiar, distribuir, estudar, mudar e melhorar o
software, estas liberdades são explicitamente concedidos e não suprimidas (como é o caso do software proprietário).
Assim, o software livre é uma questão de liberdade, não de preço (os usuários são livres - o que inclui a liberdade
de redistribuir o software, que pode ser feito gratuitamente ou por uma taxa). Software livre garante as liberdades
dos usuários: estudar e modificar software, pela disponibilidade do código fonte, bem como a liberdade de copiar e
distribuir.� Fonte: http://pt.wikipedia.org/wiki/Software_livre
19
3. Breve apresentação do software livre Maxima
Figura 3.1.1.: Imagem de uma tela do Maxima, com a interface gráfica wxMaxima.
20
3. Breve apresentação do software livre Maxima
(%i1)
5+2;
%pi;
float(%pi);
%pi, numer;
%e, numer;
(%o1) 7
(%o2) pi
(%o3) 3.141592653589793
(%o4) 3.141592653589793
(%o5) 2.718281828459045
3.3. Manipulação de variáveis
Uma ferramenta importante no Maxima é a capacidade de atribuir e manipular variáveis. Uma variável,
em programação, é um identificador ao qual se pode atribuir valores. No Maxima a instrução de
atribuição é feita com dois pontos (:), como pode ser visto no exemplo a seguir:
(%i6)
a:7;
b:3;
c:a+b /* isto é um comentário */;
eq1:a*x^2+b*x+c=0;
kill(all) /* limpa as variáveis existentes */;
eq1:a*x^2+b*x+c=0;
eq2:A*x;
eq3:eq1*eq2;
eq4:expand(%);
(%o6) 7
(%o7) 3
(%o8) 10
(%o9) 7x2 + 3x+ 10 = 0
(%o0) done
(%o1) a x2 + b x+ c = 0
(%o2) xA
(%o3) x
(
a x2 + b x+ c
)
A = 0
(%o4) a x3A+ b x2A+ c xA = 0
21
3. Breve apresentação do software livre Maxima
3.4. Funções matemáticas elementares no Maxima
(%i5) abs(-1);
4!;
sqrt(x);
x^(a/b);
log(x) /* logaritmo neperiano */;
log(%e);
log(5)/log(10), numer /* log de 5 na base 10 */;
exp(x);
sin(%pi/2);
cos(%pi/2);
tan(%pi/4);
sinh(x);
asin(1/2);
(%o5) 1
(%o6) 24
(%o7)
√
x
(%o8) x
a
b
(%o9) log (x)
(%o10) 1
(%o11) 0.69897000433601
(%o12) ex
(%o13) 1
(%o14) 0
(%o15) 1
(%o16) sinh (x)
(%o17)
pi
6
22
3. Breve apresentação do software livre Maxima
3.5. Operações básicas com matrizes
(%i18) A:matrix([5, -3, -4],
[1, -7, 12],
[10, 4, 6]);
B:matrix([1, -3, -6],
[2, -7, 12],
[10, 1, -6]);
A+B;
invert(A);
A^^(-1);
3*A /* multiplicacao por escalar */;
A.B /* multiplicacao matricial */;
invert(A).A;
determinant(A);
transpose(A);
(%o18)
 5 −3 −41 −7 12
10 4 6

(%o19)
 1 −3 −62 −7 12
10 1 −6

(%o20)
 6 −6 −103 −14 24
20 5 0

(%o21)
 45544 − 1544 117− 57544 − 35544 117
− 37544 25544 134

(%o22)
 45544 − 1544 117− 57544 − 35544 117
− 37544 25544 134

(%o23)
15 −9 −123 −21 36
30 12 18

(%o24)
−41 2 −42107 58 −162
78 −52 −48

(%o25)
1 0 00 1 0
0 0 1

(%o26) − 1088
(%o27)
 5 1 10−3 −7 4
−4 12 6

23
3. Breve apresentação do software livre Maxima
(%i1) A: matrix(
[a,b],
[c,d]
)$
determinant(A);
invert(A).A$ ratsimp(%);
A^(-1);
A.A^(-1)$ ratsimp(%);
A^^(-1).A$ ratsimp(%);
adjoint(A);
(%o2) a d− b c
(%o4)
(
1 0
0 1
)
(%o5)
(
1
a
1
b
1
c
1
d
)
(%o7)
(
c+b
c
a d+b2
b d
a d+c2
a c
c+b
b
)
(%o9)
(
1 0
0 1
)
(%o10)
(
d −b
−c a
)
3.6. Solução de sistemas lineares
(%i28) linsolve([2*x+y+z=3, x+2*y+3*z=6, 2*x+3*y+4*z=1],[x,y,z]);
2*x+y+z, x:8,y:-37,z:24 /* verificando a solucao na 1a equacao */;
(%o28) [x = 8, y = −37, z = 24]
(%o29) 3
3.7. Solução analítica de uma equação
(%i30)
eq1;
eq5:solve(eq1,x);
eq5[1] /* pegando a 1a raiz */;
eq5[2] /* pegando a 2a raiz */;
rhs(eq5[1]) /* pegando somente o resultado da 1a raiz */;
(%o30) a x2 + b x+ c = 0
(%o31) [x = −
√
b2 − 4 a c+ b
2 a
, x =
√
b2 − 4 a c− b
2 a
]
(%o32) x = −
√
b2 − 4 a c+ b
2 a
(%o33) x =
√
b2 − 4 a c− b
2 a
(%o34) −
√
b2 − 4 a c+ b
2 a
24
3. Breve apresentação do software livre Maxima
Figura 3.8.1.: Função sin(x) exp(x) + x− 3 usada para o cálculo numérico de suas raízes.
3.8. Solução numérica de uma equação
Serão usados dois métodos diferentes. Os valores aproximados das raízes da função podem ser vistos
na Figura 3.8.1.
(%i35) eq6:sin(x)*%e^x+x-3;
plot2d(eq6,[x,-4,4]) /* visualizando os valores aproximados
das raizes */;
find_root(eq6,x,-1,2) /* necessita um intervalo */;
find_root(eq6,x,2,4);
load(mnewton) /* carrega a funcao mnewton */;
mnewton(eq6,x,1) /* necessita de uma aproximacao */;
(%o35) ex sin (x) + x− 3
(%o36) /home/adilson/maxout.gnuplot_pipes
(%o37) 0.93839691426479
(%o38) 3.147945514659651
(%o39) /usr/share/maxima/5.32.1/share/mnewton/mnewton.mac
(%o40) [[x = 0.93839691426479]]
25
3. Breve apresentação do software livre Maxima
3.9. Manipulação algébrica de equações e funções
(%i41) eq7:x^3+4=(6+x^2)/x;
lhs(eq7) /* left hand side */;
rhs(eq7) /* right hand side */;
(x/4)*eq7;
expand(%);
eq7, x:2 /* atribuindo momentaneamente um valor para x */;
f(x,y):=x+(x/y) /* definindo uma funcao */;
f(9,3);
subst(y+z,x,eq7) /* subst y+z em x na eq7 */;
ev(eq7,x=y+z) /* avalia e eq7 com x = y+z */;
eq8:x^2+y=1;
eq9:x-2*y=2;
solve([eq8,eq9],[x,y]) /* sol analitica duas equacoes */;
float(%);
(%o41) x3 + 4 =
x2 + 6
x
(%o42) x3 + 4
(%o43)
x2 + 6
x
(%o44)
x
(
x3 + 4
)
4
=
x2 + 6
4
(%o45)
x4
4
+ x =
x2
4
+
3
2
(%o46) 12 = 5
(%o47) f (x, y) := x+
x
y
(%o48) 12
(%o49) (z + y)3 + 4 =
(z + y)2 + 6
z + y
(%o50) (z + y)3 + 4 =
(z + y)2 + 6
z + y
(%o51) y + x2 = 1
(%o52) x− 2 y = 2
(%o53) [[x = −
√
33 + 1
4
, y = −
√
3
√
11 + 9
8
], [x =
√
33− 1
4
, y =
√
3
√
11− 9
8
]]
(%o54) [[x = −1.686140661634507, y = −1.843070330817253], [x = 1.186140661634507, y = −0.40692966918274]]
26
3. Breve apresentação do software livre Maxima
3.10. Simplificações diversas
(%i55) (eq8+1/x)*eq9;
ratsimp(%);
eq10:(%e^x-1)/(1+%e^(x/2));
radcan(%) /* Simplifica expr que contem logs, exponenciais e radicais */;
radcan((log(x+x^2)-log(x))^a/log(1+x)^(a/2));
eq11:x^2+2*x*y+y^2;
factor(eq11) /* fatoriza uma expressao */;
expand(%);
log(a^b), logexpand=super;
log(a*b), logexpand=super;
log(a/b), logexpand=super;
logcontract(%);
eq12:sin(x)^2+cos(x)^2;
trigsimp(eq12) /* simplificacao trigonometrica */;
trigexpand(sin(2*x));
trigreduce(-sin(x)^2+3*cos(x)^2+x);(%o55) (x− 2 y)
(
y + x2 +
1
x
)
= 2
(
1
x
+ 1
)
(%o56) − 2x y
2 +
(
2x3 − x2 + 2) y − x4 − x
x
=
2x+ 2
x
(%o57)
ex − 1
e
x
2 + 1
(%o58) e
x
2 − 1
(%o59) log (x+ 1)
a
2
(%o60) y2 + 2x y + x2
(%o61) (y + x)2
(%o62) y2 + 2x y + x2
(%o63) log (a) b
(%o64) log (b) + log (a)
(%o65) log (a)− log (b)
(%o66) log
(a
b
)
(%o67) sin (x)2 + cos (x)2
(%o68) 1
(%o69) 2 cos (x) sin (x)
(%o70)
cos (2x)
2
+ 3
(
cos (2x)
2
+
1
2
)
+ x− 1
2
3.11. Gráficos bi e tridimensionais
Há duas maneiras de plotar funções no Maxima. A primeira, com a função plot2d, o gráfico é mostrado
numa janela separada. Caso o usuário queira que o gráfico fique embutido na planilha do Maxima,
deve usar a função wxplot2d. A sintaxe de ambas é idêntica:
27
3. Breve apresentação do software livre Maxima
ˆ plot2d(fun(x),[x,a,b]) - plota o gráfico de fun(x), sendo �x� a variável independente, de �a�
a �b�
ˆ wxplot2d(fun(x),[x,a,b])
Há argumentos opcionais, como mudar o nome dos eixos, legenda etc. Os resultados estão mostrados
nas Figuras 3.11.1, 3.11.2 e 3.11.3.
Os gráficos gerados no Maxima podem ser salvos diretamente como arquivos, nos formato png (opção
png_file), eps (opção ps_file) e pdf (opção pdf_file). O caminho onde o arquivo foi gravado
aparece na saída do comando:
(%i14) plot2d (3*x^3+5*x^2-x+6, [x,-3,1], [png_file, "funcao1.png"]);
(%o14) /home/adilson/maxout.gnuplot/home/adilson/funcao1.png
3.12. Limites e continuidade de funções
Em um comando do Maxima, ao se colocar um apóstrofo (') antes de tal comando, isto inibe o Maxima
de processar o comando, retornando a própria entrada. ATENÇÃO: ao se gerar o documento pdf, o
apóstrofo aparece como uma aspa simples. O caracter correto é o mostrado no código a seguir, colado
aqui como figura:
.
Comparar com:
(%i1) 'limit(sin(x)/x,x,0)=limit(sin(x)/x,x,0);
(%o1) lim
x→0
sin (x)
x
= 1
Tal funcionalidade é útil para se visualizar o que se deseja calcular, antes do resultado do cálculo, como
mostrado nos comandos a seguir. O gráfico da função
1
x−1 está mostrado na Figura 3.12.1.
(%i54) 'limit((x^2+x+1)/(x+1),x,1)=limit((x^2+x+1)/(x+1),x,1);
'limit(1/(x-1),x,1,plus)=limit(1/(x-1),x,1,plus);
'limit(1/(x-1),x,1,minus)=limit(1/(x-1),x,1,minus);
plot2d(1/(x-1),[x,0.5,1.5],[y,-100,100]);
'limit(1/(x-1),x,minf)=limit(1/(x-1),x,minf);
'limit(1/(x-1),x,inf)=limit(1/(x-1),x,inf);
'limit(sin(x)/x,x,0)=limit(sin(x)/x,x,0);
(%o54) lim
x→1
x2 + x+ 1
x+ 1
=
3
2
(%o55) lim
x→1+
1
x− 1 =∞
(%o56) lim
x→1−
1
x− 1 = −∞
(%o58) lim
x→−∞
1
x− 1 = 0
(%o59) lim
x→∞
1
x− 1 = 0
(%o60) lim
x→0
sin (x)
x
= 1
28
3. Breve apresentação do software livre Maxima
Figura 3.11.1.: Gráficos bidimensionais no Maxima.
29
3. Breve apresentação do software livre Maxima
(%i8) xy: [[10, .6], [20, .9], [30, 1.1], [40, 1.3], [50, 1.4]]$
plot2d([[discrete, xy], 2*%pi*sqrt(l/980)], [l,0,50],
[style, points, lines], [color, red, blue],
[point_type, asterisk],
[legend, "experimento", "teórico"],
[xlabel, "comprimento do pêndulo (cm)"],
[ylabel, "período (s)"])$
Figura 3.11.2.: Gráfico bidimensional com pontos discretos e curva contínua.
(%i6) plot3d (u^2 - v^2, [u, -2, 2], [v, -3, 3], [grid, 100, 100],
[mesh_lines_color,false])$
(%i7) plot3d (log (x^2*y^2), [x, -2, 2], [y, -2, 2],[grid, 29, 29],
[palette, [gradient, red, orange, yellow, green]], color_bar,
[xtics, 1], [ytics, 1], [ztics, 4],[color_bar_tics, 4])$
Figura 3.11.3.: Gráficos tridimensionais no Maxima.
30
3. Breve apresentação do software livre Maxima
Figura 3.12.1.: Limites simples e laterais no Maxima.
3.13. Derivadas
3.13.1. Derivadas simples e pontos críticos de uma função
O gráfico da função usada no exemplo a seguir está mostrado na Figura 3.13.1. Lembrar que os pontos
críticos de uma função são os zeros da derivada primeira. O sinal da derivada segunda, avaliada nos
pontos críticos, determinam se tais pontos são máximo, mínimo ou de inflexão.
(%i15)
f1:x^3-2.5*x^2+0.5*x+1.0;
f2:'diff(f1,x)=diff(f1,x) /* derivada primeira */;
f2a:diff(f1,x)$
f2b:f2a,x:2 /* derivada no ponto x=2 */;
f3:'diff(f1,x,2)=diff(f1,x,2) /* derivada segunda */;
f4:float(solve(f2a,x)) /* pontos criticos da funcao f1 */;
f4a:diff(f1,x,2)$
f4b:f4a,x:0.10685017607655 /* analisando se é ponto de max ou mín */;
f4c:f4a,x:1.559816490590112 /* analisando se é ponto de max ou mín */;
f5:solve(f1,x) /* raizes da funcao f1 */;
plot2d(f1,[x,-1,2.5]);
(%o15) x3 − 2.5x2 + 0.5x+ 1.0
(%o16)
d
d x
(
x3 − 2.5x2 + 0.5x+ 1.0) = 3x2 − 5.0x+ 0.5
(%o18) 2.5
(%o19)
d2
d x2
(
x3 − 2.5x2 + 0.5x+ 1.0) = 6x− 5.0
(%o20) [x = 0.10685017607655, x = 1.559816490590112]
(%o22) − 4.3588989435407
(%o23) 4.358898943540671
(%o24) [x = 2, x = −1
2
, x = 1]
3.13.2. Derivadas parciais de uma função
diff(f(x1 , x2 · · ·), x1, n1, x2, n2, · · ·): derivada parcial da função f (x1, x2, · · ·) em
relação à x1 , n1 vezes, em relação a x2 , n2 vezes,...
31
3. Breve apresentação do software livre Maxima
Figura 3.13.1.: Função usada no exemplo de derivadas e pontos críticos.
Como exemplo, deseja-se calcular as derivadas
∂3f
∂2x∂y
e
∂2f
∂x∂y
, assim como a matriz jacobiana e a
matriz hessiana, para a função f(x, y) = sen(x) cos(y2).
(%i1) f(x,y):=sin(x)*cos(y^2);
diff(f(x,y),x,2,y,1);
diff(f(x,y),x,1,y,1);
jacobian([f(x,y)],[x,y]) /* matriz jacobiana */;
jacobian([exp(x+y),x^2-y^2],[x,y])
/* matriz jacobiana de um campo vetorial */;
hessian(f(x,y),[x,y]) /* matriz hessiana */;
(%o1) f (x, y) := sin (x) cos
(
y2
)
(%o2) 2 sin (x) y sin
(
y2
)
(%o3) − 2 cos (x) y sin (y2)
(%o4)
(
cos (x) cos
(
y2
) −2 sin (x) y sin (y2))
(%o5)
(
ey+x ey+x
2x −2 y
)
(%o6)
( −sin (x) cos (y2) −2 cos (x) y sin (y2)
−2 cos (x) y sin (y2) −2 sin (x) sin (y2)− 4 sin (x) y2 cos (y2)
)
3.14. Integrais indefinidas, definidas e área abaixo de uma curva
A função f(x) = sen5(x) cos(x), usada no exemplo a seguir, cujas raízes são 0 e pi2 , está mostrada na
Figura 3.14.1.
(%i1) f6:sin(x)^5*cos(x);
f7:'integrate(f6,x)=integrate(f6,x) /* integral indefinida */;
diff(f7,x) /* checando a solução */;
solve(f6,x) /* calculando as raízes de f6 */;
f8:'integrate(f6,x,0,%pi/2)=integrate(f6,x,0,%pi/2)
/* integral definida ou a área abaixo da curva f6, entre as raízes */;
plot2d(f6,[x,0,%pi/2])$
(%o1) cos (x) sin (x)5
32
3. Breve apresentação do software livre Maxima
Figura 3.14.1.: Função usada no exemplo de integração.
(%o2)
∫
cos (x) sin (x)5dx =
sin (x)6
6
(%o3) cos (x) sin (x)5 = cos (x) sin (x)5
(%o4) [x = 0, x =
pi
2
]
(%o5)
∫ pi
2
0
cos (x) sin (x)5dx =
1
6
O comando assume serve para informar o Maxima a condição de uma constante, quando o sinal desta
afeta o cálculo a ser feito; caso contrário, o Maxima perguntará ao usuário se a constante é positiva,
negativa ou zero. Neste caso, basta digitar �p�, �n� ou �z� e em seguida SHIFT+ENTER.
(%i1) kill(all);
'integrate (x^a*exp(-x), x, 0, inf)=integrate (x^a*exp(-x), x, 0, inf);
(%o0) done
Is a+1 positive, negative or zero? p;
(%o1)
∫ ∞
0
xa e−xdx = γ (a+ 1)
(%i8) assume (a > 1)$
'integrate (x^a*exp(-x), x, 0, inf)=integrate (x^a*exp(-x), x, 0, inf);
(%o9)
∫ ∞
0
xa e−xdx = γ (a+ 1)
Quando não é possível calcular a integral definida analiticamente
2
, pode-se utilizar métodos numéricos
de integração(quadpack e romberg). O método quadpack retorna uma lista com quatro elementos:
1. Valor da integral;
2. Erro absoluto estimado;
3. Número de avaliações da função integranda;
4. Código de erro (ver manual ou o Help do Maxima para a descrição doserros, sendo 0 se não foi
encontrado nenhum problema);
2
Quando isto acontece o Maxima retorna o mesmo comando que foi fornecido.
33
3. Breve apresentação do software livre Maxima
(%i7) f9:sin(1/(x+1/10))$
f10:integrate(f9,x,0,1);
quad_qags(f9, x, 0, 1);
romberg(f9, x, 0, 1);
(%o8)
∫ 1
0
sin
(
1
x+ 110
)
dx
(%o9) [0.59450627843597, 1.9863236970333475 10−10, 147, 0]
(%o10) 0.59450623879743
3.15. Programação no Maxima
3.15.1. Instrução: if
Tomada de uma decisão numa situação condicional:
if condição then instrução;
end
if condição then instrução1 else instrução2;
end
(%i1) a:5$
if a>0 then print("número positivo")$
b:-4$
if b>0 then print("número positivo") else print("número negativo")$
número positivo
número negativo
3.15.2. Instrução: for...end
Há duas possibilidades para o uso do for :
for variável:valor1 step valor2 thru valor3 do instrução;
ou
for variável:valor1 step valor2 while condição do instrução;
(%i1) /* calcula o quadrado dos números ímpares no intervalo de 1 até 10 */
for i:1 step 2 thru 10 do print(i^2);
1
9
25
49
81
(%o1) done
(%i2) for i:1 step 2 while i<10 do print(i^2);
1
34
3. Breve apresentação do software livre Maxima
9
25
49
81
(%o2) done
3.15.3. Instrução block
Para definir procedimentos mais elaborados que englobem sequências de instruções, deve-se utilizar a
instrução block, cuja estrutura é:
nome_do_comando(argumento1, argumento2,...,argumentok):=block(
[variavel_local1, variavel_local2,...,variavel_localk],
instrução 1,
instrução 2,
...
instrução n);
(%i3) circulo(r):=block([area, perimetro],
area:%pi*r^2,
perimetro:2*%pi*r,
return([area, perimetro])
);
circulo(3);
(%o3) circulo (r) := block
(
[area, perimetro], area : pi r2, perimetro : 2pi r, return ([area, perimetro])
)
(%o4) [9pi, 6pi]
3.16. Séries
3.16.1. Série de Taylor
A função taylor(expr, x, a, n) expande a expressão expr em uma série de Taylor ou de Laurent,
truncada, na variável x em torno do ponto a, contendo termos até (x - a)^n. No exemplo a seguir,
encontram-se séries para a função sen(x) em torno do ponto zero, a forma geral da série de potência
sem truncamento e novamente a série truncada expandida em torno do ponto pi.
(%i1) f1:sin(x);
f2:taylor(f1, x, 0, 8);
f3:niceindices(powerseries(f1, x, 0));
f4:taylor(f1, x, %pi, 8);
(%o1) sin (x)
(%o2)/T/x− x
3
6
+
x5
120
− x
7
5040
+ ...
(%o3)
∞∑
i=0
(−1)i x2 i+1
(2 i+ 1)!
(%o4)/T/ − (x− pi) + (x− pi)
3
6
− (x− pi)
5
120
+
(x− pi)7
5040
+ ...
35
3. Breve apresentação do software livre Maxima
Figura 3.16.1.: Aproximações por série de Taylor para a função cos(x).
Dada a função cos(x), a Figura 3.16.1 mostra a função e os polinômios numa vizinhança de 0 (ponto
de aproximação). Percebe-se que a precisão da aproximação depende da distância do ponto de apro-
ximação (quanto mais próximo deste, melhor) e do grau do polinômio usado (quanto maior o grau,
melhor).
(%i1) f1:cos(x);
f5:taylor(f1,x,0,1);
f6:taylor(f1,x,0,4);
f7:taylor(f1,x,0,6);
f8:taylor(f1,x,0,8);
plot2d([f1,f5,f6,f7,f8],[x,-4,4],[style,[lines,1,2],[lines,1,3],
[lines,1,4],[lines,1,5],[lines,1,6]],[legend,"Função cos(x)",
"Polinômio de Taylor de grau 1", "Polinômio de Taylor de grau 4",
"Polinômio de Taylor de grau 6", "Polinômio de Taylor de grau 8"]);
(%o1) cos (x)
(%o2)/T/1 + ...
(%o3)/T/1− x
2
2
+
x4
24
+ ...
(%o4)/T/1− x
2
2
+
x4
24
− x
6
720
+ ...
(%o5)/T/1− x
2
2
+
x4
24
− x
6
720
+
x8
40320
+ ...
3.16.2. Série de Fourier
Seja f uma função periódica, com período 2L, e contínua no intervalo [-L,L]. Então a série de Fourier
de f é a série de funções:
a0 +
∞∑
n=1
[
an cos
(npix
L
)
+ bnsen
(npix
L
)]
36
3. Breve apresentação do software livre Maxima
Figura 3.16.2.: Série de Fourier da função usada no exemplo.
Os coeficientes an e bn são chamados de coeficientes de Fourier e são calculados do seguinte modo:
a0 =
1
2L
∫ L
−L
f(x)dx
an =
1
L
∫ L
−L
f(x)cos
(npix
L
)
dx, n = 1, 2, 3, ...
bn =
1
L
∫ L
−L
f(x)sen
(npix
L
)
dx, n = 1, 2, 3, ...
As funções que serão usadas no Maxima são:
ˆ fourier (f, x, p): retorna uma lista dos coeficientes de Fourier de f(x) definidos no intervalo
[-p, p].
ˆ fourexpand (l, x, p, limit): constroi e retorna a série de Fourier partindo da lista l dos
coeficientes de Fourier até ao termo limit (limit pode ser inf). x e p tem o mesmo significado
que na função fourier.
(%i1) load(fourie)$
f(x):=abs(x)-2$
g:fourexpand(fourier(f(x),x,1),x,1,3);
plot2d([f(x),g],[x,-1.5,1.5]);
(%t3) a0 = −3
2
(%t4) an = 2
(
−sin (pi n)
pi n
+
cos (pi n)
pi2 n2
− 1
pi2 n2
)
(%t5) bn = 0
(%o5) − 4 cos (3pi x)
9pi2
− 4 cos (pi x)
pi2
− 3
2
3.17. Regressão Linear
Pretende-se estudar a relação da produção de uma variedade de trigo, em kg, e a quantidade de
adubo fertilizante utilizado, em kg, conforme mostrado na Tabela 3.1. O gráfico comparando o modelo
estimado e os dados experimentais está mostrado na Figura 3.17.1.
37
3. Breve apresentação do software livre Maxima
Tabela 3.1.: Dados exeperimentais usados no exemplo de regressão linear.
Fertilizante, kg 16 24 32 40 48 56 64 72 80
Quantidade de trigo, kg 199 214 230 248 255 305 298 323 359
Figura 3.17.1.: Exercício de aplicação de regressão linear.
(%i11) dados:[[16,199],[24,214],[32,230],[40,248],[48,255],[56,305],
[64,298],[72,323],[80,359]]$
load(stats)$
simple_linear_regression(dados);
f(x):= 2.416666666666668*x + 154.111111111111;
plot2d([[discrete,dados],f(x)],[x,16,84],[style,[points,1,5],[lines,1,4]],
[legend,"Dados experimentais","Modelo calculado"],
[xlabel,"Fertilizante, kg"],[ylabel,"Produção, kg"]);
(%o13)

SIMPLE LINEAR REGRESSION
model = 2.416666666666668x+ 154.111111111111
correlation = 0.98266512147706
v_estimation = 114.0317460317458
b_conf_int = [2.009183744425169, 2.824149588908167]
hypotheses = H0 : b = 0, H1 : b#0
statistic = 14.0239216561971
distribution = [student_t, 7]
p_value = 2.220330900915002 10−6

(%o14) f (x) := 2.416666666666668x+ 154.111111111111
38
4. Campo de direções no Maxima
O campo de direções é uma ferramenta importante para a avaliação de equações diferenciais pois
dão fornecem uma solução qualitativa da equação diferencial (ou de um sistema de duas equações
diferenciais de primeira ordem autônomas) através dos valores para os quais a solução de uma dada
ED tende. O campo das direções é composto por vetores tangentes às soluções nos pontos do plano
xy.
Considere a EDO a seguir:
dv
dt
= g −
( γ
m
)
v
com: g = 9,8 m/s
2
; γ = 2 kg/s; m = 10 kg. Fixando-se valores de t e v, podemos calcular dv/dt; como
a derivada é a inclinação da reta tangente à curva v(t), os valores de dv/dt calculados são vetores que
calculados ao longo de um dado intervalo, indicam o comportamento da solução v(t). Neste exemplo,
como a EDO não depende da variável �t�, independente do valor desta, os valores da derivada somente
variam com �v�, como mostrado na Figura 4.0.1.
(%i2) kill(all);
dvdt(t,v):=g-gamma/m*v;
v:[40, 44, 48, 52, 56, 60]$
t:0$
dvdt(t,v), g:9.8, gamma:2, m:10;
t:2$
dvdt(t,v), g:9.8, gamma:2, m:10;
t:4$
dvdt(t,v), g:9.8, gamma:2, m:10;
kill(all);
plotdf(9.8-2/10*v,[t,v],[t,-0.9,10],[v,-0.9,65]);
(%o0) done
(%o1) dvdt (t, v) := g − γ
m
v
(%o4) [1.8, 1.0, 0.2,−0.59999999999999,−1.399999999999998,−2.199999999999999]
(%o6) [1.8, 1.0, 0.2,−0.59999999999999,−1.399999999999998,−2.199999999999999]
(%o8) [1.8, 1.0, 0.2,−0.59999999999999,−1.399999999999998,−2.199999999999999](%o0) done
A função que desenha o campo de direções no Maxima é plotdf, sendo que tal função só desenha
campos de direções para equações diferenciais ordinárias de primeira ordem e que seja possível explicitar
a derivada:
dy
dx
= f(x, y)
Possibilidades de uso da função plotdf:
ˆ plotdf (dydx, ...options...)
ˆ plotdf (dvdu, [u,v], ...options...)
39
4. Campo de direções no Maxima
Figura 4.0.1.: Campo de direções como vetores tangentes à solução de uma EDO.
ˆ plotdf ([dxdt,dydt], ...options...)
ˆ plotdf ([dudt,dvdt], [u,v], ...options...)
dydx, dxdt e dydt são expressões que dependem de x e y. dvdu, dudt e dvdt são expressões que
dependem de u e v. Além dessas duas variáveis, as expressões podem também depender de um conjunto
de parâmetros, com valores numéricos fornecidos com a opção de parâmetros (a sintaxe de opção é
dada abaixo), ou com um intervalo de valores permitidos especificados por uma opção �sliders�. Muitas
outras opções podem ser fornecidas dentro do comando, ou selecionadas no menu. Curvas integrais
podem ser obtidas por meio de um clique no gráfico, ou com a opção trajectory_at. A direção da
integração pode ser controlada com a opção direction, que pode ter valores de �forward� (adiante),
�backward� (para trás) ou �both� (ambos). O número de passos de integração é fornecido por meio de
nsteps e o intervalo de tempo entre eles é escolhido com a opção tstep. O método numérico utilizado
é Runge-Kutta de 4ª ordem com intervalos de tempo variáveis.
4.1. Exemplo 1
Campo de direções de
dy
dx = exp(−x) + y, mostrando a solução particular que passa pelo ponto (2;
-0,1), na Figura 4.1.1.
(%i1) plotdf(exp(-x)+y,[trajectory_at,2,-0.1])$
4.2. Exemplo 2
O seguinte exemplo mostra o campo de direção de um oscilador harmônico, definido pelas duas equações
40
4. Campo de direções no Maxima
Figura 4.1.1.: Campo de direções: exemplo 1.
dx
dt
= y e
dy
dt
=
(−k
m
)
x
e a curva integral em todo o intervalo (x,y) = (6,0), com um botão de deslizamento que irá permitir a
você mudar o valor de m interativamente (k está fixado em 2). O resultado está mostrado na Figura
4.2.1.
(%i11) plotdf([v,-k*z/m], [z,v], [parameters,"m=2,k=2"],
[sliders,"m=1:5"], [trajectory_at,6,0])$
4.3. Exemplo 3
Para montar o gráfico do campo de direção da equação de Duffing,
m
d2x
dt2
+ c
dx
dt
+ kx+ bx3 = 0
introduzimos a variável y=x' e usamos o código a seguir. O resultado é o que está mostrado na Figura
4.3.1.
(%i13) plotdf([y,-(k*x + c*y + b*x^3)/m],
[parameters,"k=-1,m=1.0,c=0,b=1"],
[sliders,"k=-2:2,m=-1:1"],[tstep,0.1]);
41
4. Campo de direções no Maxima
Figura 4.2.1.: Campo de direções: exemplo 2.
Figura 4.3.1.: Campo de direções: exemplo 3.
42
4. Campo de direções no Maxima
Figura 4.4.1.: Campo de direções: exemplo 4.
4.4. Exemplo 4
O campo de direção para um pêndulo amortecido, descrito por:
da
dt
= w
dw
dt
=
(−g
l
)
sen(a)−
(
b
ml
)
w
incluindo a solução para as condições iniciais fornecidas, com um botão de deslizamento que pode ser
usado para mudar o valor da massa m, e com um gráfico das duas variáveis de estado como uma função
do tempo, está no exemplo a seguir. Os resultados estão mostrados na Figura 4.4.1.
(%i17) plotdf([w,-g*sin(a)/l - b*w/m/l], [a,w],
[parameters,"g=9.8,l=0.5,m=0.3,b=0.05"],
[trajectory_at,1.05,-9],[tstep,0.01],
[a,-10,2], [w,-14,14], [direction,forward],
[nsteps,300], [sliders,"m=0.1:1"], [versus_t,1])$
4.5. Função drawdf
Existe também no Maxima a função drawdf que é quase idêntica ao plotdf, porém usa uma biblioteca
diferente para plotar o gráfico resultante. Usuários de wxMaxima ou Imaxima podem opcionalmente
usar wxdrawdf, que é idêntica ao drawdf, exceto que os gráficos são desenhados embutidos no �works-
pace� do Maxima, usando wxdraw. Para detalhes completos e exemplos de sua utilização, consultar o
Help do Maxima. Antes de utilizar a função, ela deve ser carregada, como mostrado na Figura 4.5.1.
43
4. Campo de direções no Maxima
Figura 4.5.1.: Campo de direções com a função drawdf.
44
5. Solução analítica de equações diferenciais
ordinárias (EDOs)
5.1. Verificando se uma dada equação é solução de uma EDO
Muitas vezes nos deparamos com uma equação e queremos simplesmente verificar se ela satisfaz uma
dada EDO, sem nos preocuparmos com o método de solução que levou à equação dada. O comando
ev serve para avaliar uma expressão na qual parte da mesma vai ser substituída por uma outra; já
o comando diff, colocando após a vírgula, instrui ao Maxima para realizar a derivada da expressão
montada com o comando anterior. Veja o exemplo a seguir.
Considere a equação de Clairaut:
y′(x)2 − xy′(x) + y(x) = 0
Verifique se y(x) = Cx− C2 e y(x) = x24 são soluções da equação de Clairaut.
(%i1) eq4: 'diff(y,x)^2 - x*'diff(y,x) + y = 0;
eq5: y = C*x - C^2;
ev(eq4,eq5);
ev(eq4,eq5),diff;
eq6: y = x^2/4;
ev(eq4,eq6);
ev(eq4,eq6),diff;
(%o1)
(
d
d x
y
)2
− x
(
d
d x
y
)
+ y = 0
(%o2) y = xC − C2
(%o3)
(
d
d x
(
xC − C2))2 − x ( d
d x
(
xC − C2))− C2 + xC = 0
(%o4) 0 = 0
(%o5) y =
x2
4
(%o6)
(
d
d x
x2
4
)2
− x
(
d
d x
x2
4
)
+
x2
4
= 0
(%o7) 0 = 0
Percebemos que ambas as soluções satisfazem a equação de Clairaut, já que após a substituição de
cada solução na EDO, econtrou-se uma identidade matemática.
5.2. Equações diferenciais de 1ª ordem
5.2.1. Encontrando a solução geral de uma ED de 1ª ordem
A solução geral de uma ED de 1ª ordem é encontrada usando as seguintes etapas:
45
5. Solução analítica de equações diferenciais ordinárias (EDOs)
1. Entrar com a EDO; nesta etapa, usar o apóstrofo antes do comando diff para inibir o Maxima
de proceder à derivada e assim permitir montar a equação diferencial;
2. Resolver a EDO usando a função ode2(edo, variável dependente, variável independente);
Se por alguma razão ode2 não conseguir encontrar a solução, retornará false, após talvez mostrar
uma mensagem de erro. Os métodos implementados para equações diferenciais de primeira ordem, na
ordem em que serão testados, são: linear, separável, exata - talvez requerendo um fator de integração,
homogênea, equação de Bernoulli, homogênea generalizada.
Durante o processo de resolução da EDO, serão dados valores a várias variáveis locais, com fins pu-
ramente informativos: method denota o método de solução usado (por exemplo, linear), intfactor
denota qualquer fator integrante utilizado, odeindex denota o índice para o método de Bernoulli ou
para o método homogêneo generalizado, e yp denota a solução particular no método de variação dos
parâmetros (solução de EDOs de 2ª ordem, não homogêneas).
Na solução geral aparece a constante de integração, que no caso de ED de 1ª ordem é nomeada
automaticamente pelo Maxima como %c. No exemplo a seguir, resolve-se a EDO de 1ª ordem, linear,
não homogênea, de coeficientes variáveis, ty′ + 2y = 4t2.
(%i4) kill(all);
eq1:t*'diff(y,t)+2*y=4*t^2;
eq2:ode2(eq1,y,t);
method;
intfactor;
(%o0) done
(%o1) t
(
d
d t
y
)
+ 2 y = 4 t2
(%o2) y =
t4 + %c
t2
(%o3) linear
(%o4) false
ATENÇÃO: Na montagem da EDO no Maxima, o comando diff é precedido por um apóstrofo (').
Entretanto, ao se gerar o documento pdf a partir do L
A
T
E
X, o apóstrofo aparece como uma aspa simples.
Compare o mesmo código anterior com o mostrado a seguir, colado como figura do Maxima, a fim de
não se alterar a formatação!
5.2.2. Encontrando a solução particular de uma ED de 1ª ordem
Considere o PVI (Problema de Valor Inicial) a seguir:
46
5. Solução analítica de equações diferenciais ordinárias (EDOs)
Figura 5.2.1.: Solução de um PVI, com equaçãodiferencial de 1ª ordem.
ty′ + 2y = 4t2
y(1) = 2
A solução deste PVI no Maxima consiste nas seguintes etapas:
1. Entrar com a EDO;
2. Resolver a EDO usando a função ode2(edo, variável dependente, variável independente);
3. Aplicar a condição inicial usando a função ic1(solução da edo, condição inicial da variável
independente, condição inicial da variável dependente);
4. Fazer um gráfico da solução (opcional, mas auxilia a visualizar o tipo de solução encontrado);
As etapas anteriores estão no código do Maxima a seguir e a solução particular encontrada está mos-
trada na Figura 5.2.1:
(%i6) kill(all);
eq1:t*'diff(y,t)+2*y=4*t^2;
eq2:ode2(eq1,y,t);
eq3:ic1(eq2,t=1,y=2);
method;
plot2d(rhs(eq3),[t,0.1,10]);
(%o0) done
(%o1) t
(
d
d t
y
)
+ 2 y = 4 t2
(%o2) y =
t4 + %c
t2
(%o3) y =
t4 + 1
t2
(%o4) linear
5.2.3. EDO com solução implícita
Nem sempre na solução de uma EDO é possível encontrar uma resposta explícita na variável depen-
dente, como é o caso da solução desta equação diferencial separável:
dy
dx
=
x2
1− y2 . A solução no
47
5. Solução analítica de equações diferenciais ordinárias (EDOs)
Maxima, que não difere em nada dos exemplos anteriores, está mostrada a seguir.
(%i16) kill(all);
eq1:'diff(y,x)=x^2/(1-y^2);
eq2:ode2(eq1,y,x);
eq3:ratsimp(%)*3;
method;
(%o0) done
(%o1)
d
d x
y =
x2
1− y2
(%o2) − y
3 − 3 y
3
=
x3
3
+ %c
(%o3) 3 y − y3 = x3 + 3 %c
(%o4) separable
Exercício: Como você faria um esboço da solução geral do exemplo anterior usando o Maxima?
5.2.4. Solução de EDOs exatas
Considere a EDO exata a seguir: (y cos(x) + 2xey) + (sen(x) + x2ey − 1)y′ = 0. Usando o Maxima,
mostre que se trata de uma EDO exata e em seguida resolva-a.
(%i7) kill(all);
eq1:(y*cos(x)+2*x*%e^y)+(sin(x)+x^2*%e^y-1)*'diff(y,x);
M:(y*cos(x)+2*x*%e^y);
N:(sin(x)+x^2*%e^y-1);
ratsimp(diff(M,y)-diff(N,x)) /* verificando se a EDO é exata */;
eq2:ode2(eq1,y,x);
method;
(%o0) done
(%o1)
(
x2 ey + sin (x)− 1) ( d
d x
y
)
+ 2x ey + cos (x) y
(%o2) 2x ey + cos (x) y
(%o3) x2 ey + sin (x)− 1
(%o4) 0
(%o5) x2 ey + (sin (x)− 1) y = %c
(%o6) exact
5.2.5. Exemplo 1: variação da massa de um soluto com o tempo a volume constante
Considere um tanque agitado, a volume constante, no qual há a variação da massa de um soluto de
uma solução com o tempo, conforme descrito pelo esquema mostrado na Figura 5.2.2 e no modelo a
seguir:
dm
dt
+
( r
V
)
m = rc0
t = 0; m = m0
48
5. Solução analítica de equações diferenciais ordinárias (EDOs)
Figura 5.2.2.: Variação da massa com o tempo para um tanque agitado (m0=1, c0=1, V= 2, r=1)
No modelo, m é massa dentro do tanque; r é a vazão volumétrica [volume/tempo] e c concentração
mássica [massa/volume].
A solução deste modelo, no Maxima, é (ver a Figura 5.2.2 para a solução na forma gráfica para um
conjunto específico das constantes do modelo):
(%i1) edo1:'diff(m,t)+(r/V)*m=r*c0;
sol1:ode2(edo1,m,t)$ expand(%);
sol2:ic1(sol1,t=0,m=m0)$ expand(%);
sol3:sol2, m0:1, c0:1, V: 2, r:1$ expand(%);
'limit(rhs(sol3),t,inf)=limit(rhs(sol3),t,inf);
plot2d(rhs(sol3),[t,0,15],[ylabel,"m"])$
(%o1)
mr
V
+
d
d t
m = c0 r
(%o3) m = %c e−
r t
V + c0V
(%o5) m = −c0V e− r tV +m0 e− r tV + c0V
(%o7) m = 2− e− t2
(%o8) lim
t→∞ e
− t
2
(
2 e
t
2 − 1
)
= 2
5.2.6. Exemplo 2: lei do resfriamento de Newton
Um corpo que está em uma temperatura T, exposto a um ambiente de temperatura Ta, troca calor
com tal ambiente segundo a lei do resfriamento de Newton, descrita por:
dT
dt
= −k [T − Ta]. Ta pode variar no tempo, como por exemplo: Ta(t) = T0 + T1 cos(ωt). A solução
gráfica está na Figura 5.2.3.
49
5. Solução analítica de equações diferenciais ordinárias (EDOs)
Figura 5.2.3.: Solução do problema envolvendo a lei de resfriamento de Newton.
(%i1) kill(all);
edo1:'diff(T,t)=-k*(T-Ta(t));
sol1:ode2(edo1,T,t)$ expand(%);
edo2:'diff(T,t)=-k*(T-T0+T1*cos(\omega*t));
sol2:ode2(edo2,T,t)$ expand(%);
sol3:ic1(sol2,t=0,T=20)$
sol4:sol3,k:0.2, \omega:0.5, T0:25, T1:1;
plot2d(rhs(sol4),[t,0,50],[ylabel,"T"])$
(%o0) done
(%o1)
d
d t
T = −k (T − Ta (t))
(%o3) T = k e−k t
∫
ek t Ta (t) dt+ %c e−k t
(%o4)
d
d t
T = −k (cos (ω t) T1− T0 + T )
(%o6) T = −k ω sin (ω t) T1
ω2 + k2
− k
2 cos (ω t) T1
ω2 + k2
+ T0 + %c e−k t
(%o8) T =− 3.448275862068965 e−0.2 t(
0.1 e0.2 t sin (0.5 t) + 0.04 e0.2 t cos (0.5 t) + 25
(
0.29− 0.29 e0.2 t)− 5.84)
5.3. Equações diferenciais lineares de 2ª ordem
5.3.1. Solução geral
Os tipos de equações de segunda ordem que podem ser resolvidas são: coeficientes constantes, exatas,
linear homogêneas com coeficientes não constantes que possam ser transformados para constantes,
equação de Euler ou equi-dimensional, equações que possam ser resolvidas pelo método de variação
dos parâmetros, e equações que não dependam ou da variável independente ou da variável dependente,
de modo que possam ser reduzidas a duas equações lineares de primeira ordem a serem resolvidas
sequencialmente. Algumas equações especiais também são reconhecidas. Caso o Maxima não consiga
resolver a EDO, é retornado false.
50
5. Solução analítica de equações diferenciais ordinárias (EDOs)
Figura 5.3.1.: Funções de Bessel J0(x) e Y0(x).
Considere a equação de Bessel de ordem zero:
x2y′′ + xy′ + x2y = 0
Cuja solução geral é dada nos manuais como sendo:
y(x) = c1J0(x) + c2Y0(x)
(%i1) eq1:x^2*'diff(y,x,2)+x*'diff(y,x)+x^2*y=0;
sol1:ode2(eq1,y,x);
plot2d([bessel_y(0,x), bessel_j(0,x)],[x,0,15],[y,-0.5,1])$
limit(bessel_y(0,x),x,0);
(%o1) x2
(
d2
d x2
y
)
+ x
(
d
d x
y
)
+ x2 y = 0
(%o2) y = bessel_y (0, x) %k2 + bessel_j (0, x) %k1
(%o4) −∞
Na solução anterior, J0(x) e Y0(x) são chamadas de funções de Bessel, do primeiro tipo e ordem zero.
Percebe-se na Figura 5.3.1 o comportamento oscilatório de tais funções, passando por valores negativos.
Isto leva à necessidade de adimensionalizar modelos descritos por equações de Bessel, que aparecem
em geometrias cilíndricas e esféricas, para o intervalo [0, 1], a fim de garantir que a solução obtida
seja fisicamente compatível, por exemplo, evitando de serem obtidas concentrações negativas. Outra
observação, é que a função Y0(x) tende para menos infinito quando x tende a zero. Isto faz com que
a constante de integração associada a esta função seja arbitrada como sendo nula a fim de evitar que
concentração ou temperatura vá para menos infinito no centro do corpo, ou em x = 0, em geometrias
cilíndricas e esféricas. Seus valores encontram-se em tabelas ou podem ser calculados por �softwares� e
calculadoras científicas. O Maxima dispõe de todas as funções de Bessel na classe de funções especiais.
(%i5) [bessel_j(0,1), bessel_y(0,1), bessel_k(0,1), bessel_i(0,1)], numer;
(%o5) [0.76519768655796, 0.088256964215676, 0.4210244382407, 1.266065877752008]
5.3.2. Solução de PVIs
Considere o PVI a seguir:
51
5. Solução analítica de equações diferenciais ordinárias (EDOs)
Figura 5.3.2.: PVI envolvendo uma EDO de 2ª ordem.
d2y
dx2
− 3dy
dx
+ 2y = 0
y(0) = 0 y′(0) = 0, 5
A solução encontra-se a seguir, onde a função ic2 é usada para inserir a condição inicial envolvendo
a variável dependente e sua derivada, conhecidas para um mesmo ponto da variável independente. A
solução geral encontrada é comparada com as raízes da equação característica. A solução particular
do problema está mostrada na Figura 5.3.2.
(%i10) kill(all);
eq1:'diff(y,x,2)-3*'diff(y,x)+2*y /* edo homogenea */;
eq2:ode2(eq1,y,x);
eq3:ic2(eq2,x=0,y=0,'diff(y,x)=0.5);
plot2d(rhs(eq3),[x,-5,1]);
method;
eq_caracteristica:r^2-3*r+2;
solve(eq_caracteristica,r);(%o0) done
(%o1)
d2
d x2
y − 3
(
d
d x
y
)
+ 2 y
(%o2) y = %k1 e2x + %k2 ex
rat: replaced 0.5 by 1/2 = 0.5
(%o3) y =
e2x
2
− e
x
2
(%o5) constcoeff
(%o6) r2 − 3 r + 2
(%o7) [r = 1, r = 2]
5.3.3. Exemplo: difusão e reação de um componente gasoso em um líquido (Rice and
Do., 1995, exemplo 2.7)
52
5. Solução analítica de equações diferenciais ordinárias (EDOs)
Considere uma torre de absorção reativa, usada
na lavagem de um gás tóxico, na qual o gás solúvel
A, reativo, se dissolve numa interface plana de um
corpo longo de líquido reagente, com o qual ele
reage através da equação da taxa irreversível e
não linear:
rA = knC
n
A
Assumindo que a reação seja de primeira ordem
(n = 1) e que em z = 0, CA = 0 e
dCA
dz = 1. O ba-
lanço de massa no sistema, no estado estacinário,
conduz a:
D
d2CA
dz2
− knCA = 0. A solução no Maxima é:
(%i1) kill(all)$
assume(D>0,k_n>0);
edo1:D*'diff(C_A,z,2)-k_n*C_A^1;
solve(D*r^2-k_n,r) /* equação característica */;
sol3:ode2(edo1,C_A,z);
sol4:ic2(sol3, z=0, C_A=0,'diff(C_A,z)=1);
sol5:rhs(sol4),D=0.1,k_n=0.5;
plot2d(sol5,[z,0,1],[style,[lines,5]],[ylabel,"C_A"],
[xlabel,"z"])$
(%o1) [D > 0, k_n > 0]
(%o2)
(
d2
d z2
C_A
)
D − k_nC_A
(%o3) [r = −
√
k_n√
D
, r =
√
k_n√
D
]
(%o4) C_A = %k1 e
√
k_n z√
D + %k2 e
−
√
k_n z√
D
(%o5) C_A =
√
De
√
k_n z√
D
2
√
k_n
−
√
De
−
√
k_n z√
D
2
√
k_n
(%o6) 0.22360679774997 e2.23606797749979 z − 0.22360679774997 e−2.23606797749979 z
Adotando D = 0, 1 e kn = 0, 5; o gráfico da concentração em função do comprimento está mostrado na
Figura 5.3.3, onde percebe-se o comportamento exponencial do sistema, ditado pelas raízes da equação
característica. Este comportamento é genérico para este tipo de sistema ou é um caso particular para
os valores das constantes adotadas?
5.3.4. Solução de PVCs
O PVC:
d2y
dx2
− 3dy
dx
+ 2y = 0
y(0) = 0 y(1) = 2
tem a solução mostrada a seguir, onde a função bc2 é usada para inserir a condição de contorno
envolvendo a variável dependente e a variável independente, conhecidas para dois pontos diferentes da
variável independente:
53
5. Solução analítica de equações diferenciais ordinárias (EDOs)
Figura 5.3.3.: Difusão e reação de um componente gasoso.
(%i10) kill(all);
eq1:'diff(y,x,2)-3*'diff(y,x)+2*y /* edo homogenea */;
eq2:ode2(eq1,y,x);
eq3:bc2(eq2,x=0,y=0,x=1,y=2);
eq3,x:0 /* checando as condicoes de contorno */;
eq3,x:1, numer;
method;
eq_caracteristica:r^2-3*r+2;
solve(eq_caracteristica,r);
(%o0) done
(%o1)
d2
d x2
y − 3
(
d
d x
y
)
+ 2 y
(%o2) y = %k1 e2x + %k2 ex
(%o3) y =
2 e2x
e2 − e −
2 ex
e2 − e
(%o4) y = 0
(%o5) y = 1.999999999999999
(%o6) constcoeff
(%o7) r2 − 3 r + 2
(%o8) [r = 1, r = 2]
5.3.5. EDOs não homogêneas
Considere o PVI a seguir:
d2y
dx2
− 3dy
dx
+ 2y = 5 exp(x)− sin(x)
y(0) = 0 y′(0) = 0, 5
54
5. Solução analítica de equações diferenciais ordinárias (EDOs)
Figura 5.3.4.: Solução de uma EDO de segunda ordem, não homogênea.
A solução segue os mesmos passos já apresentados; a única novidade aqui é que o método de solução
usado pelo Maxima é a variação dos parâmetros, que fica armazenada na variável yp. A solução
particular está mostrada na Figura 5.3.4.
(%i9) kill(all);
eq1:'diff(y,x,2)-3*'diff(y,x)+2*y-5*%e^x+sin(x) /* edo nao homogenea */;
eq2:ode2(eq1,y,x);
eq3:ic2(eq2,x=0,y=0,'diff(y,x)=0.5);
plot2d(rhs(eq3),[x,-5,1],[ylabel,"y"]);
method;
eq_caracteristica:r^2-3*r+2;
solve(eq_caracteristica,r);
yp;
(%o0) done
(%o1)
d2
d x2
y − 3
(
d
d x
y
)
+ 2 y + sin (x)− 5 ex
(%o2) y = −sin (x) + 3 cos (x) + (50x+ 50) e
x
10
+ %k1 e2x + %k2 ex
rat: replaced 10.6 by 53/5 = 10.6
(%o3) y =
53 e2x
10
− sin (x) + 3 cos (x) + (50x+ 50) e
x
10
(%o5) variationofparameters
(%o6) r2 − 3 r + 2
(%o7) [r = 1, r = 2]
(%o8) − sin (x) + 3 cos (x) + (50x+ 50) e
x
10
5.3.6. Exemplo: Dinâmica de um tanque agitado com aquecimento elétrico
Um fenômeno que é amplamente estudado no Controle de Processos é o arranjo em série de sistemas,
resultando numa dinâmica global de ordem superior. Por exemplo, dois sistemas de primeira
55
5. Solução analítica de equações diferenciais ordinárias (EDOs)
ordem em série, resultam num sistema de segunda ordem. Isto pode ser facilmente visualizado
quando se toma as equações diferenciais individuais de cada sistema, de primeira ordem, e combina-se
tais equações numa única, resultando numa EDO de segunda ordem.
Considere um tanque agitado com aquecimento elétrico, como o mostrado na Figura 5.3.5. A dinâmica
da temperatura dentro do tanque e no sistema de aquecimento pode ser representada por:
mC
dT
dt
= wC(Ti − T ) + heAe(Te − T )
meCe
dTe
dt
= Q− heAe(Te − T )
A variável Te pode ser isolada na primeira EDO e substituída na segunda, resultando numa EDO de
2ª ordem, linear, de coeficientes constantes (com os parâmetros constantes), não homogênea, apenas
com variável dependente T e variável independente t. Em seguida, a EDO de 2ª ordem resultante é
resolvida, considerando m = 2, C = 1, me = 1, Ce = 0, 5; w = 1, he = 1, Ae = 1, Ti = 10 + 1, 5sent,
Te = 15, Qe = 0, 5. Como as raízes da equação característica são r1 = �2,6 e r2 = �0,38, portanto reais,
diferentes e de sinal negativo, parte da resposta deve ter um comportamento exponencial e assintótico,
o que de fato se verifica na solução encontrada (ver Figura 5.3.5c). Como a temperatura de entrada
Ti = 10 + 1, 5sent é função do tempo e oscilatória (influenciando na parte não homogênea da EDO),
isto faz com que o sistema seja continuamente excitado, embora resulte numa dinâmica final estável,
para o conjunto de parâmetros adotados.
Neste exemplo, mostra-se que um sistema de duas EDOs pode ser combinado numa única EDO de
ordem superior. A recíproca também é verdadeira, ou seja, uma EDO de ordem n pode ser decomposta
em um sistema de n EDOs de 1ª ordem.
(%i1) depends([T,Te,Ti],t);
eqn1:m*C*'diff(T,t)=w*C*(Ti-T)+he*Ae*(Te-T);
eqn2:me*Ce*'diff(Te,t)=Q-he*Ae*(Te-T);
eqn3:solve(eqn1,Te)[1];
eqn4:(Ae*he*ev(eqn2,eqn3,diff)+Ae*he*m*C*('diff(T,t,1))+
Ce*me*('diff(Ti,t,1))*w*C+Ae*he*w*C*T)/(C*w*he*Ae)$
eqn4:expand(%);
eqn5:eqn4,m:2,C:1,me:1,Ce:0.5,w:1,he:1,Ae:1,Ti:10+1.5*sin(t),Te:15,Q:0.5,diff;
eqn6:ode2(eqn5,T,t)$
eqn7:ic2(eqn6,t=0,T=5,'diff(T,t)=0);
plot2d(rhs(eqn7),[t,0,30],[xlabel,"t"],[ylabel,"T"]);
(%o1) [T (t) ,Te (t) ,Ti (t)]
(%o2) mC
(
d
d t
T
)
= wC (Ti− T ) +Aehe (Te− T )
(%o3) Ceme
(
d
d t
Te
)
= Q−Aehe (Te− T )
(%o4) Te =
mC
(
d
d t T
)
+ (wC +Aehe) T − TiwC
Aehe
(%o6)
Cemme
(
d2
d t2
T
)
Aehew
+
Ceme
(
d
d t T
)
wC
+
m
(
d
d t T
)
w
+
Ceme
(
d
d t T
)
Aehe
+T =
Q
wC
+
Ceme
(
d
d t Ti
)
Aehe
+Ti
(%o7) 1.0
(
d2
d t2
T
)
+ 3.0
(
d
d t
T
)
+ T = 1.5 sin (t) + 0.75 cos (t) + 10.5
(%o9) T =
sin (t)− 2 cos (t) + 42
4
−
(
31
√
5 + 50
)
e
(
√
5−3) t
2
20
+
(
31
√
5− 50) e (−√5−3) t2
20
56
5. Solução analítica de equações diferenciais ordinárias (EDOs)
Figura 5.3.5.: Tanque agitado com aquecimento elétrico.
5.3.7. Wronkiano
O wronkiano de uma base de soluções pode ser calculado com o comando wronskian([fun1, fun2],
var). Na verdade o comando wronskian apenas monta a matriz das soluções e suas respectivas
derivadas primeiras; depois, deve ser seguido do comando determinant para calcular o determinante
da matriz anterior:
(%i1) load(functs)$
wronskian([f(x), g(x)],x);
w:determinant(wronskian([%e^x, %e^(2*x)],x));
(%o2)
(
f (x) g (x)
d
d x f (x)
d
d x g (x)

Outros materiais