Baixe o app para aproveitar ainda mais
Prévia do material em texto
4- Método de Diferenças Finitas Aplicado às Equações Diferenciais Parciais. 4.1- Aproximação de Funções. 4.1.1- Aproximação por Polinômios. 4.1.2- Ajuste de Dados: Mínimos Quadrados. 4.2- Derivadas e Integrais Numéricas. 4.2.1- Aproximação de Derivadas por Diferenças Finitas. 4.2.2- Aproximação de Integrais por Regras de Integração Numérica. 4.3- Solução de Equações Diferenciais Ordinárias. 4.4- Solução de Equações Diferenciais Parciais. MÉTODOS NUMÉRICOS PARA EQUAÇÕES DIFERENCIAIS PARCIAIS 4.2- Derivadas e Integrais Numéricas. Na aula anterior (4.1) aproximamos funções desconhecidas por outras funções conhecidas (polinômios, etc). Foi visto duas formas de aproximação: Interpolação por Polinômios e aproximação por Mínimos Quadrados. Agora estudaremos algumas formas de aproximar as derivadas e integrais de funções desconhecidas por outras funções conhecidas (polinômios). Note que as operações de derivada e integral são lineares: )(integrais )()( )(derivadas )()( )(ou )()( e )()( ⎪⎪⎩ ⎪⎪⎨ ⎧ = = =≈≈ ∫∫∫ b a b a n b a n dxI dx dD dxxpdxxf dx xdp dx xdf oo oo oL )),(())(())()(( 2121 xfxfxfxf LLL +=+ número. um é onde )),(())(( 11 ααα xfxf LL = )()()( erro com )()( xpxfxexpxf nnn −=≈ 4.2- Derivadas e Integrais Numéricas. Logo o erro verifica: Escolhendo como um polinômio que interpola a função em (n+1) pontos e representando este polinômio na forma de Lagrange segue: onde não depende de e são determinados uma única vez, sendo válidos para qualquer função (Regra). é uma Regra de Aproximação para , onde os pontos são chamados nós (pontos de discretização) e pesos ou coeficientes. Estudaremos algumas Regras para aproximar derivadas e integrais. )).(())(())()(())(( xpxfxpxfxe nnn LLLL −=−= )(xpn )(xf ( ) ( ) .)( e )( com )()()()( 10 ikik n ik k ki k i n i iinn xlxx xxxlxlxfxLxp δ=− −=== ∏∑ ≠= = ( ) ∑∑∑ === ==⎟⎠ ⎞⎜⎝ ⎛=≈ n i ii n i ii n i iin wxfxlxfxlxfxpxf 000 )()()()()())(())(( LLLL ( ))(xlw ii L= f(x) ∑ = ≈ n i ii wxfxf 0 )())((L iw ix ))(( xfL 4.2.1- Aproximação de Derivadas por Diferenças Finitas. Como aproximar derivadas de uma função por formulas de diferenças finitas baseadas apenas nos valores dos nós ( ) e da função nestes pontos ( )? Faremos o desenvolvimento para uma função de uma variável, mas esta metodologia pode ser estendia para funções de várias variáveis. No desenvolvimento a seguir é assumido que a função e suas derivadas são continuas num intervalo [a,b]. Sendo assim, podemos aproximar esta função por um polinômio representado como uma Serie de Taylor entorno do ponto : )( ixf ix ))(()())(()())(( xpD dx xdpxfD dx xdfxf nn =≈==L )(xf ( ) ( ) ( ) ( )( ) )1( )( ! 1)( !2 1)( !1 1)()( 122 2 +−+−++−+−+= nnn n xxOxx dx xfd n xx dx xfdxx dx xdfxfxf L ],[ bax∈ A aproximação mais familiar para de acordo com a definição de derivada seria para algum h pequeno: dx xdf )( { formula difference-forward )(Adiantado Direito Lado 0 )()())(()()(lim)( h xfhxfxfD h xfhxf dx xdf h −+=≈−+= +→ { formula difference-backward )(Retardado Esquerdo Lado 0 )()())(()()(lim)( h hxfxfxfD h xfhxf dx xdf h −−=≈−+= −→ ( ) { formula difference-centered Centrada Diferença0 ))(())((2 1 2 )()())(()( xfDxfD h hxfhxfxfD dx xdf −+ +=−−+=≈ Note que é o valor médio da aproximação por ambos lados (centrada). Este valor aproxima melhor a derivada da função que as diferenças laterais (adiantada ou retardada). ))((0 xfD 4.2.1- Aproximação de Derivadas por Diferenças Finitas. Por que parece ser mais precisa que ou ? Analisemos o erro de cada aproximação! Para isto é comum usar a expansão em Serie de Taylor entorno do ponto : Logo: Para h pequeno o erro é dominado pelo termo: ( ) ou )( 6 1)( 2 1)()()())(( 323 3 2 2 hOh dx xfdh dx xfd dx xdf h xfhxfxfD +++=−+=+ ))((0 xfD ))(( xfD+ ))(( xfD− ( ) ( ) ( ) ( )( ) )1( )( ! 1)( !2 1)( !1 1)()( 122 2 +−+−++−+−+= nnn n xxOxx dx xfd n xx dx xfdxx dx xdfxfxf L ( ) )2( )( ! 1)( 6 1)( 2 1)()()( 133 3 2 2 2 +++++++=+= nnn n hOh dx xfd n h dx xfdh dx xfdh dx xdfxfhxxf L ( ) )3( )( ! )1()( 6 1)( 2 1)()()( 133 3 2 2 2 ++−++−+−=−= nnn nn hOh dx xfd n h dx xfdh dx xfdh dx xdfxfhxxf L ],[ bax∈ ( )323322 derivada da oaproximaçã na erro )( 6 1)( 2 1)())(( hOh dx xfdh dx xfd dx xdfxfD ++=−+ 444 3444 21 h dx xfd 2 2 )( 2 1 4.2.1- Aproximação de Derivadas por Diferenças Finitas. Similarmente temos: Para h pequeno o erro é dominado pelo termo: Para h pequeno o erro é dominado pelo termo: ( ) ou )( 6 1)( 2 1)()()())(( 323 3 2 2 hOh dx xfdh dx xfd dx xdf h hxfxfxfD ++−=−−=− ( )323322 derivada da oaproximaçã na erro )( 6 1)( 2 1)())(( hOh dx xfdh dx xfd dx xdfxfD ++−=−− 444 3444 21 h dx xfd 2 2 )( 2 1− ( ) ou )( 3 1)( 2 )()())(( 323 3 0 hOhdx xfd dx xdf h hxfhxfxfD ++=−−+= ( )3233 derivada da oaproximaçã na erro 0 )( 3 1)())(( hOh dx xfd dx xdfxfD +=− 444 3444 21 2 3 3 )( 3 1 h dx xfd 4.2.1- Aproximação de Derivadas por Diferenças Finitas. Resumindo o erro de cada aproximação: onde C+, C- e Co são constantes específicas para cada função. Ou seja, o erro é uma função de h na forma: ( ) )(Retardada ) ordem (primeira )( 2 1)())(( 22 2 derivada da oaproximaçã na erro hhChOh dx xfd dx xdfxfD −− ≈+−=− 444 3444 21 ( ) (Centrada) ) ordem (segunda )( 3 1)())(( 220 32 3 3 derivada da oaproximaçã na erro 0 hhChOhdx xfd dx xdfxfD ≈+=− 444 3444 21 ( ) )(Adiantada ) ordem (primeira )( 2 1)())(( 22 2 derivada da oaproximaçã na erro hhChOh dx xfd dx xdfxfD ++ ≈+=− 444 3444 21 ) ordem (de )( mChhe m≈ )(he hmCChhe m loglog)log())(log( +=≈ Num gráfico com escala log-log o erro se comporta como uma linha reta com inclinação igual à ordem de precisão. 4.2.1- Aproximação de Derivadas por Diferenças Finitas. É possível aproximar a primeira derivada com ordem de precisão maior que 2? SIM. Por exemplo, Existe alguma metodologia que permita obter as formulas de diferenças finitas? SIM. Destacamos duas formas: 1- Usando a Serie de Taylor para aproximar junto com o método dos coeficientes indeterminados. 2- Usando um Polinômio de Interpolação para aproximar a função e aproximamos a derivada da função pela derivada do Polinômio de Interpolação. 4.2.1- Aproximação de Derivadas por Diferenças Finitas. h hxfhxfxfhxfxfD dx xdf 6 )2()(6)(3)(2))(()( 3 −+−−++=≈ ( ) ) ordem (terceira )( 12 1)())(( 333 43 4 4 derivada da oaproximaçã na erro 3 hhChOhdx xfd dx xdfxfD ≈+=− 444 3444 21 1-Metodologia para obter as formulas de diferenças finitas usando a Serie de Taylor para aproximar junto com o método dos coeficientes indeterminados. Por exemplo, suponha que queremos aproximar a derivada da função pelo lado esquerdo conhecendo três pontos apenas. Os coeficientes a,b e c devem ser determinados de forma a obter o menor erro possível. Expandindo em Serie de Taylor: 4.2.1- Aproximação de Derivadas por Diferenças Finitas. ?)( ≈ dx xdf ))2(),2(( e ))(),(( )),(,( hxfhxhxfhxxfx −−−− )2()()())(()( 2 hxcfhxbfxafxfDdx xdf−+−+=≈ ( )1333222 )(!)1()(61)(21)()()( ++−++−+−=− nnn nn hOh dx xfd n h dx xfdh dx xfdh dx xdfxfhxf L ( )1333222 )2()(!)1()2()(61)2()(212)()()2( ++−++−+−=− nnn nn hOh dx xfd n h dx xfdh dx xfdh dx xdfxfhxf L Substituindo as expansões em: Para obter maior precisão na derivada primeira devemos escolher ou Erro: 4.2.1- Aproximação de Derivadas por Diferenças Finitas. )2()()())((2 hxcfhxbfxafxfD −+−+= L++− +++−++= 3 3 3 2 2 2 2 )(]8[ 6 1 )(]4[ 2 1)(]2[)(][))(( dx xfdhcb dx xfdhcb dx xdfhcbxfcbaxfD 0]4[ 2 1,1]2[,0][ 2 =+=+−=++ hcbhcbcba ⎟⎟ ⎟⎟ ⎟ ⎠ ⎞ ⎜⎜ ⎜⎜ ⎜ ⎝ ⎛ ⎟⎟ ⎟ ⎠ ⎞ ⎜⎜ ⎜ ⎝ ⎛ =−==⎪⎩ ⎪⎨ ⎧ =+ −=+ =++ adosindetermin escoeficient os para restrições trêscolocar podemos apenas portanto nós, três temosque Note 2 1,2, 2 3 é sistema deste soluçãoA 04 /12 0 h c h b h a cb hcb cba h hxfhxfxfxfD dx xdf 2 )2()(4)(3))(()( 2 −+−−=≈ ( )3 33 2 32 3 3( ) 1 ( ) 1 ( )( ( )) [ 8 ] 6 12df x d f x d f xD f x b c h h O hdx dx dx− = − + + = +L E as derivadas de ordem maior? Derivada de segunda ordem! Suponha que queremos obter uma formula de diferenças finitas centrada para aproximar a derivada segunda conhecendo apenas três pontos igualmente espaçados. Usaremos a expansão em Serie Taylor junto com o método dos coeficientes indeterminados! (Pode ser usado outros métodos) Substituindo e agrupando termos obtemos: 4.2.1- Aproximação de Derivadas por Diferenças Finitas. ?)(2 2 ≈ dx xfd )()()())(()( 22 2 hxcfxbfhxafxfD dx xfd +++−=≈ ( )1333222 )(!)1()(61)(21)()()( ++−++−+−=− nnn nn hOh dx xfd n h dx xfdh dx xfdh dx xdfxfhxf L ( )1333222 )(!1)(61)(21)()()( +++++++=+ nnn n hOh dx xfd n h dx xfdh dx xfdh dx xdfxfhxf L ))(),(( e ))(),(( )),(,( hxfhxhxfhxxfx ++−− Para obter a maior precisão possível na derivada segunda devemos escolher os coeficientes como: Erro da aproximação? Erro: 4.2.1- Aproximação de Derivadas por Diferenças Finitas. ( )1 3 3 3 3 2 2 2 2 )( ! 1])1([ )( 6 1][)(][ 2 1)(][)(][ )()()())(( ++−+++ −+++−+++= +++−= n n n nn hO dx xfdh n ac h dx xfdhac dx xfdhac dx xdfhacxfcba hxcfxbfhxafxfD L ou 1][ 2 1,0][,0][ 2 =+=−=++ hachaccba ⎟⎟ ⎟⎟ ⎟ ⎠ ⎞ ⎜⎜ ⎜⎜ ⎜ ⎝ ⎛ ⎟⎟ ⎟ ⎠ ⎞ ⎜⎜ ⎜ ⎝ ⎛ =−== ⎪⎪⎩ ⎪⎪⎨ ⎧ = = =++ centradas. diferenças das icacarateríst uma é Isto zeros. são deimpar potencia de termosos todosque Note 1,2,1 é sistema deste soluçãoA 1 0 222 2 h h c h b h a h a ac cba 2 2 2 2 )]()(2)([))(()( h hxfxfhxfxfD dx xfd ++−−=≈ ( )4442222 )(121)())(( hOdx xfdhdx xfdxfD +=− Existem várias Regras de Integração Numérica: Regra do Trapézio, Regra de Simpson, Quadratura de Newton-Cotes, Quadratura de Gauss, etc. Destacamos aqui a Quadratura de Gauss. Teorema Fundamental do Cálculo: O problema da Integração Numérica consiste em determinar o valor da integral definida a partir de (n+1) valores conhecidos da função integrando. Esta é a Formula Geral para as Quadraturas. Resta encontrar os pesos e os pontos de quadraturas. 4.2.2- Aproximação de Integrais por Regras de Integração Numérica. ],[ em )( onde ,)()()( baxf dx dFaFbFdxxf b a =−=∫ ∑∫∫ = =≈ n i ii b a n b a wxfdxxpdxxf 0 )()()( Quadratura de Gauss! Considere uma função definida em . O problema consiste em determinar os pontos de quadratura e os pesos para que a Formula de Quadratura seja exata quando a função integrando é um polinômio de maior grau possível N. Esta formula possui 2m constantes ( e ). Lembrando que um polinômio de grau 2m-1 é determinado por 2m coeficientes segue que N=2m-1. Para que (1) seja verificado para qualquer polinômio de grau 2m-1 é necessário e suficiente que (1) seja verificado para o conjunto de polinômios: 4.2.2- Aproximação de Integrais por Regras de Integração Numérica. )1( )()()( 1 1 1 1 1 ∑∫∫ =−− == m i iiN wxfdxxpdxxf ]1,1[−)(xf ix iw ix iw { }122 ,,,,1 −mxxx L)arbitrário (polinômio )( 12 0 ∑− = = m k k kN xCxp Considerando que: se substituímos o conjunto de polinômios em (1) obtemos um sistema não linear de 2m equações. 4.2.2- Aproximação de Integrais por Regras de Integração Numérica. 12,,2,1,0 ,)()1( )()()( 1 1 11 1 1 1 1 −==⇒== ∑∫∑∫∫ =−=−− mkwxdxxwxpdxxpdxxf m i i k i k m i iiNN L ∑∑ ∑ ∑ ∑∑ ∫∫ ∑∫ == − = − = = − = −− − =− == ==== m i iNi m i k i m k ki m k m i i k ik m k k k m k k kN xpwxCw wxCdxxCdxxCdxxp 11 12 0 12 0 1 12 0 1 1 1 1 12 0 1 1 )()( )()( ⎪⎩ ⎪⎨ ⎧ +=+ −−= + − ∫ impar é se 0 par é se 1 2 1 )1(1 11 1 k k k k dxx k k Este sistema não linear é de difícil solução. Entretanto, em lugar do conjunto de polinômios podemos usar polinômios da forma , onde são os polinômios de Legendre. O grau deste novo conjunto de polinômios não é maior que 2m-1 e se usamos eles na formula de quadratura (1) obtemos: 4.2.2- Aproximação de Integrais por Regras de Integração Numérica. )2( polinômio o para ,0)( polinômio o para , 12 2)( polinômio o para ,0 polinômio o para ,2 1212 1 2222 1 1 1 0 1 ⎪⎪ ⎪⎪ ⎪⎪ ⎩ ⎪⎪ ⎪⎪ ⎪⎪ ⎨ ⎧ = −= = = −− = −− = = = ∑ ∑ ∑ ∑ mm i m i i mm i m i i m i ii m i i xxw x m xw xxw xw LLLLLLLLLLLL { }122 ,,,,1 −mxxx L )1,,2,1,0( )( −= mkxPx mk L )(xPm Por outra parte, os polinômios de Legendre tem a seguinte propriedade de ortogonalidade: Logo (3) se reduze a um sistema de m equações da forma: Note que para qualquer peso este sistema é satisfeito se os pontos são os zeros do polinômio de Legendre . Os zeros dos polinômios de Legendre são todos reais e diferentes no intervalo (-1,1). Logo conhecendo estes zeros e substituindo eles no sistema (2) obtemos um sistema linear de m equações que permite determinar os pesos . 4.2.2- Aproximação de Integrais por Regras de Integração Numérica. )3( 1,,2,1,0 ,)()()( 1 1 1 −==∑∫ =− mkwxPxdxxPx m i iim k im k L com )( polinômio todopara 0)()( 1 1 mkxQdxxQxP kkm <=∫ − )'3( 1,,2,1,0 ,0)()( 1 −==∑ = mkwxPx m i iim k i L ix iw )(xPm iw Pode ser provado que a Formula de Quadratura onde os são os zeros dos polinômios de Legendre e os pesos determinados da forma anterior é exata para todo polinômio de grau N<2m-1. Esta formula se conhece com o nome de Quadratura de Gauss. Polinômios de Legendre e seus zeros! Propriedades: 1) 2) 3) tem m raízes reais diferentes no intervalo (-1,1) 4.2.2- Aproximação de Integrais por Regras de Integração Numérica. )4( ,)()( 1 1 1 ∑∫ =− = m i iiNN wxpdxxp com )( polinômio todopara 0)()( 1 1 mkxQdxxQxP kkm <=∫ − ( )[ ] L,2,1,0 ,1 !2 1)( 2 =−= mx dx d m xP mm m mm ix )(xPm )(xPm L,1,0 ,)1()1( ,1)1(=−=−= mPP mmm A seguir listamos os cinco primeiros Polinômios de Legendre: 4.2.2- Aproximação de Integrais por Regras de Integração Numérica. ( )[ ] ( ) ( ) ( )⎪⎪ ⎪⎪ ⎪⎪ ⎩ ⎪⎪ ⎪⎪ ⎪⎪ ⎨ ⎧ +−= −= −= = = =−= .33035 8 1)( ,35 2 1)( ,13 2 1)( ,)( ,1)( ,2,1,0 ,1 !2 1)( 24 4 3 3 2 2 1 0 2 xxxP xxxP xxP xxP xP mx dx d m xP mm m mm L A seguir listamos os pontos e pesos da Quadratura de Gauss: 4.2.2- Aproximação de Integrais por Regras de Integração Numérica. m i xi Wi 1 1 0 2 2 1,2 (-/+) 0.57735027 1 3 1,3 2 (-/+) 0.77459667 0 0.55555556 0.88888889 4 1,4 2,3 (-/+) 0.86113631 (-/+) 0.33998104 0.34785484 0.65214516 5 1,5 2,4 3 (-/+) 0.90617985 (-/+) 0.53846931 0 0.23692688 0.47862868 0.56888889 Uma desvantagem da Quadratura de Gauss consiste em que os pontos e os pesos da formula são, em geral, números irracionais. Uma vantagem é o alto grau de precisão obtido com poucos pontos. O erro é da ordem: Note que e 4.2.2- Aproximação de Integrais por Regras de Integração Numérica. )4( ,)()( e )()( 1 12 1 1 12 1 1 1 ∑∫∑∫ = − − − =− =≈ m i iimm m i ii wxpdxxpwxfdxxf m mm m dx fd mm mR 2 2 3 412 )( )12()!2( )!(2 ξ += + ∑∫ =− −= m i iim wxfdxxfR 1 1 1 )()( .0 )12()!2( )!(2lim 3 412 =+ + ∞→ mm mm m 1 1 )12()!2( )!(2 3 412 ≥∀<+ + m mm mm Frase do Dia “Although to penetrate into the intimate mysteries of nature and thence to learn the true causes of phenomena is not allowed to us, nevertheless it can happen that a certain fictive hypothesis may suffice for explaining many phenomena.” Leonhard Euler (A mesma da Aula 9)
Compartilhar