Sistemas de equações diferenciais e equações de segunda ordem

Soluções exatas, numéricas e por séries de sistemas e equações de segunda ordem

Dada a equação diferencial de segunda ordem y'' = f(x,y,y') com as condições iniciais y(a) = b e y'(a) = c podemos escrever esta equação no MapleV com o comando do operador de segunda ordem D(D(y)) = (D@@2)(y) ou com o comando da derivada repetida diff(y(x),x,x) = diff(y(x), x$2) . A sintaxe do comando é

Equação := { (D@@2)(y)(x)= f(x, y,D(y)(x) ) , y(a)=b , D(y)(a)=c}

Como no caso de equação de primeira ordem, os vários tipos de solução são obtidos com o comando dsolve especificando-se o tipo com type = que pode ser ( exact (defaut), numeric , series ) .

Sol := dsolve(Equação, y(x), type=opção, OutrasOpções = )

A saída deste comando é uma igualdade ( o Maple não considera como uma função) que pode depender de uma ou duas constantes se as duas condições iniciais não forem dadas

Sol:= y(x)=F(x,_C1,_C2)

No caso de equações lineares podemos optar output = basis para exibir uma base de soluções da equação homogênea juntamente com uma solução particular da equação não-homogênea. Neste caso a saída é uma lista da forma

Sol := [ [b1(x), b2(x)], p(x)]

Dado um sistema de primeira ordem x'=f(x,y,t), y'=g(x,y,t) nas variáveis dependente (x(t),y(t)), com as condições iniciais (opcionais) x(a) = b e y(a) = c podemos escrever o sistema na forma

Sistema := { D(x)(t)=f(x,y,t), D(y)(t)=g(x,y,t), x(a)=b , y(a)=c }

Resolvemos este sistema com desolve do seguinte modo

Lista := dsolve(Sistema, {x(t),y(t)}, type= opção, OutrasOpções = ...)

O retorno é uma lista com duas igualdades que podem depender de duas constantes

Lista := { x(t) = F( t,_C1,_C2) , y(t)= G(t,_C1,_C2) }

Obsevamos que, no caso de um sistema linear, o comando output = basis não funciona do mesmo modo que para equações de segunda ordem

Exemplo 1: Vamos resolver a equação do oscilador harmônico y'' + [Maple Math] y = 0 sem condições iniciais

> restart;

> Oscilador_Harm := (D@@2)(y)(x)+(omega^2) * y(x); a equação ficará =0 por default

[Maple Math]

> dsolve(Oscilador_Harm, y(x)); dá a soluçao geral

[Maple Math]

> sol := dsolve(Oscilador_Harm, y(x), output=basis); dá uma base de soluções

[Maple Math]

> Oscilador_Forc := Oscilador_Harm = cos(omega*x); oscilador com termo forçante ressonante

[Maple Math]

> Sol := dsolve(Oscilador_Forc, y(x), output=basis); dá uma base da equação homogênea mais uma solução particular

[Maple Math]

Exemplo 2 : Considere o sistema de equações diferenciais lineares x' = x+y , y'=y . A seguir vamos

a) calcular a solução geral deste sistema

b) achar uma base de soluções para este sistema,

c) resolver este sistema por séries

d) calcular uma solução numerica

> Sist1 := { D(x)(t) = x(t) + y(t), D(y)(t) = y(t)}; define o sistema

[Maple Math]

> Lis1 := dsolve(Sist1, {x(t), y(t)}); dá a solução geral do sistema

[Maple Math]

Ao resolver o sistema na forma geral, o Maple não fornece uma base de soluções como nas equações de segunda ordem. Podemos dar esta base claculando-se duas soluções particualres com condições iniciais x(0)=1, y(0)=0 e x(0)=0, y(0)=1

> Sist2 := { D(x)(t)=x(t) + y(t), D(y)(t)=y(t), x(0)=1,y(0)=0};

[Maple Math]

> Lis2 := dsolve(Sist2, {x(t),y(t)});

[Maple Math]

> Sist3 := { D(x)(t)=x(t)+y(t), D(y)(t)=y(t), x(0)=0, y(0)=1};

[Maple Math]

> Lis3 := dsolve(Sist3, {x(t), y(t)});

[Maple Math]

A seguir calculamos as soluções de Sist3 por séries e uma solução numérica :

> Lis4 := dsolve(Sist3, {x(t), y(t)}, series ); calcula a solução por séries

[Maple Math]
[Maple Math]

> Lista5 := dsolve(Sist3, {x(t), y(t)}, numeric); calcula a solução numérica numa lista de pontos pelo método method=rkf45 ( Fehlberg fourth-fifth order Runge-Kutta method) que é o default.

[Maple Math]

> Lista5(1); retorna o valor numérico no ponto t=1 , x(1)=e, y(1)=e

[Maple Math]

> Lista5(2);

[Maple Math]

Na secção sobre soluções numéricas de equações de primeira ordem encontramos outros métodos e também o modo de plotar as soluções numéricas

Exemplo 4. A equação de Bessel de ordem 1 é dada por [Maple Math] y'' +x y' + ( [Maple Math] - 1)y =0 . Vamos resolver esta equação com a condição inicial y(0)=1 , y'(0)=0 ,de forma exata, por séries e numericamente

> bessel1 := x^2*(D@@2)(y)(x)+x*D(y)(x)+(x^2-1)*y(x) = 0;

[Maple Math]

> Exa := dsolve({bessel1, y(1)=1, D(y)(1)=0}, y(x));

[Maple Math]
[Maple Math]

a solução exata aparece em termos das funções de Bessel da biblioteca do Maple

> Ser := dsolve({bessel1, y(1)=1, D(y)(1)=0}, y(x), series);

[Maple Math]

> LLis := dsolve({bessel1, y(1)=1, D(y)(1)=0}, y(x), numeric);

[Maple Math]

> LLis(1.3); avalia a solução numérica no ponto x=1.3

[Maple Math]

>

Voltar para o Sumário