Você está na página 1de 5

Problemas de Valor de Contorno

Paulo J. S. Silva
12 de setembro de 2017

1 Problemas de Valor de Contorno
Estudamos anteriormente problemas de valor inicial, onde toda a dinâmica está definida pela equação
diferencial e o valores da função desconhecida e, eventualmente, de algumas de suas derivadas de ordem
mais baixa em um instante inicial t0 . Em particular, se a equação diferencial envolve y, y′ e y′′ consideramos
um problema na forma

y′′ (t) = f (t, y(t), y′ (t)) t > t0 ,
y(t0 ) = α,
y′ (t0 ) = β.

Esse tipo de problema é bem natural se estamos estudando a evolução de algo no tempo, já que nesse
caso é esperado que a situação do objeto estudado seja conhecida no tempo inicial t0 . Note que as condições
iniciais são a chave para garantir que a solução do sistema seja única.
Porém há situações em que não conhecemos o valor da derivada de y no ponto inicial. Se tivermos
apenas o valor de y em um ponto ainda sobrará um grau de liberdade e a equação diferencial não terá a sua
solução completamente determinada. Para evitar isso uma outra possibilidade é conhecermos o valor de y
em um outro ponto além do inicial. Por exemplo, podemos estar interesados em considerar problemas do
tipo

y′′ ( x ) = f ( x, y( x ), y′ ( x )) a < x < b,
y( a) = α,
y(b) = β.

Nesse caso conhecemos os valores que de y em dois pontos, que chamamos de valores de contorno. Um
exemplo o estudo do movimento de um projétil quando conhecemos apenas a força que age sobre ele e a
sua posição em dois intantes de tempo mas não conhecemos a sua velocidade inicial.
Nessa parte do curso vamos estudar métodos numéricos para resolução do problema acima que é co-
nhecido como problema de valores de contorno (PVC).

1.1 Método das diferenças finitas
Vamos estudar o uso do método de diferenças finitas para resolver um problema de valor de contorno.
Assim como foi feito no caso do PVI, vamos tentar resolver o problema usando métodos numéricos. Dessa
forma, é mais uma vez natural desistir de encontrar uma função como solução, e aceitar encontrar apenas
aproximações dos valores da (função) solução em um conjunto pré-definido de pontos. Mais uma vez
vamos considerar uma discretização do intervalo a = x0 < x1 < x2 < . . . < x N = b e o nosso objetivo será
simplesmente encontrar aproximações yi do valores da (função) solução nos pontos xi . Ou seja queremos
encontrar yi tal que
y i ≈ y ( x i ), i = 0, . . . , N,

1

ξ − ∈ ( x i −1 . x i ). h Essa fórmula é conhecida como diferença avançada e vemos que o erro nela é proporcial a h. 2 n! ( n + 1) ! Lembrem mais uma vez que o ponto ξ que aparece na fórmula acima não é conhecido exatamente. Usando essa fórmula podemos obter diretamente aproximações para a primeira derivada de y que de- pendem apenas dos valores da função y. ξ ∈ ( x. . Agora para podermos atacar o PVC como descrito acima. se h é pequeno. Esse tipo de erro é dito da ordem h e usamos a notação O(h). y( xi+1 ) − y( xi ) h ′′ y ′ ( xi ) = − y ( ξ ). 2 Portanto. x i +1 ) 2 3! h2 h3 ′′′ − y( xi−1 ) = y( xi ) − hy′ ( xi ) + y′′ ( xi ) − y ( ξ ). h De novo uma fórmula com erro da ordem de h. h2 ′′ y( xi+1 ) = y( xi ) + hy′ ( xi ) + y ( ξ ). 2 3! De forma análoga ao que foi feito no método do ponto médio na seção anterior. podemos escrever y ( x i +1 ) − y ( x i ) y ′ ( xi ) ≈ . A grande dificuldade de resolver uma equação diferencial é lidar com os termos que envolvem as deri- vadas (primeira e segunda) da função icógnita. 2h Essa é uma aproximação para y′ que parece melhor do que as duas anteriores já que o seu erro é propor- cional a h2 que é bem menor que h para h pequeno. x + h). De onde obtemos y ( x i +1 ) − y ( x i −1 ) y ′ ( xi ) = + O ( h2 ). De maneira análoga podemos deduzir a fórmula de diferença atrasada: y ( x i ) − y ( x i −1 ) y ′ ( xi ) ≈ . Vamos tentar evitar isso aproximando essas derivadas por fórmulas que dependem apenas dos valores de y. Além disso. 2 . ξ + ∈ ( x i . podemos aproveitar as duas fórmulas de Taylor usadas acima e conseguir algo ainda me- lhor h2 ′′ h3 ′′′ + y( xi+1 ) = y( xi ) + hy′ ( xi ) + y ( xi ) + y ( ξ ). Essa fórmula é conhecida como diferença centrada e é geralmente é mais interessante do que as diferenças avançada e atrasada. + y(n) ( x ) + y ( ξ ). h 2 E. De novo partimos das expansões de Taylor de xi−1 e xi+1 em torno de xi . De fato.em que y é a solução do PVC. Mais uma vez a ferramenta que temos para conseguir são as expansões de Taylor. se y é n + 1 diferenciável temos h2 ′′ hn h n +1 ( n +1) y( x + h) = y( x ) + hy′ ( x ) + y ( x ) + . precisamos de alguma aproximação para essa derivada. ao subtrairmos essas duas fórmulas obtemos y( xi+1 ) − y( xi−1 ) = 2hy′ ( xi ) + O(h3 ). Recapitulando. . x + h). que envolve também as derivadas segundas de y. apenas sabemos que ele pertence ao intervalo ( x.

ξ + ∈ ( x i . 1. . 2 3! 4! Só que agora ao invés de subtrair vamos somar as expressões para obter y( xi+1 ) + y( xi−1 ) = 2y( xi ) + h2 y′′ ( xi ) + O(h4 ). y′ ) = − p( x )y′ − q( x )y + r ( x ). q. Por exemplo. x i +1 ) 2 3! 4! h2 h3 ′′′ h4 y( xi−1 ) = y( xi ) − hy′ ( xi ) + y′′ ( xi ) − y (ξ ) + y ( ξ − ). Essa aproximação é conhe- cida também como diferença centrada.3 O Método de diferenças finitas no exemplo O método de diferenças finitas consiste em usar a equação diferencial e aproximações de derivadas cal- culadas anteriormente para definir equações que definiem as aproximações yi ≈ y( xi ). mas agora para aproximar a segunda derivada. h2 também é de ordem de h2 . Assim o PVC fica y′′ + p( x )y′ + q( x )y = r ( x ).1 Exemplo y′′ − 5xy′ + x2 y = e x . y(0) = 3. . y(1) = 0.2. as condições de contorno e as aproximações de derivadas centradas teremos 3 . y( a) = α. 1. q( x ) = x2 e r ( x ) = e x . Agora substituindo os valores exatos y(ti ) por suas aproximações yi . para funções p. y( x4 ) = 0. Isolando o y′′ ( xi ) que é o que desejamos aproximar obtemos y( xi+1 ) − 2y( xi ) + y( xi−1 ) y′′ ( xi ) = + O ( h2 ). assim como a diferença centrada para aproximar y′ . se considerarmos o exemplo anterior e os pontos 0 = x0 < x1 = 1/4 < x2 = 1/2 < x3 = 3/4 < x4 = 1 podemos escrever as condições dadas pela equação diferencial como y′′ ( xi ) − 5xi y′ ( xi ) + xi2 y( xi ) = e xi . y( x0 ) = 3. Nesse caso conside- ramos que a função f depente de forma linear de y e y′ . y(b) = β. x i ). .2 Problemas lineares Vamos começar pensando como resolver um problema de valores de contorno linear. Para ser mais preciso. h2 ′′ h3 ′′′ h4 y( xi+1 ) = y( xi ) + hy′ ( xi ) + y ( xi ) + y (ξ ) + y ( ξ + ). . 1. ξ − ∈ ( x i −1 . h2 Isso quer dizer que a aproximação para a derivada y( xi+1 ) − 2y( xi ) + y( xi−1 ) y′′ ( xi ) ≈ . Estamos prontos para colocar isso em prática para resolver um PVC. vamos considerar que f ( x. 3. Nesse caso identificamos as funções p( x ) = −5x. i = 1. y. r que dependem apenas de x.

Ficamos finalmente com y i +1 − y i −1 (yi+1 − 2yi + yi−1 ) + pi h + h2 q i y i = h2 r i . 4. i = 1. n − 1. . (3) 2 y0 = α. para a aplicação do método de diferenças finitas no caso linear geral. Note que aqui não é possível calcular y1 somente a partir de y0 como feito em problemas de valor inicial. y3 . . 2. y2 . yi+1 − 2yi + yi−1 y − y i −1 i − 5xi i+1 + xi2 yi = e x . devemos substituir as derivadas de y pelas aproximações baseadas em diferenças. y0 = 3. 3. . i = 0. . (6) 4 . i = 1. Como os valores de h e xi . (5) y0 = α. Ficamos com yi+1 − 2yi + yi−1 y − y i −1 + p i i +1 + qi yi = ri . . . . Todas as aproximações de y que são desconhecidas devem ser calculadas de uma única vez resolvendo o sistema de equações lineares. n − 1. . . 3. Isso ocorre porque o valor em y1 depende tanto da condição em a = x0 quando da condição no outro extremo b = x4 . yn+1 = β. Organizando as equações acima multiplicadas por h2 temos (1 − (h/2)5xi )yi−1 − (2 + h2 xi2 )yi + (1 + (h/2)5xi )yi+1 = h2 e xi . n − 1. i = 1. 2. .4 Fórmula geral do método de diferenças finitas para problemas lineares Deve ser natural imaginar que podemos escrever uma fórmula geral. 2. são conhecidos o que temos acima um sistema de equações lineares nas variáveis y1 . . . . i = 1. . . . < xn = b e assim xi+1 = xi + h. yn+1 = β. Ou seja um sistema simples 3 por 3. 1. . (2) Também é comum multiplicar as equações acima por h2 para eliminar as frações. . . y(b) = β. no caso das derivadas primeiras devemos usar diferenças centradas. . Por fim. . y′′ + p( x )y′ + q( x )y = r ( x ). y4 = 0. A partir daí devemos re-escrever a equação diferencial nos pontos da malha. yi+1 chegamos a (1 − h/2 pi )yi−1 + (−2 + h2 qi )yi + (1 + h/2 pi )yi+1 = h2 ri . (4) Separando os termos que aparecem na frente das variáveis yi−1 . h2 2h y0 = 3. i = 1. . 2. A ideia do método de diferenças finitas é dividir o intervalo de solução em subintervalos usando um passo fixo h de modo que a = x0 < x1 < . isto é: y′′ ( xi ) + p( xi )y′ ( xi ) + q( xi )y( xi ) = r ( xi ). . . (1) h2 2h y0 = α. y4 = 0. yn+1 = β. yi . y( a) = α. . . . Ou seja. Também é natural usar a melhor aproximação que temos. Vamos iniciar revisitando a fórmula do caso geral. . Vejamos como fazer isso. . que pode então ser implementada como um programa de computador. Lembre-se que y0 e y4 já tem os seus valores definidos. n − 1. . i = 1.

tem os seus valores definidos trivialmente pelas duas últimas equações. a fatoração LU nesse caso tem que zerar apenas um número por coluna. Além disso a existência das fórmulas acima mostram que é possível escrever um programa de compu- tador que resolve um PVC. y0 e yn . duas variá- veis.  A= . i = 1.   . Podemos também apresentar o sistema em seu formato matricial. .. . 5 .  b= . Com     b1 c1 h2 r1 − a1 α  a2 b2 c2   h2 r2       . . . . . ao invés da ordem cúbica que está usualmente associada a fatorações. Uma implementação que leva isso em consideração tanto no processo de fatoração quanto no processo de resolução dos subproblemas por substituição é então capaz de resolver esse problema com grande eficiência. em O(n). ci = 1 + h/2 pi . bi = − 2 + h 2 q i . . Nesse caso ele fica Ay = b. . 2. n − 1. Ela possui apenas a diagonal principal e as primeiras diagonais superior e inferior não nulas.      a n −2 bn − 2 c n −2   h 2 r n −2  a n −1 bn − 1 h2 r n −1 − c n −1 y n ai = 1 − h/2 pi . Notem que apesar do sistema acima parecer ser inicialmente de n + 1 equações e variáveis. yn−1 . . Portanto resta apenas um sitema nas n − 1 variáveis y1 .. O que esse programa deve fazer é montar a matriz e o lado direito descritos acima e resolver o sistema de forma eficiente. Uma observação importante é que a matriz do sistema é tridiagonal.. . . . y2 . Isso permite resolver o sistema linear muito mais rapidamente. .. Um sistema de equações lineares. por exemplo. já que.