Exercícios Resolvidos de Equações Diferenciais Ordinárias (EDO)

Ver Teoria

Enunciado

Utilize um método de Runge-Kutta explícito para aproximar y ( 2 ) , sabendo que

Passo 1

O exercício nos dá uma EDO de primeira ordem e uma condição inicial: y ( 1 ) = 2 . Ele pede para encontrarmos y ( 2 ) usando um método de Runge-Kutta explícito.

Para encontrarmos y ( 2 ) , precisamos solucionar a EDO para encontrar y ( x ) . Como o exercício pede para usarmos um método de Runge-Kutta explícito, podemos usar a função o d e 45 do MATLAB, que resolve EDOs de primeira ordem usando um método explícito de Runge-Kutta.

Como temos uma condição inicial em x 0 = 1 ( y ( 1 ) = 2 ) e o exercício pede para encontrarmos y ( 2 ) , temos que x f = 2 e nosso intervalo de integração vai ser x i n t = x 0 x f = 1 2 .

Resumindo, neste exercício, usaremos a função o d e 45 para resolver a EDO e então encontrar y ( 2 ) .

Passo 2

A primeira coisa que devemos fazer é rearranjar os termos da EDO do enunciado:

y y ' - 2 x = 0

Para que ela fique no formato:

y ' = d y d x = g ( x , y )

Reorganizando os termos, temos:

y ' = 2 x y

É a EDO neste formato que usaremos na função o d e 45 do MATLAB.

Passo 3

Vamos relembrar a função o d e 45 , para vermos o que entraremos no MATLAB. A função o d e 45 possui a seguinte estrutura:

[ x , y ]   =   o d e 45 ( E D O _ f u n , x _ i n t , y 0 )

Ela exige três entradas:

  • E D O _ f u n : uma função representando a EDO de primeira ordem y ' = g ( x , y ) . Neste exercício, E D O _ f u n é a EDO y ' = g x , y = 2 x y ;
  • x _ i n t : intervalo de integração, normalmente no formato [ x 0   x f ] : o intervalo começa em x 0 e termina em x f . Neste exercício, x 0 = 1 e x f = 2 , logo, x _ i n t = 1 2 ;
  • y 0 : condição inicial de y = f ( x ) em x 0 = 1 . Neste exercício, y 0 = 2 .

A fnção o d e 45 nos dá duas saídas: um vetor com valores de x (começando em x 0 = 1 e terminando em x f = 2 , correspondendo ao nosso intervalo de integração) e outro com os valores de y (iniciando em y 0 = 2 e terminando no valor de y correspondente a x f ), representando a solução da EDO. Em outras palavras, 𝑜𝑑𝑒45 nos retorna os pontos que representam a função y = f ( x ) para o intervalo de integração x _ i n t .

Crie um script novo no MATLAB para criarmos uma função com a EDO do enunciado. Nesse script, digite as linhas de código:

Com estas linhas de código, é criada a função E D O _ e x 4 , representando a EDO do enunciado. Ela recebe valores de x e y e retorna a derivada d y .

Após criar a função E D O _ e x 4 , abra um novo script para implementar a função o d e 45 . Neste script, digite as linhas de código:

Na primeira linha, entramos com o intervalo de integração x _ i n t = 1 2 .

Na segunda linha, entramos com o valor inicial y 0 = 2 .

Na terceira linha, entramos com a função o d e 45 para encontrar uma solução da EDO. Repare que, no lugar de 𝐸𝐷𝑂_𝑓𝑢𝑛, coloquei um string com o nome da função que representa a EDO: ' E D O _ e x 4 ’. Não esqueça de pôr o nome entre aspas simples, como no print acima.

A solução da EDO é dada pelos vetores x e y , saídas de o d e 45 .

Passo 4

Para encontrarmos y ( 2 ) , temos que olhar o último elemento do vetor y , pois ele corresponde ao valor da função y = f ( x ) no final do intervalo x i n t = 1 2 .

No mesmo script onde implementamos a função o d e 45 , vamos adicionar o comando:

Com este comando, o último elemento do vetor y , indicado pelo índice e n d , é armazenado na variável y _ f . Portanto, y _ f = y ( 2 ) , que é a resposta do exercício.

Rodando o programa, temos:

Resposta

y ( 2 ) ≈ 3,1623