Equações diferenciais Elementos de Análise Numérica Introdução à solução de equações diferenciais ordinárias Pontos mais importantes: - motivação, classificação de equações diferenciais - método de Euler - métodos de Runge-Kutta de segunda ordem (Huen e “Midpoint”) - método de Runge-Kutta de quarta ordem - caso especial: método de Crank-Nicolson 1 Equações diferenciais Elementos de Análise Numérica As leis fundamentais da natureza são baseadas em observações e são expressas por equações diferenciais. Exemplo: segunda lei de Newton: dv F dt m A equação anterior chama-se equação diferencial porque é composta por uma variável dependente e a respectiva derivativa em função da variável independente. Para obter v, a equação tem que ser integrada! 2 Equações diferenciais Elementos de Análise Numérica outro exemplo: . me Te T. Qint . . m s = me depósito com entrada e saída de massa Ts=T (igual caudal), podendo haver trocas de energia com o ext. e fontes int. . Qext Y= T ( t ) . , Te , T , Qint , Q ext ) = f (t , T ) Y = dT / dt f (m Equações diferenciais Elementos de Análise Numérica -ordem da equação diferencial: dT dx -primeira ordem qk -segunda ordem dT d 2T 2 dt dx -linearidade: -linear -não linear d 2V dx (Poisson) d 2 g sen 2 dt l Só em casos simples podemos resolver equações diferenciais não lineares analiticamente! 4 Equações diferenciais Elementos de Análise Numérica sabe-se y’ = f (x, y) , conds. iniciais : (xo , yo ) ou (xo , y’o ) pretende-se y = F (x ) dy f ( x , y) dx Solução: yi+1=yi+fx conj. pontos (xi , yi ) solução y=F(x) x=xi+1-xi Nova estimativa = estimativa anterior + declive passo 5 Equações diferenciais Elementos de Análise Numérica Método de Euler y ( xi , yi ) y = F(x) yi+1 ( xi 1 , yi 1 ) xi 1 xi x f f ( x i , yi ) yi xi xi+1 x x yi1 yi f (x i , yi ) x • método de 1ª ordem (1 estimativa f em cada passo) • o erro local é da ordem de x2 do desenvolvimento em série de Taylor : x 2 x • o erro global vai-se acumulando ( ~ x) 2 yi'' 6 Equações diferenciais Elementos de Análise Numérica exemplo : 3 l/min T 3 l/min c V dT p f ( T, t ) (Tentr T) dt Vc p ; T (t 0) 60ºC T V=100 l 20ºC Solução analítica: T( t ) Tentr T(t 0) - Tentr e V t V Método de Euler(t=4 min): i 0 1 2 3 4 5 6 t, min 0 4 8 12 16 20 24 T_exacto,ºC 60.0 55.5 51.5 47.9 44.8 42.0 39.5 T_Eu, ºC 60 55.2 51.0 47.3 44.0 41.1 38.6 erro_Eu, ºC 0.0 0.3 0.5 0.6 0.8 0.8 0.9 7 Equações diferenciais Elementos de Análise Numérica Métodos de Runge-Kutta de segunda ordem f=(a1k1+a2k2) então, yi+1=yi+(a1k1+a2k2)×x onde k1= f(xi,yi) -aplicando a expansão de Taylor (sem prova), obtemos: a1 a 2 1 1 2 1 a 2 q11 2 a 2 p1 Três equações 4 incógnitas k2=f(xi+p1 x, yi+q11k1 x) um grupo de métodos -constantes a1, a2, p1 e q11 são para determinar Uma constante (a2) é escolhida “arbitrariamente”. 8 Equações diferenciais Elementos de Análise Numérica Método de Heun (Euler melhorado) (a2=0,5) yi+1=yi+(0.5k1+0.5k2)×x onde k1= f(xi,yi) k2=f(xi+x, yi+k1x) y y = F(x) yi+1 yi 1 yi yi xi xi+1 declive médio das tangentes em xi e xi+1 x f ( xi , yi ) f ( xi 1 , yi x f ( xi , yi )) 2 x • método 2ª ordem (2 estimativas f /passo) • o erro local é da ordem de x3 Nota: idêntico à solução de Euler 9 Equações diferenciais Elementos de Análise Numérica exemplo : 3 l/min T 3 l/min T c V dT p f ( T, t ) (Tentr T) dt Vc p V=100 l 20ºC Solução Heun : t, min 0 4 8 12 16 20 24 T_exacto,ºC 60.0 55.5 51.5 47.9 44.8 42.0 39.5 V k1 Tentr Ti V V k 2 Tentr T ( Euler) i 1 V Método de Heun (t=4 min): i 0 1 2 3 4 5 6 ; T (t 0) 60ºC k_1 k_2 -1.2 -1.1 -0.9 -0.8 -0.7 -0.7 -1.1 -0.9 -0.8 -0.7 -0.6 -0.6 T_He, ºC 60.0 55.5 51.5 48.0 44.9 42.1 39.7 erro_He, ºC 0.0 0.0 0.0 -0.1 -0.1 -0.1 -0.2 Equações diferenciais Elementos de Análise Numérica Método de “Midpoint” (Euler modificado) (a2=1) yi+1=yi+k2x onde, k1=f(xi, yi) k2=f(xi+0.5 x, yi+0.5 k1 x ) y y = F(x) yi+1 declive da tangente no ponto médio x x yi 1 yi x f xi , yi f ( xi , yi ) 2 2 yi xi xi+x/2 xi+1 x • método 2ª ordem (2 estimativas f /passo) • o erro é da ordem de x3 11 Equações diferenciais exemplo : 3 l/min T c V dT p f ( T, t ) (Tentr T) dt Vc p ; T (t 0) 60ºC T V=100 l 3 l/min Elementos de Análise Numérica 20ºC V Solução “Midpoint” : k1 Tentr Ti V V k 2 Tentr Ti 0.5 k1 t V Método de Midpoint (t=4 min): i 0 1 2 3 4 5 6 t, min 0 4 8 12 16 20 24 T_exacto,ºC 60.0 55.5 51.5 47.9 44.8 42.0 39.5 k_1 k_2 -1.2 -1.1 -0.9 -0.8 -0.7 -0.6 -1.1 -1.0 -0.9 -0.8 -0.7 -0.6 T_MP, ºC 60.0 55.3 51.2 47.6 44.4 41.5 39.0 erro_MP, ºC 0.0 0.1 0.2 0.3 0.4 0.4 0.4 12 Equações diferenciais Elementos de Análise Numérica Métodos de Runge-Kutta de quarta ordem (4 avaliações da f/passo) yi+1=yi+1/6(k1+2k2 +2k3 +k4)x onde k1= f(xi,yi) k2=f(xi+0.5x, yi+0.5 k1 x) k3=f(xi+0.5 x, yi+0.5 k2 x) k4=f(xi+ x, yi+k3 x) 13 Equações diferenciais Elementos de Análise Numérica exemplo : 3 l/min T 3 l/min 20ºC Solução RK4 : V k1 Tentr Ti V T V=100 l V k 3 Tentr Ti 0.5 k 2 t V V k 2 Tentr Ti 0.5 k1 t V V k 4 Tentr Ti k 3 t V t=4 min: i 0 1 2 3 4 5 6 t, min 0 4 8 12 16 20 24 T_exacto,ºC 60.0 55.5 51.5 47.9 44.8 42.0 39.5 k_1 k_2 k_3 k_4 -1.20 -1.06 -0.94 -0.84 -0.74 -0.66 -1.13 -1.00 -0.89 -0.79 -0.70 -0.62 -1.13 -1.00 -0.89 -0.79 -0.70 -0.62 -1.06 -0.94 -0.84 -0.74 -0.66 -0.58 T_RK4, ºC erro_RK4, ºC 60.0 0.00 55.5 0.00 51.5 0.00 47.9 0.00 44.8 0.00 42.0 0.00 39.5 0.00 14 Equações diferenciais Elementos de Análise Numérica Caso especial: método de Crank-Nicolson se y’ = f ( y ) ex: dT/dt = f (T) y y = F(x) yi+1 declive da tangente para y médio yi yi 1 yi 1 yi x f 2 yi+yi+1 2 yi semi-implícito xi xi+1 x • método 1ª ordem com precisão equivalente a 2ª 15 Equações diferenciais Elementos de Análise Numérica 3 l/min T 3 l/min T c V dT p f ( T, t ) (Tentr T) dt Vc p ; T (t 0) 60ºC V=100 l 20ºC Solução Crank-Nicolson : V T T Ti 1 Ti Tentr i i 1 t V 2 t=4 min): i 0 1 2 3 4 5 6 t, min 0 4 8 12 16 20 24 T_exacto,ºC 60.0 55.5 51.5 47.9 44.8 42.0 39.5 T_CR, ºC 60.0 55.5 51.5 47.9 44.7 41.9 39.5 erro_CR, ºC 0.00 0.01 0.01 0.01 0.01 0.02 0.02 16 Equações diferenciais Elementos de Análise Numérica Comparação dos métodos 1.0 0.8 0.6 Erro, ºC 0.4 0.2 0.0 0 5 10 15 20 25 -0.2 Euler -0.4 -0.6 Euler_imp Heun Midpoint -0.8 -1.0 Crank- Nic. RK-4 t, min 17