Sei sulla pagina 1di 33

Universidade Estadual de Campinas

Trabalho de MA311

Utilizao do
Software Maxima

Nomes:

Cristina Marioni Torres RA: 042708


Filipe Ricardo Polizel RA:043583
Letcia Andra Bocchi Silva RA:048060
Lus Fernando L. Sato RA:044865
Natlia do Carmo Carvalho RA:045786
Thiago de Moraes Sfredo RA:046708
Tiago Bonatto de Lima RA:046769

1
ndice

1) Introduo .......................................................................................................................... 3
1.1) Histrico e modo de obteno..................................................................................... 3
1.2) Conceitos bsicos do Maxima..................................................................................... 4
2) Soluo de equaes diferenciais....................................................................................... 7
2.1)Definio de equao diferencial ................................................................................. 7
2.2) Soluo de equaes diferenciais de primeira ordem ................................................. 8
2.2.1) Equaes lineares .............................................................................................. 8
2.2.2) Equaes separveis.......................................................................................... 9
2.2.3) Equaes exatas ................................................................................................ 9
2.3) Soluo de equaes diferenciais de segunda ordem:............................................... 10
2.3.1) Equaes Homogneas com Coeficientes Constantes .................................... 11
2.3.2) Razes Complexas da Equao Caracterstica................................................. 11
2.3.3) Razes Repetidas ............................................................................................. 12
2.4) Equaes No-Homogneas;..................................................................................... 12
2.4.1) Mtodo dos Coeficientes Indeterminados ....................................................... 12
2.4.2) Variao dos Parmetros................................................................................. 13
2.5) Resolvendo sistema de EDOs: .................................................................................. 14
3) Apresentao de Campo de Direes e Trajetrias.......................................................... 14
4) Soluo de equaes diferenciais por transformada de Laplace ...................................... 18
4.1) Definio da transformada de Laplace...................................................................... 18
4.2) Resolvendo equaes diferenciais com transformada de Laplace. ........................... 19
5) Sries ................................................................................................................................ 21
5.1) Funo sum( ):........................................................................................................... 21
5.2) Funo taylor( ): ........................................................................................................ 22
5.3) Funo diff( ): ........................................................................................................... 23
5.4) Funo solve_rec( ): .................................................................................................. 24
5.5)Resolvendo um EDO por sries: ................................................................................ 25
6) Osciladores amortecidos: ................................................................................................. 27
7) Funo Degrau ou Funo de Heaviside.......................................................................... 30
7.1) Definio: .................................................................................................................. 30
8) Bibliografia ...................................................................................................................... 32
8.1)Sites: ........................................................................................................................... 32
8.2) Livros: ....................................................................................................................... 33

2
1) Introduo

1.1) Histrico e modo de obteno

O Maxima um software livre para clculos matemticos, semelhante ao MatLab e


ao Mathematica. Trata-se de um sistema de lgebra computacional para manipulao de
expresses simblicas e numricas, incluindo a diferenciao, integrao, srie de Taylor,
transformaes de La Place, equaes diferenciais ordinrias, sistemas de equaes
lineares, polinomiais, e sries, listas, vetores, matrizes. O Maxima produz resultados
precisos usando seu sistema especial de floating e pode trabalhar com funes e dados
em duas ou trs dimenses.

O cdigo fonte do Maxima pode ser compilado em muitos sistemas, incluindo


Windows, Linux, e MacOS X. O cdigo fonte para todos os sistemas e pr-compilado
binrio para Windows e Linux, e est disponvel no GNU General Public License. O
download do sotware pode ser feito pelo link
http://sourceforge.net/project/showfiles.php?group_id=4933 .

Maxima derivado do sistema Macsyma, o sistema legendrio da lgebra do


computador desenvolvido nos anos de 1968 a 1982 no Instituto de Tecnologia de
Massachusetts como parte do Projeto MAC. MIT remanejou uma cpia do cdigo fonte do
Macsyma para o Departamento de Energia em 1982; aquela verso agora conhecida como
Macsyma DOE. Uma cpia do Macsyma DOE (Departamento de Energia) foi mantida pelo
Professor William F. Schelter da Universidade do Texas de 1982 at sua morte em 2001.
Em 1998, Schelter obteve permisso do Departamento de Energia para liberar o cdigo
fonte do Macsyma DOE sob a Licena Pblica GNU, e em 2000 ele iniciou o projeto
Maxima no SourceForge para manter e desenvolver o Macsyma DOE, agora chamado
Maxima.

Maxima o nico sistema baseado nesse esforo ainda publicamente disponvel e


com uma comunidade de usurio ativa, graas a sua natureza aberta da fonte. Macsyma era
revolucionrio em seu dia, e muitos sistemas mais atrasados, tais como o Bordo e o
Mathematica, foram inspirados por ele.

3
1.2) Conceitos bsicos do Maxima

Inicie o Maxima com o comando "maxima". Maxima mostrar a informao de


verso e uma linha de comando. Termine cada comando noMaxima com um ponto e
vrgula. Termine uma sesso com o comando "quit();".

Aqui est um exemplo de sesso:

[wfs@chromium]$ mxima
Maxima 5.9.1 http://maxima.sourceforge.net
Using Lisp CMU Common Lisp 19a
Distributed under the GNU Public License. See the file COPYING.
Dedicated to the memory of William Schelter.
This is a development version of Maxima. The function bug_report()
provides bug reporting information.
(%i1) factor(10!);
8 4 2
(%o1) 2 3 5 7
(%i2) expand ((x + y)^6);
6 5 2 4 3 3 4 2 5 6
(%o2) y + 6 x y + 15 x y + 20 x y + 15 x y + 6 x y + x
(%i3) factor (x^6 - 1);
2 2
(%o3) (x - 1) (x + 1) (x - x + 1) (x + x + 1)
(%i4) quit();
[wfs@chromium]$

Maxima pode procurar as pginas info. Use o comando describe para mostrar
todos os comandos e variveis contendo uma dada seqncia de caracteres, e
opcionalmente sua documentao. O ponto de interrogao ? uma abreviatura para
describe:

(%i1) ? integ

0: (maxima.info)Introduction to Elliptic Functions and Integrals.


1: Definitions for Elliptic Integrals.
2: Integration.
3: Introduction to Integration.
4: Definitions for Integration.
5: askinteger :Definitions for Simplification.
6: integerp :Definitions for Miscellaneous Options.
7: integrate :Definitions for Integration.
8: integrate_use_rootsof :Definitions for Integration.
9: integration_constant_counter :Definitions for Integration.
Enter space-separated numbers, `all' or `none': 6 5

Info from file /usr/local/info/maxima.info:

4
- Function: integerp (<expr>)
Returns `true' if <expr> is an integer, otherwise `false'.

- Function: askinteger (expr, integer)


- Function: askinteger (expr)
- Function: askinteger (expr, even)
- Function: askinteger (expr, odd)
`askinteger (expr, integer)' attempts to determine from the
`assume' database whether `expr' is an integer. `askinteger' will
ask the user if it cannot tell otherwise, and attempt to install
the information in the database if possible. `askinteger (expr)'
is equivalent to `askinteger (expr, integer)'.

`askinteger (expr, even)' and `askinteger (expr, odd)' likewise


attempt to determine if `expr' is an even integer or odd integer,
respectively.

(%o1) false

Para usar um resultado em clculos posteriores, voc pode atribuir esse valor a uma
varivel ou referir-se a esse mesmo valor atravs de seu rtulo gerado automaticamente.
Adicionalmente, % refere-se ao mais recente resultado calculado:

(%i1) u: expand ((x + y)^6);


6 5 2 4 3 3 4 2 5 6
(%o1) y + 6 x y + 15 x y + 20 x y + 15 x y + 6 x y + x
(%i2) diff (u, x);
5 4 2 3 3 2 4 5
(%o2) 6 y + 30 x y + 60 x y + 60 x y + 30 x y + 6 x
(%i3) factor (%o2);
5
(%o3) 6 (y + x)

Maxima tem conhecimento sobre nmeros complexos e constantes numricas:

(%i1) cos(%pi);
(%o1) - 1
(%i2) exp(%i*%pi);
(%o2) - 1

Maxima pode fazer clculos diferenciais e integrais:

5
(%i1) u: expand ((x + y)^6);
6 5 2 4 3 3 4 2 5 6
(%o1) y + 6 x y + 15 x y + 20 x y + 15 x y + 6 x y + x
(%i2) diff (%, x);
5 4 2 3 3 2 4 5
(%o2) 6 y + 30 x y + 60 x y + 60 x y + 30 x y + 6 x
(%i3) integrate (1/(1 + x^3), x);
2 x - 1
2 atan(-------)
log(x - x + 1) sqrt(3) log(x + 1)
(%o3) - --------------- + ------------- + ----------
6 sqrt(3) 3

Maxima pode resolver sistemas lineares e equaes cbicas:

(%i1) linsolve ([3*x + 4*y = 7, 2*x + a*y = 13], [x, y]);


7 a - 52 25
(%o1) [x = --------, y = -------]
3 a - 8 3 a - 8
(%i2) solve (x^3 - 3*x^2 + 5*x = 15, x);
(%o2) [x = - sqrt(5) %i, x = sqrt(5) %i, x = 3]

Maxima pode resolver sistemas de equaes no lineares. Note que se voc no quer
um resultado impresso, voc pode encerrar seu comando com $ em lugar de encerrar com
;.

(%i1) eq_1: x^2 + 3*x*y + y^2 = 0$


(%i2) eq_2: 3*x + y = 1$
(%i3) solve ([eq_1, eq_2]);
3 sqrt(5) + 7 sqrt(5) + 3
(%o3) [[y = - -------------, x = -----------],
2 2

3 sqrt(5) - 7 sqrt(5) - 3
[y = -------------, x = - -----------]]
2 2

Maxima pode gerar grficos de uma ou mais funes:

6
(%i1) eq_1: x^2 + 3*x*y + y^2 = 0$
(%i2) eq_2: 3*x + y = 1$
(%i3) solve ([eq_1, eq_2]);
3 sqrt(5) + 7 sqrt(5) + 3
(%o3) [[y = - -------------, x = -----------],
2 2

3 sqrt(5) - 7 sqrt(5) - 3
[y = -------------, x = - -----------]]
2 2
(%i4) kill(labels);
(%o0) done
(%i1) plot2d (sin(x)/x, [x, -20, 20]);
(%o1)
(%i2) plot2d ([atan(x), erf(x), tanh(x)], [x, -5, 5]);
(%o2)
(%i3) plot3d (sin(sqrt(x^2 + y^2))/sqrt(x^2 + y^2), [x, -12, 12], [y, -
12, 12]);
(%o3)

*Nota:
Para a funo Degrau Unitrio Maxima no capaz de desenhar os grficos nem
calcular sua transformada de La Place, apesar de estar inclusa em sua biblioteca.A Funo
Degrau Unitrio implementada como unit_step[x].

2) Soluo de equaes diferenciais

2.1)Definio de equao diferencial

Uma equao diferencial qualquer equao na qual esteja presente a derivada de


alguma varivel. Um exemplo simples :

dy
+ 2 y = te 2t
dt

dy
Note que tambm pode ser escrito como y . A varivel y chamada de
dt
varivel dependente e t a varivel independente.
Equaes diferenciais so divididas em vrias classificaes, sendo a mais bsica a
ordem. A ordem de uma equao diferencial dada pela derivada de maior grau encontrada
nela. No exemplo acima, a nica derivada de primeiro grau, portanto, trata-se de uma
equao diferencial de primeira ordem.

7
2.2) Soluo de equaes diferenciais de primeira ordem

No existe um mtodo universal para resolver equaes de primeira ordem.


Portanto, estas equaes foram divididas em vrias subclasses com mtodos de soluo
diferentes. As mais importantes subclasses so equaes lineares, equaes separveis e
equaes exatas.

2.2.1) Equaes lineares

Equaes lineares so normalmente encontradas na forma

dy
+ p( y ) y = g (t )
dt

e representam uma relao linear entre a varivel dependente e a independente.


Para resolver uma equao linear de primeira ordem no Maxima usa-se o comando
ode2(equao, varivel dependente, varivel independente).

Exemplo 1:
dy
+ 2 y = te 2t
dt

in: ode2('diff(y,t) + 2*y = t*exp(-2*t),y,t);


t2
out: y= + c e 2t
2

O Maxima retorna a soluo geral da equao diferencial, por isso o uso da


constante c . Isto possibilita desenhar o campo vetorial e trajetorial da equao (assumindo
arbitrariamente valores para a constante). O valor da constante depende das condies
iniciais do problema (exemplo logo a seguir).
Observe que o comando para soluo, tanto de equaes de primeira ordem quanto
para segunda, o mesmo no Maxima. Este comando examina a equao e aplica vrios
mtodos de soluo at encontrar a soluo geral. Para descobrir qual mtodo foi utilizado
pelo Maxima na resoluo da equao, existe o comando method. Para a equao
resolvida acima, method retorna linear, o que quer dizer que o maxima obteve a
soluo geral da equao diferencial tratando-a como uma equao linear.

Aplicando as condies iniciais t = 1 e y = 0 para a equao resolvida no exemplo


acima, podemos determinar o valor da constante c atravs da funo ic1. Esta funo deve
ser usada da seguinte forma

ic1(soluo, valor inicial de t, valor inicial de y)

8
Exemplo 2:

in: ic1( y=(t^2/2+%c)*%e^(-2*t) , y=0, t=1);


(t 2 1)e 2t
out: y=
2

Esta a soluo do problema de valor inicial apresentado.

2.2.2) Equaes separveis

Equaes separveis so geralmente da forma

dy
M ( x) + N ( y ) =0
dx

ou seja, a funo N que multiplica a derivada depende apenas da varivel dependente e o


termo M depende apenas da varivel independente. Estas equaes podem ser resolvidas
por integrao direta, pois podem ser escritas na forma M ( x)dx = N ( y )dy , e a soluo
pode ser encontrada integrando-se ambos os lados da equao.

Exemplo 3:
dy 2x
=
dx 2 x +1

in: ode2( 'diff(y,x) = 2*x/(1+2*y), y, x)


y2 + y x2
out: = +c
2 2

Para esta equao a funo method retorna separable.


Aplicando as condies iniciais x = 2 e y = 0 nesta soluo geral, encontramos a
seguinte soluo particular:

in: ic1((y^2+y)/2=x^2/2+%c, x=2, y=0);


y2 + y x2 4
out: =
2 2

2.2.3) Equaes exatas

A definio de uma equao exata de primeira ordem , para uma


dy
equao M ( x, y ) + N ( x, y ) = 0 , tem-se que:
dx

9
M y ( x, y ) = N x ( x, y )

Cumprida esta condio, a soluo geral da equao dada pela funo F, sendo

Fx ( x, y ) = M ( x, y ) e Fy ( x, y ) = N ( x, y )

Nem sempre uma equao diferencial encontra-se na forma exata. Para transform-
la em uma equao exata, pode se multiplicar a equao por um determinado fator
integrante u, que depende apenas de uma das variveis. Comumente, utiliza-se u(x).
A equao transformada ento

dy du M y N x
u ( x ) M ( x, y ) + u ( x ) N ( x, y ) =0 e = u
dx dx N

Exemplo da soluo de uma equao exata com o uso de fator integrante:

dy
( xy + x 2 ) + y 2 + 3xy = 0
dx

In: ode2( (3*x*y + y^2) + (x^2 + x*y)*'diff(y,x) = 0; , y, x)


x 2 y 2 + 2x3 y
Out: =c
2

Neste exemplo a funo method retorna exact.


Para avaliar se o Maxima usou um fator integrante para transformar a equao
diferencial acima em uma equao exata, use-se a funo intfactor.
Neste caso a funo intfactor retorna x , ou seja, houve a necessidade de
multiplicar a equao diferencial por u ( x) = x .
A equao exata resolvida pelo Maxima ento foi
dy
(x 2 y + x3 ) + xy 2 + 3 x 2 y = 0 .
dx

2.3) Soluo de equaes diferenciais de segunda ordem:

Como j visto anteriormente, equaes de segunda ordem so aquelas em que o


maior grau de suas derivadas 2. Nesta seo veremos os diversos mtodos de resoluo
destas equaes, aplicados a cada tipo de equao.

Podemos ainda definir uma equao diferencial de segunda ordem pela forma:

d2y dy
2
= f t , y,
dt dx

Onde f alguma funo dada.

10
2.3.1) Equaes Homogneas com Coeficientes Constantes

Esse tipo de equao dado na forma:

ay+ by+cy = 0,

onde a, b e c so constantes.

O mtodo de resoluo de tais equaes bem simples, basta realizarmos a troca de


varivel y = e rt , aplicando as derivadas a cada fator e dividindo toda a equao por e rt ,
chegaremos a uma equao do segundo grau.

Seja r1 e r2 as razes dessa equao, ento teremos como soluo geral do problema:

y = c1e r1t + c 2 e r2t


Note que as constantes c1 e c2 podem ser encontradas dado um problema de valor
inicial.

Exemplo 4:

y ' '5 y '+3 y = 0

In: ode2('diff(y,x,2)-5*'diff(y,x)+6*y, y, x);

Out: y = c1e 3t + c 2 e 2t

Neste caso a funo method retorna constcoeff.

2.3.2) Razes Complexas da Equao Caracterstica

Este um caso particular de equao homognea com coeficientes constantes. Onde


obtemos razes complexas da equao de segundo grau, ou seja, b 4ac < 0 .

As razes da equao de segundo grau, neste caso, so dadas por

r1 = + i e r2 = i ,

onde i = 1 .

Neste problema, s soluo para a equao diferencial se apresenta na forma:

11
y = c1e t cos t + c 2 e t sent

Exemplo 5:

y ' '+ y '+5 y = 0

In: ode2('diff(y,x,2)+'diff(y,x)+5*y, y, x);

x x
19 x 19 x
Out: y = c1e 2 sen + c 2 e 2 cos
2 2

Neste caso a funo method retorna constcoeff.

2.3.3) Razes Repetidas

Este mais um caso particular de equao homognea com coeficientes constantes.


Onde as razes r1 e r2 da equao de segundo grau obtida da equao diferencial so iguais.

Neste problema, a soluo geral para a equao diferencial se apresenta na forma:

y = c1e r1t + c 2 xe r 2t = (c1 + c 2 x)e r1t

Exemplo 6:

y ' '+2 y '+ y = 0

In: ode2('diff(y,x,2)+2*'diff(y,x)+y, y, x);

Out: y = c1e x + c 2 xe x = (c1 + c 2 x )e x

Neste caso a funo method retorna constcoeff.

2.4) Equaes No-Homogneas;

2.4.1) Mtodo dos Coeficientes Indeterminados

Equaes no-homogneas so da forma

y ' '+ p (t ) y '+ q (t ) y = g (t ) ,

onde p, q e g so funes contnuas no intervalo considerado.

Toda equao no-homognea tem uma equao homognea associada, que da


forma:
12
y ' '+ p (t ) y '+ q (t ) y = 0

A soluo geral de uma equao no-homognea pode ser escrita na forma:

y = (t ) = c1 y1 (t ) + c 2 y 2 (t ) + Y (t ) ,

onde y1 e y2 formam um conjunto de solues da equao homognea associada e Y uma


soluo especfica da soluo da equao original (no-homognea).

O Maxima no utiliza este mtodo, por sua falta de generalidade.

2.4.2) Variao dos Parmetros

Este um mtodo mais geral para a soluo de equaes diferenciais no-


homogneas, j que no so necessrias hipteses detalhadas sobre a forma da soluo.

A idia bsica do mtodo da variao dos parmetros substituir as constantes c1 e


c2 por funes u1(t) e u2(t), respectivamente, determinando essas funes de forma que a
expresso resultante para a soluo geral seja:

y = u1 (t ) cos 2t + u 2 (t ) sen 2t

Do mtodo da variao de parmetros, conclui-se que uma soluo particular da


equao particular :

y 2 (t ) g (t ) y1 (t ) g (t )
Y (t ) = y1 (t ) dt + y 2 (t ) dt ,
W ( y1 , y 2 )(t ) W ( y1 , y 2 )(t )

onde W(y1,y2) o Wronskiano aplicado s funes y1(t) e y2(t).


Temos ainda que a soluo geral para :

y = c1 y1 (t ) + c 2 y 2 (t ) + Y (t )

Exemplo 7:

y ' '+4 y '+4 y = t 2 e 2 x

In: ode2('diff(y,x,2)+4*'diff(y,x)+4*y-(x^(-2))*exp(-2*x), y, x);

Out: y = (c 2 x + c1 )e 2 x e 2 x (log( x) + 1)

Podemos notar que

13
Y ( x) = e 2 x (log( x) + 1) , y1 ( x) = e 2 x , y 2 ( x) = xe 2 x .

Neste caso a funo method retorna variationofparameters.

2.5) Resolvendo sistema de EDOs:

O software Maxima possui um comando que facilita muito a resoluo de um


sistema de equaes diferenciais. Esse comando o desolve. Ele calcula o sistema
utilizando a transformada de La Place. um mtodo parecido a resoluo de um sistema
linear comum, mas utiliza a transformada de La Place para transformar um sistema de
EDOs em um de equaes algbricas e depois faz a inversa da transformada de La Place
para encontrar o resultado final.

Inserindo as equaes do sistema:

input: eq1: 'diff(f(x),x)='diff(g(x),x)+sin(x)


input: eq2: 'diff(g(x),x,2)='diff(f(x),x)-cos(x)

Colocando algumas condies iniciais.

Input: atvalue('diff(g(x),x),x=0,a)
Input: atvalue(f(x),x=0,1)

Resolvendo o sistema:

Input: desolve([%o1,%o2],[f(x),g(x)])
Output: [f(x) = a %e - a + 1, g(x) = cos(x) + a %e - a + g(0) - 1]

3) Apresentao de Campo de Direes e


Trajetrias
Campo de Direes uma ferramenta importante para a avaliao de equaes
diferenciais, pois do uma noo dos valores que as solues dessas equaes tendem. Eles
so compostos por vetores tangentes s solues nos pontos do plano xy.
Para desenhar campos de direes no Maxima, devemos primeiramente carregar a
biblioteca plotdf utilizando o comando load(plotdf);.
A funo que desenha os campos de direes plotdf, para utiliz-la, passamos
como argumento a funo

f ( x, y ) = dy
dx

*Note que tal funo s desenha campos de direes para equaes diferenciais
ordinrias de primeira ordem.

14
Exemplo 1: Traar o campo de direes para a equao diferencial

y '5 xy + 3 x + 1 = 0

dy
*Note que temos y ' = dx = 5 xy + 3x 1

plotdf(5*x*y + 3*x 1);

Agora veremos alguns dos argumentos da funo plotdf:

Argumento Parmetros Valor Padro Papel


xradius 1 (real) 0 Magnitude do eixo x.
yradius 1 (real) 0 Magnitude do eixo y.
xcenter 1 (real) 0 Centro do eixo x.
ycenter 1 (real) 0 Centro do eixo y.
tinitial 1 (real) 0 Valor inicial do parmetro t .
nsteps 1 (inteiro) 100 Nmero de passos p/ traar a trajetria.
tracjetory_at 2 (real, real) vazio Ponto em que traado a trajetria.
tstep 1 (real) 0,01 Valor adicionado a t a cada passo.

Exemplo 2: Traar o campo de direo de

y ' = 2 + x 0.5 y

mostrando a trajetria de uma possvel soluo.

15
*Note que traamos a soluo para o ponto (1, 1), alm de definir a magnitude dos
eixos x e y, o nmero de passos e o incremento de t.

Exemplo 3: Para o exemplo anterior, mostrar vrias solues.

Para mostrarmos diversas solues no Maxima, devemos traar o campo de


direes; clicando em Config podemos ver o campo Trajectory at, ao inserirmos os
valores da coordenada do ponto desejado mostramos solues adicionais, como mostrado
abaixo:

16
*As solues traadas acima correspondem aos pontos (-5,-5), (-2,-2), (0,0), (1,1),
(2,2), (3,3) e (4,4).

Exemplo 4: A acelerao (v' ) de um corpo em queda satisfaz a seguinte equao:

v' = 9.8 0.2v ,

onde v a velocidade do corpo.Desenhe o campo de direes para o problema dado, e


estime a velocidade limite de queda.

Primeiramente, desenhemos o campo de direes:

plotdf(9.8 0.2*y);

17
Olhando as solues traadas no campo de direes acima, notamos que para um
tempo muito longo, todas tendem a um nmero prximo de 50. Disto podemos estimar que
a velocidade limite de queda aproximadamente 50.
Analisando o caso v(0) = 49, notamos que a velocidade no se altera com o tempo,
ou seja, v(t) = 0 para qualquer t, disso podemos concluir que a velocidade limite de 49.

4) Soluo de equaes diferenciais por


transformada de Laplace

4.1) Definio da transformada de Laplace.

Seja uma funo f(t) definida no intervalo [0, ] . A Transformada de Laplace de


f (t ) em s :

18
quando a integral imprpria existe.
f (t ) a transformada inversa de Laplace de F (s ) , o que quer dizer que

L{ f (t )} = F ( s ) logo, L{1}{F ( s )} = f (t ) ;

Para resolver uma equao diferencial por La Place usamos o seguinte comando na
linha de comando do Maxima:laplace(g[t], t, s), g (t ) em que a funo a ser aplicada a
transformada.
J o comando para calcular a transformada inversa de La Place : ilt(f[s], s, t).

*Nota: Na verso que utilizamos do Maxima (0.6.6, win32) as funes de Transformada de


La Place j vinha pr-instaladas e no foi necessrio carregar nenhum pacote adicional.

Exemplo1: Encontre a transformada de La Place de:

(a) f (t ) = t 3
(b) f (t ) = sin(at )
(c) f (t ) = cos(at )

Soluo:
(a)usando o comando:
Input: laplace(t^3, s, t)
Output: t 2

(b) Input: laplace(sin(a*t), t, s)


Output: a/(s^2+a^2)

(c) Input: laplace(cos(a*t), t, s)


Output: s/(s^2+a^2)
4
Exemplo 2: Encontre a inversa da transformada de La Place de s +16

Vamos usar o comando ilt para calcular a inversa:

Input: ilt(4/(s^2 + 16), s, t)


Output: t 2

4.2) Resolvendo equaes diferenciais com transformada de


Laplace.

Transformada de La Place pode ser usada para resolver diversas equaes


diferenciais. Normalmente, quando usamos La Place para resolver uma equao diferencial
19
de uma funo y (t ) , calculamos a transformada de La Place para cada termo da equao
diferencial, depois resolvemos algebricamente a equao para a transformada de La Place
de y (t ), L{ y (t )} , e finalmente determinamos y (t ) calculando a transformada inversa de La
Place de L{ y (t )} . Muito confuso? Ento observe o exemplo abaixo:

Exemplo 3: Resolva a seguinte equao diferencial com valores iniciais pelo mtodo das
transformadas de La Place:

y ' ' (t ) + 2 y ' (t ) + 5 y (t ) = t , y (0) = 0, y" (0) =1

Usando o comando ode para resolver a equao diferencial:


Input: ode: 'diff(y(t), t, 2) + 5*'diff(y(t), t) + 4*y(t) = t;
Output: 'diff(y(t),t,2)+5*('diff(y(t),t,1))+4*y(t)=t

Inserindo as condies iniciais:

Input: atvalue(y(t), t=0, 0);


Output: 0

Input: atvalue('diff(y(t), t), t= 0, 0);


Output: 0

Calculando a transformada de La Place:

Input: lap_ode:laplace(ode,t,s);
Output:s^2*laplace(y(t),t,s)+5*s*laplace(y(t),t,s)+4*laplace(y(t),t,s)=1/
s^2

A equao diferencial original era uma equao diferencial, agora uma equao
algbrica com a varivel laplace(y(t), t, s). Para resolver basta usar o comando solve:

Input: sol: solve(%, 'laplace(y(t), t, s));


Output: [laplace(y(t),t,s)=1/(s^4+5*s^3+4*s^2)]

*Note que voc tem que escrever a desconhecida com um apstrofo. Sem o apstrofo,
Maxima tentar avaliar a expresso laplace(y(t), t, s).

Veja que a resposta uma lista com a soluo linear.

Agora, podemos aplicar a transformao inversa de La Place para que a equao.


algbrica com dependncia em s , volte a ser dependente de t . Para selecionar um item da
lista basta usar o comando map:

Input: map( lambda( [eq], ilt(eq, s, t)), sol)


Output: [y(t)=%e^(-t)/3-%e^(-4*t)/48+t/4-5/16]

20
Isso novamente uma lista de uma equao. Note que a inversa da transformao de La
Place foi aplicada a ambos os lados da equao:

Sobre o lado esquerdo, a aplicao da inversa da transformao de La Place na


transformada de La Place de y (t ) retorna y (t ) ;
Sobre o lado direito, a aplicao da inversa da transformao de La Place retorna a
soluo da equao diferencial dada.

5) Sries
Expanses em sries tm uma vasta aplicabilidade inserida no clculo, visto que
determinadas funes e suas propriedades continuidade, regras de derivao, integrao
dentre outras operaes podem ser estudadas a fundo neste contexto. Temos ainda uma
outra abordagem neste sentido, a Teoria dos Nmeros nmeros primos, irracionais,
transcendentes, as constantes e e etc, esses tpicos tambm permitem um estudo com
base em sries. No podemos deixar de citar claro, uma funcionalidade bastante til das
sries, mais especificamente, sries de potncias, estas podem ser usadas como um mtodo
alternativo para resoluo de equaes diferenciais.

O Maxima disponibiliza vrias funes para o trato com expresses em sries, em


especial a srie de Taylor. Vejamos algumas delas pertinentes ao nosso estudo:

5.1) Funo sum( ):

- Dado uma determinada expanso em srie, converte esta em somatrio.

Sintaxe:

sum (expresso, varivel, incio, fim)

Exemplo 1:

21
5.2) Funo taylor( ):

-Apresenta uma expanso em sries de Taylor para uma dada funo.

Sintaxe 2:

taylor (f(x), varivel, incio, fim)

Exemplo 3:

22
5.3) Funo diff( ):

-Diferencia no s expresses comuns como tambm expanses em srie.

Sintaxe:

diff (expresso, varivel, ordem da derivada)

Exemplo 4:

Dada a expresso %o44:

suas derivadas de segunda, terceira e quarta ordem so:

23
Embora o Maxima no nos fornea uma forma direta para calcular equaes
diferencias atravs das sries, temos uma funo que nos fornece a soluo da relao de
recorrncia.

5.4) Funo solve_rec( ):

-Resolve a relao de recorrncia no processo de resoluo de uma equao


diferencial por meio de sries de potncias.

*Nota: para a utilizao desta ferramenta necessrio carreg-la previamente com o auxlio
da funo load:

Temos:

Sintaxe:

solve_rec (relao de recorrncia, a[n])

Exemplo 5:

24
5.5)Resolvendo um EDO por sries:

O mtodo que utilizamos para resolver as EDOs por sries via um software
bastante distinto do mtodo analtico aprendido durante as aulas.
Iniciamos dizendo que queremos usar uma funo genrica y (t ) expandida usando
srie de Taylor.
sery: taylor(y(t), t,0,10)

Colocamos as condies iniciais.


Input: atvalue(y(t), t=0, 2)
Output: 2

continuando...

Input: atvalue('diff(y(t), t), t=0, 2)


Output: 2

Colocando EDO a ser resolvida

input: eq: 4*'diff(sery, t, 2) + 4*'diff(sery, t) + 37*sery = 0


output:
82+4*(at('diff(y(t),t,2),t=0))+(4*(at('diff(y(t),t,2),t=0))+4*(at('diff(y(t),t,3),t=0))+74)*t+((3
7*(at('diff(y(t),t,2),t=0))+4*(at('diff(y(t),t,3),t=0))+4*(at('diff(y(t),t,4),t=0)))*t^2)/2+((37*(a
t('diff(y(t),t,3),t=0))+4*(at('diff(y(t),t,4),t=0))+4*(at('diff(y(t),t,5),t=0)))*t^3)/6+((37*(at('di
ff(y(t),t,4),t=0))+4*(at('diff(y(t),t,5),t=0))+4*(at('diff(y(t),t,6),t=0)))*t^4)/24+((37*(at('diff(
y(t),t,5),t=0))+4*(at('diff(y(t),t,6),t=0))+4*(at('diff(y(t),t,7),t=0)))*t^5)/120+((37*(at('diff(y
(t),t,6),t=0))+4*(at('diff(y(t),t,7),t=0))+4*(at('diff(y(t),t,8),t=0)))*t^6)/720+((37*(at('diff(y(t
),t,7),t=0))+4*(at('diff(y(t),t,8),t=0))+4*(at('diff(y(t),t,9),t=0)))*t^7)/5040+((37*(at('diff(y(t
),t,8),t=0))+4*(at('diff(y(t),t,9),t=0))+4*(at('diff(y(t),t,10),t=0)))*t^8)/40320+((37*(at('diff(
25
y(t),t,9),t=0))+4*(at('diff(y(t),t,10),t=0)))*t^9)/362880+(37*(at('diff(y(t),t,10),t=0))*t^10)/3
628800+...=0

igualamos em zero cada coeficiente, j que sabemos que duas sries de potncia so iguais
somente se ambos tiverem coeficientes iguais.
input: diff_eq1: 82 + 4*(at('diff(y(t),t,2),t=0))=0

input: diff_eq2:
(4*(at('diff(y(t),t,2),t=0))+4*(at('diff(y(t),t,3),t=0))+74)=0

input: diff_eq3:
(37*(at('diff(y(t),t,2),t=0))+4*(at('diff(y(t),t,3),t=0))+4*(at('diff(y(t
),t,4),t=0)))/2=0

input: diff_eq4:
(37*(at('diff(y(t),t,3),t=0))+4*(at('diff(y(t),t,4),t=0))+4*(at('diff(y(t
),t,5),t=0)))/6=0

input:
diff_eq5:(37*(at('diff(y(t),t,4),t=0))+4*(at('diff(y(t),t,5),t=0))+4*(at(
'diff(y(t),t,6),t=0)))/24=0

input:
diff_eq6:(37*(at('diff(y(t),t,5),t=0))+4*(at('diff(y(t),t,6),t=0))+4*(at(
'diff(y(t),t,7),t=0)))/120=0

input:
diff_eq7:(37*(at('diff(y(t),t,6),t=0))+4*(at('diff(y(t),t,7),t=0))+4*(at(
'diff(y(t),t,8),t=0)))/720=0

input:
diff_eq8:(37*(at('diff(y(t),t,7),t=0))+4*(at('diff(y(t),t,8),t=0))+4*(at(
'diff(y(t),t,9),t=0)))/5040=0

input:
diff_eq9:(37*(at('diff(y(t),t,8),t=0))+4*(at('diff(y(t),t,9),t=0))+4*(at(
'diff(y(t),t,10),t=0)))/40320=0

input:
diff_eq10:(37*(at('diff(y(t),t,9),t=0))+4*(at('diff(y(t),t,10),t=0)))/
362880=0

input: diff_eq11:37*(at('diff(y(t),t,10),t=0))/ 3628800=0

transformando em sistema as equaes j inseridas.

ode_system: [diff_eq1, diff_eq2, diff_eq3, diff_eq4, diff_eq5, diff_eq6,


diff_eq7, diff_eq8, diff_eq9, diff_eq10, diff_eq11]

Resolvendo cada equao do sistema e substituindo na equao abaixo.

*Nota: inicialmente usaramos apenas um comando solve com 12 parmetros que


incluiriam as equaes diferenciais, mas a verso do Maxima est com problemas nesse
aspecto e apenas devolve uma lista vazia.
26
Input: solve(diff_eq1,[y(t)])
Input: solve(diff_eq2,[y(t)])
Input: solve(diff_eq3,[y(t)])
Input: solve(diff_eq4,[y(t)])
Input: solve(diff_eq5,[y(t)])
Input: solve(diff_eq6,[y(t)])
Input: solve(diff_eq7,[y(t)])
Input: solve(diff_eq8,[y(t)])
Input: solve(diff_eq9,[y(t)])
Input: solve(diff_eq10,[y(t)])
Input: solve(diff_eq11,[y(t)])

e substituindo os 11 valores de y(t) na EDO principal, temos a soluo em


srie aproximada da equao:

y(t) = 2 + 2x + 41*x^2/4 + x^3/3 + 1501*x^4/192 1649*x^5/960


48941*x^6/23040 + 54977*x^7/80640 + 1371001*x^8/5160960
5439299*x^9/46448640 28969841*x^10/1857945600

6) Osciladores amortecidos:

27
Figura 1.00 Oscilador Harmnico Amortecido

A figura 1.00 mostra o sistema de suspenso de um automvel. Dentro da mola


temos um amortecedor, isto , um cilindro cheio de leo, que produz uma fora oposta ao
movimento, diretamente proporcional velocidade:

Fv = av ,

onde a uma constante.


Temos a equao de acelerao do sistema dada por:

.. k
y= y (1.0)
m

Fv
A equao de movimento obtm-se subtraindo no lado direito da equao (1.0).
m
Desse modo, obtemos a equao diferencial do oscilador harmnico amortecido:

y' + by + wy = 0 (1.1)

a
onde b = .
m
Trata-se de uma equao linear, de segunda ordem, que pode ser resolvida
analiticamente, no Maxima da seguinte forma:
Usando o comando ode2 do Maxima.

(%i1) eq2: diff(y,t,2) + b*diff(y,t) + w2*y = 0$


(%i2) ode2(eq2, y, t);

A expresso (2 w b)(2 w + b) positivo, negativo, ou zero?

Para casos em particular, ou seja, se conhecermos as constantes de amortecimento


(b) de um sistema podemos resolv-lo dessa forma com o programa Maxima.
Obtm-se 3 tipos de solues, segundo (2wb) seja nula, positiva ou negativa. O
lado direito da figura 1.00 mostra os trs tipos de solues.

Quando b < 2w, dizemos que o amortecimento fraco, e a soluo uma


funo que oscila, mas com amplitude que decresce rapidamente.

O caso b = 2w designado de amortecimento crtico e conduz a uma soluo


que se aproxima decresce rapidamente para y = 0 (com algumas condies
iniciais, y pode chegar a mudar de sinal antes de se aproximar para zero).

28
Finalmente, b > 2w corresponde ao caso de sobre-amortecimento
(amortecimento forte), em que y decresce lentamente para zero.
Um oscilador real tem sempre um termo de amortecimento devido ao atrito com o
ar. O que acontece que o amortecimento pode ser muito fraco, o que faz com que a
amplitude das oscilaes diminua lentamente. Assim, a equao 1.1 mais realista do que
a equao 1.2 abaixo, que nada mais do que a equao 1.0 evidenciando as constantes de
forma positiva.

..
y =2 y (1.2)

onde
= k
m (1.3)

O respectivo sistema autnomo de primeira ordem :


.
x = x bx
. (1.4)
y = x

A Figura 1.10 mostra a evoluo do sistema, no espao de fase (x, y) e no domnio


do tempo:

Figura 1.10 - Evoluo do Oscilador Harmnico com amortecimento Fraco.

No caso do uso de amortecedores em automvel, para que o carro no oscile cada


vez que passe sobre um obstculo, os amortecedores so desenhados de forma a produzirem
amortecimento crtico ou ligeiramente forte.
Devido ao uso continuo e com o passar do tempo ocorre um processo de desgaste, o
leo do amortecedor comea a perder presso e quando o sistema entra no regime de
amortecimento fraco, o carro oscila quando empurramos a parte posterior do veculo para
baixo, caracterstica que nos indica que precisamos substituir os amortecedores.

29
7) Funo Degrau ou Funo de Heaviside

7.1) Definio:

A funo degrau, ou funo de Heaviside, uma funo descontnua, que tambm


conhecida como funo degrau unitrio, pode ser definida por

0, se t < 0;
u c(t ) =
1, se t 0;

O software Maxima no indicado para trabalhar com funo degrau porque


aprensenta falhas.Apesar da funo Degrau Unitrio estar contida em sua biblioteca, no
possvel traar o grfico da funo, nem calcular sua tranformada de Laplace; Sendo assim,
usaremos o software Mathematica, que tem um layout parecido com o Mxima, para
fazermos os grficos e calcular transformadas de La Place.
A funo degrau unitrio no software Mathematica implementada como
UnitStep[x]. O grfico da funo degrau feito abaixo.

Sua transformada de La Place

30
e cs
L{ uc (t)}= , s>0 ,
s

Demonstrao:

e cs
L{uc (t )} = e st uc (t ) dt = e st dt = , s>0
0 c s

-Exemplos de uso do software para resoluo de problemas com funo degrau:

Exemplo 1: Esboce o grfico da funo f (t-).uc(t) onde f(t) = t .

Exemplo 2: Resolva a equao y- 2y+ y = u(t)-u2(t)

31
8) Bibliografia
8.1)Sites:

http://maxima.sourceforge.net/
32
http://pt.wikipedia.org/wiki/Maxima
http://maxima.sourceforge.net/docs/manual/pt/maxima.html
http://maxima.sourceforge.net/docs/manual/pt/maxima_1.html#SEC1
http://sourceforge.net/project/showfiles.php?group_id=4933
http://www.math.utexas.edu/pipermail/maxima/2004/007034.html

8.2) Livros:

Classical dynamics of particles and systems (Thornton & Marion, 2004).

Jaime E. Villate - Introduo aos Sistemas Dinmicos Fac. de Engenharia, Universidade


do Porto,2006;

Willian E. Boyce e Richard C. DiPrima - "Equaes Diferenciais Elementares e


Problemas de Valores de Contorno, LTC (7 edio, 2002);

George F. Simmons - "Clculo com Geometria Analtica, traduo - Seiji , Rodney e


Slvio , MacGraw-Hill Ltda (1 edio,1988).

33

Potrebbero piacerti anche