Métodos Numéricos aplicados à Engenharia Química 1 AULA 5 Prof. Dr. Paulo Henrique S. L. Coelho Plano de aula 2 Solução de Equações Diferenciais Ordinárias. Problemas de valor inicial. Entendimento do problema. Métodos de Euler. Explícito. Implícito. Modificado. Métodos de Runge-Kutta. 2ª Ordem. 4ª Ordem. Introdução 3 - Equação diferencial é o nome dado à equação que contém derivadas de uma função desconhecida. - A solução dessa equação é a função que satisfaz à equação diferencial. -Uma equação diferencial com apenas uma variável independente é chamada de equação diferencial ordinária (EDO). - Uma EDO de primeira ordem envolve a derivada primeira da variável dependente em relação à variável independente. Introdução 4 Equações diferenciais fornecem informações detalhadas a respeito das distribuições ou variações da variável dependente em função da variável independente. Por exemplo, considere o tanque de água cilíndrico mostrado na Figura. Enche-se o tanque por cima e a água sai por um cano conectado no fundo. O fluxo de água entrando no tanque varia com o tempo e é dado pela equação: Introdução 5 - A Equação da variação da altura é uma EDO de primeira ordem, onde t é a variável independente e h é a variável dependente. - A solução da equação é uma função h(t) capaz de satisfazer a essa equação (em geral, um número infinito de funções pode satisfazêla). - Para que uma solução específica seja obtida, uma EDO de 1ª ordem deve ter uma condição inicial que especifique o valor da variável dependente para um valor particular da variável independente. - Como problemas como esse são tipicamente problemas que envolvem a variação temporal a restrição é chamada de condição inicial e o problema é chamado de problema de valor inicial (PVI). Introdução 6 Considere uma EDO de 1ª ordem: dy/dx=f(x,y) com a condição inicial: y(x1) = y1 A f(x, y) fornece a inclinação de y(x) em função de x e y. Por exemplo, considere a EDO a seguir: O valor de f(x, y) para 0 ≥ x ≥ 4 e 2 ≥ y ≥ 6 é ilustrado na Figura, onde se traça a inclinação em muitos pontos no interior do domínio. As inclinações são tangentes à solução, o que significa que as inclinações se parecem com “linhas de fluxo” que mostram a direção seguida por y(x). Introdução 7 Três soluções possíveis são mostradas na Figura abaixo. A solução de um problema específico é fixada pela condição inicial, que define o ponto onde y(x) começa, e pelo domínio de x, que especifica onde y(x) termina. As condições iniciais para as três soluções mostradas na Figura são: y(0) = 3, y(1,5) = 2 e y(2) = 6. Solução Numérica de uma EDO 8 - A solução numérica de uma EDO é formada por um conjunto de pontos discretos que representam a função y(x) de forma aproximada. - Quando se resolve numericamente uma equação diferencial, o enunciado do problema também inclui o domínio da solução. - Por exemplo, imagine que uma solução que seja necessária entre x = a e x = b (o domínio é [a, b]). Dependendo do método numérico usado para resolver a equação, pode-se ajustar previamente o número de pontos entre a e b nos quais deseja-se obter a solução, ou isso pode ser decidido pelo método. Solução Numérica de uma EDO 9 - O processo de solução de EDO é incremental, o que significa que ele é determinado em passos. - Começa-se no ponto no qual o valor inicial é fornecido. Em seguida, usando a solução conhecida no primeiro ponto, determina-se uma solução em um segundo ponto próximo. - Depois, obtém-se uma solução em um terceiro ponto, e assim por diante. Há procedimentos que envolvem uma abordagem de passo simples e outros que consideram uma abordagem multipasso. Solução Numérica de uma EDO 10 Passo simples A solução no ponto seguinte, xi + 1, é calculada a partir da solução conhecida no ponto atual, xi. Multipasso A solução em xi + 1 é calculada a partir das soluções conhecidas em vários pontos anteriores. A ideia é que o valor da função em vários pontos anteriores possa fornecer uma melhor estimativa para a tendência da solução. Dois tipos de métodos, explícito e implícito, também podem ser usados no cálculo da solução em cada passo. A diferença entre esses métodos está no procedimento usado na solução. Solução Numérica de uma EDO 11 Métodos explícitos Utilizam uma fórmula explícita para calcular o valor da variável dependente no próximo valor da variável independente. Em uma fórmula explícita, o lado direito da equação tem apenas grandezas conhecidas. Métodos implícitos Utilizam os valores xi, yi e xi + 1 para calcular yi + 1 a partir dos valores conhecidos: Em geral, métodos implícitos são mais precisos que métodos explícitos, mas requerem um maior esforço computacional. Método Explícito de passo simples 12 Em um método explícito de passo simples a solução numérica aproximada é calculada a partir da solução conhecida no ponto, usando: onde h é a largura do passo de integração e Inclinação é uma constante que estima o valor de dy/dx no intervalo de xi a xi+ 1. A solução numérica começa no ponto onde o valor inicial é conhecido, i = 1 ,(x1, y1). Em seguida, i se torna i = 2, e a solução no ponto seguinte, (x2, y2), é calculada. O procedimento continua com i = 3, e assim por diante, até que os pontos cubram todo o domínio da solução. Solução Numérica de uma EDO 13 MÉTODOS DE EULER O método de Euler é a mais simples técnica de solução de uma EDO de primeira ordem na forma: dy/dx = f(x,y) com a condição inicial: y(x1) = y1 O método pode ser formulado de forma explícita ou implícita. Solução Numérica de uma EDO 14 Método Explícito de Euler Técnica numérica de passo simples usada na solução de EDOs de 1ª ordem. O método usa as equações de passo, onde o valor da constante Inclinação é a inclinação de y(x) no ponto (xi, yi), ou seja, a própria equação diferencial: Para uma pequena distância h na vizinhança de (xi, yi), a função y(x) tem uma inclinação constante e igual à inclinação em (xi, yi). A partir dessa hipótese, xi + 1, yi + 1) é calculado usando: Solução Numérica de uma EDO 15 EXEMPLO 1 Use o método explícito de Euler para resolver a EDO de x = 0 a x = 2,5 com a condição inicial y = 3 em x = 0. (a) Resolva o problema manualmente usando h = 0,5. Exercício 1 (b) Escreva um programa em FORTRAN que resolva a equação usando h = 0,1. (c) Use o programa da letra (b) para resolver a equação usando h = 0,01. Em cada letra, compare os resultados com a solução exata (analítica): Solução Numérica de uma EDO 16 EXEMPLO 1 Solução iteração xi+1 yi+1 (SA) yi+1 (SN) |Erro| 1 0,5 4,072 4,700 0,6277 2 1,0 4,323 4,893 0,5696 3 1,5 4,170 4,550 0,3803 4 2,0 3,835 4,052 0,2165 5 2,5 3,436 3,542 0,1054 Solução Numérica de uma EDO 17 EXEMPLO 1 Solução Solução Numérica de uma EDO 18 Método Implícito de Euler A forma do método implícito de Euler é igual à forma do método explícito, exceto pelo fato de, para uma pequena distância h na vizinhança de (xi, yi), a inclinação da função y(x) deve ser tomada como uma constante igual à inclinação no ponto final do intervalo, (xi + 1, yi + 1). Solução Numérica de uma EDO 19 Exercício 2 Um componente químico apresenta um decaimento temporal quando exposto ao ar. Esse decaimento ocorre em uma taxa proporcional à sua concentração elevada a 3/2. Simultaneamente, o componente é produzido por outro processo. A equação diferencial que descreve a concentração instantânea do componente é: onde n(t) é a concentração instantânea e n1 = 2000 é a concentração inicial em t = 0. Resolva a equação diferencial para obter a concentração em função do tempo de t = 0 a t = 0,5 s usando o método implícito de Euler. Use o método de Newton para determinar as raízes da equação não-linear resultante. Adote um passo de integração de h = 0,001 s e trace um gráfico de n × tempo. Solução Numérica de uma EDO 20 Método de Euler Modificado - Este método é uma versão modificada do método explícito de Euler. - A principal hipótese adotada no método explícito assume que a derivada entre os pontos (xi, yi) e (xi + 1, yi + 1) em cada subintervalo seja constante e igual à derivada de y(x) no ponto (xi, yi) - principal fonte de erros do método. - Portanto, no método de Euler a inclinação usada é a média da inclinação no início do intervalo e de uma estimativa para a inclinação no final do intervalo. Solução Numérica de uma EDO 21 Solução Numérica de uma EDO 22 EXEMPLO 2 Use o método de Euler modificado para resolver a EDO de x = 0 a x = 2,5 com a condição inicial y(0) = 3. Exercício 3. Escreva um programa em FORTRAN que resolva a equação usando h = 0,5. Compare os resultados com os valores encontrados no Exemplo 1, e com a solução analítica): Solução Numérica de uma EDO 23 EXEMPLO 2 Solução iteração xi+1 yi+1 (SA) yi+1 (SN) |Erro| 1 0,5 4,072 3,946 0,1261 2 1,0 4,323 4,188 0,1351 3 1,5 4,170 4,063 0,1063 4 2,0 3,835 3,764 0,0716 5 2,5 3,436 3,394 0,0425 Solução Numérica de uma EDO 24 EXEMPLO 2 Solução Solução Numérica de uma EDO 25 MÉTODOS DE RUNGE-KUTTA - Os métodos de Runge-Kutta compõem uma família de técnicas numéricas explícitas de passo simples usadas na solução de EDOs de primeira ordem. - Conforme o método de Euler, em um subintervalo [xi , xi + 1], onde h = xi + 1 – xi, o valor de yi + 1 é calculado usando: onde Inclinação é uma constante, e obtido a partir do cálculo da inclinação em vários pontos no interior do subintervalo. - Estes métodos são classificados de acordo com sua ordem (nº de pontos usados em um subintervalo para determinar o valor de Inclinação). - A ordem do método também está relacionada ao erro de truncamento global. Solução Numérica de uma EDO 26 MÉTODOS DE RUNGE-KUTTA - Métodos de Runge-Kutta de segunda ordem usam a inclinação em dois pontos, métodos de terceira ordem usam três pontos, e assim por diante. A versão de quarta ordem é conhecida como Runge-Kutta clássico. -As diferenças entre os métodos aparecem na localização dos pontos usados para determinar as inclinações e no procedimento usado para determinar a constante Inclinação. - Os métodos de Runge-Kutta são mais precisos do que o método explícito de Euler. A sua precisão aumenta (isto é, o erro de truncamento diminui) à medida que a ordem do método aumenta. Em cada passo, no entanto, dependendo da ordem, são necessárias várias avaliações da função para se estimar a derivada de f(x, y). Solução Numérica de uma EDO 27 Métodos de Runge-Kutta de segunda ordem A forma geral dos métodos de Runge-Kutta de segunda ordem é: onde c1, c2, a2, e b21 são constantes. Os valores dessas constantes variam com o método de segunda ordem específico. O método de Euler modificado é uma versão do método de Runge-Kutta de segunda ordem. Solução Numérica de uma EDO 28 No método de Euler modificado, as constantes são: A substituição dessas constantes nas equações anteriores resulta em: onde Solução Numérica de uma EDO 29 EXEMPLO 3 Use o método de Runge-Kutta de 2ª ordem, (versão modificada de Euler) para resolver a EDO: de x = 0 a x = 2,0 com a condição inicial x = 0 e y = 3. Resolva manualmente usando h = 0,5 Exercício 4. Escreva um programa em FORTRAN que resolva a equação usando h = 0,5 e h = 0,1 . Solução Numérica de uma EDO 30 EXEMPLO 3 Solução iteração xi+1 K1 K2 yi+1 1 0,5 3,4 0,385 3,946 2 1,0 1,290 -0,322 4,189 3 1,5 0,160 -0,658 4,063 4 2,0 -0,412 -0,781 3,763 Solução Numérica de uma EDO 31 Métodos de Runge-Kutta de Quarta ordem A forma geral dos métodos de Runge-Kutta de quarta ordem é: onde c1, c2, c3, c4, a2, a3, a4, b21, b31, b32, b41, b42 e b43 são constantes. Os valores dessas constantes variam com o método de quarta ordem específico. Solução Numérica de uma EDO 32 O método de Runge-Kutta de quarta ordem clássico está entre os métodos mais comumente utilizados. As constantes desse método são: Com essas constantes, as equações do método de Runge-Kutta de quarta ordem clássico são: onde Solução Numérica de uma EDO 33 EXEMPLO 4 Use o método de Runge-Kutta de quarta ordem clássica para resolver a EDO de x = 0 a x = 1,5 com a condição inicial x = 0 e y = 3. Resolva manualmente usando h = 0,5 Exercício 5. Escreva um programa em FORTRAN que resolva a equação usando h = 0,5. Compare os resultados com a solução analítica): Solução Numérica de uma EDO 34 Exercício 6. Considere a EDO de primeira ordem a seguir: (a) Resolva a equação manualmente usando o método explícito de Euler com h = 0,6. (b) Resolva a equação manualmente usando o método de Euler modificado com h = 0,6. (c) Resolva a equação manualmente usando o método de Runge-Kutta de quarta ordem clássico com h = 0,6. (d) Faça um programa em FORTRAN para cada uma das alternativas. Compare os resultados com a solução analítica da EDO: Em cada letra, calcule o erro existente entre a solução exata e a solução numérica nos pontos em que a solução numérica é determinada. Solução Numérica de uma EDO 35 Exercício 7. Considere o tanque de água cilíndrico mostrado na figura. Enche-se o tanque por cima e a água sai por um cano conectado no fundo. A taxa de variação da altura do nível d’água h é dada pela equação: No tanque em questão, Atanque = 3,13 m², Acano = 0,06 m², K1 = 300 kg/h, K2 = 200 kg/h, ρ = 1000 kg/m³, e g = 9,81 m/s². Determine e trace um gráfico com a altura do nível d’água em função do tempo em s, se, em t = 0, h = 3 m (use um passo de 0,1 s). Solução Numérica de uma EDO 36 Exercício 8. Se água for drenada de um tanque cilíndrico vertical abrindo-se uma válvula na base, ela escoará rapidamente quando o tanque estiver cheio e mais lentamente conforme ele continuar a ser drenado. Como pode ser mostrado, a taxa pela qual o nível de água abaixa é: dy/dt = −k√y em que k é uma constante dependente da forma do orifício, da área da seção transversal do tanque e do orifício de drenagem. A profundidade da água, y, é medida em metros e o tempo t, em minutos. Se k = 0,06, determine quanto tempo levará para que o tanque fique vazio se o nível de fluido for inicialmente 3 m. Resolva aplicando os métodos descritos em aula e compare os resultados via Excel. Use um passo de 0,5 minuto. Solução Numérica de uma EDO 37 Exercício 9. Um tanque esférico tem um orifício circular no fundo pelo qual o líquido escoa para fora. A vazão pelo buraco pode ser estimada por Qout= C A √2gh em que Qout é o escoamento para fora (m³/s), C é um coeficiente obtido empiricamente, A é a área do orifício (m²), g é a constante gravitacional (9,81 m/s²) e h é a profundidade do líquido no tanque. Use um dos métodos numéricos descritos nesta aula para determinar quanto tempo levará para que a água escoe para fora de um tanque de 3 m de diâmetro com uma altura inicial de 2,75 m. Observe que o orifício tem um diâmetro de 3 cm e C = 0,55. Referências 38 PINTO, J. C. & LAGE P. L. C., Métodos Numéricos em Problemas de Engenharia Química, Ed. E-papers, 2001. GILAT, A. & SUBRAMANIAM, V., Métodos Numéricos para Engenheiros e Cientistas: uma introdução com aplicações usando o MATLAB, Tradução: Alberto Resende de Conti, Porto Alegre : Bookman, 2008 (ISBN 978-857780-297-5). CHAPRA, S. C. & CANALE, R. P., Métodos Numéricos para Engenharia [recurso eletrônico] / tradução técnica: Helena Castro. - 5. ed. - Dados eletrônicos. - Porto Alegre : AMGH, 2011.