No método das diferenças finitas a gente substitui cada derivada por uma aproximação. Dividimos o intervalo cujos extremos são os pontos das condições de contorno, em partes iguais de tamanho . Ou seja:
No final das contas o método vai nos dar uma aproximação do valor de para cada em que dividimos o intervalo . Fazendo algumas modificações na série e substituindo por e brincando um pouco com os números encontramos isso aqui quando queremos uma diferença finita ascendente, que mostra a derivada primeira de uma função aproximada por:
Diferença finita descendente
Se mudamos por temos a chamada a diferença finita descendente:
Tanto a diferença finita crescente quanto a decrescente são chamadas de aproximação de primeira ordem, onde o limitante do erro é dado por:
Diferença finita central
Uma terceira aproximação para pode ser obtida subtraindo a expressão de, ou seja:
Essa é uma aproximação de segunda ordem, onde o limitante do erro é dado por
Exemplo: Resolva a EDO definida abaixo com passo
Confira a resolução desse exemplo e muito mais nesse vídeo super completo que o Responde Aí preparou pra você 👇
Agora vamos praticar com exercícios?
Exemplo: Resolva a EDO definida abaixo com passo
Exercícios Resolvidos
Exercício Resolvido #1
Márcia A. Gomes Ruggiero e Vera Lúcia da Rocha Lopes, Cálculo Numérico – Aspectos Teóricos e Computacionais, 2ª ed. São Paulo: MAKRON Books, 1996, pag 374, exercício 24
Resolva pelo método das diferenças finitas, o PVC:
y ' ' + 2 y ' + y = x y 0 = 2 y 1 = 0
usando h = 0.25
Passo 1
Temos o seguinte:
y ' ' + 2 y ' + y = x
E teremos n intervalos de modo que:
n = b - a h = 1 0.25 = 4
Então vai ficar assim:
Beleza, agora vamos substituir as derivadas na nossa EDO:
y ' ' + 2 y ' + y = x
y i + 1 - 2 y i + y i - 1 h 2 + 2 y i + 1 - y i - 1 2 h + y i = x i
Multiplicando os dois lados por h 2 :
y i + 1 - 2 y i + y i - 1 + h y i + 1 - y i - 1 + h 2 y i = h 2 x i
Juntando os termos iguais:
y i + 1 1 + h + y i - 2 + h 2 + y i - 1 1 - h = h 2 x i
1.25 y i + 1 - 1.9375 y i + 0.75 y i - 1 = 0.25 2 x i
i = 1 :
1.25 y 2 - 1.9375 y 1 = - 1.484375
i = 2 :
1.25 y 3 - 1.9375 y 2 + 0.75 y 1 = 0 . 0 3125
i = 3 :
- 1.9375 y 3 + 0.75 y 2 = 0.046875
Então chegamos no sistema:
1.25 y 2 - 1.9375 y 1 = - 1.484375 1.25 y 3 - 1.9375 y 2 + 0.75 y 1 = 0 . 0 3125 - 1.9375 y 3 + 0.75 y 2 = 0.046875
Que passando para a forma matricial fica:
0 1.25 - 1.9375 1.25 - 1.9375 0.75 - 1.9375 0.75 0 y 3 y 2 y 1 = - 1.484375 0 . 0 3125 0.046875
Meu amigo, ainda bem que não precisamos calcular isso aí em! haha
Resposta
1.005 y 2 - 1.99 y 1 = - 0.9949 1.01 y 3 - 1.99 y 2 + 0.99 y 1 = 0.0004 1.015 y 4 - 1.99 y 3 + 0.985 y 2 = 0.0009 1.02 y 5 - 1.99 y 4 + 0.98 y 3 = 0.0016 1.025 y 6 - 1.99 y 5 + 0.975 y 4 = 0.0025 1.03 y 7 - 1.99 y 6 + 0.97 y 5 = 0.0036 1.035 y 8 - 1.99 y 7 + 0.965 y 6 = 0.0049 1.04 y 9 - 1.99 y 8 + 0.96 y 7 = 0.0064 - 1.99 y 9 + 0.955 y 8 = 0.0081
Exercício Resolvido #3
Richard L. Burden e J. Douglas Faires, Numerical Analysis, 9ª ed. Brooks/Cole, Cengage Learning, pag 689, exercício 1
O PVC abaixo
y ' ' = 4 y - x , 0 ≤ x ≤ 1 y 0 = 0 y 1 = 2
tem como solução y = e 2 e 4 - 1 - 1 e 2 x - e - 2 x + x. Use o método das diferenças finitas para aproximar a solução e compare com a solução real para:
a h = 0.5
b h = 0.25
Passo 1
a Temos o seguinte:
y ' ' = 4 y - 4 x
E teremos n intervalos de modo que:
n = b - a h = 1 0.5 = 2
Então vai ficar assim:
Beleza, agora vamos substituir as derivadas na nossa EDO:
y ' ' = 4 y - 4 x
y i + 1 - 2 y i + y i - 1 h 2 = 4 y i - 4 x i
Multiplicando os dois lados por h 2 :
y i + 1 - 2 y i + y i - 1 = 4 h 2 y i - 4 h 2 x i
Juntando os termos iguais:
y i + 1 + y i - 2 - 4 h 2 + y i - 1 = - 4 h 2 x i
y i + 1 - 3 y i + y i - 1 = - x i
i = 1 :
y 2 - 3 y 1 + y 0 = - x 1
- 3 y 1 = - y 2 - y 0 - x 1
y 1 = 2.5 3
y 1 = 0.83333
Completando nossa tabela:
Passo 2
Nessa letra o único valor que estimamos foi y 0.5 ≅ 0.83333 . O valor exato seria:
y = e 2 e 4 - 1 - 1 e 2 x - e - 2 x + x
y 0.5 = 0.824027
Logo, houve um erro de:
E A = 0.83333 - 0.824027 = 0.009306
E R = E A 0.824027 × 100 = 1.13 %
Passo 3
b Agora nosso h mudou para 0.25 , de modo que teremos n intervalos:
n = b - a h = 1 0.25 = 4
Então vai ficar assim:
Pegando nossa EDO pronta para o método lá da letra a :
y i + 1 + y i - 2 - 4 h 2 + y i - 1 = - 0.25 x i
y i + 1 - 2.25 y i + y i - 1 = - 0.25 x i
i = 1 :
y 2 - 2.25 y 1 + y 0 = - 0.25 x 1
y 2 - 2.25 y 1 = - 0.0625
i = 2 :
y 3 - 2.25 y 2 + y 1 = - 0.25 x 2
y 3 - 2.25 y 2 + y 1 = - 0.125
i = 3 :
y 4 - 2.25 y 3 + y 2 = - 0.25 x 3
- 2.25 y 3 + y 2 = - 2.1875
Passo 4
O sistema na forma matricial fica:
- 2.25 1 0 1 - 2.25 1 0 1 - 2.25 y 1 y 2 y 3 = - 0.0625 - 0.125 - 2.1875
Completando a tabelinha já com os valores exatos e com o erro ficamos com:
Resposta
a y 0.5 ≅ 0.83333
E A = 0.009306
E R = 1.13 %
b
Exercício Resolvido #4
Richard L. Burden e J. Douglas Faires, Numerical Analysis, 9ª ed. Brooks/Cole, Cengage Learning, pag 689, exercício 2b
O PVC abaixo
y ' ' = y ' + 2 y + cos x , 0 ≤ x ≤ π 2 y 0 = - 0.3 y π 2 = - 0.1
tem como solução y = - 1 10 sin x + 3 cos x . Use o método das diferenças finitas para aproximar a solução e compare com a solução real para h = π 8
Passo 1
a Temos o seguinte:
y ' ' = y ' + 2 y + cos x
E teremos n intervalos de modo que:
n = b - a h = π 2 π 8 = 4
Então vai ficar assim:
Beleza, agora vamos substituir as derivadas na nossa EDO:
y ' ' = y ' + 2 y + cos x
y i + 1 - 2 y i + y i - 1 h 2 = y i + 1 - y i - 1 2 h + 2 y i + cos x i
Multiplicando os dois lados por h 2 :
y i + 1 - 2 y i + y i - 1 = h 2 y i + 1 - y i - 1 + 2 h 2 y i + h 2 cos x i
Juntando os termos iguais:
y i + 1 1 - h 2 + y i - 2 - 2 h 2 + y i - 1 1 + h 2 = h 2 cos x i
0.80365 y i + 1 - 2.30843 y i + 1.19635 y i - 1 = 0.15421 cos x i
i = 1 :
0.80365 y 2 - 2.30843 y 1 + 1.19635 y 0 = 0.15421 cos x 1
0.80365 y 2 - 2.30843 y 1 = 0.501376
i = 2 :
0.80365 y 3 - 2.30843 y 2 + 1.19635 y 1 = 0.15421 cos x 2
0.80365 y 3 - 2.30843 y 2 + 1.19635 y 1 = 0.109043
i = 3 :
0.80365 y 4 - 2.30843 y 3 + 1.19635 y 2 = 0.15421 cos x 3
- 2.30843 y 3 + 1.19635 y 2 = 0.139379
Passo 2
O sistema na forma matricial fica:
- 2.30843 0.80365 0 1.19635 - 2.30843 0.80365 0 1.19635 - 2.30843 y 1 y 2 y 3 = 0.501376 0.109043 0.139379