Enunciado

Em cada um dos problemas de 1 a 6, encontre valores aproximados da solução do problema de valor inicial dado em t   =   0,1 ;   0,2 ;   0,3   e 0,4 . Compare os resultados com os obtidos usando outros métodos e com a solução exata (se disponível).

(a) Useo método de Runge-Kutta com h   =   0,1 .

(b) Useo método de Runge-Kutta com h   =   0,05 .

2. y ' = 5 t - 3 y ,     y 0 = 2

Passo 1

Bora lá pro nosso primeiro probleminha sobre método de R u n g e - K u t t a .

Olha só! A nossa f ( t , y ) já sabemos que é dada por...

f t , y = 5 t - 3 y

E sabemos também das seguintes condições:

t n = t 0 + n h

y 0 = 1

Sabendo disso, é uma boa utilizarmos o método de 4 ª ordem pra resolver esse nosso problema. Assim, iremos obter valores mais aproximados em cada ponto pedido.

A nossa iteração no método de R u n g e - K u t t a de 2 ª   ordem é dada por...

y n + 1 = y n + 1 6 k 1 + 2 k 2 + 2 k 3 + k 4

Agora presta atenção! Como o objetivo é resolver esse problema computacionalmente, o que estamos procurando aqui é fórmulas pra colocarmos em nosso código. De preferência, que estejam em função de h e das condições fornecidas pelo enunciado.

Disso isso! Bora pro que interessa! Vamos obter k 1 ...

k 1 = h f ( t n , y n )

k 1 = h ( 5 t n - 3 y n )

k 1 = h ( 5 n h - 3 y n )

Depois, bora descobrir k 2 , que é dado por...

k 2 = h f t n + 1 2 h , y n + k 1 2

k 2 = h 5 t n + 1 2 h - 3 y n + k 1 2

k 2 = h 5 n h + 1 2 h - 3 y n + k 1 2

Em seguida, bora partir pra obtenção de k 3   , que é igual à...

k 3 = h f t n + 1 2 h , y n + k 2 2

k 3 = h 5 t n + 1 2 h - 3 y n + k 2 2

k 3 = h 5 n h + 1 2 h - 3 y n + k 2 2

E finalmente, vamos obter k 4 ...

k 4 = h f t n + h , y n + k 3

k 4 = h 5 n h + h - 3 y n + k 3

Pronto! Agora vamos pegar esses dados pra usar em nossa resolução computacional.

Passo 2

Para isso, vamos usar a seguinte estrutura abaixo em forma de algoritmo...

P a s s o   1 : D e f i n i r   c a d a   f u n ç ã o   d e   i t e r a ç ã o   k n

P a s s o   2 : D e f i n i r   o   t a m a n h o   d o   p a s s o   e   d o   v a l o r   i n i c i a l   y ( 0 )

P a s s o   3 : F a z e r   n   r e c e b e r   0 ,   p a r a   q u e   e l e   v e n h a   a   s e r   i n c r e m e n t a d o   e m   n o s s o s   c ó d i g o

P a s s o   4 : P a r a   i   d e   1   a t é   u m   t a m a n h o   T A M   d e   0 . 4 h   f a ç a  

P a s s o   5 :  

k 1 = h ( 5 n h - 3 y n )

k 2 = h 5 n h + 1 2 h - 3 y n + k 1 2

k 3 = h 5 n h + 1 2 h - 3 y n + k 2 2

k 4 = h 5 n h + h - 3 y n + k 3

y n + 1 = y n + 1 6 k 1 + 2 k 2 + 2 k 3 + k 4

i = i + 1  

n = n + 1  

P a s s o   6 : E s c r e v a   ( y n + 1 )

P a s s o   7 : F i m

Captou a mensagem!?

Pois bora em frente!

Passo 3

a) Desse modo, utilizando uma linguagem de programação qualquer, C ou P y t h o n ... Você é quem sabe! É possível determinar o que a gente quer. No caso, bora usar a linguagem C ...

Olha só! O seguinte código abaixo foi feito...

O legal é que esse código vai ser servir pra quase todas as questões desse seção! Só é preciso alterar um detalhe aqui e outro acolá!

Bom! Compilando ele, num total de iterações ( T A M ) igual à...

T A M = 0 . 4 h = 0 . 4 0.1 = 4

Obtemos os seguintes valores da figura abaixo...

E de quebra, obtemos a seguinte tabela:

Passo 4

b) Já nessa letra, só basta alterar duas coisas no código confeccional. Primeiro, o valor de h   que vai ser igual a 0,05 .

E depois o tamanho T A M de iterações, que vai valer...

T A M = 0 . 4 0 . 05 = 8

Ah! Esqueci de falar! É legal botar um condicional em nosso código pra ele p r i n t a r apenas os valores que pede o enunciado. Podemos fazer isso, colocando um " i f " pra que toda vez que a divisão de i por 2 for 0 , o programa mostrar.

Desse modo, compilando o código com essas alterações... Obtemos os valores expostos na imagem abaixo:

Passo 5

E pra finalizar... Colocando a E D O em um software qualquer, tipo S y m b o l a b , obtemos que a solução exata dela é...

y = 1 ( 2 y + 5 t ) 5 ( t - y ) 2

Cuja solução exata pode ser aproximada para

y = 2 512 ≈ 0,00276

Ou seja, nossa iterações não foram suficientes pra se obter um valor que fosse próximo da solução exata.

Resposta

a)

b)

Ver Outros Exercícios desse livro

Exercícios de Livros Relacionados

Verifique se as funções dadas são soluções da equação diferencial, e determine seu wronskiano. x y ' ' ' - y ' ' = 0 ; 1 , x , x 3
Seja L o operador diferencial linear definido por L y = a 0 y n + a 1 y n - 1 + … + a n y , Em que a 0 ,a 1 , … ,a n são constantes reais.(a) Encontre L [ t n ] .(b) Encontre L [ e r t ] .(c) Determin
(a) Mostre que as funções f t = t 2 t e g t = t 3 são linearmente dependentes em 0t1 e em - 1t0 .(b) Mostre que f ( t ) e g ( t ) são linearmente independentes em - 1t1 .(c) Mostre que W ( f , g ) ( t
Verifique que o operador diferencial definido por L y = y n + p 1 t y n - 1 + … + p n t y É um operador diferencial linear. Ou seja, mostre que L c 1 y 1 + c 2 y 2 = c 1 L y 1 + c 2 L y 2 , Em que y 1
Verifique se as funções dadas são soluções da equação diferencial, e determine seu wronskiano. x 3 y ' ' ' + x 2 y ' ' - 2 x y ' + 2 y = 0 ; x , x 2 , 1 / x