Enunciado

Em cada um dos problemas de 7 a 12, encontre valores aproximados da solução do problema de valor inicial dado em t   =   0,5 ;   1,0 ;   1,5   e 2,0 . 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...

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   2.0 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 = 2 h = 2 0.1 = 20

É importante ressaltar que botamos um condicional em nosso código para que ele p r i n t e apenas os valores que pede o enunciado. Podemos fazer isso, colocando um " i f " para que toda vez que a divisão de i por 5 for 0 , o programa mostrar.

Voltando ao assunto da compilação! 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 = 2 0.05 = 40

Ah! Esqueci de falar! No condicional i f , dessa vez o nosso " i f " vai fazer com que toda vez que a divisão de i por 10 for 0 , o programa mostre o valor de y em j .

Desse modo, compilando o código com essas alterações... Obtemos o exposto 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

21 - Continuando o Problema 20, mostre que o ponto crítico ( 0,0 ) é(a)Assintoticamente estável, se q0 e p0 ;(b)Estável, se q0 e p = 0 ;(c)Instável, se q0 ou p0 .Os resultados dos Problemas 20 e 21 es
15 – d x d t = - 1 - 1 2 - 1 x + - 1 5
17 - A equação de movimento de um sistema mola-massa com amortecimento (veja a Seção 3.7) é m d 2 u d t 2 + c d u d t + k u = 0 em que m, c e k são positivos. Escreva essa equação de segunda ordem com
16 – d x d t = 0 - β δ 0 x + α - γ
10 - d x d t = 1 2 - 5 - 1 x