Você está na página 1de 30

EQUAÇÕES DIFERENÇIAIS ORDINÁRIAS

Tema III.Equações Diferenciais Ordinárias (EDO).


Sumário.
1. Introdução.
2. Equações diferenciais de primeira ordem.
3. Sistemas de equações diferenciais.
4. Equações diferenciais de ordem superior.
Em todos os casos utiliza-se o Método de Euler, de Runge Kutta de

segunda ordem (RK2) e de Runge Kutta de quarta ordem (RK4).


1. Introdução.
Começamos com algumas definições básicas.
Definição. Equação Diferencial.
Chama-se Equação Diferencial a toda equação na qual aparecem
derivadas ou diferenciais de una variável desconhecida (incógnita da
equação).
EQUAÇÕES DIFERENÇIAIS
Classificação.
Classificam-se em:
1. Equações diferenciais ordinárias (EDO).
Envolvem derivadas de funções de uma variável independente.
2. Equações em derivadas parciais (EDP).
Envolvem derivadas de funções de mais de uma variável
independente.
Em esta disciplina trabalha-se somente com Equações diferenciais
ordinárias (EDO).
Ordem de uma equação diferencial.
É o número associado à derivada de maior ordem que aparece na
equação diferencial.
Solução.
A solução de uma Equação Diferencial é uma função que não contem
derivadas nem diferenciais, e que satisfaz a equação (ou seja, uma
função que substituída na equação, transforma-a numa identidade).
EQUAÇÕES DIFERENÇIAIS
As soluções podem ser:
1. Soluções gerais.
Estas soluções apresentam um número de constantes arbitrárias que
coincidem com a ordem da equação.
2. Soluções particulares.
Obtém-se da solução geral, ajustando as condições iniciais ou de
contorno.
Problema de Cauchy.
Chama-se Problema de Cauchy a toda equação diferencial com
condições iniciais. O número de condições coincide com a ordem da
equação diferencial.

{
Por exemplo: 𝑑𝑦
=𝑦
𝑑𝑡
𝑦 ( 0 ) =2
é um Problema de Cauchy de primeira ordem.
EQUAÇÕES DIFERENÇIAIS
1. Equações diferenciais ordinárias de primeira ordem.
Em Análise Matemática se desenvolveram métodos de solução das
equações diferenciais, a partir dos quais podem-se obter as funções
(de variável contínua), que são solução das equações diferenciais.
Em esta disciplina trabalharemos para obter soluções discretas às
equações diferenciais. Para isso desenvolveremos algoritmos para
cada um dos tipos de equações que estudaremos.

Começaremos a resolução de Problemas de Cauchy de primeira ordem,


que podem ser apresentados da forma seguinte:

{
𝑑𝑦
= 𝑓 (𝑡 , 𝑦 )
𝑑𝑡
𝑦 ( 𝑡 0 ) =𝑦 0
EQUAÇÕES DIFERENÇIAIS
Metodo de Euler.
Para resoMétodo de lver numericamente um Problema de Cauchy de
primeira ordem, é preciso discretizar a equação diferencial. Para isso,
temos de discretizar os diferenciais e , para o qual usaremos o
conceito de diferenças finitas:
𝑑𝑦 ≈ ∆ 𝑦 =𝑦 𝑖+1 − 𝑦 𝑖
𝑑 𝑡 ≈ ∆ 𝑡 =𝑡 𝑖+1 − 𝑡 𝑖
Se denotamos como , então:

𝑡 𝑖 +1 −𝑡 𝑖=h ou: (1)

Se discretiza também a função : 𝑓 (𝑡 , 𝑦 ) ≈ 𝑓 h ( 𝑡 𝑖 , 𝑦 𝑖 )


EQUAÇÕES DIFERENÇIAIS

{
Logo o Problema de Cauchy da forma: 𝑑𝑦
= 𝑓 (𝑡 , 𝑦 )
𝑑𝑡
𝑦 ( 𝑡 0 )= 𝑦 0
∆𝑦
Transforma-se em: = 𝑓 h (𝑡 𝑖 , 𝑦𝑖)
∆𝑡
Substituindo e :
𝑦 𝑖+1 − 𝑦 𝑖 𝑦 𝑖+1 − 𝑦 𝑖
𝑡 𝑖+1 −𝑡 𝑖
= 𝑓 h ( 𝑡𝑖 , 𝑦 𝑖 ) ⇔ h
= 𝑓 h ( 𝑡𝑖 , 𝑦 𝑖 )

e portanto:

As equações (1) e (2) são chamadas as Equações de Euler para resolver


Problemas de Cauchy, em que: .
EQUAÇÕES DIFERENÇIAIS
Exercício 1.
Resolva o seguinte Problema de Cauchy usando o Método de Euler,

{
com , no intervalo . 𝑑𝑦
=𝑡 − 2 𝑦
𝑑𝑡
𝑦 ( 0 )=3
Observação.
A condição de paragem é estabelecida pelo valor final do intervalo
dado
no exercício, isto é, quando for igual ao valor final do intervalo. Neste
exercício,
Solução: paramos quando
𝑡 𝑖 +1=𝑡 𝑖 + h
.

Para
𝑡 1=𝑡 0 +h=0+ 0.2=0.2
EQUAÇÕES DIFERENÇIAIS
Para
𝑡 2 =𝑡 1 +h=0.2+0.2=0.4

𝑦 2 =𝑦 1 +h 𝑓 h ( 𝑡1 , 𝑦 1 ) ¿ 𝑦 1 +h ( 𝑡1 −2 𝑦 1) =1.8+0.2 ( 0.2−2 ( 1.8 )) =1.12


Para
𝑡 3 =𝑡 2 +h=0.4 +0.2=0.6

75
EQUAÇÕES DIFERENÇIAIS
Para
𝑡 4 =𝑡 3 +h=0.6+ 0.2=0.8

𝑦 4=𝑦3+h𝑓 h (𝑡 3,𝑦 3) ¿ 𝑦3+h (𝑡 3−2𝑦3)=¿0.75+0.2 (0.2 −2(0.75 ) = 0.57


Para
𝑡 5 =𝑡 4 +h=0.8+0.2=1

𝑦5=𝑦 4+h𝑓 h (𝑡 4 ,𝑦4 )¿ 𝑦4+h (𝑡 4 −2𝑦 4)=0.57+0.2( 0.2−2 ( 0.57) =0.50


0 3
Resposta: 0.2 1.80
A função solução do Problema de Cauchy, 0.4 1.12
usando o Método de Euler, é dada por a 0.6 0.75
tabela: 0.8 0.57
1 0.50
EQUAÇÕES DIFERENÇIAIS
Como se mostra na Figura, basicamente o método se encarrega de
aproximar a solução real por médio de una serie de segmentos de
recta.
3
Metodo de Euler
solucao analitica

2.5

1.5

0.5
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
EQUAÇÕES DIFERENÇIAIS
Análise do error pelo método de Euler.
A solução das equações diferenciais por métodos numéricos envolve
varios tipos de erros:

• Erro do método (Erro de Truncamiento Local e Global): este se


deve a que, como a aproximação de una curva mediante uma linha
recta não é exacta, comete-se un erro próprio do método. Nesse
caso, o erro é de primeira ordem - O(h1) .
• Local: É a diferença que se produz entre o valor real da função e o
aproximado mediante a recta tangente -en vez de moverse por a
curva- supondo que o punto desde o qual partimos -onde se cruzan
a curva real e a recta que a aproxima- não tem erro.
EQUAÇÕES DIFERENÇIAIS
• Propagado: Acumulação de erros por as aproximações produzidas
durante os pasos prévios. É dizer, já não é suposto que o ponto do
qual partimos - onde se cruzan a curva real e a recta que a
aproxima- não tem erro, senão que asumimos que dito erro existe
e que se propaga de passo em passo. Dita propagacão é, no peor
dos casos, linear.

• Redondeio/truncamiento: Resultado do número limite de


algaritmos significativas que pode reter um computador. Como o
número de dígitos utilizados para fazer os cálculos é finito e os
números representados pode que não sejam (ou seja, números com
infinita quantidade de dígitos). Ao limitar os números com infinita
quantidade de dígitos -mediante truncamiento ou redondeio- a
números com um número finito de dígitos, estamos cometendo
um erro extra.
EQUAÇÕES DIFERENÇIAIS
Uso de Matlab.
Script. Metodo de Euler. EDO de primeira ordem.

syms y real
se= dsolve(‘Dy=t−2*y, y(0)=3’)
subs(se,0);SE0=vpa(ans,5),subs(se,0.2);SE1=vpa(ans,5),subs(se,0.4);SE2=vpa(ans,5),
subs(se,0.6);SE3=vpa(ans,5), subs(se,0.8); SE4=vpa(ans,5), subs(se,1);SE5=vpa(ans,5)
≫ SE=[SE1;SE2;SE3;SE4;SE5;SE6];
≫plot(Resposta(:,1),Resposta(:,2),'g-',Resposta(:,1),Resposta(:,3),‘b-‘,
Resposta(:,1),SE,'r-'),legend(‘’Solução real,’Método de Euler’),grid
Exercício Proposto.
Resolva o seguinte Problema de Cauchy usando o Método de Euler,
com , no intervalo .

{
𝑑𝑦 𝑦
=𝑒 +𝑡
𝑑𝑡
𝑦 ( −1 ) =−2
EQUAÇÕES DIFERENÇIAIS
Devido a que a aproximação de uma curva por médio de una linha
recta não é exacta, se comete um error derivado do método. A este
erro se lhe conhece como erro de truncamento. Este error se pode
diminuir reduzindo o valor de , mas se terá um maior número de
cálculos y, portanto, um erro de redondeio muito mais alto.

Uma desvantagem fundamental dos métodos de Euler consiste em


que as ordens de precissão são baixas, o que implica que para manter
una precissão aceptável, requere-se um pequeno, o que aumenta o
tempo de cálculo e provoca erros de redondeio consideráveis. Os
métodos de Runge-Kutta tentam obter maior precissão, e ao mesmo
tempo evitam a necessidade de derivadas de ordem superior,
calculando a função em pntos selecionados de cada subintervalo.
Uma maior precissão ocasiona que os erros de redondeio decrezam
mais rápido ao reduzir .
EQUAÇÕES DIFERENÇIAIS
É por isso que devemos estudar outros métodos que permitam obter
valores mais próximos da solução exacta sem necessidade de
aumentar o número de passos. Em particular estudaremos os métodos
de Runge-Kutta.

Em Análise Numérica, os métodos de Runge-Kutta são um conjunto


de métodos genéricos iterativos, explícitos e implícitos, de resolução
numérica de equações diferenciais. Este conjunto de métodos foi
inicialmente desenvolvido por volta do ano 1900 por os matemáticos
C. Runge e M. W. Kutta.
EQUAÇÕES DIFERENÇIAIS
Método de Runge-Kutta de Segundo Orden
Em essencia, os métodos de Runge-Kutta são generalizções da
fórmula básica de Euler: em que o valor da função é substituido por
um promédio ponderado dos valores de no intervalo , é dizer:

𝒚 𝒊+𝟏= 𝒚 𝒊+ 𝒉 𝒇 ( 𝒘 𝟏 𝒌𝟏+𝟐 𝒌 𝟐+ ⋯+𝒘 𝒎 𝒌 𝒎 ) (𝟑)

Se define como ordem do método ao número m, é decir, a


quantidade de termos que se usam no promédio ponderado.

Runge-Kutta de primeira ordem.


Se , então toma-se e a fórmula (3) resulta:
EQUAÇÕES DIFERENÇIAIS
Igualando esta fórmula ao desenvolmimento de Taylor de ordem 1 da
função ao redor do ponto e calculando no ponto :

e tendo em conta que , resulta que , obtendo


assim a fórmula de Euler . Portanto, se diz também
que o método de Euler é um método de Runge Kutta de primeira
ordem.
Runge-Kutta de segunda ordem.
Agora se planteia, com , una fórmula do tipo:

onde
(7)
EQUAÇÕES DIFERENÇIAIS
Aplicando o desenvolvimento de Taylor de , podem-se determinar os
valores das constantes a, b, , . Como esse processo está fora dos
objectivos deste curso, vamos dar os valores desas constantes:
=1
1
a=𝑏=
2
substituindo em (7), obtemos a siguiente fórmula, do método de
Runge Kutta de orden 2 (RK-2):

(8)
1
𝒚 𝒊+𝟏= 𝒚 𝒊+ ( 𝒌𝟏 +𝒌𝟐 )
2
EQUAÇÕES DIFERENÇIAIS
Exercício 2.
Resolva o seguinte Problema de Cauchy usando o Método de Runge-Kutta de

{
segunda ordem, com , no intervalo .
𝑑𝑦
=𝑡 − 2 𝑦
𝑑𝑡
Solução: 𝑦 ( 0 )=3
𝑡 𝑖 +1=𝑡 𝑖 + h
.

1
𝑦 𝑖 +1= 𝑦 𝑖 + ( 𝑘1+𝑘2 )
2
Para
𝑡 1=𝑡 0 +h=0+ 0.2=0.2

68
=
EQUAÇÕES DIFERENÇIAIS
Para
𝑡 2 =𝑡 1 +h=0.2+0.2=0.4

=45

Para
6

26

=
EQUAÇÕES DIFERENÇIAIS
Para
8

15
=85

Para
𝑡 5 =𝑡 4 +h=0.8+0.2=¿

=68
=
EQUAÇÕES DIFERENÇIAIS
Resposta:
A função solução do Problema de Cauchy, usando o Método de
Runge Kutta de segunda ordem, é dada por a tabela:

0 3
0.2 2.06
0.4 1.45
0.6 1.07
0.8 0.85
1 0.72
EQUAÇÕES DIFERENÇIAIS
Uso de Matlab.
Script. Metodo de Runge-Kutta de segunda ordem.

≫ /2

syms y real
se= dsolve(‘Dy=t−2*y, y(0)=3’)
ezplot(se, [0 1], hold on, plot(Resposta(:,1),Resposta(:,2), 'r-‘),grid,
legend(‘Solução exacta’,’Método de Euler’)

Na representação gráfica pode observarse que a solução por este


método está mais próxima da solução exacta que a obtida pelo
método de Euler.
EQUAÇÕES DIFERENÇIAIS
t/2 + (13 exp(-2 t))/4 - 1/4

3 Solução exacta
Metod RK-2

2.5

1.5

0.5
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
t
EQUAÇÕES DIFERENÇIAIS
Exercício Proposto.
Resolva o seguinte Problema de Cauchy usando o Método de Runge
Kutta de segunda ordem, com , no intervalo .

{
𝑑𝑦
=𝑒 𝑦 +𝑡
𝑑𝑡
𝑦 ( −1 ) =−2
EQUAÇÕES DIFERENÇIAIS
Runge-Kutta de quarta ordem.
Se agora m = 4, se obtém, con un processo análogo, as seguintes
fórmulas, para i desde hasta :

(9)

𝒌 𝟏+𝟐 𝒌 𝟐+𝟐 𝒌𝟑 +𝒌 𝟒
𝒚 𝒊+𝟏= 𝒚 𝒊+
𝟔
Estas são as fórmulas correspondentes ao método de Runge Kutta de
orden 4 (RK-4).
EQUAÇÕES DIFERENÇIAIS
Este algoritmo es de uso extendido, e reconhecido como una valiosa
ferramenta de cálculo, por a boa aproximação que produz.

Se resolvemos o mesmo exemplo anterior, com os três métodos


podemos estabelecer uma comparação entre eles e com a solução
exacta, como pode-se observar no seguinte script em que se trabalha
com os três métodos simultaneamente.
EQUAÇÕES DIFERENÇIAIS
Uso de Matlab.
Script. Metodos de Euler, de Runge-Kutta de segunda ordem
e de Runge-Kutta de quarta ordem.
>> t=0; ye=3;h=0.2;yr2=3; yr4=3;Resposta=[t ye yr2 yr4];
>> ye=ye+h*(t-2*ye);K1=h*(t-2*yr2);K2=h*(t+h-2*(yr2+K1));yr2=yr2+
(K1+K2)/2;K1=h*(t-2*yr4);K2=h*(t+h/2-2*(yr4+K1/2));K3=h*(t+h/2-
2*(yr4+K2/2));K4=h*(t+h-2*(yr4+K3));yr4=yr4+(K1+2*K2+2*K3+K4)/
6;t=t+h;Resposta=[Resposta;t ye yr2 yr4];
>> syms y t real
>> se= dsolve('Dy=t-2*y, y(0)=3');
>> ezplot(se,[0 1]),hold on,
plot(Resposta(:,1),Resposta(:,2),'g-',Resposta(:,1),Resposta(:,3),'b-',
Resposta(:,1),Resposta(:,4),'r-'),grid,legend('Solução exacta','Metodo de Euler‘ ,
'Metodo RK2','Metodo RK4');
EQUAÇÕES DIFERENÇIAIS
t/2 + (13 exp(-2 t))/4 - 1/4

3 Solução exacta
Metodo Euler
Metodo RK2
Metodo RK4
2.5

1.5

0.5
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
t
EQUAÇÕES DIFERENÇIAIS
Pode observarse no gráfico, que a curva que melhor aproxima a
solução exacta é a obtida pelo método de RK-4, coincidindo
practicamente os valores de ambas nos nós de interpolação.

Você também pode gostar