durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/dissertacao... ·...

99

Upload: others

Post on 21-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

Métodos para resolução

de EDOs sti resultantes de

modelos químicos atmosféricos

Larissa Marques Sartori

Dissertação apresentadaao

Instituto de Matemática e Estatísticada

Universidade de São Paulopara

obtenção do títulode

Mestre em Ciências

Programa: Matemática Aplicada

Orientador: Prof. Dr. Saulo Rabello Maciel de Barros

Durante o desenvolvimento deste trabalho a autora recebeu auxílio nanceiro da CAPES

São Paulo, Janeiro de 2014

Page 2: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

Métodos para resolução

de EDOs sti resultantes de

modelos químicos atmosféricos

Esta dissertação trata-se da versão original

da aluna Larissa Marques Sartori.

Page 3: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

Agradecimentos

Agradeço a Deus pelas vitórias, pela esperança sempre renovada e principalmente pela família

maravilhosa que tenho. Paulino, Zilda e Iuri, todas as minhas conquistas eu dedico a vocês.

Agradeço ao meu orientador, Prof. Saulo, por ter me dado a oportunidade de fazer esse mestrado,

pela paciência e atenção que teve ao longo desses anos, e pelas críticas valiosas que ajudaram

melhorar cada vez mais esta dissertação.

Com especial gratidão, deixo meu muito obrigada ao Pedro Peixoto e ao Nelson L. Vidaurre

que foram amigos e coorientadores durante todo mestrado, compartilhando um pouquinho de seus

conhecimentos comigo.

Familiares e amigos sempre foram minha fonte de força e alegria. Agradeço à toda minha família

pelo apoio, aos amigos distantes, que sempre me acolhem como se o tempo não passasse, aos amigos

que me receberam em São Paulo, e aos amigos que conheci durante o mestrado, em especial aqueles

que dividem a mesma casa e fazem parte dos meus momentos de descontração.

Tenho certeza que sem a ajuda de muitas pessoas, o caminho teria sido muito mais difícil,

Juan, André, Janaina, Leandro, July, Gustavo e Diego, agradeço alguns de vocês pela ajuda em

momentos fundamentais da minha jornada, pelo tempo que dispuseram para discutir problemas de

matemática, e a todos pelo apoio e pela amizade.

Agradeço com enorme carinho os professores que conheci ao longo desses anos de estudo, aos

professores da UNESP, em especial ao meu orientador de iniciação cientíca, Prof. Jaime, que me

despertou o interesse de querer aprender cada vez mais, e aos professores do IME, pelas disciplinas

cursadas.

Agradeço ao Saulo Freitas e ao Rafael Mello por disponibilizarem o código do CPTEC.

Agradeço à CAPES pelo suporte nanceiro.

i

Page 4: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

ii

Page 5: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

Resumo

SARTORI, L. M.Métodos para resolução de EDOs sti resultantes de modelos químicos

atmosféricos. 2014. 99 f. Dissertação (Mestrado) - Instituto de Matemática e Estatística, Univer-

sidade de São Paulo, São Paulo, 2014.

Problemas provenientes de química atmosférica, possuem uma característica especial denomi-

nada stiness, indicando que as soluções dos sistemas de equações diferenciais ordinárias envolvidos

variam em diferentes ordens de grandeza. Isso faz com que métodos numéricos adequados devam

ser aplicados no intuito de obter soluções numéricas convergentes e estáveis. Os métodos mais e-

cazes para tratar este tipo de problema são os métodos implícitos, pois possuem uma região de

estabilidade ilimitada que permite grandes variações no tamanho do passo, mantendo o erro de

discretização dentro de uma dada tolerância. Mais precisamente, estes métodos possuem a proprie-

dade de A-estabilidade ou A(α)-estabilidade. Neste trabalho, comparamos dois métodos numéricos

com estas características: o método de Rosenbrock e a fórmula de diferenciação regressiva (métodos

BDF). O primeiro é usado no módulo de Química do modelo CCATT-BRAMS do Centro de Previ-

são de Tempo e Estudos Climáticos (CPTEC), sendo incluído na previsão numérica de regiões com

intensas fontes de poluição. Este é um método de passo simples implícito com um controle de passo

adaptativo. Aqui empregamos também o segundo, um método de passo múltiplo que dispõe de uma

fórmula que permite variação no tamanho do passo e na ordem, empregando o pacote LSODE. Os

resultados de nossas comparações indicam que os métodos BDF podem se constituir em interessante

alternativa para uso no CCATT-BRAMS.

Palavras-chave: Química atmosférica, problemas sti, métodos de Rosenbrock, fórmulas de dife-

renciação regressiva.

iii

Page 6: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

iv

Page 7: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

Abstract

SARTORI, L. M. Methods for solving sti ODEs resulting from atmospheric chemistry

models. 2014. 99 f. Dissertação (Mestrado) - Instituto de Matemática e Estatística, Universidade

de São Paulo, São Paulo, 2014.

Problems from atmospheric chemistry have a special characteristic denominated stiness, indi-

cating that the solutions of the involved ordinary dierential equations systems vary in dierent

scales. This means that appropriate methods should be applied in order to get convergent and stable

numerical solutions. The most powerful methods to treat problems like this are implicit schemes,

since they have unlimited stabity regions that, allowing for large variations in step size, keeping the

discretization error within a given tolerance. More precisely, these methods have the A-stability or

A(α)-stability properties. In this work, we compared two numerical methods with those characte-

ristics: the Rosenbrock method and the backward dierentiation formula (BDF). The rst one is

employed in the Chemistry package within CCATT-BRAMS local weather model of CPTEC (Cen-

ter for Weather Forecasts and Climate Studies), which is mainly used for the numerical forecasting

of regions with intense pollution. This is a implicit one-step method with an adaptative stepsize

control. We compare it with the second method, a multistep method with a formula that allows

variations in step size and order, with the help of the LSODE package. The results of our compa-

risons indicate that BDF methods are an interesting alternative to be used within CCATT-BRAMS.

Keywords: Atmospheric chemistry, sti problems, Rosenbrock methods, backward dierentiation

formulas.

v

Page 8: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

vi

Page 9: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

Sumário

Lista de Abreviaturas ix

Lista de Símbolos xi

Lista de Figuras xiii

Lista de Tabelas xv

1 Introdução 1

1.1 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.2 Organização do trabalho . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

2 Métodos de Rosenbrock 5

2.1 Desenvolvimento do método . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.1.1 Condições de ordem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.1.2 Estabilidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2.2 Redução de custos computacionais . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.2.1 Controle do passo de integração . . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.3 Implementação do método de Rosenbrock . . . . . . . . . . . . . . . . . . . . . . . . 15

3 Fórmulas de diferenciação regressiva 17

3.1 Desenvolvimento do método . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

3.1.1 Estabilidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

3.1.2 BDF com tamanho de passo variável . . . . . . . . . . . . . . . . . . . . . . . 22

3.2 Implementação do BDF no pacote LSODE . . . . . . . . . . . . . . . . . . . . . . . . 23

3.2.1 Matriz de Nordsieck . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.2.2 Erro local de truncamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

4 Aplicações em meteorologia 33

4.1 Modelagem numérica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

4.1.1 Exemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

4.2 Modelo CATT-BRAMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

4.2.1 Informação pré-processada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

5 Resultados numéricos 41

5.1 Depuração do código computacional . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

5.2 Exemplo EUSMOG químico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

vii

Page 10: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

viii SUMÁRIO

5.3 Aplicação no modelo do CPTEC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

6 Conclusões 59

A Conceitos preliminares 61

A.1 Métodos numéricos para problemas de valor inicial . . . . . . . . . . . . . . . . . . . 62

A.1.1 Método iterativo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

A.1.2 Polinômios interpoladores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

A.2 Convergência e consistência . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

A.2.1 Estabilidade para métodos de passo simples . . . . . . . . . . . . . . . . . . . 67

A.2.2 Estabilidade para métodos de passo múltiplo . . . . . . . . . . . . . . . . . . 69

A.3 Problemas sti : Um exemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

A.3.1 Stiness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

Referências Bibliográcas 79

Page 11: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

Lista de Abreviaturas

CPTEC Centro de Previsão de Tempo e Estudos Climáticos

EDO Equação Diferencial Ordinária (Ordinary Dierential Equation)

ROS Métodos de Rosenbrock (Rosenbrock methods)

BDF Fórmula de Diferenciação Regressiva (Backward Dierentiation Formula)

RK Métodos de Runge-Kutta (Runge-Kutta methods)

IRK Runge-Kutta Implícito (Implicit Runge-Kutta)

DIRK Runge-Kutta Diagonalmente Implícito (Diagonal Implicit Runge-Kutta)

CATT Coupled Aerosol and Tracer Transport model

CCATT Coupled Chemistry Aerosol and Tracer Transport model

BRAMS Brasilians developments on the Regional Atmospheric Modelling System

RAMS Regional Atmospheric Modelling System

INPE Instituto Nacional de Pesquisas Espaciais

ix

Page 12: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

x LISTA DE ABREVIATURAS

Page 13: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

Lista de Símbolos

Jf Matriz jacobiana de uma função f

∂f/∂t Derivada parcial de f em relação a t

∂f/∂y Derivada parcial de f em relação a y

y′ Derivada unidimensional

y(tn) Solução analítica do problema de valor inicial no ponto tnyn Solução numérica do problema de valor inicial no ponto tnL Constante de Lipschitz

I Matriz Identidade

y[n] n-ésima iteração

∇ Operador de diferenças regressiva

δh Erro local de discretização para método de passo simples

εn Erro global de discretização

αh Erro local de discretização para método de passo múltiplo

Ω Região de estabilidade do método de passo simples

ρ(r) Primeiro polinômio característico do método de passo múltiplo

σ(r) Segundo polinômio característico do método de passo múltiplo

Ψ Região de estabilidade absoluta do método de passo múltiplo

R(z) Função de estabilidade

Est Estimador de erro local para o método de Rosenbrock

TOL Tolerância

xi

Page 14: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

xii LISTA DE SÍMBOLOS

Page 15: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

Lista de Figuras

2.1 Regiões de estabilidade dos métodos Runge-Kutta explícitos. . . . . . . . . . . . . . 11

3.1 Regiões de estabilidade dos métodos BDF. . . . . . . . . . . . . . . . . . . . . . . . . 22

5.1 Cosseno do ângulo zenital. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

5.2 Autovalores do problema EUSMOG. . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

5.3 Evolução das espécies de 1 a 3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

5.4 Evolução das espécies de 4 a 6. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

5.5 Evolução das espécies de 7 a 9. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

5.6 Evolução das espécies de 10 a 12. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

5.7 Evolução das espécies de 13 a 15. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

5.8 Variação do tamanho do passo do ROS3. . . . . . . . . . . . . . . . . . . . . . . . . . 49

5.9 Variação do tamanho do passo e da ordem do BDF∗. . . . . . . . . . . . . . . . . . . 49

5.10 Autovalores para o problema de 72 espécies com o ROS3. . . . . . . . . . . . . . . . 50

5.11 Autovalores para o problema de 72 espécies com o BDF∗. . . . . . . . . . . . . . . . 51

5.12 Evolução das espécies de 1 a 4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

5.13 Evolução das espécies de 5 a 8. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

5.14 Evolução das espécies de 9 a 12. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

5.15 Evolução das espécies de 13 a 16. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

5.16 Evolução das espécies de 17 a 20. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

5.17 Evolução das espécies de 21 a 24. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

5.18 Evolução das espécies de 25 a 28. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

5.19 Evolução das espécies de 29 a 32. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

5.20 Evolução das espécies de 33 a 36. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

5.21 Evolução das espécies de 37 a 40. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

5.22 Evolução das espécies de 41 a 44. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

5.23 Evolução das espécies de 45 a 48. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

5.24 Evolução das espécies de 49 a 52. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

5.25 Evolução das espécies de 53 a 56. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

5.26 Evolução das espécies de 57 a 60. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

5.27 Evolução das espécies de 61 a 64. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

5.28 Evolução das espécies de 65 a 68. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

5.29 Evolução das espécies de 69 a 72. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

A.1 Região de estabilidade do método de Euler explícito. . . . . . . . . . . . . . . . . . . 68

xiii

Page 16: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

xiv LISTA DE FIGURAS

A.2 Região de estabilidade do método de Euler implícito. . . . . . . . . . . . . . . . . . . 68

A.3 Ângulo de A(α)-establidade. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

A.4 Região de sti -establidade. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

A.5 Soluções do problema (A.61) com o método de Euler explícito. . . . . . . . . . . . . 75

A.6 Soluções do problema (A.61) com o método de Euler implícito. . . . . . . . . . . . . 75

Page 17: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

Lista de Tabelas

2.1 Função de estabilidade para os métodos Runge-Kutta explícitos. . . . . . . . . . . . 11

3.1 Fórmulas de diferenciação regressivas de k-passos e ordem k. . . . . . . . . . . . . . . 20

3.2 Ângulo α para A(α)-estabilidade das fórmulas BDF. . . . . . . . . . . . . . . . . . . 22

3.3 Coecientes para os métodos BDF de ordem k. . . . . . . . . . . . . . . . . . . . . . 27

5.1 Convergência com o ROS3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

5.2 Convergência com BDF de ordem 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

5.3 Convergência com BDF de ordem 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

5.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

5.5 Espécies químicas e concentração inicial. . . . . . . . . . . . . . . . . . . . . . . . . . 45

5.6 Resultados para RTol = 10−1 e ATol = 1.0. . . . . . . . . . . . . . . . . . . . . . . . 46

5.7 Resultados para RTol = 10−2 e ATol = 1.0. . . . . . . . . . . . . . . . . . . . . . . . 47

5.8 Resultados para RTol = 10−3 e ATol = 1.0. . . . . . . . . . . . . . . . . . . . . . . . 47

5.9 Resultados para RTol = 10−4 e ATol = 1.0. . . . . . . . . . . . . . . . . . . . . . . . 47

5.10 Resultados para RTol = 10−5 e ATol = 1.0. . . . . . . . . . . . . . . . . . . . . . . . 47

5.11 Espécies químicas reagentes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

5.12 Resultados numéricos do conjunto de Testes 1. . . . . . . . . . . . . . . . . . . . . . 52

5.13 Resultados numéricos do conjunto de Testes 2. . . . . . . . . . . . . . . . . . . . . . 52

5.14 Resultados numéricos do conjunto de Testes 3. . . . . . . . . . . . . . . . . . . . . . 53

5.15 Resultados numéricos do conjunto de Testes 4. . . . . . . . . . . . . . . . . . . . . . 53

5.16 Resultados numéricos do conjunto de Testes 5. . . . . . . . . . . . . . . . . . . . . . 54

5.17 Resultados numéricos do conjunto de Testes 6. . . . . . . . . . . . . . . . . . . . . . 54

xv

Page 18: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

xvi LISTA DE TABELAS

Page 19: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

Capítulo 1

Introdução

O desenvolvimento de computadores cada vez mais potentes, proporciona à Análise numérica,desenvolver aplicações cada vez mais rápidas e precisas, como por exemplo, a previsão numérica dotempo. Uma previsão numérica, exige modelos sosticados que possam ser aplicados em qualquerambiente, fornecendo uma previsão com uma margem conável de veracidade e em menor tempopossível. O presente trabalho se dedica ao estudo de métodos numéricos aplicados a modelos quími-cos, que têm importância para previsões em ambientes com intensas fontes de poluição, como porexemplo, uma região de queimada. Os problemas relacionados à química atmosférica, resultam emsistemas de equações diferenciais ordinárias (EDOs) com uma característica especial denominadastiness, que ocorre devido às concentrações das espécies químicas variarem em diferentes ordensde grandeza. Esses não são os únicos problemas com esse tipo de característica, outros exemplossão encontrados no estudo de vibrações, circuitos elétricos e na teoria de controle ([HW96]).

Para resolver problemas de valor inicial sti, métodos numéricos adequados devem ser aplicadospara que a solução numérica seja estável e convergente a um custo computacional aceitável. Apesarde ser bastante frequente o tratamento de problemas que apresentam stiness, não temos umadenição matemáticamente precisa que descreva bem essa característica. Adotam-se denições maispráticas, baseadas em experimentos numéricos. Curtiss e Hirschfelder (1952) ([CH52]), foram osprimeiros a concluir que problemas sti precisam de métodos implícitos, pois esses possuem aregião de estabilidade adequada, mais precisamente, possuem uma região de estabilidade ilimitadaque cobre todo o semi-plano complexo com parte real negativa ou pelo menos parte ilimitadadeste. Um pouco mais tarde, Shampine e Gear (1979) ([Sem11]) ganharam muita experiência emtestes computacionais, oferecendo uma denição: o problema de valor inicial para EDOs é sti sea matriz jacobiana Jf = ∂f/∂y do sistema, possui pelo menos um autovalor, para o qual a partereal é negativa com módulo elevado, enquanto a solução dentro da maior parte do intervalo deintegração se modica lentamente. Essa denição é a que melhor caracteriza stiness, explicandoque esses problemas apresentam soluções nas quais algumas componentes tem decaimento muitomais rápido que outras.

Muitos métodos numéricos foram propostos, para resolver ecientemente problemas de químicaatmosférica. A natureza das equações, requerendo o uso de métodos implícitos, coloca uma grandedemanda computacional. As equações da química são resolvidas repetidamente em milhares de pon-tos de grade de um modelo atmosférico, levando à necessidade de métodos muito ecientes paraque seu uso seja viável. As principais referências na literatura para problemas de química atmos-férica ([HW96], [SVvL+97], [SVB+97], [ZLSS11]), apontam os métodos de Rosenbrock e o BDFimplementado nos solvers VODE e LSODE como os mais ecientes, principalmente porque estesdois últimos pacotes, possuem técnicas para trabalhar com matrizes esparsas, obtendo economiacomputacional.

Os resultados em [SVvL+97], confrontaram métodos explícito e implícitos, obtendo a conrma-ção de que o desempenho dos métodos implícitos é superior e mais preciso. Em todos os testes,se destacaram um método de Rosenbrock de ordem 4 e 6-estágios (RODAS), o método BDF im-plementado em VODE ([BBH89]) e um Runge-Kutta diagonalmente implícito de ordem 4. Além

1

Page 20: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

2 INTRODUÇÃO 1.2

disto, em [SVB+97], os testes compararam variações do Rosenbrock. A conclusão foi que o métodode Rosenbrock de ordem 3 e 4-estágios (ROS3), obteve desempenho semelhante ao RODAS, sendomais rápido em alguns testes e com menor esforço computacional. Os resultados em [HW96] foramsemelhantes, também mostraram que o Rosenbrock é melhor para pouca tolerância e o LSODE émuito rápido, mas menos preciso em alguns problemas.

Neste trabalho, vamos estudar e comparar os dois tipos de métodos implícitos: Rosenbrock eBDF. O primeiro, é o método atualmente utilizado no modelo CCATT-BRAMS do CPTEC. É ummétodo de passo simples, com seu desenvolvimento baseado nos métodos de Runge-Kutta diagonal-mente implícitos, obtendo resultados bem precisos, segundo a literatura. Como alternativa, vamosinvestigar as fórmulas de diferenciação regressiva, que são métodos adequados para problemas sti,e incluídos em solvers com boas técnicas de otimização, sendo bastante ecientes. Ambos os métodospermitem a variação do tamanho do passo de integração, devido a região de estabilidade ilimitada,de forma que utilizam um tamanho de passo pequeno onde a solução varia mais rapidamente, epermite aumentar o tamanho do passo em regiões onde a solução é mais suave, obtendo assim, umaredução nos custos computacionais. O BDF, além da variação do tamanho do passo, permite a va-riação da ordem. Para os testes desse trabalho, usamos os métodos BDF implementados no pacoteLSODE ([Hin93]). Nossos resultados indicam que os métodos BDF se constituem em interessantealternativa para uso no modelo CCATT-BRAMS.

1.1 Objetivos

Nossos objetivos nesse trabalho foram:

(i) Estudar métodos implícitos adequados para resolver problemas de valor inicial sti, isto é,o método de Rosenbrock usado no modelo CCATT-BRAMS e as fórmulas de diferenciaçãoregressiva (BDF) implementadas no pacote LSODE.

(ii) Modelar um problema de química atmosférica com a característica stiness e analisar qual avantagem da variação do tamanho do passo de integração e da ordem em relação aos custoscomputacionais.

(iii) Aplicar os métodos em um modelo químico fornecido pelo Centro de Previsão do Tempo e Es-tudos Climáticos (CPTEC), visando compará-los quanto aos custos computacionais, eciênciae precisão.

1.2 Organização do trabalho

Neste capítulo temos uma introdução sobre problemas sti e os objetivos almejados, seguidosda organização e distribuição dos capítulos.

No Capítulo 2, estudamos o desenvolvimento dos métodos de Rosenbrock ([SVB+97], [HW96]),mais precisamente o Rosenbrock de ordem 3 e 4-estágios (ROS3), usado no modelo CCATT-BRAMS, e analisamos suas propriedades. Estes são métodos de passo único, desenvolvidos atravésde linearização dos métodos de Runge-Kutta diagonalmente implícitos. Sua natureza de passo sim-ples, faz com que sejam muito atrativos e fáceis de implementar, pois permitem variar o tamanhodo passo no intervalo de integração de acordo com a estimativa de erro local, baseada nas fórmulasembutidas dos métodos de Runge-Kutta (RK) ([HNW87]).

No terceiro capítulo, fazemos um estudo sobre uma classe de métodos de passo múltiplo. Osmétodos são conhecidos por backward dierentiation formula (BDF), são métodos populares paraproblemas sti, com sua primeira implementação feita por Gear em 1968. Esses métodos não sãotão simples de implementar e sua escolha se deve ao fato de possuirem grande região de estabilidadee uma fórmula que permite a variação da ordem e do tamanho do passo de acordo com a estimativado erro local. Os testes foram feitos empregando o pacote LSODE, que permite escolher entre

Page 21: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

1.2 ORGANIZAÇÃO DO TRABALHO 3

os métodos de Adams-Moulton e o BDF, além das opções de trabalhar com a matriz jacobianaanalítica ou gerá-la internamente e possuir artefatos de otimização (ver [HW83], [Lam91]).

O Capítulo 4, exemplica como é feita a modelagem de uma reação química e a característica deum sistema resultante de várias dessas reações, sendo este um sistema sti. Esta é uma importanteparte da modelagem numérica em modelos mais sosticados de previsão do tempo, quando se incluiregiões com queimadas ou outras fontes de poluição, como pode ser visto em [FLR09] ou [FLD+05].Continuando neste capítulo, citamos as subrotinas contidas no modelo CCATT-BRAMS do Centrode Previsão do Tempo e Estudos Climáticos (CPTEC) e a importante capacidade de usar umpré-processador (KPP) que traduz as reações químicas em equações diferenciais ([DSD+02]).

O Capítulo 5 contém a aplicação e os resultados dos dois métodos estudados para resolverproblemas sti. Os métodos aplicados, foram o ROS3 e os métodos BDF variando a ordem de 1 a 5,devido a questões de estabilidade. Aplicamos os métodos em um exemplo com 15 reações entre 15espécies químicas, simulando as reações ocorrendo em um período de 5 dias, incluindo ciclos diurnose noturnos, analisamos a quantidade de passos necessária, juntamente com a variação do tamanhodo passo e os custos computacionais com as diferentes tolerâncias dadas. Finalmente analisamoso problema químico extraído do modelo de previsão do CPTEC, envolvendo 237 reações entre 72espécies químicas.

Por m, segue a conclusão sobre os resultados obtidos e um apêndice. No Apêndice A reunimosum conjunto de denições e conceitos preliminares necessários para desenvolver métodos numéri-cos para problemas de valor inicial. Abordamos denições tanto para métodos de passo simples,como para métodos de passo múltiplo e um pouco mais detalhadamente as propriedades de estabi-lidade, que são as mais delicadas nos estudo de problemas sti. Na segunda parte deste apêndice,seguem alguns exemplos de EDOs sti e as principais características através de testes com métodosnuméricos bem simples, o método de Euler explícito e o Euler implícito.

Page 22: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

4 INTRODUÇÃO 1.2

Page 23: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

Capítulo 2

Métodos de Rosenbrock

Os métodos estudados neste capítulo, surgiram em torno de 1963, quando Rosenbrock propôsuma solução numérica para equações sti. Os métodos de Rosenbrock, foram uma alternativa pararesolver equações implícitas, que geralmente eram solucionadas com processos iterativos. Rosen-brock desenvolveu uma nova classe de métodos de passo único, baseados em linearizações de méto-dos Runge-Kutta implícitos. Seus métodos, evitavam resolver sistemas não lineares, para resolveruma sequência de sistemas lineares, e assim eram mais fáceis de implementar. Podem também serencontrados na literatura como métodos de Runge-Kutta linearmente implícitos (ou Runge-Kuttasemi-implícitos) ([HW96]). Para desenvolvimento desta classe de métodos, utilizaremos a formaautônoma para sistemas de equações diferenciais ordinárias,

y′ = f(y), y(t0) = y0, (2.1)

com y = y(t) ∈ Rm, t ∈ R e f : Rm → Rm. A forma autônoma é mais adequada devido à facilidadede manipular as equações e trabalhar com uma notação menos carregada. Isto não resulta emalterações no método, pois sistemas não autônomos y′ = f(t, y) podem ser colocados na forma(2.1) simplesmente tratando a variável tempo t como uma variável dependente e acrescentando aosistema a equação t′ = 1.

2.1 Desenvolvimento do método

O desenvolvimento de um método de Rosenbrock, exige um estudo de como deve ser feita aaplicação dos métodos de passo único implícitos para resolver problemas não-lineares. A implicitudeé solucionada usando um processo iterativo. Neste trabalho, vamos usar o processo iterativo deNewton-Raphson denido na Seção A.1.1.

Utilizamos um método implícito simples para demonstrar a ideia do desenvolvimento do métodode Rosenbrock. Considere o método de Euler implícito (Seção A.2.1) aplicado ao problema de valorinicial (2.1):

yn+1 = yn + hf(yn+1) y(t0) = y0,

com h = tn+1 − tn o tamanho do passo e yn uma aproximação para y(tn). Cada passo do método,é equivalente a encontrar o zero de F , sendo F : Rm → Rm dada por

F (y) = y − yn − hf(y).

Uma iteração de Newton (A.9) para a equação acima, é dada por

y[1] = y[0] − J−1F (y[0])F (y[0]), (2.2)

onde JF (y[0]) = ∂F∂y (y[0]) é a matriz jacobiana das derivadas de F em relação a y.

5

Page 24: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

6 MÉTODOS DE ROSENBROCK 2.1

No desenvolvimento destes métodos, vamos fazer somente uma iteração de Newton, supomos yncomo valor inicial (yn = y[0]) e yn+1 = y[1] como a primeira iteração, segue que

yn+1 = yn − J−1F (yn)F (yn).

Considerando I a matriz identidade m × m, temos JF (yn) = I − hJf (yn) com Jf = ∂f∂y (yn) e

F (yn) = −hf(yn). Fazendo as substituições, obtemos a equação

yn+1 = yn − [I − hJf (yn)]−1(−hf(yn)). (2.3)

Denimos o vetor κ = yn+1 − yn, multiplicamos em ambos os lados de (2.3) por [I − hJf (yn)] edividimos por h, obtendo as fórmulas[

1hI − Jf (yn)

]κ = f(yn),

yn+1 = yn + κ.(2.4)

A solução numérica de (2.4) é ecientemente calculada, resolvendo um sistema de equações lineares( 1hI − Jf (yn))κ = f(yn) a cada passo do intervalo de integração. Dessa forma, reduz-se os custoscomputacionais evitando o cálculo de uma matriz inversa e a resolução de sistemas de equaçõesnão-lineares.

Rosenbrock (1963) propôs generalizar esta abordagem para métodos usando mais estágios deforma a alcançar uma maior ordem de consistência. A ideia foi linearizar um método Runge-Kuttadiagonalmente implícito, já que este possui uma fórmula que permite desenvolver métodos de muitosestágios e ordem elevada. O processo é equivalente a aplicar uma iteração de Newton e não continuarusando o processo iterativo até a convergência. A seguir temos a formulação geral dos métodosRunge-Kutta que inclui os métodos explícitos e implícitos ([HNW87],[Lam91],[But64a]).

Denição 2.1 Um método Runge-Kutta (RK) de s-estágios aplicado ao problema (2.1) é dado por

κi = hf(yn +

s∑j=1

aijκj), i = 1, . . . , s

yn+1 = yn +s∑i=1

biκi.

(2.5)

Quando aij = 0 para i ≥ j temos um método Runge-Kutta explícito. Se aij = 0 para i > j e pelomenos um aii 6= 0, temos um método Runge-Kutta diagonalmente implícito (DIRK). Se além disso,todos os elementos da diagonal são idênticos aii = γ, i = 1, . . . , s, chamamos de método Runge-Kutta isoladamente diagonal implícito (SDIRK). Nos casos restantes temos um método Runge-Kuttaimplícito (IRK).

Os métodos de Runge-Kutta que originaram os métodos de Rosenbrock, são os métodos diago-nalmente implícitos. A escolha de métodos implícitos se deve a questões de estabilidade que serãoesclarecidas no decorrer do trabalho.

Denição 2.2 Um método Runge-Kutta diagonalmente implícito de s-estágios aplicado ao sistemade EDOs (2.1) é dado pelas fórmulas

κi = hf(yn +

i−1∑j=1

aijκj + aiiκi), i = 1, . . . , s

yn+1 = yn +

s∑i=1

biκi.

(2.6)

Page 25: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

2.1 DESENVOLVIMENTO DO MÉTODO 7

Fazemos a expansão em série de Taylor da equação (2.6) até o primeiro termo, em torno degi = yn +

∑i−1j=1 aijκj , e obtemos a equação linearizada

κi = hf(gi) + hJf (gi)aiiκi. (2.7)

Veremos que esta equação (2.7) pode ser interpretada como a aplicação de uma iteração de Newtona cada estágio de (2.6). Vamos repetir o processo feito em (2.2) para a equação (2.6), considerandoneste caso que o problema a ser resolvido é F (κi) = 0, onde

F (κi) = κi − hf(gi + aiiκi),

com κi ∈ Rm e os valores iniciais κ[0]i = 0. Aplicar uma iteração de Newton para essa F resulta em

κ[1]i = κ

[0]i − J

−1F (κ

[0]i )F (κ

[0]i ). (2.8)

Substituindo os valores JF (κ[0]i ) = I−haiiJf (gi) e F (κ

[0]i ) = −hf(gi) em (2.8), e usando a condição

inicial κ[0]i = 0, temos

κ[1]i = − [I − haiiJf (gi)]

−1 (−hf(gi)). (2.9)

Podemos multiplicar ambos os lados da equação (2.9) por (I − haiiJf (gi)), obtendo

[I − haiiJf (gi)]κ[1]i = hf(gi).

O lado esquerdo dessa expressão é o produto de um vetor com a soma de duas matrizes, que podeser expandido de forma a obter a equação (2.7), isto é:

κ[1]i = hf(gi) + hJf (gi)aiiκ

[1]i ,

gi = yn +i−1∑j=1

aijκj .

(2.10)

Portanto, o desenvolvimento em série de Taylor até o primeiro termo, é equivalente a aplicar umaiteração de Newton ao problema (2.6). Dessa forma, Rosenbrock propôs uma nova classe de métodos,derivando fórmulas estáveis e trabalhando diretamente com a matriz jacobiana.

Substituindo a matriz jacobiana calculada em gi (Jf (gi)) por Jf (yn) = J em (2.10), obtêm-sevantagens computacionais, pois o cálculo desses fatores será necessário somente uma vez. Alémdisso, as multiplicações J.kj do lado direito de κ[1]

i , são substituídas por uma multiplicação comuma combinação linear dos kj .

Denição 2.3 Um método Rosenbrock de s-estágios aplicado ao sistema (2.1) é dado pelas equações

κi = hf(yn +i−1∑j=1

αijκj) + hJi∑

j=1

γijκj , i = 1, . . . , s,

yn+1 = yn +

s∑i=1

biκi,

(2.11)

com J = Jf (yn), onde s e os coecientes αij , γij , bi são determinados de forma a obter uma desejadaordem de consistência e estabilidade para os problemas sti.

Page 26: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

8 MÉTODOS DE ROSENBROCK 2.1

2.1.1 Condições de ordem

Os coecientes dos métodos de Rosenbrock (2.11) irão determinar novas condições de ordeme propriedades de estabilidade, diferentes das condições dos métodos de Runge-Kutta. Para obterum método Runge-Kutta de ordem p, deve-se expandir (2.5) em série de Taylor até o termo daordem p desejada e igualar com a série de Taylor da solução exata correspondente ([Lam91]).O desenvolvimento para métodos de Runge-Kutta de alta ordem, são feitos detalhadamente em[But64b], [HNW87] ou [But64a]. Vamos comparar as condições de ordem entre um método deRunge-Kutta de ordem três com o método de Rosenbrock equivalente. Temos que para um RK deordem 3, as condições são dadas por:

b1 + b2 + b3 = 1

b2a21 + b3(a31 + a32) = 12

b2a221 + b3(a2

31 + 2a31a32 + a232) = 1

3

b3a31a32 + b3a232 = 1

6 ,

(2.12)

Temos um conjunto de 4 equações e seis variáveis, o que resulta em innitas soluções. Essas equações(2.12) podem ser reescritas com uma notação usando somátorias, de forma a ser adaptadas paramétodos de maior ordem. Temos as seguintes equações:

3∑j=1

bj = 1

j−1∑k=1

bjajk =1

2, j = 2, 3

j−1∑k,l=1

bjajkajl =1

3, j = 2, 3

j−1∑k=1

bjajkakl =1

6, l = 2, j = 3

(2.13)

O processo para obter as condições para o método de Rosenbrock é o mesmo. Temos as seguintesequações para um Rosenbrock de ordem 3 ([HW96]):

3∑j=1

bj = 1

j−1∑k=1

bj(αjk + γjk) =1

2, j = 2, 3

j−1∑k,l=1

bjαjkαjl =1

3, j = 2, 3

j−1∑k=1

bj(αjk + γjk)(αkl + γkl) =1

6, l = 2, j = 3

(2.14)

Page 27: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

2.1 DESENVOLVIMENTO DO MÉTODO 9

Comparando (2.13) com (2.14), podemos observar que as únicas diferenças entre as condições deordem dos dois métodos, é que os coecientes ajk do método de Runge-Kutta, são substituídos porαjk + γjk no método de Rosenbrock. A construção de métodos Rosenbrock de maior ordem podeser vista em [HW96] ou [VSBLN83].

2.1.2 Estabilidade

A análise da região de estabilidade dos métodos de Rosenbrock de s-estágios é semelhante à dosmétodos de Runge-Kutta implícitos. Vamos fazer as análises para os métodos de Runge-Kutta. Oprocesso a ser feito é analisar o desempenho do método quando aplicado ao sistema teste ([Lam91]):

y′ = Ay, (2.15)

onde A é uma matriz de dimensão m ×m com m autovalores distintos λt, t = 1, . . . ,m, tais queRe(λt) < 0. Dessa forma, existe uma matriz não-singular Q tal que

Q−1AQ = Λ := diag[λ1, λ2, . . . , λm].

Aplicando o método Runge-Kutta (2.5) em (2.15), obtemos

κi = A.h

yn +s∑j=1

aijκj

, i = 1, . . . , s

yn+1 = yn +s∑i=1

biκi.

(2.16)

Denindo yn = Qzn, κi = Qli, i = 1, . . . , s, substituindo em (2.16) e multiplicando por Q−1,obtemos as seguintes equações

li = Λ.h

zn +

s∑j=1

aijlj

, i = 1, . . . , s

zn+1 = zn +

s∑i=1

bili,

que são equivalentes a aplicar o método no problema

z′ = Λz.

Então, o novo sistema obtido é desacoplado, e o desempenho do método pode ser analisado, equi-valentemente, por sua aplicação na equação

y′ = λy, λ ∈ C, Re(λ) < 0. (2.17)

A aplicação do método (2.16) no problema (2.17), pode ser denotada por

yn+1 = R(λh)yn, (2.18)

onde R(λh) será a função de estabilidade dada na Denição A.11. Claramente, teremos que yn → 0quando n → ∞ somente se |R(λh)| < 1. E a região de estabilidade do método Runge-Kutta des-estágios é dada pelo conjunto dos valores λh ∈ C tais que |R(λh)| < 1.

Page 28: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

10 MÉTODOS DE ROSENBROCK 2.1

Para estudar a forma de R(λh), reescrevemos o método de Runge-Kutta por

κi = f(yn + hs∑j=1

aijκj), i = 1, . . . , s

yn+1 = yn + hs∑i=1

biκi.

.

Agora, considerando a mudança κi = f(Yi), temos uma fórmula equivalente para o método Runge-Kutta de s-estágios, que facilita o estudo da função de estabilidade,

Yi = yn + hs∑j=1

aijf(Yj), i = 1, . . . , s

yn+1 = yn + h

s∑i=1

bif(Yi).

Aplicando este método na equação (2.17), segue que

Yi = yn + λh

s∑j=1

aijYj , i = 1, . . . , s

yn+1 = yn + λhs∑i=1

biYi.

Denindo Y := [Y1, Y2, . . . , Ys]T e e := [1, 1, . . . , 1]T ∈ Rs, e substituindo na equação acima, com A

a matriz dos coecientes aij , obtemos

Y = yne+ λhAY,yn+1 = yn + λhbTY.

Isolando Y na primeira equação e substituindo na segunda, resulta

yn+1 = yn[1 + λhbT (I − λhA)−1e],

onde I é a matriz identidade s× s. Logo, temos que a função de estabilidade do método de Runge-Kutta aplicado a equação (2.17), é dada por

R(λh) = 1 + λhbT (I − λhA)−1e.

Outra forma para obter essa função de estabilidade foi desenvolvida por Dekker e Verwer (1984),pode ser encontrada em [Lam91], e trabalha com o determinante, sendo dada por

R(λh) =det[1− λhA+ λhebT ]

det[I − λhA](2.19)

Esse desenvolvimento foi feito para métodos de Runge-Kutta em geral, podendo ser modicadofacilmente para obter a função de estabilidade para o método desejado, por exemplo, para o métododiagonalmente implícito, basta fazer j variando de 1 a i na somatória, e o resultado é uma mudançana matriz dos coecientes A. Analisando a equação (2.19) temos que para métodos (RK) explícitos,a matriz A é estritamente triangular inferior, e (I−λhA) é triangular inferior com diagonal unitária,logo, det[I − λhA] = 1 e a função de estabilidade do método (RK) será uma função polinomial.Quando |λh| → ∞, são poucos valores que satisfazem |R(λh)| < 1, portanto a região de estabilidadede métodos explícitos é nita.

O seguinte teorema é apresentado em [HW96] e traz um resultado sobre a função de estabilidadedos métodos de Runge-Kutta explícitos:

Page 29: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

2.1 DESENVOLVIMENTO DO MÉTODO 11

Teorema 2.1 Se o método Runge-Kutta é de ordem p, temos

R(µ) = 1 + µ+µ2

2!+µ3

3!+ · · ·+ µp

p!+O(µp+1),

onde µ = λh.

A Tabela 2.1 abaixo, mostra as funções de estabilidade para um método Runge-Kutta explícitode p-estágios e ordem p com p = 1, . . . , 4, e na Figura 2.1 temos os grácos dessas regiões deestabilidade, que podem ser encontradas em [HW96].

p Função de Estabilidade R(µ)

1 1 + µ

2 1 + µ+ µ2

2

3 1 + µ+ µ2

2 + µ3

3!

4 1 + µ+ µ2

2 + µ3

3! + µ4

4!

Tabela 2.1: Função de estabilidade para os métodos Runge-Kutta explícitos.

Figura 2.1: Regiões de estabilidade dos métodos Runge-Kutta explícitos.

As funções de estabilidade para os métodos Runge-Kutta implícitos, podem ser vistas, porexemplo, em [HW96]. Para métodos semi-implícitos e implícitos, a função de estabilidade é umafunção racional, o que torna possível termos regiões de estabilidade absoluta ilimitadas. Vamosanalisar a estabilidade para o método de Rosenbrock.

Aplicando o método (2.11) na equação teste (2.17) e escrevendo a solução numérica na forma(2.18), obtemos a função de estabilidade para o método de Rosenbrock ([HW96]):

R(λh) = 1 + λhbT (I − λhB)−1e,

que escrita em termos do determinante, resulta em

R(λh) =det(I − λhB + λhebT )

det(I − λhB),

com Is×s a matriz identidade, e := [1, 1, . . . , 1]T ∈ Rs e B = (βij)si,j=1 a matriz dos coecientes, a

qual é triangular, com βij = αij + γij . Como o método de Rosenbrock é implícito, o denominadordessa função é também uma função polinomial. Assim, a função de estabilidade R(λh) para métodosimplícitos é uma função racional, com numerador e denominador de grau ≤ s. Podemos escrever

Page 30: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

12 MÉTODOS DE ROSENBROCK 2.2

essa função em termos de polinômios

R(λh) =P (λh)

Q(λh), (2.20)

da seguinte forma

R(λh) =P (λh)

(1− β11λh)(1− β22λh) . . . (1− βssλh),

pois o determinante da matriz triangular (I−λhB) é o produto dos elementos da diagonal. No casodos métodos de Rosenbrock com β11 = β22 = . . . = βss = γ, temos

R(λh) =P (λh)

(1− γλh)s. (2.21)

As condições de estabilidade para o método de Rosenbrock, são obtidas analisando-se o conjuntodos valores λh tais que |R(λh)| < 1, assim como para os métodos de Runge-Kutta. Resulta (De-nição A.12) que o método de Rosenbrok é A-estável, isto é, seu domínio de estabilidade contém omeio-plano complexo esquerdo (C−). Uma aproximação dessas funções racionais (2.20) para deter-minar a região de estabilidade dos métodos de Rosenbrock, pode ser obtida usando Aproximaçõesde Padé como encontradas em [HW96], Capítulo IV.3.

2.2 Redução de custos computacionais

Cada estágio de um método de Rosenbrock (2.11), consiste em resolver o sistema de equaçõeslineares que denem os vetores κi′s, sendo (I−hγiiJ) a matriz desse sistema, além de uma avaliaçãoda matriz jacobiana e as multiplicações matriz-vetor J.

∑γijκj . Uma forma de reduzir os custos

computacionais é através da seguinte mudança de variáveis

ui =i∑

j=1

γijκj , i = 1, . . . , s. (2.22)

Assim, se γii 6= 0 ∀i, temos que a matriz Γ = (γij) será invertível e κi irá decorrer de ui:

κi =1

γiiui −

i−1∑j=1

cijuj , i = 1, . . . , s, (2.23)

sendo que os novos coecientes c′is, são as entradas da matriz C = diag(γ−111 , . . . , γ

−1ss ) − Γ−1.

Ilustramos as novas equações para o caso de um método de Rosenbrock (2.11) de 2-estágios.Calculando as novas variáveis (2.22) para i = 1, 2, temos

u1 = γ11κ1 ⇒ κ1 =1

γ11u1

u2 = γ21κ1 + γ22κ2 ⇒ κ2 =1

γ22u2 −

γ21

γ11γ22u1.

Para este método a matriz Γ = (γij) é dada por

Γ =

[γ11 0γ21 γ22

],

Page 31: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

2.2 REDUÇÃO DE CUSTOS COMPUTACIONAIS 13

cuja inversa é facilmente calculada:

Γ−1 =1

γ11γ22

[γ22 0−γ21 γ11

].

Calculando a matriz C = diag(γ−111 , γ

−122 )− Γ−1, temos

C =

[1γ11

0

0 1γ22

]− 1

γ11γ22

[γ22 0−γ21 γ11

]e podemos reescrever κ2 por:

κ2 =1

γ22u2 − c21u1.

Substituindo o valor dessas novas variáveis em (2.11) para i = 1, 2 e dividindo por h, segue quepara o primeiro estágio, obtemos:

1

γ11u1 = hf(yn) + hJu1 ⇒

(1

hγ11I − J

)u1 = f(yn)

e para o segundo estágio

1γ22u2 − γ21

γ11γ22u1 = hf(yn + α21

γ11u1) + hJ

(γ21γ11u1 + γ22

(1γ22u2 − γ21

γ11γ22u1

))= hf(yn + α21

γ11u1) + hJu2

⇒(

1hγ22

I − J)u2 = f(yn + α21

γ11u1) + c21

h u1

Podemos denir ainda, novas variáveis para simplicar os coecientes. Seja (aij) = (αij).Γ−1 e

(m1,m2) = (b1, b2).Γ−1. Fazendo as substituições, obtemos uma nova formulação para o método deRosenbrock de 2-estágios: (

1hγ11

I − J)u1 = f(yn)

(1

hγ22I − J

)u2 = hf(yn + a21u1) + c21

h u1.

yn+1 = yn +m1u1 +m2u2.

Da mesma forma podemos obter métodos de Rosenbrock com mais estágios, a fórmula geralpode ser obtida por indução. Com essa mudança, evitamos as multiplicações matriz-vetor citadasacima, tornando os métodos de Rosenbrock mais ecientes.

A nova formulação para um método de Rosenbrock de s-estágios será dada por:

(1hγii

I − J)ui = f(yn +

i−1∑j=1

aijuj) +

i−1∑j=1

(cijh

)uj , i = 1, . . . , s,

yn+1 = yn +

s∑j=1

mjuj ,

(2.24)

onde (aij) = (αij) · Γ−1 e (m1, . . . ,ms) = (b1, . . . , bs) · Γ−1.

Page 32: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

14 MÉTODOS DE ROSENBROCK 2.3

Além dessa mudança de variável, uma eciente implementação do método deve considerar rotinasque trabalham com boas técnicas de matrizes esparsas pois, a matriz jacobiana em modelos dequímica atmosférica, possui geralmente, quase 90% de suas entradas nulas. Umas das técnicas usadaspara trabalhar essa parte da implementação será discutida mais adiante e faz uso do pré-processadorKPP ([DSD+02]), que utiliza métodos que minimizam o preenchimento da decomposição LU de umamatriz esparsa.

2.2.1 Controle do passo de integração

Os métodos de Rosenbrock são também atrativos por sua fórmula de passo único facilitar nocontrole do tamanho do passo, com seu ajuste feito de maneira automática para alcançar umadada tolerância para o erro local. Da mesma forma que nos métodos de Runge-Kutta, o controlede passo é baseado nas chamadas fórmulas embutidas ([HNW87],[ZLSS11]) que utilizam os vetoresde incremento κi já calculados,

yn+1 = yn +s∑i=1

biκi. (2.25)

A única diferença na aproximação yn+1 é a escolha dos pesos bi, não acarretando grande custoextra para o cálculo da fórmula embutida. Os pesos são escolhidos de forma que a ordem de consis-tência de (2.25) seja p = p−1, sendo p a ordem do método Rosenbrock implementado. Denotaremosa ordem deste par de fórmulas por p(p).

Denimos um estimador de erro local por Est = yn+1 − yn+1. Para delimitar o tamanho dopasso, temos que calcular o erro que depende de uma tolerância (TOL), dada por

TOLk = ATol +RTol|yn+1,k|, (2.26)

onde ATol e RTol são dadas e representam, respectivamente, as tolerâncias de erro absoluto eerro relativo, denidas de acordo com a solução do problema. Denotamos por yn+1,k a k-ésimacomponente de yn+1 e damos a fórmula que normaliza a solução:

Err =

√√√√ 1

m

m∑k=1

(EstkTOLk

)2

, (2.27)

sendo m a dimensão do sistema de EDOs.Assim, o passo de integração é aceito se Err < 1, caso contrário é rejeitado e refeito. A estimativa

para o novo h é calculada a cada iteração, sendo dada por ([ZLSS11],[HW96]),

hnew = h.min(facmax,max(facmin, fac/(Err)1/(p+1))), (2.28)

onde facmax e facmin são limitantes para o tamanho de passo e fac é um fator de segurança,geralmente valendo 0.8, 0.9, (0.25)1/(p+1) ou (0.38)1/(p+1), esses três fatores são determinados de-pendendo da ordem do método.

No primeiro passo depois de uma rejeição, o fator de crescimento máximo facmax é diminuído.Além disso, h é limitado por um hmin e um hmax e em qualquer início de integração, começamoscom um h inicial h = hstart, sucientemente pequeno para que o erro nos primeiros passos nãodomine a solução.

Page 33: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

2.3 IMPLEMENTAÇÃO DO MÉTODO DE ROSENBROCK 15

2.3 Implementação do método de Rosenbrock

Ométodo usado é um Rosenbrock de 3a ordem e 4-estágios, que denotaremos por ROS3. A versãousada no modelo do CPTEC utiliza a mudança de variáveis para reduzir os custos computacionais,descrita na Seção 2.2, e uma fórmula embutida de 2a ordem para o controle do passo de integração(Seção 2.2.1). O Rosenbrock de ordem 3(2), com s = 4 é dado por

κi = hf(yn +

i−1∑j=1

αijκj) + hJ

i∑j=1

γijκj , i = 1, . . . , 4

yn+1 = yn +4∑i=1

biκi,

(2.29)

sendo os coecientes tirados de ([SVB+97]), onde

(αij) =

0 0 0 00 0 0 01 0 0 0

3/4 −1/4 1/2 0

e (γij) =

1/2 0 0 0

1 1/2 0 0−1/4 −1/4 1/2 01/12 1/12 −2/3 1/2

(2.30)

e os pesos, da fórmula de ordem 3 (bi) e da fórmula embutida de ordem 2 (bi), dados respectivamente,por

(b1, b2, b3, b4) =(

5/6 −1/6 −1/6 1/2)

(2.31)

e(b1, b2, b3, b4) =

(3/4 −1/4 1/2 0

). (2.32)

A mudança de variáveis utilizada para reduzir os custos computacionais, exige o cálculo de novoscoecientes. Temos que a matriz Γ = (γij) é invertível, pois é uma matriz triangular inferior comelementos da diagonal não nulos (γii = 1

2). Sua inversa é

Γ−1 =

2 0 0 0−4 2 0 0−1 1 2 0−1 1 8/3 2

. (2.33)

Os novos coecientes são facilmente calculados com as fórmulas descritas na Seção 2.2 e com amatriz inversa Γ−1. Calculando C = diag(γ−1

11 , . . . , γ−1ss )− Γ−1 e (aij) = (αij)Γ

−1, obtem-se

C =

0 0 0 04 0 0 01 −1 0 01 −1 −8/3 0

e (aij) =

0 0 0 00 0 0 02 0 0 02 0 1 0

. (2.34)

Os novos pesos (m1,m2,m3,m4) = (b1, b2, b3, b4)Γ−1 e (m1, m2, m3, m4) = (b1, b2, b3, b4)Γ−1,são dados, respectivamente, por

(m1,m2,m3,m4) =(

2 0 1 1), (2.35)

e(m1, m2, m3, m4) =

(2 0 1 0

). (2.36)

Page 34: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

16 MÉTODOS DE ROSENBROCK 2.3

Portanto, obtemos novas equações para o método Rosenbrock de ordem p = 3, s = 4-estágios,com uma fórmula embutida (yn+1) de ordem p = p− 1 = 2:(

2hI − J

)u1 = f(yn)(

2hI − J

)u2 = f(yn) + 4

hu1(2hI − J

)u3 = f(yn + 2u1) + 1

hu1 − 1hu2(

2hI − J

)u4 = f(yn + 2u1 + u3) + 1

hu1 − 1hu2 − 8

3hu3

(2.37)

com

yn+1 = yn + 2u1 + u3 + u4, (2.38)

yn+1 = yn + 2u1 + u3. (2.39)

Como os coecientes multiplicando a matriz identidade do lado esquerdo de cada sistema em(2.37) são os mesmos, em cada estágio do método calculamos somente uma vez a matriz jacobiana,a matriz ( 2

hI − J) e a decomposição LU para cada passo de integração, sendo a que decomposiçãoLU é armazenada e só teremos os custos adicionais das avaliações da F e das substituições forward-backward para a solução do sistema linear em cada estágio.

Page 35: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

Capítulo 3

Fórmulas de diferenciação regressiva

Vamos estudar uma classe de métodos que utilizam fórmulas de diferenciação regressiva, conhe-cidos por Backward Dierentiation Formulas (BDF). As propriedades destes métodos, fazem comque sejam adequados para resolver problemas sti, pois são implícitos e possuem grande regiãode estabilidade. Os métodos BDF são de passo múltiplo, e podem ter vantagem em relação aosmétodos de passo único, devido à possibilidade de alcançar precisões maiores utilizando o mesmonúmero de funções avaliadas.

O primeiro código aplicado em problemas sti foi criado por Gear e incluído no pacote denomi-nado DIFSUB em 1968 ([Gea71],[Hin83]). Esse pacote foi revisado em 1969 e passou a ser chamadode STIFF. Um pouco mais tarde, nos anos de 1974, o pacote STIFF foi reescrito e o novo códigorecebeu o nome de GEAR.

Todos os pacotes continham métodos de passo múltiplo para resolver ambos problemas não-stie sti, sendo esses, respectivamente, os métodos de Adams (explícitos e implícitos) e os métodosBDF, e usavam um tamanho de passo h xo para vários passos do intervalo de integração. O pacoteGEAR foi o mais usado nos anos 70, mas não dava bons resultados em problemas de cinética químicaque apresentavam fortes e frequentes variações no tempo. Isto motivou um projeto para desenvolvermétodos BDF com coecientes variáveis que recebeu o nome de EPISODE ([BHJB77],[BBH89]).Entretanto, EPISODE resolvia bem os problemas de cinética química, mas não foi eciente paraproblemas sti suaves, devido às frequentes trocas dos coecientes na matriz jacobiana.

Em 1973, o pacote GEAR foi modicado para que ajustasse o tamanho do passo interpolandoos valores já calculados. O resultado não foi muito estável para alguns problemas de cinética diurna,então, foi desenvolvido um pacote com um ajuste do tamanho do passo após cada passo de integra-ção. O resultado foi um método que deniram como método de passo variável, sendo incorporadono pacote EPISODE.

Por m, criaram o ODEPACK, contendo uma coleção de solvers para resolver problemas devalor inicial, e GEAR e seus sucessores foram reescritos em um solver mais simples, com uma inter-face padronizada para os usuários, denonimado LSODE ([Hin93]). Nesse mesmo sentido, foi criadoVODE, sendo praticamente idêntico ao LSODE, mas contendo métodos de coecientes variáveis,que não serão discutidos neste trabalho. No decorrer deste capítulo, nos dedicamos ao estudo dosmétodos BDF que foram implementados em LSODE, analisando as implementações do método como processo preditor-corretor e a matriz de Nordsieck ([Nor62],[Gea67]).

17

Page 36: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

18 FÓRMULAS DE DIFERENCIAÇÃO REGRESSIVA 3.1

3.1 Desenvolvimento do método

Faremos o desenvolvimento de um método BDF, usando as diferenças regressivas, e nas próximasseções estudamos como a implementação é feita no LSODE. Considere o problema de valor inicialna forma não autônoma,

y′ = f(t, y), y(t0) = y0. (3.1)

Um método de passo múltiplo linear ou método de k-passos linear, aplicado ao problema (3.1) podeser denotado por

γ0yn+1 + γ1yn + . . .+ γkyn+1−k = h(λ0fn+1 + λ1fn + . . .+ λkfn+1−k), (3.2)

ou equivalentemente

k∑j=0

γjyn+1−j = hk∑j=0

λjfn+1−j ,

onde os γj , λj , são constantes com γ0 6= 0, yn+1−j é a solução numérica em t = tn+1−j , fn+1−j éa aproximação para f(tn+1−j , yn+1−j) e h é o tamanho do passo de integração. Para λ0 = 0 temosum método explícito e para λ0 6= 0 o esquema é implícito. Como exemplo de métodos explícitos,temos os métodos de Adams-Bashforth, e para os implícitos, temos os métodos de Adams-Moulton,ambos são obtidos por integração numérica e interpolação polinomial ([Lam91]). A diferença entreos dois, considerando métodos de mesma ordem, é que o explícito usa interpolação polinomial degrau ≤ k − 1 e o implícito usa interpolação de grau ≤ k, além de usar menos passos e ter regiõesde estabilidade maiores ([Dat08]).

Os métodos BDF são implícitos com λ0 = 1 e λj = 0, j = 1, . . . , k, possuem uma derivaçãodiferente da dos métodos de passo múltiplo de Adams-Bashforth e Adams-Moulton. Eles são obtidospor interpolação polinomial e diferenciação numérica (em vez de integração numérica). Faremos odesenvolvimento considerando o tamanho de passo h xo. Começamos denindo o polinômio queinterpola os pontos

(tn+1, yn+1), (tn, yn), . . . , (tn+1−k, yn+1−k). (3.3)

A fórmula de integração pode ser obtida utilizando vários tipos de polinômio interpolador (Apên-dice A), a forma mais prática é usando os polinômios de Newton-Gregory (A.12), que já usam asdiferenças regressivas (A.11). Temos que o polinômio de ordem k, interpolando os k + 1 pontos(3.3), é dado por

Ik(t) = Ik(tn+1 + rh) = Pk(r) =k∑i=0

(−1)i(−ri

)∇iyn+1.

Como a ideia do método é usar diferenciação, substituímos o lado esquerdo de y′ = f(t, y) peladerivada deste polinômio em t = tn+1 (r = 0), obtemos

I′k(tn+1) =

1

hP′k(r)| r=0

=1

h

k∑i=0

(−1)id

dr

(−ri

)∣∣∣∣∣r=0

∇iyn+1.

Para o lado direito usamos a aproximação fn+1 para f(tn+1, y(tn+1)). A fórmula obtida é dada por

k∑i=0

δi∇iyn+1 = hfn+1,

Page 37: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

3.1 DESENVOLVIMENTO DO MÉTODO 19

onde

δi = (−1)id

dr

(−ri

)∣∣∣∣r=0

, (3.4)

satisfazendo δ0 = 0δi = 1

i , i = 1, . . . , k.(3.5)

Desta forma obtemos as fórmulas de diferenciação regressiva (backward dierentiation formulas)

k∑i=1

1

i∇iyn+1 = hfn+1. (3.6)

Exemplo 3.1 Considerando os pontos (tn+1, yn+1), (tn, yn) e (tn−1, yn−1), desenvolveremos ummétodo BDF de 2-passos. A aproximação para y(t) com o polinômio interpolador de Newton-GregoryI2(t) de ordem 2, é dada por

I2(t) = I2(tn+1 + rh) = P2(r) =2∑i=0

(−1)i(−ri

)∇iyn+1. (3.7)

A derivada deste polinômio (3.7) calculada em tn+1 (r = 0), resulta

I′2(tn+1) =

1

hP′2(r)|

r=0=

1

h

2∑i=0

(−1)id

dr

(−ri

)∣∣∣∣r=0

∇iyn+1.

Como I′2(t) ≈ y′(t) = f(t, y), segue que

hf(tn+1, yn+1) ≈ hI ′2(tn+1) =

2∑i=0

(−1)id

dr

(−ri

)∣∣∣∣r=0

∇iyn+1. (3.8)

Expandindo a somatória em (3.8) e utilizando a variável (3.4), obtemos

hf(tn+1, yn+1) = δ0∇0yn+1 + δ1∇1yn+1 + δ2∇2yn+1.

Por m, utilizamos a aproximação fn+1, os valores de δi dados em (3.5) e calculamos os operadoresde diferença regressiva, temos

hfn+1 = 0 + (yn+1 − yn) +1

2(yn+1 − 2yn − yn−1).

Com isto obtemos um método BDF de 2-passos

3

2yn+1 − 2yn +

1

2yn−1 = hfn+1. (3.9)

Analogamente, podemos derivar os métodos de diferenciação regressiva com maior número depassos e maior ordem. A Tabela 3.1, traz as fórmulas BDF estáveis de k-passos e ordem k ([HNW87]).

Page 38: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

20 FÓRMULAS DE DIFERENCIAÇÃO REGRESSIVA 3.1

k BDF

1 yn+1 − yn = hfn+1

2 32yn+1 − 2yn + 1

2yn−1 = hfn+1

3 116 yn+1 − 3yn + 3

2yn−1 − 13yn−2 = hfn+1

4 2512yn+1 − 4yn + 3yn−1 − 4

3yn−2 + 14yn−3 = hfn+1

5 13760 yn+1 − 5yn + 5yn−1 − 10

3 yn−2 + 54yn−3 − 1

5yn−4 = hfn+1

6 14760 yn+1 − 6yn + 15

2 yn−1 − 203 yn−2 + 15

4 yn−3 − 65yn−4 + 1

6yn−5 = hfn+1

Tabela 3.1: Fórmulas de diferenciação regressivas de k-passos e ordem k.

3.1.1 Estabilidade

Faremos a análise de estabilidade para os métodos BDF, como a feita no Apêndice A, Se-ção A.2.2, sobre estabilidade dos métodos de passo múltiplo. Temos que polinômio característicopara o método BDF (3.6) é dado por

ρ(r) =

k∑i=1

1

irk−i(r − 1)i. (3.10)

Para aproveitar o Exemplo 3.1, vamos calcular o polinômio característico de um método BDFde 2-passos. Aplicamos o método (3.6) na equação teste y′(t) = 0,

2∑i=1

∇iyn+1 = 0.

Expandindo a somatória e fazendo o cálculo dos operadores, segue que

∇1yn+1 + 12∇

2yn+1 = 0

yn+1 − yn + 12(yn+1 − 2yn + yn−1) = 0.

Supomos a solução da forma yn = rn e substituímos na equação acima

rn+1 − rn +1

2(rn+1 − 2rn + rn−1) = 0.

Divindo por rn−1, obtem-se

r2 − r + 12(r2 − 2r + 1) = 0

r(r − 1) + 12(r − 1)2 = 0.

Essa notação sem distribuir os termos, facilita escrever uma fórmula com somatória. Temos opolinômio característico para o BDF de 2-passos

ρ(r) =

2∑i=1

1

ir2−i(r − 1)i.

Page 39: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

3.1 DESENVOLVIMENTO DO MÉTODO 21

O teorema a seguir, é um resultado muito importante sobre a estabilidade dos métodos BDF. Ademonstração é facilitada, reescrevendo o polinômio (3.10) em uma notação mais conveniente, deforma a estudar suas raízes. Fazemos r = 1/(1− z) e substituímos em (3.10),

p(z) = (1− z)kρ(

1

1− z

)=

k∑i=1

zi

i. (3.11)

Também para auxiliar na demonstração, precisamos do seguinte resultado sobre zero-estabilidade:

Lema 3.1 O método BDF de k-passos e ordem k (3.6), é zero-estável (Denição A.13) se todasas raízes do polinômio (3.11) estão fora do disco z; |z − 1| ≤ 1, com raízes simples permitidas nafronteira.

De qualquer forma a determinação da zero-estabilidade dos métodos BDF requer o estudo dasraízes de p(z). Temos o seguinte teorema, cuja primeira demonstração foi dada por Cryer (1971),sendo publicada em (1972) e uma segunda prova foi dada por Creedon e Miller (1975). Aqui daremosuma breve idéia da demonstração, dada por Hairer e Wanner (1983) ([HW83]).

Teorema 3.1 A fórmula BDF de k-passos é estável para k = 1, . . . , 6, instável para k ≥ 7.Demontração (Esboço): Utilizaremos a denição de estabilidade dada pelo Lema 3.1 e pelospolinômios (3.10) e (3.11). A primeira parte do teorema é mais fácil de analisar, pois consiste de umnúmero nito de cálculos. A segunda parte do teorema possui um número innito de possibilidades,é baseada em considerar para k grande, o polinômio

p(z) =

∫ z

0

k∑i=1

ri−1dr =

∫ z

0

1− rk

1− rdr =

∫ ω

0(1− ejkθsk)φ(s)ds, (3.12)

com

r = sejθ, z = ωejθ, φ(s) =ejθ

1− sejθ.

Em seguida, cortamos o plano complexo em k setores

Si =

z;

k(i− 1

2) < arg(z) <

k(i+

1

2)

, i = 0, 1, . . . , k − 1.

Segue assim, que nos raios limitantes Si, temos ejkθ = −1, e então de (3.12) segue que,

p(z) =

∫ ω

0(1 + sk)φ(s)ds.

Logo, o argumento de p(z) sempre permanece no ângulo entre ejθ e ejπ = −1. Uma revolução dearg(p(z)) é possível nestes raios, e devido à uma revolução de arg(zk) no innito, o princípio doargumento implica que em cada setor Si, i = 1, . . . , k−1, (com exceção de i = 0) reside exatamenteuma raiz de p(z).

Para obter a região de estabilidade dos métodos BDF, devemos analisar o conjunto onde asraízes do polinômio característico (3.11), satizfazem o Lema 3.1. As regiões sombreadas (externaàs curvas) da Figura 3.1, mostram essas regiões para os métodos BDF estáveis (Tabela 3.1) dek-passos e ordem k ([HW96]).

A partir dessas guras, podemos observar que os métodos BDF, são A-estáveis para k = 1, 2(BDF1 e BDF2) (Denição A.12), pois a região de estabilidade cobre todo o meio plano complexoesquerdo. E são A(α)-estáveis (Denição A.16) para k = 3, . . . , 6 (BDF3, BDF4, BDF5 e BDF6).A Tabela 3.2, mostra os ângulos (α), para essas fórmulas A(α)-estáveis ([HW96]).

Page 40: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

22 FÓRMULAS DE DIFERENCIAÇÃO REGRESSIVA 3.1

BDF1 BDF2 BDF3

BDF4 BDF5 BDF6

Figura 3.1: Regiões de estabilidade dos métodos BDF.

k 1 2 3 4 5 6

α 90o 90o 86.03o 73.35o 51.84o 17.84o

Tabela 3.2: Ângulo α para A(α)-estabilidade das fórmulas BDF.

3.1.2 BDF com tamanho de passo variável

Para que os métodos BDF sejam ecientes como os métodos de passo simples que adaptam otamanho do passo, precisamos utilizar uma fórmula que também permita essa variação de acordocom a estimativa do erro local. Implementar métodos de passo múltiplo com tamanho de passovariável exige que o polinômio interpolador seja recalculado para obter os novos coecientes deacordo com o novo espaçamento dos pontos interpolados. Para tal é conveniente usar o polinômiona forma de Lagrange apresentado na Seção A.1.2.

Considere o conjunto de pontos não uniformemente espaçados (tn+1−j , yn+1−j), j = 0, 1, . . . , k,temos o polinômio interpolador

P (t) =k∑i=0

Li(t)yn+1−i, sendo Li(t) =k∏j=0j 6=i

t− tn+1−jtn+1−i − tn+1−j

.

Para obter a fórmula geral de um método de diferenciação regressiva, derivamos esse polinômio emrelação à variável t,

P′(t) =

k∑i=0

L′i(t)yn+1−i.

Page 41: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

3.2 IMPLEMENTAÇÃO DO BDF NO PACOTE LSODE 23

Como somente o numerador da produtória em Li depende de t, temos

L′i(t) =

d

dt

k∏j=0j 6=i

t− tn+1−jtn+1−i − tn+1−j

=

k∑l=0l 6=i

k∏j 6=lj 6=i

(t− tn+1−j)

k∏j=0j 6=i

(tn+1−i − tn+1−j)

.

Por m, calculamos esta derivada em tn+1 e igualamos à f(tn+1, yn+1):

P′(tn+1) =

k∑i=0

L′i(tn+1).yn+1−i = f(tn+1, yn+1). (3.13)

Essa equação (3.13) é a fórmula de um método BDF de k-passos e ordem k, com tamanho de passovariável. Para simplicar a notação, escrevemos

P′(tn+1) = c0yn+1 + c1yn + · · ·+ ckyn+1−k =

k∑i=0

ciyn+1−i = f(tn+1, yn+1), (3.14)

onde os coecientes c′is, dependem do espaçamento hn = tn+1 − tn, e são dados por:

ci = L′i(tn+1) i = 0, 1, . . . , k. (3.15)

Com essa fórmula (3.14), obtemos uma fórmula de recorrência para yn+1 isolando yn+1 em(3.14), dividindo por c0 e denindo β∗0 = 1

c0,

yn+1 + β∗0

k∑i=1

ciyn+1−i = β∗0f(tn+1, yn+1). (3.16)

Por m, obtemos a equação (3.16) que abrange tanto os métodos de passo variável, como os depasso xo, a diferença está no cálculo dos coecientes que no caso dos métodos de passo variávelsão dados por (3.15).

3.2 Implementação do BDF no pacote LSODE

No pacote LSODE ([Hin93],[ZLSS11]), a implementação do método de passo múltiplo é feitausando um processo preditor-corretor e auxiliada com uma formulação de matriz. Vamos fazer ospassos do desenvolvimento com a nalidade de chegar na implementação que usa a matriz de Nord-sieck para salvar as informações. O código usa métodos explícitos como preditores, gerando umvalor inicial y[0]

n+1 para yn+1 e depois o método implícito corrige esse valor até que a magnitude dadiferença entre duas aproximações sucessivas seja próxima de zero dentro de uma precisão especi-cada, fornecendo assim, uma aproximação para a solução numérica y[m+1]

n+1 , m = 0, 1, . . . ,M − 1.

O valor M é o número de iterações necessárias para aceitar y[M ]n+1 como solução para o problema de

valor inicial. A partir da equação (3.2), reescrevemos o método BDF de ordem k por

yn+1 = Ψn+1 + hnβ0fn+1 = Ψn+1 + hnβ0f(tn+1, yn+1), (3.17)

onde Ψn+1 =∑k

j=1 αjyn+1−j tal que αj = γj/γ0, β0 = 1/γ0 e fn+1 é a aproximação para a derivada

exata y′(tn+1). A cada iteração m a quantidade hny

′[m+1]n+1 é denida a partir da relação

y[m]n+1 = Ψn+1 + hnβ0y

′[m]n+1, (3.18)

Page 42: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

24 FÓRMULAS DE DIFERENCIAÇÃO REGRESSIVA 3.2

onde espera-se que quando m→∞, y′[m]n+1 convirja para fn+1 para então, aceitarmos hny

′[M ]n+1 como

aproximação para hnfn+1. Primeiro precisamos de um método preditor para gerar o valor inicialy

[0]n+1 em tn+1. Usamos uma fórmula explícita de k-ésima ordem, semelhante a (3.17), dada por

y[0]n+1 =

k∑j=1

α∗jyn+1−j + hnβ∗1y′n = ϕ∗n+1. (3.19)

Nessa fórmula, y′n é a aproximação para fn e os coecientes α∗j e β∗1 são selecionados de forma

que a equação (3.19) seja exata se a solução para o problema de valor inicial (3.1) é um polinômiode grau k ou menos. Para resolver a Equação (3.17) e corrigir esta estimativa inicial, vamos deniruma função de correção g e trabalhar com um processo iterativo.

Denimos a função vetor g(y) por:

g(y) = hnf(t, y) +Ψn+1 − y

β0, (3.20)

que funciona como um resíduo, pois calculando g em y[m]n+1 e substituindo o valor de y pelo dado em

(3.18), temos

g(y[m]n+1) = hnf(tn+1, y

[m]n+1)− hny

′[m]n+1. (3.21)

Agora, precisamos da aplicação de um processo iterativo para resolver a implicitude. Os proces-sos mais usados são, iteração Funcional, convergindo linearmente, e iteração de Newton-Raphsonque converge quadraticamente. O problema então, se modica para resolver sistemas lineares emvez de um sistema não linear. O corretor neste caso é iterado até convergência para preservar suascaracterísticas de estabilidade. Para este desenvolvimento vamos usar o procedimento de Newton-Raphson (Seção A.1.1). Denimos a função,

R(y) = y −Ψn+1 − hnβ0f(t, y). (3.22)

A quantidade R(y[m]n+1) é um vetor resíduo na m-ésima iteração. Resolver (3.17) é equivalente a

encontrar o zero de R, assim como feito na Seção A.1.1. Temos que a (m+ 1)-ésima estimativa como processo de Newton-Raphson é dada por

y[m+1]n+1 = y

[m]n+1 −

(∂R

∂y(y

[m]n+1)

)−1

R(y[m]n+1). (3.23)

O cálculo dessa matriz inversa não é necessário, podemos denir P tal que

P =∂R

∂y(y

[m]n+1) = (I − hnβ0Jf (y

[m]n+1))

e multiplicar em ambos os lados de (3.23), obtendo

P.(y[m+1]n+1 − y[m]

n+1) = −R(y[m]n+1) = Ψn+1 + hnβ0f(tn+1, y

[m]n+1)− y[m]

n+1, (3.24)

Vamos reescrever as equações do preditor-corretor, usando as funções g e R. Comparando asequações (3.20) e (3.22), observamos que R(y) = −β0g(y) então, da equação (3.23), segue que

y[m+1]n+1 = y

[m]n+1 + β0P

−1g(y[m]n+1). (3.25)

De duas iterações seguidas de (3.18) obtemos

y[m+1]n+1 − y[m]

n+1 = β0hn[y′[m+1]n+1 − y

′[m]n+1] (3.26)

Page 43: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

3.2 IMPLEMENTAÇÃO DO BDF NO PACOTE LSODE 25

de onde segue por (3.25) que

hny′[m+1]n+1 = hny

′[m]n+1 + P−1g(y

[m]n+1). (3.27)

A equação (3.26) mostra que se y[m]n+1 converge quando m → ∞, então y

′[m]n+1 converge e conse-

quentemente de (3.25) g(y[m]n+1) → 0, portanto a solução convergida satisfaz (3.17) e y

′[m]n+1 → fn+1.

Temos que as equações para o método preditor-corretor são dadas por:

Preditor:y

[0]n+1 = ϕ∗n+1

hny′[0]n+1 =

y[0]n+1−Ψn+1

β0

(3.28)

Corretor:g(y

[m]n+1) = hnf(tn+1, y

[m]n+1)− hny

′[m]n+1

y[m+1]n+1 = y

[m]n+1 + β0P

−1g(y[m]n+1), m = 0, 1, . . . ,M − 1

hny′[m+1]n+1 = hny

′[m]n+1 + P−1g(y

[m]n+1)

(3.29)

yn+1 = y[M ]n+1

hny′n+1 = hny

′[M ]n+1

No pacote LSODE, essa implementação de um método de passo múltiplo é auxiliada por umaformulação matricial introduzida por Gear. O procedimento consiste em salvar os L = k+ 1 vetorescoluna yn, yn−1, . . . , yn+1−k e hny

′n do método BDF de ordem k na forma de uma matriz wn de

dimensão N × L,

wn =

y1,n hny

′1,n y1,n−1 . . . y1,n+1−k

y2,n hny′2,n y2,n−1 . . . y2,n+1−k

......

.... . .

...yN,n hny

′N,n yN,n−1 . . . yN,n+1−k

. (3.30)

A matriz atualizada wn+1 é construída a cada passo tn+1, sendo dada por

wn+1 = (yn+1, hny′n+1, yn, . . . , yn+2−k). (3.31)

Seguindo o procedimento anterior, a matriz de predição w[0]n+1 em tn+1 é recorrente desta última,

w[0]n+1 = (y

[0]n+1, hny

′[0]n+1, yn, . . . , yn+2−k).

O valor predito (3.19) deve ser substituído em (3.28), usando Ψn+1 =∑k

j=1 αjyn+1−j , obtemos

hny′[0]n+1 =

k∑j=1

(α∗j − αjβ0

)yn+1−j +

β∗1β0hny

′n. (3.32)

As equações (3.19) e (3.32) são o processo de predição, que pode ser escrito em notação de matriz

w[0]n+1 = wnB,

onde B é uma matriz L× L, dependente da solução do método, dada por:

Page 44: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

26 FÓRMULAS DE DIFERENCIAÇÃO REGRESSIVA 3.2

B =

α∗1α∗1−α1

β01 0 0 . . . 0

β∗1β∗1β0

0 0 0 . . . 0

α∗2α∗2−α2

β00 1 0 . . . 0

......

......

.... . .

...

α∗k−1

α∗k−1−αk−1

β00 0 0 . . . 1

α∗kα∗k−αkβ0

0 0 0 . . . 0

. (3.33)

A equação do corretor (3.29), também pode ser expressada na forma de matriz, temos

w[m+1]n+1 = w

[m]n+1 + P−1g(y

[m]n+1)k∗,

onde k∗ = (β0, 1, 0, . . . , 0) é um vetor L-dimensional, P é a matriz de iteração do método de Newtone w[m]

n+1 é a matriz (3.31) na m-ésima iteração dada por

w[m]n+1 = (y

[m]n+1, hny

′[m]n+1, yn, . . . , yn+2−k).

Temos que o método preditor-corretor na forma matricial é dado por

Preditor:

w[0]n+1 = wnB (3.34)

Corretor:g(y

[m]n+1) = hnf(tn+1, y

[m]n+1)− hny

′[m]n+1

w[m+1]n+1 = w

[m]n+1 + P−1g(y

[m]n+1)k∗, m = 0, 1, . . . ,M − 1.

(3.35)

wn+1 = w[M ]n+1

3.2.1 Matriz de Nordsieck

Uma alternativa sugerida por Gear foi fazer uma transformação linear e armazenar uma novamatriz em vez de salvar a informação na forma wn ([JSD80]), de forma que essa operação resultena matriz de Nordsieck zn ([Nor62],[Gea67]). Isto é, em vez de armazenar os vetores yn+1−k e y

′n,

armazenamos a matriz de valores

zn =

y1,n hny

′1,n

h2n2! y

(2)1,n . . . hkn

k! y(k)1,n

y2,n hny′2,n

h2n2! y

(2)2,n . . . hkn

k! y(k)2,n

......

.... . .

...

yN,n hny′N,n

h2n2! y

(2)N,n . . . hkn

k! y(k)N,n

, (3.36)

com N linhas e L = k + 1 colunas, onde as derivadas y(k)n não são as derivadas da solução exata

y(j)(tn), mas sim as aproximações P (j)n (tn), sendo Pn o polinômio de Taylor de yn em torno de tn

(Seção A.1.2).A transformação para obter zn a partir de wn, tem a seguinte forma ([Gea67])

zn = wnQ,

onde a matriz QL×L é uma matriz não-singular e independe do tamanho do passo, mas depende da

Page 45: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

3.2 IMPLEMENTAÇÃO DO BDF NO PACOTE LSODE 27

solução do método. Aplicando a apropriada matriz de transformação Q para a equação do preditor(3.34), obtemos a matriz de predição

z[0]n+1 = w

[0]n+1Q = wnBQ = znQ

−1BQ = znA,

onde

z[0]n+1 = (y

[0]n+1, hny

′[0]n+1,

h2n

2!y′′[0]n+1, . . . ,

hknk!y

(k)[0]n+1 ) e A = Q−1BQ.

A matriz de predição AL×L fornece uma aproximação de k-ésima ordem para z[0]n+1 em termos de

zn, sendo a matriz triangular inferior de Pascal:

A =

1 0 0 0 . . . 0 0 01 1 0 0 . . . · · ·1 2 1 0 . . . · · ·1 3 3 1 . . . · · ·...

......

.... . .

......

...1 k k(k−1)

2!k(k−1)(k−2)

3! . . . k(k−1)2! k 1

. (3.37)

A equação corretora (3.35), será reescrita por

z[m+1]n+1 = w

[m+1]n+1 Q = w

[m]n+1Q+ P−1g(y

[m]n+1)k∗.Q = z

[m]n+1 + P−1g(y

[m]n+1)l, (3.38)

onde z[m]n+1 é a matriz de Nordsieck na m-ésima iteração

z[m]n+1 = (y

[m]n+1, hny

′[m]n+1,

h2n

2!y′′[m]n+1 , . . . ,

hknk!y

(k)[m]n+1 )

e l = k∗.Q é um vetor L-dimensional, l = (l0, l1, . . . , lk) com valores dados na Tabela 3.3 ([Hin93]).

k l0 l1 l2 l3 l4 l51 1 12 2/3 3/3 1/33 6/11 11/11 6/11 1/114 24/50 50/50 35/50 10/50 1/505 120/274 274/274 225/274 85/274 15/274 1/274

Tabela 3.3: Coecientes para os métodos BDF de ordem k.

Nos métodos desse tipo, o importante é o número L de valores salvos passo a passo e não onúmero de passos envolvidos. Comparando as duas formulações que utilizam matrizes, temos queas duas primeiras colunas de zn e wn são idênticas, assim l0 = β0 e l1 = 1. Por esse mesmo fato, osprocedimentos de iteração corretor para yn+1 e hny

′n+1 permanecem inalterados. Podemos estimar

o erro local de truncamento escrevendo a expressão para z[m+1]n+1 dada em (3.38) na seguinte forma:

z[m+1]n+1 = z

[m+1]n+1 − z[m]

n+1 + z[m]n+1 − z

[m−1]n+1 + . . .+ z

[1]n+1 − z

[0]n+1 + z

[0]n+1

= z[0]n+1 +

m∑j=0

(z[j+1]n+1 − z

[j]n+1).

Page 46: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

28 FÓRMULAS DE DIFERENCIAÇÃO REGRESSIVA 3.2

Substituindo a diferença dentro da somatória pela equivalente expressão obtida de (3.38), temos

z[m+1]n+1 = z

[0]n+1 +

m∑j=0

P−1g(y[j]n+1)l = z

[0]n+1 + e

[m+1]n+1 l. (3.39)

O fator e[m+1]n+1 do lado direito de (3.39) satisfaz

e[m+1]n+1 =

m∑j=0

P−1g(y[j]n+1) =

m−1∑j=0

P−1g(y[j]n+1) + P−1g(y

[m]n+1)

= e[m]n+1 + P−1g(y

[m]n+1),

funcionando como uma correção na função g(y[m]n+1) que será reescrita por

g(y[m]n+1) = hnf(tn+1, y

[m]n+1)− hny

′[0]n+1 − e

[m]n+1.

Portanto, a formulação preditora-corretora utilizada no pacote LSODE é resumida por:

Preditor:z

[0]n+1 = znA

e[0]n+1 = 0.

(3.40)

Corretor:

g(y[m]n+1) = hnf(tn+1, y

[m]n+1)− hny

′[0]n − e[m]

n+1

e[m+1]n+1 = e

[m]n+1 + P−1g(y

[m]n+1)

y[m+1]n+1 = y

[0]n+1 + l0e

[m+1]n+1 .

m = 0, 1, . . . ,M − 1 (3.41)

en+1 = e[M ]n+1

zn+1 = z[0]n+1 + en+1.l

Exemplo 3.2 Implementação de um BDF de ordem 2 com a formulação usando a matriz de Nord-sieck. Consideramos o BDF de ordem 2 dado na Tabela 3.1 com o valor de yn+1 isolado,

yn+1 = Ψn+1 + hnβ0f(tn+1, yn+1) =4

3yn −

1

3yn−1 +

2

3hnf(tn+1, yn+1).

Assim temos que Ψn+1 =∑2

j=1 αjyn+1−j, onde α1 = 4/3, α2 = −1/3 e β0 = 2/3. Um métodoexplícito de mesma ordem para ser usado como preditor, é obtido calculando a derivada do mesmopolinômio interpolador em tn (Seção 3.1), obtemos

y[0]n+1 = Ψn+1 + hnβ

∗1y′n = yn−1 + 2hny

′n.

Neste caso temos Ψn+1 =∑2

j=1 α∗jyn+1−j, onde α∗1 = 0, α∗2 = 1 e β∗1 = 2. O próximo passo é

substituir o valor do preditor e da Ψ na equação preditora (3.28), obtendo

hny[0]n+1 =

(α∗1−α1)β0

yn +(α∗2−α2)

β0yn−1 +

β∗1β0hny

′n

= −2yn + 2yn−1 + 3hny′n

(3.42)

Page 47: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

3.2 IMPLEMENTAÇÃO DO BDF NO PACOTE LSODE 29

Então, podemos escrever as equações de predição na forma de matriz. Temos que wn é dada por

wn = (yn, hny′n, yn−1),

onde das equações (3.34) e (3.33)), obtemos a matriz preditora

w[0]n+1 = (y

[0]n+1, hny

′[0]n+1, yn) = wn.B, com

B =

0 −2 12 3 01 2 0

. (3.43)

Do mesmo modo, temos que a matriz do corretor (Equação(3.35)) tem a seguinte forma

w[m+1]n+1 = w

[m]n+1 + P−1g(y

[m]n+1)k∗, k∗ = (β0, 1, 0) = (2/3, 1, 0).

Por m, para armazenarmos as informações na forma da matriz de Nordsieck zn, precisamosguardar os valores até a segunda derivada para obter um método de ordem 2, isto é,

zn = (yn, hny′n,h2n

2!y(2)n ).

Por (3.40), obtemos que a matriz de predição é dada por

z[0]n+1 = (y

[0]n+1, hny

′[0]n+1,

h2n

2!y

(2)[0]n+1 ) = zn.A, (3.44)

onde A é a matriz triangular inferior de Pascal,

A =

1 0 01 1 01 2 1

. (3.45)

De fato, temos da equação (3.44), que

y[0]n+1 = yn + hny

′n + h2n

2! y(2)n

hny′[0]n+1 = hny

′n + 2h

2n

2! y(2)n

h2n2! y

(2)[0]n+1 = h2n

2! y(2)n

(3.46)

que é a expansão em série de Taylor de yn até o termo de ordem 2 e de onde obtemos a matriz A.Para corrigir este processo preditor, temos por (3.38) e (3.39) que

z[m+1]n+1 = z

[m]n+1 + P−1g(y

[m]n+1)l = z

[0]n+1 + e

[m+1]n+1 l,

onde l = (l0, l1, l2) = (2/3, 3/3, 1/3) (Tabela 3.3).Logo, obtemos que a equação para o corretor (Equação 3.41), é dada por

y[m+1]n+1 = y

[0]n+1 +

2

3e

[m+1]n+1 .

Este processo deve ser iterado até convergência ou até atingir um número máximo de iterações.O pacote LSODE trabalha com BDF até ordem 5, e calcula todos os valores dos coecientes noinício da integração e os armazena para ser utilizados quando necessário. Na sequência, temos umabreve explicação de como a matriz de Nordsieck é atualizada se houver uma troca na ordem e/ouno tamanho do passo de integração.

Page 48: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

30 FÓRMULAS DE DIFERENCIAÇÃO REGRESSIVA 3.2

A implementação com a matriz de Nordsieck apresenta muitas vantagens em relação à imple-mentação que precisa armazenar os valores no tempo passado para ser interpolados a cada mudançado tamanho do passo (equações (3.34) e (3.35)). Isto ocorre devido à matriz de multiplicação A seruma matriz triangular inferior de Pascal com as entradas dadas por

A =

0, i < j(ij

), i ≥ j

i, j = 0, 1, . . . , k.

Assim, as multiplicações em (3.40) podem ser feitas por repetidas adições, resultando em economiasde esforço computacional. Além disso, quando é necessária a troca do tamanho do passo, a matriz zné substituída pela matriz zn multiplicada por uma matriz diagonal contendo a razão do tamanho dopasso, pois zn independe das soluções nos passos anteriores. Por exemplo, se no ponto tn o tamanhodo passo é trocado de hn para rhn, fazemos

zn = zn.C, (3.47)

onde C é uma matriz de dimensão L× L, contendo as razões do tamanho do passo, dada por

C =

1 · · · · 0

r · · ·r2 · ·· ·

0 rk

. (3.48)

Como somente as duas primeiras colunas de zn entram na solução da equação (3.17), as correçõessucessivas serão acumuladas e aplicadas para as colunas restantes de zn após a convergência. Istotambém traz vantagens computacionais por não precisar atualizar todas colunas da matriz deNordsieck após cada iteração.

O cálculo da matriz jacobiana também é explorado. O LSODE permite trabalhar com a jaco-biana analítica fornecida pelo usuário ou calcular a jacobiana internamente, no formato cheio ouesparso. Ainda, a matriz P só será atualizada quando as iterações não convergem, ou quando sealtera o tamanho do passo, de forma que isso mude o valor de hnβ0 em mais de 30% desde a últimaatualização de P . Isto faz com que a mesma matriz P possa ser reutilizada em vários passos.

3.2.2 Erro local de truncamento

O erro local de truncamento dos métodos BDF, é estimado pelo resíduo na fórmula das dife-renças, quando substituímos as aproximações yi e fn+1 pela solução exata. Denimos o métodoBDF de ordem k na forma normalizada por

0 =k∑j=0

(αjβ0

)yn+1−j + hnfn+1. (3.49)

Assim, o erro local para o método BDF de ordem k é dado por

dn+1 =

k∑j=0

(αjβ0

)y(tn+1−j) + hny

′(tn+1), (3.50)

onde dn+1 é um vetor de N componentes. Supomos que cada yi(tn+1−j) (i = 1, . . . , N, j = 1, . . . , k)em (3.50) possui derivadas de alta ordem e expandimos (3.50) em série de Taylor em torno de tn+1.Esse desenvolvimento está feito na Seção A.2, a expressão resultante para dn+1 pode ser escrita por

Page 49: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

3.2 IMPLEMENTAÇÃO DO BDF NO PACOTE LSODE 31

dn+1 =∞∑k=0

Ckhkny

(k)(tn+1), (3.51)

onde os C ′ks são constantes e o método será de ordem k se C0 = C1 = . . . = Ck = 0 e Ck+1 6= 0,logo o denominado erro local de truncamento principal será dado por

dn+1 = Ck+1hk+1n y(k+1)(tn+1) +O(hk+2

n ), (3.52)

sendo Ck+1 a constante de erro para o método BDF de ordem k na forma normalizada, dada por

Ck+1 =1

k + 1. (3.53)

A (k + 1)-ésima derivada em (3.52) é estimada a cada passo da solução, com a atualização damatriz de Nordsieck zn+1. Para fornecer um controle do erro local para o usuário, o erro deve sernormalizado com um vetor peso. Usamos o vetor TOL, assim como para o método de Rosenbrock,

TOLN = ATOL+RTOL|yN,n+1|,

com ATOL a tolerância de erro absoluto, RTOL a tolerância para o erro relativo e o índice Ndenotando a N -ésima componente da solução. A solução yn+1 é aceita como sucientemente precisase a equação do erro local satisfaz

‖dn+1‖ =

√√√√ 1

N

N∑i=1

(di,n+1

TOLi

)2

≤ 1. (3.54)

com N a dimensão do sistema de EDOs. Assim, obtemos um critério para controlar a solução emcada passo do intervalo de integração. Caso (3.54) não seja satisfeita, reduzimos o tamanho do passoe recalculamos a solução.

O pacote LSODE inclui um procedimento de trocar a ordem do método junto com a troca dotamanho do passo, de maneira a reduzir os custos computacionais. A cada passo a ordem podeaumentar ou diminuir em um grau, e é escolhida como sendo a ordem que produz o maior tamanhode passo que satisfaz o limite do erro local. Se a ordem reduziu em um, o erro local de truncamentodeve ser estimado novamente, para então a nova razão de tamanho do passo ser calculada. O mesmoocorre se a ordem aumentar. Após ter calculado o adequado valor para a razão do tamanho do passor, o novo tamanho do passo será dado por

hnew = rhn

Se o tamanho do passo e/ou ordem do método são trocados, a matriz de Nordsieck deve sermodicada. No caso em que a mesma ordem é mantida e o tamanho do passo foi alterado, ascolunas da matriz zn serão escaladas de acordo com (3.47). No caso em que a ordem diminuiu e opasso foi alterado, as k primeiras colunas são escaladas e a última é ignorada, não sendo necessárianos próximos passos. No caso de aumento da ordem, a matriz zn será aumentada com uma colunacontendo o vetor

hk+1n

(k + 1)!y(k+1)n

Além disso, o pacote LSODE inclui um teste de convergência do corretor e cálculo do tamanhodo passo inicial, sendo que o procedimento é iniciado com um método de passo simples de primeiraordem. A matriz de iteração P do processo iterativo de Newton, será atualizada quando ocorreruma troca no tamanho do passo ou na ordem, pois o coeciente hβ0 pode mudar signicantemente.

Page 50: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

32 FÓRMULAS DE DIFERENCIAÇÃO REGRESSIVA 3.2

Page 51: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

Capítulo 4

Aplicações em meteorologia

Um componente potencialmente importante nos modelos de previsão numérica do tempo, é ainclusão das reações químicas e aerossóis atmosféricos em ambientes com intensas fontes de poluição.Incorporar essas reações químicas que ocorrem no ar é uma tarefa difícil, mas que pode trazerbenefícios em certos cenários.

As principais espécies químicas presentes no ar são: óxidos orgânicos (alcanos, alcenos, ari-las, nitratos, etc.), óxidos inorgânicos (CO,CO2,NO2,SO2), oxidantes (O3,H2O2,OH−,O2H−,NO3)e redutores (CO,SO2,H2S). Quando esses poluentes são emitidos na atmosfera, ocorrem reações re-sultantes de transformações químicas e sícas. As transformações físicas envolvem fenômenos comomovimento, dispersão atmosférica, difusão turbulenta e redução das concentrações de poluentes pordiluição. As químicas compreendem as mais diversas reações, envolvendo os compostos químicospresentes no meio.

Uma das reações químicas mais comuns, é a reação fotoquímica, ocorrendo quando as espéciesabsorvem a luz solar. Podemos citar, por exemplo, o dióxido de nitrogênio (NO2), como uma dasespécies mais ativas fotoquimicamente na atmosfera poluída. O (NO2) absorve energia do sol (hv), eproduz uma molécula eletronicamente excitada, na qual é uma das 3 formas mais reativas de espéciesquímicas da atmosfera. As outras formas são os radicais livres e os íons. Os íons são predominantesem atmosferas elevadas (≈ 50Km de altura) e são, na maioria das vezes, produzidos pela ação daradiação eletromagnética, que por sua vez, é responsável pela produção de radicais livres (grupos deátomos com pares de elétrons desemparelhados). Os radicais são espécies muito reativas, e quandoreagem com o oxigênio molecular (O2) produzem a maioria dos gases presentes na troposfera. Comoexemplo, temos o radical peróxido, resultante de uma reação do radical metila (H3C∗) com o (O2).

O ozônio e o peroxiacetilnitrato (PAN) são os principais produtos das reações fotoquímicas.Outras reações que podemos citar, são: as reações ácido-base, ocorrendo entre espécies ácidas ebásicas presentes na atmosfera, as reações do oxigênio atmosférico com o ozônio estratosférico, asreações do monóxido e do dióxido de carbono atmosféricos e da chuva ácida.

Para modelar numericamente a composição química da atmosfera, deve-se levar em consideraçãotodos os fatores que alteram a composição natural do ar. Podemos destacar como emissões de maiorefeito; as emissões de diversos tipos de aerossóis, gases tóxicos, a mudança no uso da terra e asqueimadas que emitem gases de efeito estufa e aerossóis. As queimadas são umas das principaiscausadoras da poluição atmosférica, sua principal emissão acontece na forma de (CO2), chegandoa emitir cerca de 80% a 85% da massa total do carbono queimado e podendo variar de 50% a 99%.As emissões de queimadas em grandes escalas (regional e global), alteram o balanço radiativo daatmosfera, pois as partículas de aerossóis reetem e espalham a radiação solar de volta ao espaço,reduzindo a quantidade absorvida pela superfície terrestre, e isso pode acarretar no aquecimentoda atmosfera ([FLD+05]).

Por exemplo, durante o inverno, ocorrem centenas de milhares de focos de incêndio nas regiõesAmazônica e região Central do Brasil. O transporte atmosférico dessas emissões produz a distribui-ção da fumaça sobre uma área muito superior a do foco de queimada. O processo de combustão fazcom que gases e partículas de aerossóis sejam emitidos para a atmosfera. As partículas de aerossóis

33

Page 52: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

34 APLICAÇÕES EM METEOROLOGIA 4.1

interagem com a radiação solar, afetando os processos de microfísica, a dinâmica de formação denuvens e a qualidade do ar. Os efeitos dessas emissões podem exceder a escala local e afetar regi-onalmente as propriedades da atmosfera, alterando indiretamente o balanço de radiação e o ciclohidrológico, que pode levar a um potencial impacto global.

As mudanças no uso da terra podem alterar no balanço de energia, água, e na superfície. Essasdiversas mudanças induzem alterações que afetam também o transporte e os ciclos dos gases traço,exigindo assim, modelos atmosféricos que incluam as componentes de química; gases traço e aerossóisatmosféricos. Modelos numéricos que acoplam isto à solução do estado atmosférico representam oestado-da-arte em modelagem atmosférica acoplada (ver [FLR09]).

4.1 Modelagem numérica

Neste trabalho não estudamos o modelo completo de previsão do tempo, que descreve a evoluçãoda atmosfera. As equações do transporte podem ser encontradas em [FLR09]. O foco aqui é somentena equação que descreve as reações químicas presentes na atmosfera. A equação para ser incluídano modelo é dada por ([FLR09])

∂s[η]

∂t= −~v · ∇s[η] +Qs[η] , (4.1)

onde Qs[η] representa o conjunto dos processos químicos e físicos que atuam na produção ou perda demassa, por exemplo, reações químicas, fotodissociação e emissão. Essa equação é incluída no sistemapara a previsão numérica do tempo em regiões com intensas fontes de poluição (ex. Amazônia e aregião central do Brasil em estação de queima), pois o efeito dos aerossóis de queimadas é relevanteno aspecto radiativo e de microfísica das nuvens.

Já citamos alguns dos diversos tipos de reações que podem ocorrer na atmosfera, o objetivoagora é analisar as equações diferenciais provenientes dessas reações. As taxas de reação químicadeterminam se uma espécie é formada ou destruída nos processos de reação, e as reações podemser classicadas em ordens em função do número de moléculas envolvidas. Um exemplo de reaçãode primeira ordem, que já foi citada acima, quando o (NO2) absorve a energia do sol e produz umamolécula eletronicamente excitada (denotada com *), é representada da forma

NO2 + hv → NO∗2.

Denotando isso de uma forma genérica, tomando uma molécula M , que ao absorver energia deum fóton, produz uma nova molécula N ,

M + hvk→ N,

temos as equações diferenciais que representam o balanço de massa ([FLR09])

d[M ]

dt= −k.[M ],

d[N ]

dt= +k.[M ].

(4.2)

No sistema acima, a primeira equação representa a destruição de M , a segunda, a produção deN , [M ] é a concentração da espécie M e k a taxa de fotólise. O esquema a seguir representa umareação de segunda ordem, onde duas moléculasM e N reagem e dão origem à duas novas moléculasP e Q

M +Nks→ P +Q.

Page 53: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

4.1 MODELAGEM NUMÉRICA 35

Considerando a taxa de reação dada por ks[M ][N ], temos o balanço de massa:

d[M ]

dt=d[N ]

dt= −ks[M ][N ],

d[P ]

dt=d[Q]

dt= +ks[M ][N ].

(4.3)

A primeira equação representa a destruição de M e N , e a segunda corresponde à produção de Pe Q. A taxa de reação cinética ks, também precisa ser analisada, pois determina a velocidade dasreações químicas. No caso das taxas de reação cinética, devem ser incluídas, a frequência de colisãoentre as moléculas e sua fração, dependendo normalmente da temperatura e da pressão atmosférica.

4.1.1 Exemplo

Um bom exemplo de reatividade química com grande impacto na poluição do ar é a formaçãodo ozônio (O3) (ver [Cor03], Seção 1.3.2.4). Em termos de balanço radiativo, o ozônio absorveradiação ultravioleta e infra-vermelho, sendo um dos gases causadores do efeito estufa. A formaçãodo ozônio na estratosfera ocorre em níveis de altitude superiores a 30km, sendo que nessa altitudea radiação solar ultravioleta com comprimento de onda menor que 242.5nm (namômetro), dissociavagarosamente o oxigênio:

O2 + hvk1→ O +O. (4.4)

A taxa de formação do oxigênio atômico [O] é 2k1[O2], sendo k1 constante e [O2] a concentração demoléculas de (O2) por volume de ar (cm−3). Depois disso, o oxigênio atômico reage rapidamentecom o (O2), na presença de uma terceira molécula M, e forma o ozônio:

O +O2 +Mk2→ O3 +M. (4.5)

A taxa de formação do ozônio é de k2[O][O2][M ]. Essa é a única reação de formação (líquida) doozônio, seja na estratosfera ou na troposfera. Esse (O3) formado absorve intensamente radiaçãoentre os comprimentos de onda de 240 e 320nm, voltando a decompor-se em (O2) e (O):

O3 + hvk3→ O2 +O. (4.6)

A reação (4.6) não destrói totalmente o ozônio já que o mesmo é recombinado em (4.5). Seexistissem somente as reações de (4.4) à (4.6), haveria a possiblidade de que todo o oxigênio fossetransformado em ozônio, porém o ozônio também reage com o oxigênio atômico formando duasmoléculas de (O2):

O3 +Ok4→ O2 +O2.

Quando o oxigênio atômico é gerado a partir de (4.4), as reações (4.5) e (4.6) se processamrapidamente. No topo da estratosfera, onde a pressão e a concentração de M são menores, o tempode reação é de aproximadamente 100 segundos, em níveis inferiores, a concentração de [M ] podecrescer, e esse tempo tende a diminuir.

Geralmente os problemas de química atmosférica são descritos por grandes quantidades deequações diferenciais acopladas não-lineares, resultante das reações de dezenas de espécies químicas.Nosso objetivo é traçar a evolução das concentrações dessas espécies no tempo, sendo necessáriasas concentrações iniciais de cada uma delas. Um famoso exemplo de cinética química que usa asreações apresentadas acima é o sistema resultante do mecanismo de Chapman-type para a produçãode ozônio ([DSD+02]), dado por:

Page 54: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

36 APLICAÇÕES EM METEOROLOGIA 4.1

r1) O2 + hvk1→ O +O (k1 = 2.643× 10−10.σ3)

r2) O +O2k2→ O3 (k2 = 8.018× 10−17)

r3) O3 + hvk3→ O +O2 (k3 = 6.120× 10−4.σ)

r4) O +O3k4→ O2 +O2 (k4 = 1.576× 10−15)

r5) O3 + hvk5→ O∗ +O2 (k5 = 1.070× 10−3.σ2)

r6) O∗ +Mk6→ O +M (k6 = 7.110× 10−11)

r7) O∗ +O3k7→ O2 +O2 (k7 = 1.200× 10−10)

r8) NO +O3k8→ NO2 +O2 (k8 = 6.062× 10−15)

r9) NO2 +Ok9→ NO +O2 (k9 = 1.069× 10−11)

r10) NO2 + hvk10→ NO +O (k10 = 1.289× 10−2.σ) ,

onde σ(t) é a intensidade do sol normalizada (0 a noite e 1 ao meio dia) e r1, . . . , r10 as reaçõesquímicas. Como foi analisado anteriormente, temos que nesse sistema a reação r2 representa aprodução do ozônio O3, no qual o número de moléculas produzidas em cada unidade de tempo édado por k2[O][O2], e na reação r3, temos que k3[O3] é o número de moléculas de ozônio que sãodestruídas em cada unidade de tempo. Semelhantemente, as reações r4, r5, r7 e r8 representam adestruição do ozônio, sendo o número de moléculas destruídas dadas, respectivamente, por k4[O][O3],k5[O3], k7[O∗][O3] e k8[NO][O3]. Assim, a taxa de variação do ozônio será descrita pela equação

d[O3]

dt= k2[O][O2]− k3[O3]− k4[O][O3]− k5[O3]− k7[O∗][O3]− k8[NO][O3].

Podemos abreviar esta notação, fazendo

P = k2[O][O2] e (4.7)

D = k3 + k4[O] + k5 + k7[O∗] + k8[NO]. (4.8)

Logo, a taxa variação do ozônio, pode ser representada em termos da produção (P ) e da destruição(D) de ozônio:

d[O3]

dt= P −D.[O3].

O mesmo deve ser feito com todas as outras espécies, resultando assim, no sistema de equaçõesdiferenciais que juntamente com as condições iniciais, determinam as concentrações das espécies emqualquer momento futuro.

De forma geral, podemos considerar um conjunto de n espécies químicas y1, y2, . . . , yn, envolvidasem m reações químicas r1, r2, . . . , rm, com kj (kj(t)) o coeciente da taxa de reação rj . Se s−i,j énúmero de moléculas da espécie yi que são destruídas e s+

i,j é o número de moléculas que sãoproduzidas na reação rj , temos

rj)∑

s−i,jyikj→∑

s+i,jyi, 1 ≤ j ≤ m,

e se a espécie yi não estiver envolvida na reação rj , então s−i,j = s+i,j = 0. Precisamos incluir também

as taxas cinéticas, isto é, a velocidade das reações. Denotamos por vj a velocidade da reação rj ,

vj(t, y) = kj(t)

n∏i=1

ys−i,ji ,

Page 55: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

4.2 MODELO CATT-BRAMS 37

com y = [y1, y2, . . . , yn]T . Então, acumulando todas as reações que ocorrem para a espécie yi, temos

dyidt

=m∑j

(s+i,j − s

−i,j)vj(t, y), i = 1, . . . , n. (4.9)

Denotando todas as velocidades em um vetor v = [v1, v2, . . . , vm]T e as somas de (4.9) em termosde matrizes de dimensão n×m,

S− = (s−i,j), S+ = (s+i,j), 1 ≤ i ≤ n, 1 ≤ j ≤ m,

temos que a equação (4.9) pode ser reescrita na forma de um sistema que acopla todas as n espécies

dy

dt= (S+ − S−)v(t, y) = f(t, y) (4.10)

Assim, como foi feito em (4.7) e (4.8), podemos denotar esse sistema em termos da produção e dadestruição das espécies. Fazemos P (t, y) o vetor das taxas de produção e D(t, y) a matriz das taxasde destruição das espécies, lembrando que na destruição, a própria espécie é um fator reagente,temos

P (t, y) = S+v(t, y) e D(t, y).y = S−v(t, y),

onde D(t, y) = diagD1(t, y), . . . , Dn(t, y) com Di(t, y) =∑m

j s−i,jvj(t, y)/yi. Portanto, podemos

reescrever o sistema (4.10) da seguinte forma

dy

dt= P (t, y)−D(t, y).y (4.11)

o qual é um sistema de dimensão n × m, caracterizado como um sistema sti, devido às taxasde reações químicas variarem em diferentes ordens de grandeza e o tempo de reação das espéciesparticipantes da cinética química terem tempos de vida muito diferentes, por exemplo, os radicaiscomo o OH, evoluem em escalas de milisegundos, enquanto CH4 tem escalas de tempo em anos([ZLSS11]).

Como pode ser visto no Apêndice A, problemas sti precisam de métodos adequados paraobter uma solução estável. Os sistemas de cinética química exigem a preservação da massa totale da carga elétrica total durante a evolução do sistema, sendo que as concentrações das espéciesdevem permanecer positivas o tempo todo e para isso, o método numérico também deve preservarestas propriedades.

4.2 Modelo CATT-BRAMS

O modelo químico testado neste trabalho é parte do Coupled Aerosol and Tracer Transport mo-del to the Brasilians developments on the Regional Atmospheric Modelling System (CATT-BRAMS)([FLD+07]), um modelo de transporte 3D on-line, acoplado com um modelo de emissões, implemen-tado em 2003, que monitora em tempo real o transporte atmosférico de emissões antropogênicas ede queimada sobre os continentes da América do Sul e África e o Oceano Atlântico Sul. O moni-toramento é feito pelo Centro de Previsão de Tempo e Estudos Climáticos (CPTEC) do InstitutoNacional de Pesquisas Espaciais (INPE).

O BRAMS é baseado no Regional Atmospheric Modeling System (RAMS) versão 6, que é umcódigo altamente versátil desenvolvido na Universidade do Estado do Colorado, para simulações eprevisão de fenômenos meteorológicos. Ele foi uma consequência de dois programas de modelagematmosférica, realizados de forma independente durante a década de 1970. É construído em torno deum conjunto completo de equações dinâmicas primitivas que regem os movimentos atmosféricos,constituindo um sosticado conjunto de pacotes para simular processos tais como: transferência

Page 56: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

38 APLICAÇÕES EM METEOROLOGIA 4.2

radiativa, transporte turbulento na camada limite planetária, processo de microfísica das nuvens, eoutros.

RAMS é fundamentalmente um modelo de área limitada, que pode ser congurado para cobriruma área tão grande como um hemisfério do planeta, para simulação de mesoescala e sistemas at-mosféricos de grande escala, isto é, um modelo de previsão numérica multi-objetivo desenhado parasimular circulações atmosféricas com escalas variando. O modelo possui um esquema permitindoque as equações sejam solucionadas simultaneamente em qualquer número de grades, com resolu-ções espaciais que iteragem entre si (esquema de aninhamento múltiplo) em conjunto com módulosque simulam diversos tipos de processos atmosféricos. Um dos componentes do RAMS é um pacotede assimilação de dados que prepara os dados iniciais para o modelo atmosférico a partir de umconjunto de dados observacionais.

Assim, o CATT-BRAMS é um modelo de emissão, transporte e deposição de aerossóis e traçado-res atmosféricos acoplado ao modelo BRAMS, explorando a capacidade de transporte de traçadoresdo BRAMS ([FLR09]). A emissão da fonte de queima de biomassa (para CO, CO2, CH4, NOx ePM2.5) é baseada nos produtos do fogo e nas observações de foco de incêndios do sensoriamentoremoto (MODIS) pelo CPTEC-INPE, e em observações de campo. Para cada fogo captado, a massade traçadores emitidos é calculada (emissão de fonte) e sua emissão do modelo segue um ciclo diurnode queima (taxa de emissão). Mais detalhes sobre o modelo, podem ser vistos em ([FLD+05]).

O modelo usado do CPTEC para os principais testes deste trabalho é o Coupled Chemistry Ae-rosol Tracer Transport model to the Brazilian developments on the Regional Atmospheric ModellingSystem (CCATT-BRAMS),

CATT BRAMS + CHEM → CCATT BRAMS,

que consiste do CATT-BRAMS mais a inclusão da parte de química atmosférica (CHEM).

4.2.1 Informação pré-processada

Há várias maneiras de traduzir as reações químicas em equações diferenciais para resolvê-lasnumericamente. Os modelos de previsão de tempo usam um software que auxilia a simulação de umsistema de cinética química, conhecido por Kinetic PreProcessor (KPP). O KPP utiliza a denoni-mada aproximação pré-processada para resolver numericamente o problema das reações químicas.Essa aproximação é escrita em uma linguagem própria do KPP, na qual descreve o mecanismoquímico, os valores iniciais, analisa as equações químicas e gera código em liguagem FORTRAN ouC que simulam as reações entre as espécies químicas ([DSD+02],[ZLSS11]).

O KPP codica as funções de produção e destruição do sistema (4.11), contém um conjunto desubrotinas que calculam as funções derivadas das concentrações no tempo, a matriz jacobiana, adecomposição LU, e a solução de sistemas lineares com substituições forward-backward, incluindoum abrangente conjunto de integradores modernos tais como: VODE, LSODES, RODAS, ROS4 eROS3 ([HW96], [HNW87], [SVB+97]). Um detalhe bastante interessante, é que o KPP permite aescolha de trabalhar com a esparsidade para obter melhores resultados e eciência, isto é, permiteescolher entre o cálculo da jacobiana cheia ou esparsa, sendo que neste último caso, a decomposiçãoLU preservará a característica de esparsidade da jacobiana. O modo de fazer isso é usando umalgoritmo que faz um reordenamento das espécies e minimiza o preenchimento do jacobiano.

Esse pré-processador gera módulos para cada parte necessária na realização das simulaçõesquímicas. Em um arquivo contendo os dados de entrada, denomidado de arquivo de descriçãocinética, o KPP faz uma descrição detalhada do modelo químico incluindo os átomos, espéciesquímicas e equações cinéticas, e o método de integração usado. Ele incorpora a descrição de váriosmodelos de química atmosférica grandemente usados: modelo smog, modelo estratosférico, modelotroposférico, outros.

O arquivo driver é o programa principal, responsável por chamar a rotina que contém o inte-grador que será usado, ler os dados dos arquivos e escrever os resultados no arquivo de saída. O

Page 57: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

4.2 MODELO CATT-BRAMS 39

KPP gera vários arquivos de saída, entre eles, um arquivo código, um ou mais arquivos cabeçalho eum arquivo mapa. Cada um destes possui uma completa descrição de como foi gerado e o tempo deprocessamento. O principal destes é o arquivo código, que contém o código completo em FORTRANou C que integra o dado mecanismo químico usando o algoritmo de integração selecionado e geraas rotinas de álgebra linear esparsa.

No arquivo cabeçalho (com extensão .h) contém declarações das variáveis e parâmetros usadospor todas as funções no arquivo código e gera um arquivo adicional com a estrutura de esparsidade,caso a matriz Jacobiana seja calculada com o KPP. No arquivo mapa são fornecidas as informa-ções adicionais para o usuário, onde várias estatísticas são listadas, por exemplo, número total deequações, número total de espécies e o número de espécies radical, variáveis e xas ([DSD+02]).Para completar, o arquivo mapa inclui uma lista de todas as espécies incluindo seus nomes, tipo enumeração dos mecanismos químicos e fornece uma completa lista de todas as funções geradas noarquivo código.

O coração do processador é um módulo interno que gera a produção e a destruição das espéciesjuntamente com o jacobiano e todas estruturas de dados necessárias para estas funções, denominadode expression trees computation. Todas essas informações são fornecidas para o modelo de previsão,das quais serão usadas pelo método de integração que irá retornar a solução do sistema sti.

Page 58: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

40 APLICAÇÕES EM METEOROLOGIA 4.2

Page 59: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

Capítulo 5

Resultados numéricos

5.1 Depuração do código computacional

Antes de aplicar os métodos estudados no problema de química atmosférica, precisamos vericarse a implementação está correta, de forma que a convergência dos métodos seja a esperada. Aplica-mos os métodos em um sistema com poucas variáveis e com solução exata conhecida. Escolhemosum sistema moderadamente sti ([YIOS11]) cujas equações são dadas por

y1′(t) = −20y1(t)− 0.25y2(t)− 19.75y3(t),

y2′(t) = 20y1(t)− 20.25y2(t) + 0.25y3(t),

y3′(t) = 20y1(t)− 19.75y2(t)− 0.25y3(t)

,

y1(0) = 1y2(0) = 0 , 0 ≤ t ≤ 10,y3(0) = −1

(5.1)

e com solução exata y1(t) = 0.5[e−0.5t + e−20t(cos 20t+ sin 20t)],y2(t) = 0.5[e−0.5t − e−20t(cos 20t− sin 20t)],y3(t) = −0.5[e−0.5t + e−20t(cos 20t− sin 20t)].

(5.2)

A análise da convergência é feita analisando o decaimento do erro global de discretização quandointegramos com um tamanho de passo xo, isto é, devemos ter∣∣∣∣∣ yn(tn, h)− y(tn)

yn(tn,h2 )− y(tn)

∣∣∣∣∣ =

∣∣∣∣∣ e(h)

e(h2 )

∣∣∣∣∣ = 2p,

onde yn(tn, h) é a solução numérica em tn calculada com tamanho de passo h, y(tn) é a solução exataem tn, e(h) denota o erro global com o respectivo tamanho de passo e p é a ordem de convergênciado método.

As tabelas a seguir, mostram os resultados para o método de Rosenbrock de ordem 3 e para oBDF de ordem 1 e 2. Na primera coluna de cada tabela temos o tamanho do passo de integração.A segunda coluna mostra o erro global no ponto nal do intervalo e a última coluna a razão entredois erros sucessivos com o tamanho de passo sendo reduzido pela metade.

Passo |e(h)| |e(h)/e(h/2)|h = 0.5 4.98897E-06h = 0.25 6.52888E-07 7.641386313h = 0.125 8.35906E-08 7.810547238h = 0.0625 1.05775E-08 7.902651502h = 0.03125 1.33040E-09 7.950663681

Tabela 5.1: Convergência com o ROS3.

41

Page 60: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

42 RESULTADOS NUMÉRICOS 5.2

Podemos ver que a razão dos erros para o método de Rosenbrock está convergindo para 23, oque mostra que temos a convergência de ordem 3 esperada. Vericar a ordem de convergência parao BDF, é uma tarefa trabalhosa, pois o método é implementado para variar a ordem juntamentecom o tamanho de passo [Gea71]. Além disso a implementação do BDF feita no LSODE, começacom um método de ordem 1 e vai avançando a ordem até atingir a ordem desejada (no máximoordem 5), mas isso pode levar o erro nos primeiros passos a dominar a solução. Para o BDF1, ocódigo mantém o erro de convergência com ordem 1, mesmo começando com um tamanho de passogrande (Tabela 5.2). Já para o BDF2, é necessário fazer um renamento no primeiro passo dadocom ordem 1 (Tabela 5.3) para diminuir o erro, e continuar o resto do intervalo com o passo detamanho h. O mesmo para os BDF de ordem 3, 4 e 5. As tabelas mostraram que a convergênciados métodos BDF, está sendo a esperada.

Passo |e(h)| |e(h)/e(h/2)|h = 1.0 5.301791E-03h = 0.5 2.395634E-03 2.213105761h = 0.25 1.127470E-03 2.124788043h = 0.125 5.453340E-04 2.067485738h = 0.0625 2.679670E-04 2.035080431

Tabela 5.2: Convergência com BDF de ordem 1.

Passo |e(h)| |e(h)/e(h/2)|h = 1.0 1.78281E-03h = 0.5 4.06288E-04 4.388030592h = 0.25 9.33266E-05 4.353403840h = 0.125 2.25249E-05 4.143265549h = 0.0625 5.58374E-06 4.034012566

Tabela 5.3: Convergência com BDF de ordem 2.

5.2 Exemplo EUSMOG químico

Nesta parte do capítulo aplicamos os métodos numéricos estudados em um modelo de químicaatmosférica envolvendo reações entre poucas espécies, para depois aplicar no modelo de previsãodo tempo envolvendo maior número de reações. O exemplo escolhido trata de um problema cadavez mais frequente em diversos cenários, conhecido por smog químico, sendo um tipo de poluiçãoatmosférica que envolve uma núvem de fumaça. O modelo foi proposto com a nalidade de mediros níveis esperados de poluição do ar para que precauções sejam tomadas antes que isto afete apopulação. Um exemplo clássico da gravidade deste tipo de poluição, é o episódio London smog,ocorrido em 1952 que causou 4000 mortes ([vL95]).

Alguns países faziam a distinção entre o smog de verão e o smog de inverno, pois no verãosão produzidos níveis elevados de concentração de ozônio (O3), enquanto no inverno as maioresconcentrações são de dióxido de enxofre (SO2) e poeira. Um modelo adequado deve ser capaz defazer a predição para ambos cenários. O modelo químico completo que descreve esse smog, foiproposto por F. de Leeuw, consiste de cerca de 140 reações entre 70 espécies. Entretanto, noslimitamos a uma parte extraída do modelo, que descreve a característica essencial de formação deozônio fotoquímico. Isto resulta em um modelo denominado de EUSMOG químico, envolvendo 15reações entre 15 espécies ([vL95],[VBvLS96]), dadas abaixo.

Page 61: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

5.2 EXEMPLO EUSMOG QUÍMICO 43

r1) NO +O3 → NO2 (k1 = 2.0× 10−12.exp(−1400/Tk))r2) NO2 + hv → NO +O3 (k2 = 1.45× 10−2.exp(−0.4/cosγ))r3) NO2 +OH → NOa3 (k3 = 1.68× 10−12.exp(560/Tk))r4) 2NO2 +O3 → 2NOa3 (k4 ver abaixo)r5) O3 + hv → b1OH + b2O3 (k5 = 2.0× 10−4.exp(−1.4/cosγ))r6) C2H6 +OH → a1O3 (k6 = 8.7× 10−12.exp(−1070/Tk))r7) C4H10 +OH → a2O3 (k7 = 1.4× 10−11.exp(−559/Tk))r8) C2H4 +OH → a3O3 (k8 = 1.66× 10−12.exp(474/Tk))r9) C3H6 +OH → a4O3 (k9 = 4.1× 10−11.exp(545/Tk))r10) XY L+OH → a5O3 (k10 = 1.4× 10−11)r11) ISO +OH → a6O3 (k11 = 2.55× 10−11.exp(410/Tk))r12) CO +OH → a7O3 (k12 = 2.4× 10−13)r13) CH4 +OH → a8O3 (k13 = 2.9× 10−12.exp(−1820/Tk))r14) SO2 +OH → SO4 (k14 = 2.32× 10−10.exp(−457/Tk))r15) SO2 → SO4 (k15 = 1.39× 10−6) .

Nas reações acima, as variáveis k′is são as contantes de reações, assim como no Capítulo 4 e os a′issão fatores estequiométricos que aparecem nas reações que produzem O3, sendo dependentes daconcentração de NOx (soma de NO e NO2) e dos valores dados na Tabela 5.4 ([vL95],[VBvLS96]):

ai = a1 ∗ exp(bi ∗NOx) + a2, i = 1, . . . , 8.

i a1 a2 bi1 4.4 1.7 0.352 5.8 2.2 0.353 5.5 0.3 5.0E-044 7.0 0.4 5.0E-045 7.0 3.0 0.356 0.0 1.0 0.357 0.9 0.0 0.258 4.0 0.0 0.25

Tabela 5.4

Os parâmetros b1 e b2 na reação 5 dependem da temperatura Tk em graus Kelvin, da humidaderelativa rh e da concentração de água H2O, dados em função do tempo t em horas,

Tk = 293.1− 1.91 ∗ sin( π12 t)− 2.78 ∗ cos( π12 t)

rh = 0.6 + 0.0764 ∗ sin( π12 t) + 0.114 ∗ cos( π12 t)

[H2O] = 4.357521×1019rhTk

exp(−(753.0− 0.57 ∗ Tk) ∗ ( 1Tk− 1

273.16) ∗ 18./1.986)

b1 = 4.6× 10−10 ∗ [H2O] /(2.3× 10−10 ∗ [H2O] + 4.93× 108 ∗ exp(−100/Tk))

b2 = 1− b1/2.

(5.3)

Page 62: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

44 RESULTADOS NUMÉRICOS 5.2

O parâmetro γ denota o ângulo solar zenital, o cálculo de cos γ é dado por

cos γ = sin ∆ sinφ+ cos ∆ cosφ cos(π

12(t− 12.67)), (5.4)

onde φ = 52 corresponde à latitude e ∆ à inclinação, dependentes do dia do ano 1 ≤ d ≤ 365. AFigura 5.1 contém o gráco de (5.4), mostrando que o nascer do sol acontece aproximadamente às05:00h e o pôr do sol às 21:00h. As taxas de fotólises devem ser calculadas durante o dia e desligadasa noite fazendo-se max(cos γ, 0.0).

0 5 10 15 20 25 30 35 40 45 50-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

t

co

s γ

Figura 5.1: Cosseno do ângulo zenital.

A reação r4, engloba um conjunto de reações, dependente de NOx e de H2O, pode ser encontradaem [vL95],[VBvLS96]. Os parâmetros acima, juntamente com os termos de emissãoQi e de deposiçãovgi ([vL95]), são emitidos continuamente ao longo do intervalo de integração e permitem obter umperl mais realista das concentrações.

O sistema de equações diferenciais ordinárias que modela este problema é dado na forma deprodução/destruição de cada espécie (Capítulo 4)

y′ = f(y) = P (y)− L(y), (5.5)

onde y = [y1, y2, . . . , y15]T representa as espécies numeradas de 1 a 15, segundo a Tabela 5.5, ef = [f1, f2, . . . , f15]T , os termos de produção e destruição de cada espécie. Observe que a funçãof não depende somente do vetor de concentrações y, mas também dos parâmetros Qi e vgi quesimulam condições meteorológicas. Na tabela 5.5, temos a ordem em que as espécies são tratadas,as respectivas concentrações iniciais dadas em molec.cm−3, e na sequência o sistema de equaçõesdiferenciais dado na forma (5.5).

Page 63: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

5.2 EXEMPLO EUSMOG QUÍMICO 45

Nome Espécies Concentração

1 Dióxido de nitrogênio NO2 4.92 ×1011

2 Óxido de nitrogênio NO 0.03 Ozônio O3 4.92 ×1011

4 Radical hidroxila OH 0.05 Nitrato de aerosol NOa

3 2.46 ×1011

6 Etano C2H6 2.46 ×1011

7 Butano C4H10 2.46 ×1011

8 Eteno C2H4 2.46 ×1010

9 Propeno C3H6 2.46 ×1010

10 Xileno XYL 2.46 ×1010

11 Isopreno ISO 2.46 ×1010

12 Monóxido de carbono CO 2.46 ×1012

13 Metano CH4 4.182 ×1013

14 Dióxido de enxofre SO2 0.015 Sulfato de aerosol SO4 0.0

Tabela 5.5: Espécies químicas e concentração inicial.

y1′ = k1y2y3 − k2y1 − k3y1y4 − 2k4y

21y3 − vg1y1

y2′ = k2y1 − k1y2y3 +Q2

y3′ = k2y1 − k1y2y3 − k4y

21y3 − (1− b2)k5y3 − vg3y3 +

∑13i=6 ai−5kiyiy4

y4′ = b1k5y3 − k3y1y4 − k14y14y4 +

∑13i=6−kiyiy4

y5′ = 2k4y

21y3 + k3y1y4

yi′ = −kiyiy4 +Qi, i = 6, . . . , 13

y14′ = −k14y14y4 − k15y14 − vg14y14 +Q14

y15′ = k14y14y4 + k15y14 +Q15.

Os testes numéricos irão simular as reações ocorrendo em um período de 112 horas, começandoàs 04:00h do primeiro dia e terminando às 20:00h do quinto dia, onde o dia do ano começa emd = 181 e termina em d = 185. Esse período de tempo é suciente para analisar as transformaçõesfotoquímicas que ocorrem durante o dia. Usamos os valores para o tamanho de passo

hstart = 1 seg, hmin = 1 seg e hmax = 2 horas, (5.6)

e testamos para diferentes tolerâncias

ATol = 1.0, RTol = 10−l, l = 1,. . . ,5.

A matriz jacobiana deste sistema foi calculada analiticamente e apresenta 24% das entradas nãonulas. A partir das chamadas da matriz jacobiana para o BDF, com a menor tolerância, calculamosos autovalores com o auxílio do pacote de álgebra linear LAPACK ([Net]). A Figura 5.2, mostraesses autovalores plotados juntamente com o ângulo de abertura α = 51.84 correspondente aoângulo de A(α)-estabilidade do método BDF de ordem 5 (Tabela 3.2). Podemos observar que

Page 64: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

46 RESULTADOS NUMÉRICOS 5.2

alguns autovalores estão fora da região de A(α)-estabilidade, mas permanecem dentro das regiõesde estabilidade dadas na Figura 3.1. Mais ainda, nessas regiões onde a solução tem maior oscilação,o método força o BDF trabalhar com ordem 1 ou 2, que são A-estáveis.

-1.5 -1 -0.5 0 0.5 1

x 10-5

-1.5

-1

-0.5

0

0.5

1

1.5

x 10-5

Figura 5.2: Autovalores do problema EUSMOG.

Abaixo temos as tabelas com os resultados numéricos comparando os métodos para as diferentestolerâncias. O método de Rosenbrock de ordem 3 e 4-estágios denotado por ROS3 (Capítulo 2) e ométodo BDF implementado no pacote LSODE (Capítulo 3) com ordem variando de 1 a 5, BDFk.Os testes BDF2, BDF3 e BDF4, xam uma ordem máxima, de modo que o BDF só aumente aordem até no máximo 2, 3 e 4, respectivamente. Ressaltando que o método começa com ordem 1nos primeiros passos e usa os valores para h dados em (5.6). O último teste BDF ∗, deixa o métodolivre para variar a ordem de 1 a 5 e usa os valores para o tamanho do passo calculados internamentepelo LSODE de acordo com a estimativa de erro local.

A segunda coluna de cada tabela mostra a quantidade de passos necessária para cada métodocompletar o intervalo de integração de 112 horas. A terceira e quarta coluna representam, res-pectivamente, a quantidade de avaliações da função f (lado direito do sistema) e a quantidade dechamadas para a matriz jacobiana e decomposição LU, essas são quantidades que representam oesforço ou custo computacional de cada método. O tempo de execução para esse problema pequenofoi irrelevante para a comparação.

Método No de passos No de aval. f No de aval. Jac/LU

ROS3 61 183 61BDF2 265 444 120BDF3 230 379 100BDF4 230 379 100BDF* 226 374 94

Tabela 5.6: Resultados para RTol = 10−1 e ATol = 1.0.

Page 65: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

5.2 EXEMPLO EUSMOG QUÍMICO 47

Método No de passos No de aval. f No de aval. Jac/LU

ROS3 61 183 61BDF2 331 541 122BDF3 327 513 118BDF4 330 516 112BDF* 260 424 101

Tabela 5.7: Resultados para RTol = 10−2 e ATol = 1.0.

Método No de passos No de aval. f No de aval. Jac/LU

ROS3 337 1159 337BDF2 483 741 135BDF3 407 628 119BDF4 429 696 138BDF* 448 716 141

Tabela 5.8: Resultados para RTol = 10−3 e ATol = 1.0.

Método No de passos No de aval. f No de aval. Jac/LU

ROS3 901 2815 901BDF2 709 1024 151BDF3 511 793 130BDF4 477 730 118BDF* 508 765 113

Tabela 5.9: Resultados para RTol = 10−4 e ATol = 1.0.

Método No de passos No de aval. f No de aval. Jac/LU

ROS3 1892 5758 1892BDF2 1036 1364 147BDF3 639 920 116BDF4 577 877 119BDF* 590 881 121

Tabela 5.10: Resultados para RTol = 10−5 e ATol = 1.0.

Os resultados mostram que o Rosenbrock é melhor para tolerância moderada, e vai exigindomaior custo computacional para maior precisão, enquanto o LSODE força o BDF utilizar a menorquantidade de passos possível e obtém menor custo, pois aproveita a mesma matriz Jacobiana e adecomposição LU para vários passos.

As guras a seguir, mostram a evolução de cada espécie no tempo, com o ROS3 e o BDF∗, coma menor tolerância exigida (RTol = 10−5 e ATol = 1.0).

Page 66: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

48 RESULTADOS NUMÉRICOS 5.2

0 50 1003.6

3.8

4

4.2

4.4

4.6

4.8

5x 10

11 y1 - NO

2

0 50 1000

2

4

6

8

10

12

14x 10

10 y2 - NO

0 50 1004.8

5

5.2

5.4

5.6

5.8

6

6.2x 10

11 y3 - O

3

ROS3

BDF*

Figura 5.3: Evolução das espécies de 1 a 3.

0 50 100-2

0

2

4

6

8

10x 10

5 y4 - OH

0 50 100

2.46

2.4605

2.461

2.4615

2.462

x 1011 y

5 - NO

3

a

0 50 1002.46

2.46

2.4601

2.4602

2.4602

2.4602

2.4603

2.4604

2.4604

2.4604x 10

11 y6 - C

2H

6

ROS3

BDF*

Figura 5.4: Evolução das espécies de 4 a 6.

0 50 100

2.46

2.4602

2.4604

2.4606

2.4608

2.461

x 1011 y

7 - C

4H

10

0 50 100

2.46

2.4605

2.461

2.4615

2.462

2.4625

2.463x 10

10 y8 - C

2H

4

0 50 100

2.4595

2.4596

2.4597

2.4598

2.4599

2.46

x 1010 y

9 - C

3H

6

ROS3

BDF*

Figura 5.5: Evolução das espécies de 7 a 9.

0 50 100

2.46

2.4605

2.461

2.4615

2.462

2.4625

x 1010 y

10 - XYL

0 50 100

2.453

2.454

2.455

2.456

2.457

2.458

2.459

2.46

x 1010 y

11 - ISO

0 50 100

2.46

2.4605

2.461

2.4615

2.462

2.4625

x 1012 y

12 - CO

ROS3

BDF*

Figura 5.6: Evolução das espécies de 10 a 12.

Page 67: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

5.2 EXEMPLO EUSMOG QUÍMICO 49

0 50 1004.182

4.182

4.182x 10

13 y13

- CH4

0 50 100

0

2

4

6

8

10

12

14x 10

7 y14

- SO2

0 50 100

0

0.5

1

1.5

2

2.5

3

3.5

x 106 y

15 - SO

4

ROS3

BDF*

Figura 5.7: Evolução das espécies de 13 a 15.

Para completar os resultados, mostramos os grácos com a capacidade de variar a ordem eo tamanho do passo para o método BDF∗ e o tamanho do passo para o método de Rosenbrock.Podemos ver que o LSODE varia a ordem e o tamanho do passo simultanemente, conseguindo assimuma economia de custos computacionais, enquanto o ROS3 atinge um tamanho de passo maior queo do BDF∗, mas precisa reduzir drasticamente para compensar o erro para os próximos passos,sendo necessário mais que o dobro da quantidade de passos do BDF∗.

0 20 40 60 80 100 120

0

0.5

1

1.5

2

t

tam

anho d

o p

asso h

Figura 5.8: Variação do tamanho do passo do ROS3.

0 20 40 60 80 100 120

0

0.5

1

1.5

2

t

tam

anho d

o p

asso h

0 20 40 60 80 100 1200

1

2

3

4

5

6

t

ord

em

Figura 5.9: Variação do tamanho do passo e da ordem do BDF∗.

Page 68: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

50 RESULTADOS NUMÉRICOS 5.3

5.3 Aplicação no modelo do CPTEC

O objetivo principal deste trabalho é comparar as soluções de um sistema de equações diferen-ciais ordinárias sti, resultante das reações de 72 espécies químicas dadas na Tabela 5.11, sendouma parte do modelo completo CCATT-BRAMS que trabalha com até 110 espécies químicas. Omodelo foi fornecido pelo CPTEC e usa o Rosenbrock de ordem 3 e 4-estágios (Seção 2.3). Os BDFforam incorporados no modelo com a implementação do pacote LSODE.

Espécies químicas

1 - O3 13 - O3P 25 - DIEN 37 - DCB 49 - MO2 61 - ADDT2 - H2O2 14 - O1D 26 - ISO 38 - MACR 50 - ETPH 62 - ADDX3 - NO 15 - HO 27 - API 39 - UDD 51 - HC3P 63 - ADDC4 - NO2 16 - HO2 28 - LIM 40 - HKET 52 - HC5P 64 - TOLP5 - NO3 17 - CH4 29 - TOL 41 - ONIT 53 - HC8P 65 - XYLP6 - N2O5 18 - ETH 30 - XYL 42 - PAN 54 - ETEP 66 - CSLP7 - HONO 19 - HC3 31 - CSL 43 - TPAN 55 - OLTP 67 - ACO3

8 - HNO3 20 - HC5 32 - HCHO 44 - OP1 56 - OLIP 68 - TCO3

9 - HNO4 21 - HC8 33 - ALD 45 - OP2 57 - ISOP 69 - KETP10 - SO2 22 - ETE 34 - KET 46 - PAA 58 - APIP 70 - OLNN11 - SULF 23 - OLT 35 - GLY 47 - ORA1 59 - LIMP 71 - OLND12 - CO 24 - OLI 36 - MGLY 48 - ORA2 60 - PHO 72 - XO2

Tabela 5.11: Espécies químicas reagentes.

Antes dos resultados numéricos, precisamos saber como se comportam os autovalores do sistemade EDOs sti resultantes das reações dessas 72 espécies químicas. Com o pacote de álgebra linearLAPACK ([Net]), calculamos todos os autovalores da matriz jacobiana do sistema gerada com ométodo de Rosenbrock e com o BDF. O ângulo de abertura contendo os autovalores, é o ânguloα = 51.84 de A(α)-estabilidade do método BDF de ordem 5, dado na Tabela 3.2.

Na primeira gura temos o conjunto com todos os autovalores calculados para as 11 grades domodelo com o ROS3 e na Figura 5.11 com o BDF∗ aproximado perto da origem. Podemos ver queo problema é sti, pois temos os autovalores variando de -10−2 a -10−13. E além disso como podeser observado, todos os autovalores permanecem na região do ângulo α, satisfazendo a condiçãoA(α)-estabilidade.

-12 -10 -8 -6 -4 -2 0 2 4

x 10-3

-8

-6

-4

-2

0

2

4

6

8

x 10-3

Figura 5.10: Autovalores para o problema de 72 espécies com o ROS3.

Page 69: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

5.3 APLICAÇÃO NO MODELO DO CPTEC 51

-6 -4 -2 0 2 4

x 10-8

-4

-2

0

2

4

6x 10

-8

Figura 5.11: Autovalores para o problema de 72 espécies com o BDF∗.

O modelo do CPTEC resolve o sistema de EDOs com valor inicial para uma pequena região,separando a grade que discretiza a região em 11 subgrades (ou blocos). As tabelas irão apresentar osresultados mínimo e máximo que ocorreram entre os 11 blocos, sendo estes, os custos computacionaise os tempos para completar o intervalo de integração. Em cada ponto de um bloco, o modelo devolvea solução do problema de valor inicial com o método escolhido em um intervalo de integração queserá explicitado.

Os métodos usados para resolver a parte de química atmosférica, devem fornecer os melhoresresultados em menor tempo. A implementação feita nestes modelos, visa reduzir o máximo possíveldo custos computacionais. No modelo do CPTEC, o solver para o sistema linear mantém a esparsi-dade da matriz, e calcula a decomposição LU somente uma vez para cada passo aceito, isto é, depoisde feito o primeiro estágio com o método de Rosenbrock, o solver utiliza a mesma decomposiçãoLU para os outros estágios. Já o BDF, tem a vantagem de precisar calcular somente uma vez adecomposição LU por passo, e além disso a implementação no LSODE, só faz um novo cálculo se otamanho do passo aumentou mais que 30% desde a última atualização, o que acarreta em grandeeconomia de esforço computacional.

Todos os testes foram executados em computador com processador Intel R© CoreTM i5 com2.67GHz de frequência, 4GB de memória RAM e sistema operacional de 64 Bits. O código doCPTEC usa as linguagens Fortran 90 e C, e o pacote LSODE usa Fortran 77.

A primeiro fator a ser levado em consideração nos resultados é que modelo do CPTEC tem umaestrutura para resolver o problema por blocos, isto é, quando o solver faz a chamada do Rosenbrock,todos os pontos do bloco (grade) vão evoluir um passo no tempo com o tamanho de passo inicialpara as 72 espécies, assim o erro local de discretização é analisado para cada ponto e é tomado o erromáximo para fazer o controle se o passo é rejeitado ou aceito. Dessa forma, o bloco todo vai evoluircom o mesmo tamanho de passo, o que faz com que um excesso de trabalho seja realizado em regiõesonde seriam necessários poucos passos para completar o intervalo de integração. Por outro lado oLSODE tem uma estrutura para resolver o problema ponto a ponto, resultando em economias.Porém ambos os métodos podem ser paralelizados, e a diferença no tempo de execução não sersignicativa. Isto não será analisado neste trabalho, a implementação é feita sequencialmente, comos compiladores IFORT e GCC utilizando os ags '-O3', '-xHost' e '-ipo'.

A comparação foi feita entre o Rosenbrock de ordem 3 e 4-estágios e o BDF∗, que permiteuma variação da ordem de 1 a 5 e do tamanho do passo de maneira adaptativa de acordo coma estimativa do erro local de discretização. O intervalo de integração simula um tempo de 160segundos, suente para ocorrerem reações químicas. Os resultados foram divididos em 4 grupospara testes com diferentes tolerâncias. Na terceira, quarta e quinta coluna de cada tabela, temos

Page 70: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

52 RESULTADOS NUMÉRICOS 5.3

os custos computacionais mínimo e máximo para cada bloco. A sexta coluna mostra os temposcomputacionais mínimo e máximo dados em segundos e a última coluna traz a razão entre ostempos máximos dos dois métodos. No conjunto de Testes 1, fazemos RTOL = 10−3 e ATOLdecrescendo de 10+7 a 10+2 denominados, respectivamente, de a1 a f1, dados abaixo.

Teste Método No de passos No de aval. f No de aval. Tempo(seg) Razão dosJac/LU tempos máx.

a1 ROS3 7 21 7 0.08860 - 0.09279 4.4826BDF* 3 - 11 4 - 17 2 - 6 0.01810 - 0.02070

b1 ROS3 8 - 9 24 - 27 8 - 9 0.10180 - 0.12020 5.4886BDF* 3 - 17 4 - 24 2 - 5 0.01920 - 0.02190

c1 ROS3 10 30 10 0.12880 - 0.14060 5.2268BDF* 3 - 24 4 - 29 2 - 6 0.02050 - 0.02690

d1 ROS3 12 36 12 0.15180 - 0.15870 5.1210BDF* 3 - 28 4 - 36 2 - 7 0.02430 - 0.03099

e1 ROS3 13 - 14 39 - 42 13 - 14 0.16580 - 0.18150 5.1563BDF* 3 - 35 5 - 45 2 - 8 0.02679 - 0.03520

f1 ROS3 16 - 17 48 - 51 16 - 17 0.19260 - 0.21650 4.8111BDF* 4 - 43 6 - 52 2 - 9 0.03779 - 0.04500

Tabela 5.12: Resultados numéricos do conjunto de Testes 1.

Para o conjunto de Testes 2, temos RTOL = 10−4 e ATOL decrescendo de 10+7 a 10+2, respec-tivos aos resultados de a2 a f2.

Teste Método No de passos No de aval. f No de aval. Tempo(seg) Razão dosJac/LU tempos máx.

a2 ROS3 7 21 7 0.08890 - 0.09440 4.5825BDF* 3 - 13 4 - 16 2 - 4 0.01810 - 0.02060

b2 ROS3 9 27 9 0.11390 - 0.11880 5.3297BDF* 3 - 18 4 - 24 2 - 6 0.01899 - 0.02229

c2 ROS3 12 - 13 36 - 39 12 - 13 0.15270 - 0.17430 6.3152BDF* 3 - 29 4 - 35 2 - 7 0.02190 - 0.02760

d2 ROS3 18 - 19 54 - 57 18 - 19 0.22940 - 0.24560 7.3313BDF* 3 - 37 4 - 45 2 - 8 0.02459 - 0.03350

e2 ROS3 22 - 23 66 - 69 22 - 23 0.28020 - 0.29750 7.9545BDF* 3 - 43 5 - 53 2 - 8 0.02820 - 0.03740

f2 ROS3 27 - 29 81 - 87 27 - 29 0.34390 - 0.37530 6.2864BDF* 5 - 51 7 - 62 2 - 11 0.03850 - 0.05970

Tabela 5.13: Resultados numéricos do conjunto de Testes 2.

Page 71: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

5.3 APLICAÇÃO NO MODELO DO CPTEC 53

O conjunto de Testes 3, mostra os resultados com RTOL = 10−5 e ATOL decrescendo de 10+7

a 10+2, respectivos aos testes de a3 a f3.

Teste Método No de passos No de aval. f No de aval. Tempo(seg) Razão dosJac/LU tempos máx.

a3 ROS3 7 21 7 0.08900 - 0.09350 4.7704BDF* 3 - 13 4 - 16 2 - 4 0.01820 - 0.01960

b3 ROS3 9 27 9 0.11470 - 0.12040 4.8160BDF* 3 - 20 4 - 24 2 - 6 0.02070 - 0.02500

c3 ROS3 13 - 14 39 - 42 13 - 14 0.16520 - 0.18360 6.6067BDF* 3 - 29 4 - 34 2 - 6 0.02210 - 0.02779

d3 ROS3 22 - 24 66 - 72 22 - 24 0.28100 - 0.31410 9.8156BDF* 3 - 42 4 - 49 2 - 9 0.02480 - 0.03200

e3 ROS3 35 - 37 105 - 111 35 - 37 0.45010 - 0.47790 12.676BDF* 3 - 52 5 - 64 2 - 11 0.02960 - 0.03770

f3 ROS3 46 - 50 138 - 150 46 - 50 0.58420 - 0.62340 11.652BDF* 5 - 70 7 - 90 3 - 14 0.04070 - 0.05350

Tabela 5.14: Resultados numéricos do conjunto de Testes 3.

Por m, um conjunto de testes que exige mais precisão, Testes 4, com RTOL = 10−6 e ATOLdecrescendo de 10+7 a 10+2, respectivos aos resultados de a4 a f4.

Teste Método No de passos No de aval. f No de aval. Tempo(seg) Razão dosJac/LU tempos máx.

a4 ROS3 7 21 7 0.08850 - 0.09369 4.4614BDF* 3 - 13 4 - 16 2 - 4 0.01810 - 0.02100

b4 ROS3 9 - 10 27 - 30 9 - 10 0.11430 - 0.12830 5.6770BDF* 3 - 21 4 - 26 2 - 6 0.01930 - 0.02260

c4 ROS3 14 - 15 42 - 45 14 - 15 0.17830 - 0.20090 7.2527BDF* 3 - 30 4 - 35 2 - 7 0.02270 - 0.02770

d4 ROS3 25 - 26 75 - 78 25 - 26 0.30510 - 0.33530 9.5527BDF* 3 - 43 4 - 52 2 - 10 0.02520 - 0.03510

e4 ROS3 44 - 49 132 - 147 44 - 49 0.56560 - 0.62370 14.957BDF* 3 - 58 5 - 71 2 - 12 0.02989 - 0.04170

f4 ROS3 73 - 79 219 - 237 73 - 79 0.94630 - 1.01620 18.082BDF* 5 - 76 7 - 98 3 - 13 0.04070 - 0.05620

Tabela 5.15: Resultados numéricos do conjunto de Testes 4.

Para fazer uma igual comparação, testamos o Rosenbrock implementado para resolver o pro-blema por pontos e não por blocos, equivalente a implementação do BDF. As tolerâncias usadasforam as mesmas do conjunto Testes 1 que denotaremos por Testes 5, exigindo uma menor precisãoe as do conjunto de Testes 4, que exigem maior precisão, denominado conjunto de Testes 6.

Page 72: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

54 RESULTADOS NUMÉRICOS 5.3

Teste Método No de passos No de aval. f No de aval. Tempo(seg) Razão dosJac/LU tempos máx.

a5 ROS3 7 21 7 0.23370 - 0.24280 11.729BDF* 3 - 11 4 - 17 2 - 6 0.01810 - 0.02070

b5 ROS3 7 - 9 21 - 27 7 - 9 0.23940 - 0.25660 11.717BDF* 3 - 17 4 - 24 2 - 5 0.01920 - 0.02190

c5 ROS3 7 - 10 21 - 30 7 - 10 0.23880 - 0.24920 9.2639BDF* 3 - 24 4 - 29 2 - 6 0.02050 - 0.02690

d5 ROS3 7 - 12 21 - 36 7 - 12 0.24630 - 0.25830 8.3349BDF* 3 - 28 4 - 36 2 - 7 0.02430 - 0.03099

e5 ROS3 7 - 13 21 - 39 7 - 13 0.25300 - 0.27450 7.7983BDF* 3 - 35 5 - 45 2 - 8 0.02679 - 0.03520

f5 ROS3 7 - 16 21 - 48 7 - 16 0.27200 - 0.31870 7.0822BDF* 4 - 43 6 - 52 2 - 9 0.03779 - 0.04500

Tabela 5.16: Resultados numéricos do conjunto de Testes 5.

Teste Método No de passos No de aval. f No de aval. Tempo(seg) Razão dosJac/LU tempos máx.

a6 ROS3 7 21 7 0.23180 - 0.23920 11.390BDF* 3 - 13 4 - 16 2 - 4 0.01810 - 0.02100

b6 ROS3 7 - 10 21 - 30 7 - 10 0.23790 - 0.24700 10.929BDF* 3 - 21 4 - 26 2 - 6 0.01930 - 0.02260

c6 ROS3 7 - 15 21 - 45 7 - 15 0.23640 - 0.24990 9.0217BDF* 3 - 30 4 - 35 2 - 7 0.02270 - 0.02770

d6 ROS3 7 - 26 21 - 78 7 - 26 0.24760 - 0.27400 7.8063BDF* 3 - 43 4 - 52 2 - 10 0.02520 - 0.03510

e6 ROS3 7 - 49 21 - 147 7 - 49 0.28090 - 0.33990 8.1511BDF* 3 - 58 5 - 71 2 - 12 0.02989 - 0.04170

f6 ROS3 7 - 79 21 - 237 7 - 79 0.33560 - 0.44790 7.9697BDF* 5 - 76 7 - 98 3 - 13 0.04070 - 0.05620

Tabela 5.17: Resultados numéricos do conjunto de Testes 6.

Comparando a Tabela 5.12 com a Tabela 5.16 e a Tabela 5.15 com a Tabela 5.17, vemos quesem exigir muita precisão, o Rosenbrock demora mais tempo resolvendo o problema ponto a pontodo que por blocos, isso ocorre pois ele já usa uma quantidade pequena de passos e semelhante paratodos os pontos, então resolver ponto a ponto aumenta o tempo de execução. Por outro lado, quandodiminuímos a tolerância, e em algumas regiões é necessário uma quantidade de passos muito maiorque em outras, então o Rosenbrock apresenta uma melhora em relação ao tempo.

Os resultados em geral, mostraram que o BDF é mais rápido em todos os casos, sendo pelo menos4 vez mais rápido que o Rosenbrock. Outro fator importante é que o BDF mesmo exigindo umagrande quantidade de passos em algumas regiões para maior precisão, a implementação do LSODEfaz com que o tempo e os custos não aumentem signicativamente. Isso é devido a implementaçãoque adapta o tamanho de passo e a ordem, variando a ordem de 1 a 5 e usa as mesmas avaliações def e da decomposição LU se a mudança do tamanho do passo não foi grande, enquanto o Rosenbrocktem ordem xa 3, e uma fórmula com muitos estágios que exige 3 avaliações da função a cada passo.

Tivemos uma melhora considerável no tempo computacional gasto pelo método BDF em relaçãoao método de Rosenbrock, o que pode ser bastante signicativo para o modelo completo de previsãodo tempo que trabalha com mais espécies e trabalha com a evolução temporal.

Page 73: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

5.3 APLICAÇÃO NO MODELO DO CPTEC 55

As guras a seguir, mostram a evolução das 72 espécies no intervalo de tempo de 160 segundos,geradas com os métodos para a menor tolerância exigida, com RTOL = 10−6 e ATOL = 10+2. Éimportante notar que este intervalo de tempo foi suciente para acontecerem as reações, mostrandoas concentrações das espécies estão evoluindo no tempo, e além disso algumas concentrações estãoestabilizando.

0 50 100 1509.33

9.335

9.34

9.345

x 1011

0 50 100 1501.3948

1.3948

1.3948

1.3948

1.3948

1.3949

1.3949

x 1010

0 50 100 150

0

5

10

15x 10

8

0 50 100 1503.25

3.3

3.35

3.4

3.45x 10

10

ROS3

BDF*

Figura 5.12: Evolução das espécies de 1 a 4.

0 50 100 1502.5

3

3.5

4

4.5

5x 10

8

0 50 100 1501.8

2

2.2

2.4

2.6

2.8x 10

8

0 50 100 1505.16

5.17

5.18

5.19

5.2

5.21

5.22

5.23

x 106

0 50 100 1501.318

1.3185

1.319

1.3195

1.32

1.3205

1.321x 10

10

ROS3

BDF*

Figura 5.13: Evolução das espécies de 5 a 8.

0 50 100 1501.2

1.25

1.3

1.35

1.4

1.45

1.5

1.55x 10

7

0 50 100 150

9.2981

9.2982

9.2982

9.2983

9.2983

x 109

0 50 100 1502.15

2.15

2.15

2.1501

2.1502

x 109

0 50 100 1502.1556

2.1556

2.1556

2.1556

2.1556

2.1556

2.1556x 10

12

ROS3

BDF*

Figura 5.14: Evolução das espécies de 9 a 12.

0 50 100 1500.016

0.017

0.018

0.019

0.02

0.021

0.022

0 50 100 150-1

-0.5

0

0.5

1

0 50 100 1500

0.5

1

1.5

2

2.5

3

x 105

0 50 100 1503.5

4

4.5

x 107

ROS3

BDF*

Figura 5.15: Evolução das espécies de 13 a 16.

Page 74: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

56 RESULTADOS NUMÉRICOS 5.3

0 50 100 1503.8338

3.8338

3.8338

3.8338

3.8338x 10

13

0 50 100 1509.9159

9.9159

9.9159

9.9159

9.9159

9.9159x 10

9

0 50 100 1501.4438

1.4439

1.4439

1.4439

1.4439

1.4439

1.444x 10

9

0 50 100 1506.297

6.2972

6.2974

6.2976

6.2978

6.298

x 108

ROS3

BDF*

Figura 5.16: Evolução das espécies de 17 a 20.

0 50 100 150

1.0515

1.0516

1.0516

1.0517

1.0517

1.0518

1.0518

1.0519x 10

9

0 50 100 1501.2486

1.2488

1.249

1.2492

1.2494

x 109

0 50 100 1504.162

4.164

4.166

4.168

4.17

4.172

x 108

0 50 100 1502

2.1

2.2

2.3

2.4

2.5

2.6

x 106

ROS3

BDF*

Figura 5.17: Evolução das espécies de 21 a 24.

0 50 100 1509.8

9.85

9.9

9.95

x 108

0 50 100 1505

5.1

5.2

5.3

5.4

x 108

0 50 100 1501.5

2

2.5

x 106

0 50 100 1500.5

1

1.5

2

x 106

ROS3

BDF*

Figura 5.18: Evolução das espécies de 25 a 28.

0 50 100 1503.1965

3.1966

3.1967

3.1968

3.1969

3.197

3.1971

3.1972x 10

7

0 50 100 1502.1035

2.104

2.1045

2.105

2.1055x 10

7

0 50 100 1500

1

2

3

4

5

6

x 105

0 50 100 150

1.4495

1.45

1.4505

x 1010

ROS3

BDF*

Figura 5.19: Evolução das espécies de 29 a 32.

0 50 100 1501.14

1.145

1.15

1.155

x 109

0 50 100 1508.592

8.5925

8.593

8.5935

8.594

8.5945

8.595x 10

9

0 50 100 1504.51

4.515

4.52

4.525x 10

7

0 50 100 1501.034

1.036

1.038

1.04

1.042

1.044

x 108

ROS3

BDF*

Figura 5.20: Evolução das espécies de 33 a 36.

Page 75: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

5.3 APLICAÇÃO NO MODELO DO CPTEC 57

0 50 100 1501.465

1.466

1.467

1.468

1.469

1.47x 10

8

0 50 100 1502.24

2.25

2.26

2.27

2.28

2.29

x 109

0 50 100 1501.56

1.58

1.6

1.62

1.64x 10

6

0 50 100 1504.195

4.2

4.205

4.21x 10

8

ROS3

BDF*

Figura 5.21: Evolução das espécies de 37 a 40.

0 50 100 1503.22

3.23

3.24

3.25

3.26

3.27

3.28

3.29

x 109

0 50 100 1502.77

2.775

2.78

2.785

x 108

0 50 100 1504.95

5

5.05

5.1x 10

7

0 50 100 150

7.3635

7.3636

7.3637

7.3638

7.3639x 10

9

ROS3

BDF*

Figura 5.22: Evolução das espécies de 41 a 44.

0 50 100 1503.0865

3.087

3.0875

3.088

3.0885

3.089x 10

9

0 50 100 1503.6281

3.6282

3.6282

3.6283

3.6283

3.6284

x 108

0 50 100 1503.1

3.105

3.11

3.115

x 108

0 50 100 1505.722

5.723

5.724

5.725

5.726

5.727

5.728x 10

8

ROS3

BDF*

Figura 5.23: Evolução das espécies de 45 a 48.

0 50 100 1501.7

1.75

1.8

1.85

1.9

1.95

2x 10

7

0 50 100 1502

2.2

2.4

2.6

2.8

3

3.2

3.4x 10

6

0 50 100 1501.05

1.06

1.07

1.08

1.09

1.1x 10

6

0 50 100 1501.33

1.34

1.35

1.36

1.37

1.38

1.39x 10

5

ROS3

BDF*

Figura 5.24: Evolução das espécies de 49 a 52.

0 50 100 1506.5

6.55

6.6

6.65

6.7

6.75

6.8x 10

5

0 50 100 1504

4.2

4.4

4.6

4.8x 10

5

0 50 100 1507.4

7.45

7.5

7.55

7.6

7.65

7.7x 10

5

0 50 100 150

6400

6600

6800

7000

7200

7400

7600

7800

ROS3

BDF*

Figura 5.25: Evolução das espécies de 53 a 56.

Page 76: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

58 RESULTADOS NUMÉRICOS 5.3

0 50 100 1507

7.1

7.2

7.3

7.4x 10

6

0 50 100 150

3400

3600

3800

4000

4200

4400

4600

4800

0 50 100 1506000

6500

7000

7500

8000

8500

9000

0 50 100 1500

1000

2000

3000

4000

5000

6000

7000

ROS3

BDF*

Figura 5.26: Evolução das espécies de 57 a 60.

0 50 100 1500

0.005

0.01

0.015

0.02

0.025

0 50 100 1500.01

0.02

0.03

0.04

0.05

0.06

0.07

0 50 100 1500

0.5

1

1.5

2

2.5

3

3.5x 10

-3

0 50 100 1501

1.01

1.02

1.03

1.04

1.05x 10

4

ROS3

BDF*

Figura 5.27: Evolução das espécies de 61 a 64.

0 50 100 1502.6

2.65

2.7

2.75x 10

4

0 50 100 150500

550

600

650

0 50 100 1507.6

7.8

8

8.2

8.4

8.6

x 105

0 50 100 1501.4

1.5

1.6

1.7

1.8x 10

5

ROS3

BDF*

Figura 5.28: Evolução das espécies de 65 a 68.

0 50 100 150

7.4

7.6

7.8

8

8.2

8.4

x 105

0 50 100 150

0.95

1

1.05

1.1

1.15x 10

8

0 50 100 150

1.8

2

2.2

2.4

x 107

0 50 100 1503.9

4

4.1

4.2

4.3x 10

6

ROS3

BDF*

Figura 5.29: Evolução das espécies de 69 a 72.

Page 77: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

Capítulo 6

Conclusões

A modelagem de problemas de química atmoférica, exige métodos numéricos adequados pararesolver as equações diferenciais resultantes das reações das espécies químicas. O maior problemaé que as soluções dessas equações variam em diferentes ordens de grandeza, fazendo com que osmétodos mais comuns não consigam resultados precisos sem exigir muito esforço computacional.Comparamos dois métodos adequados para resolver problemas sti. O primeiro é um método bemutilizado, o método de Rosenbrock, que por ser de passo simples, possui uma fórmula fácil deimplementar. O segundo, fórmula de diferenciação regressiva (BDF), foi o primeiro método propostopara resolver este tipo de problema, mas por ser de passo múltiplo, apresenta um maior grau dediculdade na implementação. Ambos os métodos são implícitos e exigem processos iterativos pararesolver a implicitude, surgindo a necessidade de resolver sistemas de equações lineares.

O método de Rosenbrock é usado no modelo CCATT- BRAMS na previsão numérica do tempodo CPTEC, a fórmula utilizada é de um Rosenbrock de ordem 3 e 4-estágios. Os resultados com essemétodo foram bons quando não exigimos muita precisão, mas conforme diminuimos a tolerância, ométodo exige muitos passos para completar o intervalo de integração, aumentando o custo compu-tacional. O método BDF é implementado no pacote LSODE, sucessor dos pacotes de GEAR pararesolver EDOs. A implementação do LSODE utiliza o polinômio em série de Taylor para desen-volvimento das fórmulas BDF e armazena as informações na matriz de Nordsieck, o que gera umaotimização na implementação, pois a cada passo da solução, só será necessário o conhecimento dasolução no passo anterior, e não nos k-passos anteriores como é o comum para métodos de k-passos.Além disso, a implementação reduz os custos computacionais, utilizando a mesma matriz jacobiana,a decomposição LU e a avaliação da f se o tamanho do passo não teve um aumento consideráveldesde a última atualização.

Outro fator que levamos em consideração é que o modelo do CPTEC está implementado pararesolver o problema para subgrades inteiras e não para cada ponto isoladamente, ao contrário doLSODE que resolve por pontos da grade. Isto é potencialmente bom para execução em máquinasvetoriais, mas por outro lado, quando exigimos maior precisão, o método vai escolher um tamanhode passo pequeno e usá-lo para todos pontos da grade, o que leva a um desperdício de tempo e custocomputacional mais elevado em regiões que não precisariam de muitos passos. Para contornar esteproblema, forçamos o Rosenbrock a resolver o sistema de EDOs a cada ponto separadamente. Istoreduziu bastante o custo computacional, e o tempo caiu pela metade para alta precisão, mas parapouca precisão o tempo aumentou. Porém para todos os testes, o tempo foi maior do que com oBDF. Outro resultado observado é que o BDF não tem um grande aumento no tempo de execuçãoconforme exigimos mais precisão, mesmo precisando de mais passos para completar o intervalo deintegração, ao contrário do Rosenbrock, que tem um crescimento muito signicativo.

Levando em conta esses resultados e sabendo que um modelo de previsão de tempo exige métodosnuméricos rápidos com um custo computacional aceitável, acreditamos que o método BDF se cons-titua em interessante alternativa ao método de Rosenbrock, pois segundo nossos testes, se mostroucomputacionalmente bem mais eciente. Como um desdobramento deste trabalho, seria bastanteinteressante incorporá-lo ao CCATT-BRAMS e testá-lo em diversas condições operacionais.

59

Page 78: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

60 CONCLUSÕES

Page 79: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

Apêndice A

Conceitos preliminares

Este apêndice é importante para organizar as principais denições e as propriedades gerais demétodos numéricos para resolver equações diferenciais ordinárias, assunto clássico e bem abordadona literatura ([Lam91],[HW96]). Uma segunda parte é destinada a um breve estudo de como pro-blemas sti se comportam com métodos explícitos e implícitos, motivação que levou ao estudo dosmétodos abordados neste trabalho.

Para tratar cada método adequadamente, utilizamos diferentes notações, por isso, as denimosa seguir. Denimos um problema de valor inicial de primeira ordem na forma não-autônoma por

y′ = f(t, y), y(t0) = y0, (A.1)

sendo y = y(t) ∈ R, t ∈ R a variável independente e f : R×R→ R. A mesma notação é usada paradenir um sistema de EDOs de dimensão m na forma não-autônoma, a diferença é a dimensão de ye f(t, y), temos y = [y1, y2, . . . , ym]T , (y ∈ Rm), e f = [f1, f2, . . . , fm]T tal que f : R× Rm → Rm.Um sistema de EDOs com valor inicial na forma autônoma é dado por

y′ = f(y), y(t0) = y0, (A.2)

com y = y(t) ∈ Rm, t ∈ R e f : Rm → Rm, notação adequada para manipular as formulações dosmétodos implícitos que exigem uma linearização. Para completar, o sistema de primeira ordem naforma (A.1), é linear homogêneo se f(t, y) tomar a forma f(t, y) = A(t).y, onde A é uma matrizde dimensão m×m, além disso, se A for independente de t, teremos um sistema linear homogêneocom coecientes constantes

y′ = A.y. (A.3)

Os problemas de valor inicial abordados neste trabalho apresentam unicidade de solução. Anotação ‖·‖ representa a norma de um vetor y ∈ Rm, a norma de f(t, y) ∈ R × Rm e a normade matrizes Am×m. Temos o seguinte teorema de unicidade ([SB02], [Sot79], [Lam91]):

Teorema A.1 Seja f denida e contínua na região S := (t, y)| a ≤ t ≤ b, y ∈ Rm, a, b nitos.Seja L uma constante tal que

‖f(t, y)− f(t, y∗)‖ ≤ L ‖y − y∗‖ , (A.4)

para todo t ∈ [a, b] e todo y, y∗ ∈ Rm. Então, para cada t0 ∈ [a, b] e y0 ∈ Rm, existe exatamenteuma função y(t), satisfazendo:

(a) y(t) é contínua e continuamente diferenciável para t ∈ [a, b];

(b) y′ = f(t, y(t)), para t ∈ [a, b];

(c) y(t0) = y0.

61

Page 80: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

62 APÊNDICE A

A exigência (A.4) é conhecida como condição de Lipschitz e a constante L como constante deLipschitz. Do teorema do valor médio, segue que a condição de Lipschitz é satisfeita se as derivadasparciais ∂fi/∂yj , i, j = 1, . . . ,m, existem na região S e são contínuas e limitadas em S.

A.1 Métodos numéricos para problemas de valor inicial

Trabalhamos ao longo dos capítulos com duas classes de métodos numéricos para resolver pro-blemas de valor inicial, a classe dos métodos de passo simples e a classe dos métodos de passomúltiplo, podendo ser métodos explícitos ou implícitos. Denimos:

Denição A.1 Um método de passo único aplicado ao problema de valor inicial (A.1) é dado poryn+1 = yn + hΦ(tn, tn+1, yn, yn+1, h)y0 = y(t0)

(A.5)

com tn+1 = tn + h e h o tamanho do passo de integração.

Denição A.2 Um método de passo múltiplo aplicado ao problema de valor inicial (A.1) é dadopor

k∑j=0

αjyn+1−j = hΦ(tn+1−k, . . . , tn+1, yn+1−k, . . . , yn+1, h)

y0 = y(t0)

(A.6)

com tn+1 = tn + h e h o tamanho do passo de integração.

Se os métodos numéricos forem explícitos, teremos que a função Φ do lado direito de ambos osmétodos, dependerá somente até o termo anterior yn, isto é, o coeciente de yn+1 é igual a zero, casocontrário os métodos serão implícitos. No método de passo simples só precisamos da aproximaçãoyn, para encontrar a aproximação no instante tn+1, enquanto no método de passo múltiplo com kpassos, precisamos conhecer as k aproximações anteriores yn+1−k, . . . , yn para encontrar a soluçãoaproximada yn+1 no instante tn+1. Para ambos os métodos implícitos, teremos que resolver umaequação algébrica para solucionar a implicitude.

A.1.1 Método iterativo

A solução de métodos implícitos, implica a necessidade de resolver sistemas de equações dife-renciais não-lineares dados por

y = ϕ(y), com ϕ : Rm → Rm. (A.7)

Para isto, utilizaremos o método de Newton-Raphson. Assim, o problema se reduz a encontrar araiz da equação F (y) = y − ϕ(y).

Denição A.3 O processo iterativo de Newton-Raphson (ou iteração de Newton), aplicado ao pro-blema escalar F (y) = 0, F : R→ R, é dado por:

y[v+1] = y[v] − F (y[v])

F ′(y[v]), n = 0, 1, 2, . . . . (A.8)

De forma análoga, o processo iterativo de Newton-Raphson aplicado a um sistema de equações,F (y) = 0, F : Rm → Rm, resulta em

y[v+1] = y[v] − J−1F (y[v])F (y[v]), n = 0, 1, 2, . . . , (A.9)

onde JF (y) = (∂F/∂y)(y) é a matriz jacobiana de F .

Page 81: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

MÉTODOS NUMÉRICOS PARA PROBLEMAS DE VALOR INICIAL 63

A.1.2 Polinômios interpoladores

Os métodos de passo múltiplo dados em (A.6) são comumente desenvolvidos utilizando interpo-lação polinomial. Nesta seção vamos denir as formas mais utilizadas de polinômios interpoladorespara o desenvolvimento destes métodos, que serão necessárias para os métodos BDF.

Consideremos o conjunto Pn de todos os polinômios reais ou complexos de grau menor ou igual an, P (t) = a0 +a1t+ · · ·+antn. Temos o seguinte teorema de existência e unicidade para o polinômiointerpolador ([SB02], Capítulo 2):

Teorema A.2 Dados n + 1 pontos arbitrários (ti, yi), i = 0, . . . , n distintos, isto é, ti 6= tj parai 6= j, existe um único polinômio P ∈ Pn, tal que

P (ti) = y(ti) = yi, i = 0, . . . , n. (A.10)

Em outras palavras, existe um único polinômio P de grau n, que interpola n+ 1 pontos distintos.

No caso dos pontos serem igualmente espaçados temos, por exemplo, a fórmula de interpolação deNewton-Gregory backward que é denida em termos do operador das diferenças regressivas (backwarddierences).

Denição A.4 O operador de diferenças regressivas é denido por:

∇yn = yn − yn−1, ∇2yn = ∇(yn − yn−1), . . . ,∇kyn = ∇k−1(yn − yn−1). (A.11)

Utilizando estas diferenças (A.11), o polinômio interpolador de Newton-Gregory Ik(t) com t =tn + rh, r = 0,−1, . . . ,−k é dado por

Ik(t) = Pk(r) =

k∑i=0

(−1)i(−ri

)∇iyn

=k∑i=0

ai∇iyn (A.12)

onde

ai = (−1)i(−ri

), i = 0, . . . , k, (A.13)

sendo cada(−ri

)um coeciente binomial, denido por(

−ri

)=

(−r)!i!(−r − i)!

=(−r)(−r − 1) . . . (−r − i+ 1)(−r − i)!

i!(−r − i)!, −r, i ∈ N.

=(−1)i.(r)(r + 1) . . . (r + i− 1)

i!

No caso de pontos não igualmente espaçados, utilizamos os polinômios de Lagrange:

Lk,j(t) =k∏i=0j 6=i

t− tn−itn−j − tn−i

, (A.14)

onde Lk,j(t) é um polinômio de grau k, satisfazendo para i = 0, . . . , k,

Lk,j(tn−i) =

1 se i = j0 se i 6= j.

(A.15)

Page 82: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

64 APÊNDICE A

Enm, o polinômio interpolador Ik(t) escrito em termos do polinômio de Lagrange é dado por:

Ik(t) =

k∑j=0

Lk,j(t)yn−j . (A.16)

É importante notar que essa forma dos polinômios de Lagrange, não oferece uma forma de recorrên-cia, isto é, no caso de querermos acrescentar um ponto (tn−k−1, yn−k−1) no intervalo, não teremosIk+1(t) recorrente de Ik(t) e será necessário recalcular os polinômios de Lagrange, o que torna aimplementação custosa e mais lenta. Este problema pode ser contornado, fazendo uma mudança decoordenadas para coordenadas baricêntricas, que pode ser vista em [BT04].

Alternativamente no caso de pontos não igualmente espaçados, podemos usar a fórmula dediferenças divididas de Newton. O polinômio interpolador é da seguinte forma:

Ik(t) = b0 + b1(t− tn) + b2(t− tn)(t− tn−1) + · · ·+bk(t− tn)(t− tn−1) · · · (t− tn−k+1), (A.17)

onde os coecientes b′is irão denir as diferenças divididas. Denimos y[tn−i] = y(tn−i) e temos ak-ésima diferença dividida de y em k + 1 pontos:

y[tn, tn−1, . . . , tn−k] =y[tn, tn−1, . . . , tn−k+1]− y[tn−1, tn−2, . . . , tn−k]

tn − tn−k, (A.18)

Logo, o polinômio (A.17), reescrito em termos dessas diferenças divididas pode ser reescrito por

Ik(t) = y[tn] + (t− tn)y[tn, tn−1] + · · ·+(t− tn)(t− tn−1) · · · (t− tn−k+1)y[tn, tn−1, . . . , tn−k]. (A.19)

Assim, obtemos um polinômio que é recorrente do polinômio anterior, isto implica que quandoadicionamos o ponto (tn−k−1, yn−k−1), teremos que o polinômio Ik+1(t) só irá exigir o cálculo da(k + 1)-ésima diferença dividida y[tn, tn−1, . . . , tn−k−1],

Ik+1(t) = Ik(t) + (t− tn)(t− tn−1) · · · (t− tn−k)y[tn, tn−1, . . . , tn−k−1]. (A.20)

O mesmo é válido se adicionarmos um ponto no interior do intervalo, pois a fórmula das diferençasé independente da ordem dos pontos tn, . . . , tn−k, basta fazer uma permutação. Esta propriedade éútil na otimização do código, reduzindo os custos no cálculo dos coecientes.

Finalmene, denimos o polinômio de Taylor que é usado para o desenvolvimento do método depasso múltiplo que armazena os valores na forma da matriz de Nordsieck ([Nor62]). Se yn permitederivadas contínuas até ordem k em um intervalo aberto I, tal que tn ∈ I, então temos

Pk(t) = yn(tn) +(t− tn)

1!y(1)n (tn) +

(t− tn)2

2!y(2)n (tn) + . . .+

(t− tn)k

k!y(k)n (tn), (A.21)

que é o polinômio de Taylor de ordem k, de yn em torno de tn. Ou equivalentemente

Pk(t) = yn(tn) +hn1!y(1)n (tn) +

h2n

2!y(2)n (tn) + . . .+

hknk!y(k)n (tn), (A.22)

onde hn é o tamanho do passo de integração.

Page 83: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

CONVERGÊNCIA E CONSISTÊNCIA 65

A.2 Convergência e consistência

Quando empregamos métodos numéricos esperamos que os resultados da solução numérica apro-ximem bem a solução exata. Por isso, é necessário a validação da solução numérica. A seguir, vamosdenir alguns conceitos relacionados a isto.

Denotamos por y(t) a solução exata do problema de valor inicial (A.1). O erro local de dis-cretização de um método de passo simples (A.5), indica o quão bem a solução exata da equaçãodiferencial obedece a equação do método numérico, ou seja, é uma medida de qualidade da aproxi-mação do método numérico, sendo interpretada como o erro produzido em uma única aplicação dométodo. Em notação algébrica, temos:

Denição A.5 (Erro local de discretização)

δh =y(tn+1)− y(tn)

h− Φ(tn, tn+1, y(tn), y(tn+1), h) (A.23)

Calculando o limite do erro local de discretização quando o passo de integração tende a zero,segue que

limh→0

δh = limh→0

[y(tn + h)− y(tn)

h− Φ(tn, tn+1, y(tn), y(tn+1), h)

]= y′(tn)− Φ(tn, tn+1, y(tn), y(tn+1), 0)

= f(tn, y(tn))− Φ(tn, tn+1, y(tn), y(tn+1), 0).

(A.24)

Para um método numérico, é razoável exigir que o limite do erro local δh, tenda a zero, quando htende a zero e portanto, podemos denir a consistência de um método numérico:

Denição A.6 (Consistência) O método de passo simples (A.5), é consistente com o problemade valor inicial (A.1) se, e somente se,

limh→0

δh = 0 (A.25)

e a ordem de consistência é dada pelo inteiro p, tal que δh = O(hp), h→ 0.

O erro global de discretização representa o erro total acumulado até o n-ésimo passo de inte-gração, sendo denido, no instante tn, por:

Denição A.7 (Erro global de discretização)

ε(tn, h) = y(tn)− yn (A.26)

Assim, dizemos que um método numérico é convergente em t = tn se, e somente se o erro globalde discretização tende a zero quando h tende a zero. Será convergente se for convergente para todot no intervalo de integração.

Denição A.8 (Convergência) Um método numérico é convergente se, e somente se

limh→0

ε(t, h) = 0. (A.27)

Page 84: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

66 APÊNDICE A

A denição de consistência para métodos de passo múltiplo, é dada de maneira semelhante, comuma pequena modicação na forma do erro local. Denimos o erro local de discretização para ummétodo de passo múltiplo (A.6):

Denição A.9 (Erro local de discretização)

αh =

k∑j=0

αjy(tn+1 − jh)

h− Φ(tn+1−k, . . . , tn+1, y(tn+1−k), . . . , y(tn+1), h). (A.28)

Esse é o erro produzido pelo método de k-passos, para avançar um passo da solução, partindo devalores exatos y(tn+1 − jh), 0 ≤ j ≤ k − 1. Segue a denição de consistência:

Denição A.10 O método passo múltiplo linear (A.30) é consistente com o problema de valorinicial (A.1) se, e somente se,

limh→0

αh = 0. (A.29)

E a ordem de consistência é dada pelo inteiro p, tal que αh = O(hp), h→ 0.

Em particular, para métodos de passo múltiplo dados por:

k∑j=0

αjyn+1−j = h

k∑j=0

βjfn+1−j , (A.30)

a denição de consistência exige algumas condições. Reescrevemos o erro local de discretização por

hαh =k∑j=0

αjy(tn+1 − jh)−k∑j=0

βjf(tn+1 − jh, y(tn+1 − jh)). (A.31)

Expandindo (A.31) em série de Taylor em torno de t = tn+1, tem-se que:

hαh =

k∑j=0

αj

[y(tn+1)− jhy(1)(tn+1) + . . .+ (−1)p

jphp

p!y(p)(tn+1) + . . .

]+

−k∑j=0

βj

[−hy(1)(tn+1) + jh2y(2)(tn+1) + . . .+ (−1)p

jp−1hp

(p− 1)!y(p)(tn) + . . .

].

(A.32)

Ou equivalentemente,

hαh = C0y(tn+1) + C1hy(1)(tn+1) + C2h

2y(2)(tn+1) + . . .+ Cphpy(p)(tn+1) + . . . . (A.33)

C0 =k∑j=0

αj ,

C1 = −k∑j=0

jαj +k∑j=0

βj ,

...

Cp = (−1)pk∑j=0

jp

p!αj + (−1)p

k∑j=0

jp−1

(p− 1)!βj .

(A.34)

Page 85: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

CONVERGÊNCIA E CONSISTÊNCIA 67

Assim, para que (A.29) seja satisfeita, devemos ter em (A.33):

C0 =k∑j=0

αj = 0 e C1 = −k∑j=0

jαj +k∑j=0

βj = 0. (A.35)

E para que um método de passo múltiplo seja consistente de ordem p, devemos ter

C0 = C1 = . . . = Cp = 0 e Cp+1 6= 0, (A.36)

o qual obtemos ([Dat08]),

hαh = Cp+1hp+1y(p+1)(ξ). (A.37)

A denição de erro global de discretização para métodos de passo múltiplo é identica à de-nição dada para métodos de passo simples (Denição A.7) e consequentemente teremos a mesmadenição de convergência (Denição A.8). Mais detalhes sobre convergência e consistência podemser encontrados em [Lam91], [SB02] e [RN].

A.2.1 Estabilidade para métodos de passo simples

O efeito de escolher o tamanho do passo de integração de um método numérico, am de quea solução numérica tenha o mesmo comportamento da solução analítica, é denido como a análisede estabilidade do método. O estudo da estabilidade dos métodos numéricos é geralmente feitoanalisando seu desempenho quando aplicado a um problema de solução simples. Usaremos a equaçãoteste de Dahlquist ([HW96], [GSDT85]):

y′(t) = λy(t)y(t0) = y0,

(A.38)

sendo λ ∈ C, y, t ∈ R. Para obter uma solução numérica para este problema teste, precisamosescolher um método numérico e um passo de integração h > 0. A solução exata de (A.38) é dada pory(t) = y0e

λ(t−t0), crescendo exponencialmente se Re(λ) > 0, e decaindo exponecialmente se Re(λ) <0. O que esperamos do método numérico é que ele produza uma solução numérica que se aproximeda solução analítica, sendo assim, será um método estável e instável caso contrário. Deniremos aregião de estabilidade absoluta para um método de passo simples, para isto consideramos | · | umanotação para o valor absoluto.

Denição A.11 A região de estabilidade absoluta de um método de passo simples, é dada peloconjunto

Ω = z = λh ∈ C; |R(z)| < 1, (A.39)

onde R(z) é denominada função de estabilidade, proveniente da aplicação de um método numéricona equação teste y′ = λy, sendo determinada quando escrevemos o método numérico na forma

yn+1 = R(λh)yn. (A.40)

Considere o método de Euler explícito aplicado ao problema de valor inicial (A.1),yn+1 = yn + hf(tn, yn)y0 = y(t0),

(A.41)

Page 86: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

68 APÊNDICE A

Aplicando este método na equação teste (A.38) e deixando em função de y0, obtem-se a soluçãonumérica

yn+1 = (1 + λh)yn

= (1 + λh)ny0. (A.42)

Analisamos os possíveis casos: λ > 0 e λ < 0. Se λ > 0 a solução numérica (A.42) sempre terá ocomportamento semelhante ao da solução analítica, yn+1 → ∞ quando n → ∞. Enquanto, paraλ < 0 se comportará como a solução analítica, isto é, yn+1 → 0 quando n→∞, se |1+λh| < 1, tantopara λ ∈ R ou C. No caso λ ∈ R, a região onde a desigualdade é satisfeita é um intervalo aberto:λh ∈ (−2, 0). Para λ ∈ C, fazemos λh = a+ bi, então |(1 + a) + bi| < 1 implica (1 + a)2 + b2 < 1logo, a região de estabilidade é o conjunto dos pontos (λh) interiores à circunferência de centro(−1, 0) e raio 1, região sombreada da Figura A.1. Devido a essa restrição, dizemos que o métodode Euler explícito é condicionalmente estável.

Figura A.1: Região de estabilidade do método de Euler explícito.

Fazemos o mesmo procedimento para o método de Euler implícito,yn+1 = yn + hf(tn+1, yn+1)y0 = y(t0),

(A.43)

e obtemos a solução numérica

yn+1 =yn

1− λh=

y0

(1− λh)n. (A.44)

Neste caso, yn+1 → 0 quando n → ∞, implica que a desigualdade∣∣∣ 1

1−λh

∣∣∣ < 1 deve ser satisfeita.

Para λ ∈ R, basta ter λh < 0 ou λh > 2, se λ ∈ C, procedemos como anteriormente (λh = a+ bi),

então,∣∣∣ 1

(1−a)−bi

∣∣∣ < 1 implica em 1 < (1− a)2 + b2 logo, a região de estabilidade será o conjunto dos

pontos exteriores à circunferência centrada em (1, 0) e com raio 1, região sombreada da Figura A.2.

Figura A.2: Região de estabilidade do método de Euler implícito.

Page 87: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

CONVERGÊNCIA E CONSISTÊNCIA 69

Estas análises em conjunto com a Denição A.11, mostram que a região de estabilidade absolutados métodos explícitos é bem pequena e limitada, diferentemente dos métodos implícitos que pos-suem uma região de estabilidade absoluta ilimitada, isto se deve à função de estabilidade R(z) queno caso de métodos explícitos é uma função polinomial, contra uma função racional para métodosimplícitos, por isso a necessidade de usar métodos implícitos para resolver problemas sti.

Os métodos que possuem a região de estalibidade contendo todo o semi-plano complexo comparte real negativa, funcionam muito bem para problemas sti, pois este é precisamente o conjuntodos autovalores onde a solução exata da equação de Dahlquist (A.38) é estável. Esta é uma proprie-dade denida por Dahlquist com o nome de A-estabilidade. Mas que é muito exigente para métodosde passo múltiplo, na próxima seção daremos denições adequadas para essa classe de métodos.

Denição A.12 (Dahlquist, 1963) Um método numérico é A-estável se todo o semi-plano com-plexo com parte real negativa está contido em sua região de estabilidade absoluta, isto é,

Ω ⊇ C− = z ∈ C | Re(z) ≤ 0. (A.45)

A.2.2 Estabilidade para métodos de passo múltiplo

Para métodos de passo múltiplo, analisamos o conceito de zero estabilidade e em seguida o deestabilidade absoluta. Considere um método de passo múltiplo linear ou método de k-passos linear,aplicado ao problema de valor inicial (A.1):

α0yn+1 + α1yn + · · ·+ αkyn+1−k = h(β0fn+1 + β1fn + · · ·+ βkfn+1−k), (A.46)

onde αj , βj , j = 0, . . . , k, são constantes, yn+1−j é uma aproximação para y(tn+1−j), fn+1−j é umaaproximação para f(tn+1−j , yn+1−j) e h é o passo de integração. A zero estabilidade de um métodode passo múltiplo se diz respeito ao estudo da estabilidade com h → 0 ([Dat08]). Considere oseguinte problema de valor inicial

y′(t) = 0, t ∈ [a, b]y(0) = 0,

(A.47)

com solução exata y(t) = 0. Aplicando o método (A.46) no problema teste (A.47), obtemos

α0yn+1 + α1yn + · · ·+ αkyn+1−k = 0. (A.48)

Essa equação (A.48) é chamada de equação de diferenças linear homogênea. Se o método de passomúltiplo é convergente, então a solução yk → 0, para todo t ∈ [a, b], isto é, lim yk = 0, h→ 0.

Para determinar em quais condições o método é convergente, testamos soluções da forma

yn+1 = rn+1. (A.49)

Substituindo (A.49) na equação de diferenças (A.48) e dividindo por rn+1−k, obtemos

α0rk + α1r

k−1 + · · ·+ αk−1r + αk = 0. (A.50)

Para abreviar a notação, introduzimos os polinômios associados ao método de passo múltiplo,denominados de primeiro e segundo polinômios característicos, respectivamente,

ρ(r) =k∑j=0

αjrk−j , (A.51)

Page 88: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

70 APÊNDICE A

σ(r) =k∑j=0

βjrk−j . (A.52)

Podemos ver que a equação (A.50) coincide com o primeiro polinômio característico, e portantoconsideramos dois casos:

1) as raízes rj desse polinômio característico são reais e distintas, então o método de passomúltiplo é convergente se |rj | ≤ 1, j = 1, . . . , k;

2) existe alguma raiz rj com multiplicidade, então o método será convergente se |rj | < 1.Desses resultados, temos a denição de zero-estabilidade:

Denição A.13 Um método de passo múltiplo linear é zero-estável se nenhuma raiz do primeiropolinômio característico

ρ(r) =

k∑j=0

αjrk−j ,

for maior que 1 em módulo e toda raiz com multiplicidade tiver módulo menor que 1.

Uma consequência desta denição é que todo método de passo simples é zero-estável. Agora,aplicamos o método (A.46) na equação teste de Dahlquist (A.38),

α0yn+1 + α1yn + · · ·+ αkyn+1−k = λh(β0yn+1 + β1yn + · · ·+ βkyn+1−k). (A.53)

A equação característica obtida, pode ser reescrita na forma,

(α0 − µβ0)yn+1 + (α1 − µβ1)yn + · · ·+ (αk − µβk)yn+1−k = 0, µ = λh. (A.54)

Testamos novamente as soluções da forma (A.49). Substituindo (A.49) na equação de diferenças(A.54) e dividindo por rn+1−k, obtemos

(α0 − µβ0)rk + (α1 − µβ1)rk−1 + · · ·+ (αk − µβk) = 0, µ = λh. (A.55)

Para abreviar a notação, usamos o primeiro e o segundo polinômio característico dados por (A.51)e (A.52) assim, a equação das diferenças (A.55) pode ser reescrita por

ρ(r)− µσ(r) = 0, µ = λh, (A.56)

e o polinômio característico do método de passo múltiplo π(r) = ρ(r)− µσ(r), satisfaz π(r) = 0 ser = 0 (solução trivial), ou r é uma raiz do polinômio. Seguem as denições de estabilidade absolutae região de estabilidade absoluta para métodos de k-passos linear.

Denição A.14 Um método de passo múltiplo linear é absolutamente estável, se para dado µ = λhxo, todas as raízes ri do polinômio característico

π(r) = ρ(r)− µσ(r), (A.57)

associado à equação de diferenças linear (A.53), satisfazem

|ri| ≤ 1, i = 1, . . . , n. (A.58)

Além disso, raízes múltiplas devem ser estritamente menores que 1. Caso (A.58) não seja satisfeita,o método será absolutamente instável.

Page 89: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

CONVERGÊNCIA E CONSISTÊNCIA 71

Denição A.15 A região de estabilidade absoluta do método de passo múltiplo (A.46) é dada peloconjunto

Ψ =

µ ∈ C;

todas as raízes ri(µ) de (A.57) satisfazem |ri(µ)| ≤ 1,raízes múltiplas satisfazem |ri(µ)| < 1

. (A.59)

Observe que, de acordo com as Denições (A.12), (A.14) e (A.15), um método de passo múltiplose comportará bem para problemas sti se for A-estável, ou seja, se Ψ ⊃ C−.

O teorema abaixo diz que A-estabilidade é uma exigência muito forte para métodos de passomúltiplo, ele foi tirado de Lambert ([Lam91], Capítulo 6), sendo conhecido como a segunda Barreirade Dahlquist e faz uma conclusão sobre a estabilidade desses métodos. O resultado denominado deprimeira Barreira de Dahlquist pode ser encontrado em [HNW87].

Teorema A.3 (Dahlquist, 1963) (i)Um método de passo múltiplo linear explícito não pode serA-estável. (ii) A ordem de um método de passo múltiplo linear A-estável não pode exceder 2. (iii) ARegra trapezoidal é o único método de passo múltiplo linear A-estável de ordem 2 com menor erroconstante.

Devido à complexidade de encontrar métodos de passo múltiplo que trabalhassem bem paraproblemas sti, isto é, métodos de passo múltiplo que possuem a região de estabilidade contendo omeio plano complexo esquerdo, surgiram denições mais fracas que a condição de A-estabilidade,sem exigir estabilidade no meio plano esquerdo inteiro, mas garantindo a conabilidade dos métodosquando aplicados em problemas sti.

A seguinte denição consiste em considerar o caso onde os autovalores λi, i = 1, . . . ,m, damatriz do sistema, estão todos dentro de uma região innita na metade esquerda do λh-plano,limitada pelos raios arg (λh) = π − α, arg (λh) = π + α com 0 < α < π/2 (ver Figura A.3).Multiplicar λi ∈ C por h ∈ R é equivalente a mover os autovalores ao longo do raio a partir daorigem, e disto segue que λih também está dentro desta região, para todos valores positivos de h,o que implica que também podemos tomar tamanhos de passos tão grandes quanto quisermos. Istorecebeu o nome de A(α)-estabilidade (ver [Lam91]).

Denição A.16 (Widlund, 1967) Um método é A(α)-estável, α ∈ (0, π/2), se para µ = λh, osetor Sα está contido na região de estabilidade Ψ, isto é,

Ψ ⊃ Sα = µ ; |arg(−µ)| < α, µ 6= 0. (A.60)

Ele é A(0)-estável se ele é A(α)-estável para algum α > 0 sucientemente pequeno.

Figura A.3: Ângulo de A(α)-establidade.

Page 90: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

72 APÊNDICE A

Esta denição signica que o ângulo de A(α)-estabilidade está contido na região de estabilidadeΨ de um método de passo múltiplo. Ela será necessária para os métodos de passo múltiplo queaplicaremos em problemas sti.

Para completar o conjunto das denições de problemas sti, damos mais uma denição paramétodos de passo múltiplo conhecida por sti -estabilidade ([Lam91]):

Denição A.17 (Gear, 1969) Um método é stiy-estável se Ψ ⊇ R1 ∪R2, onde

R1 = λh | Re(λh) < −a,

R2 = λh | −a ≤ Re(λh) < 0,−c ≤ Im(λh) ≤ c

e a e c são números reais positivos.

Esta última denição, enfraquece um pouco mais as exigências de A-estabilidade, pois os au-tovalores que produzem os transientes rápidos em um problema sti, estão todos à esquerda dalinha Re(λh) = −a, a > 0, e os autovalores correspondentes aos transientes lentos, estão agrupadospróximos da origem, supondo que não há autovalores com pequena parte real negativa e grandeparte imaginária (Figura A.4).

c

-a|

-c

Figura A.4: Região de sti-establidade.

A.3 Problemas sti : Um exemplo

Este é um exemplo simples de uma equação diferencial ordinária de primeira ordem tirada de[HW96] (Capítulo 1). Dado o problema de valor inicial

y′(t) = −50(y(t)− cos(t))y(0) = 0,

(A.61)

com t, y ∈ R, vamos fazer uma análise adequada para esta equação, seguindo a primeira análisepara problemas sti feita por Curtiss e Hirschfelder ([CH52]). Consideramos a forma geral da EDO,dada por

dy

dt= (y(t)−G(t))/a(t, y). (A.62)

Temos em (A.61) que G(t) = cos(t) e a(t, y) = −1/50. Podemos observar que para cada valorde t, temos uma raiz y(t) = G(t) = cos(t). Sabemos que a função cos(t) é bem comportada, istoé, cos(t) varia com t consideravelmente mais lento que exp(t/a(t, G(t))) = exp(−50t). Assim, de

Page 91: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

PROBLEMAS STIFF : UM EXEMPLO 73

(A.62), vemos que se a(t, y) é muito pequeno, então há uma solução especial y = Y (t), que estáperto de y = G(t). Vamos desenvolver uma aproximação dessa solução com um processo iterativo.Na primeira iteração, obtemos

Y (1) = G+ a(t, G)dG

dt

= cos(t) +1

50sen(t).

A segunda aproximação é feita usando a primeira (Y (1)) no lugar de G, em a(t, G) e em dG/dt,

Y (2) = G+ a(t, Y (1))dY (1)

dt

= cos(t)− 1

50(−sen(t) +

1

50cos(t))

=2499

2500cos(t) +

1

50sen(t).

Repetindo esse processo, obtemos Y (3) em função de Y (2),

Y (3) =2499

2500(cos(t) +

1

50sen(t)).

Esse resultado permanece igual para as próximas iterações a partir de Y (3). Então, podemostomar Y (3) como uma aproximação para Y = Y (t). Enquanto a função Y mantém-se próximade G(t), a outra solução se desvia exponencialmente. Subtraindo Y da equação (A.62), sendo quea(t, y) = −1/50 não varia com y, segue que

a(t, y)d(y − Y )

dt= (y − Y ),

Integrando isto obtemos,

y − Y = C.exp

(1

a(t, y)t

). (A.63)

Por m, substituindo em (A.63), o valor de Y e a constante C calculada com o valor inicial,encontramos a solução aproximada do problema (A.61)

y(t)− 2499

2500(cos(t) +

1

50sen(t)) = −2499

2500e−50t. (A.64)

O termo e−50t faz com que a solução tenha um rápido decaimento conforme t aumenta.Vamos aplicar os métodos numéricos de passo simples mais comuns, para resolver a EDO (A.61),

e analisar como se comportam suas soluções numéricas. Começamos aplicando o método de Eulerexplícito:

yn+1 = yn + hf(tn, yn)y0 = y(t0),

(A.65)

sendo h > 0 o passo de integração, temos que a solução numérica é dada por

yn+1 = (1− 50h)yn + 50h cos(tn). (A.66)

Como a função cos(t) é limitada entre [−1, 1] para todo t ∈ R, e já vimos que y(t) = cos(t) éuma raiz do problema, vamos analisar apenas primeira parte (1 − 50h)yn. Denotamos por ysn+1 e

Page 92: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

74 APÊNDICE A

escrevemos em função de y0,

ysn+1 = (1− 50h)yn

= (1− 50h)ny0.

Queremos que a solução numérica tenha o mesmo comportamento de e−50t. Analisando ysn+1 → 0quando n→∞, temos que isto acontece se |1− 50h| < 1, implicando na restrição: h < 2

50 .Fazemos a mesma análise para o método de Euler implícito

yn+1 = yn + hf(tn+1, yn+1)y0 = y(t0),

(A.67)

Temos que a solução numérica encontrada é dada por

yn+1 =yn

1 + 50h+

50h cos(tn+1)

1 + 50h. (A.68)

Analisamos a primeira parte da solução numérica e deixamos em função de y0,

ysn+1 =yn

1 + 50h

=y0

(1 + 50h)n, (A.69)

temos que ysn+1 → 0 quando n→∞, para os valores de h tais que∣∣∣ 1

1+50h

∣∣∣ < 1, ou seja, para todo

valor de h, pois h > 0. Isto implica que o método implícito converge com qualquer tamanho depasso. As guras abaixo, mostram os grácos das soluções numéricas, juntamente com a soluçãoexata aproximada (A.64). O intervalo utilizado foi [0, 1.5], a linha contínua representa a curva dasolução exata, e as linhas tracejadas, são as soluções numéricas.

Na Figura A.5 temos a solução (A.66) dada pelo método de Euler explícito com diferentes valoresde h. As três guras de cima, apresentam maiores oscilações, pois têm, respectivamente, os tamanhosde passo h = 1.5

36 , h = 1.537 e h = 1.5

38 (maiores ou ∼= 250). Essas oscilações vão cando menores conforme

diminuímos h, como pode ser observado nas guras de baixo, geradas respectivamente, com os passosh = 1.5

40 , h = 1.542 e h = 1.5

44 .A Figura A.6 mostra a solução (A.68) calculada com Euler implícito. A primeira gura foi gerada

com o tamanho de passo h = 1.55 e a segunda com h = 1.5

15 . Observamos que a solução numéricase comporta muito bem, mesmo com um tamanho de passo grande, assim como foi concluídode (A.69). Na primeira gura h = 0.3, convergindo com apenas 5 passos e na segunda h = 0.1melhorando a solução com 15 passos. Com estes resultados, observamos que a solução numéricacom o método implícito converge com menos passos que com o método explícito para EDOs comrápido decaimento, pois não possui restrições sobre o tamanho do passo (h).

A explicação para esse comportamento oscilante das soluções numéricas do problema (A.61),com o método de Euler explícito, se deve ao fato de que a região de estabilidade desse método épequena e limitada, como pode ser visto na Seção A.2.1 (Figura A.1), exigindo um tamanho de passomuito pequeno, nas regiões com decaimento mais rápido, para que a solução seja convergente. Omesmo não acontece com o método de Euler implícito que tem uma região de estabilidade ilimitada(Figura A.2).

Page 93: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

PROBLEMAS STIFF : UM EXEMPLO 75

0 0.5 1 1.5-20

-15

-10

-5

0

5

10

15

20

t

y

Solução numérica com h=1.5/36

0 0.5 1 1.5-3

-2

-1

0

1

2

3

t

y

Solução numérica com h=1.5/37

0 0.5 1 1.5-0.5

0

0.5

1

1.5

2

t

y

Solução numérica com h=1.5/38

0 0.5 1 1.50

0.5

1

1.5

2

t

y

Solução numérica com h=1.5/40

0 0.5 1 1.50

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

t

y

Solução numérica com h=1.5/42

0 0.5 1 1.50

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

t

y

Solução numérica com h=1.5/44

y(tn)

yn

Figura A.5: Soluções do problema (A.61) com o método de Euler explícito.

0 0.5 1 1.50

0.2

0.4

0.6

0.8

1

t

y

Solução numérica com h=1.5/5

0 0.5 1 1.50

0.2

0.4

0.6

0.8

1

t

y

Solução numérica com h=1.5/15

y(tn)

yn

Figura A.6: Soluções do problema (A.61) com o método de Euler implícito.

Page 94: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

76 APÊNDICE A

A.3.1 Stiness

Em geral, stiness surge quando temos mais de uma equação diferencial, ou seja, um sistemade equações diferenciais ordinárias. O motivo está relacionado com os autovalores da matriz dosistema. Consideremos o sistema linear,

y′ = Ay, (A.70)

onde y = y(t) ∈ Rm e A é uma matriz constante de dimensão m × m com autovalores λi ∈ C,i = 1, . . . ,m. Denotando por λmax o autovalor de maior módulo e λmin o autovalor com menormódulo, denimos a razão stiness por |Re(λmax)| / |Re(λmin)|. Assim, temos uma denição destiness, baseada nos autovalores da matriz A do sistema (ver [Lam91]).

Denição A.18 Um sistema linear com coecientes constantes é sti se todos os autovalores damatriz do sistema tem parte real negativa e a razão stiness é grande.

|Re(λmax)||Re(λmin)|

>> 1

Equivalentemente, para o caso de sistemas não-lineares dados na forma não-autônoma

y′ = f(t, y),

com y ∈ Rm, t ∈ R e f : R×Rm → Rm, temos a Denição A.18, sendo os autovalores λi ∈ C, i =1, . . . ,m, calculados da matriz jacobiana Ji,j = ∂fi/∂yj (i, j = 1, . . . ,m) do sistema.

Esta denição diz que a solução do sistema, tem algumas componentes que decaem muitomais rápido que outras, exigindo diferentes tamanhos de passo para manter a solução dentro daregião de estabilidade do método numérico. Exemplos numéricos estudados em [Lam91], assimcomo o exemplo da Seção A.3, mostram que se aplicarmos métodos explícitos em equações sti,precisaremos de passos bem pequenos para garantir a estabilidade, e assim serão necessários muitospassos para completar a solução, tornando o método muito caro. Por outro lado, aplicando métodosimplícitos com uma região de estabilidade absoluta grande o suciente para não impor restrição deestabilidade, poderemos escolher o passo tão grande quanto quisermos.

Vamos observar um exemplo de um sistema de duas equações diferenciais de primeira ordemdado em [PTVF92] (Capítulo 16, Seção 16.6) e analisar como as soluções se comportam diante demétodos explícitos e implícitos.

Exemplo A.1 Considere o problema de valor inicial linear:y1′(t) = 998y1(t) + 1998y2(t)

y2′(t) = −999y1(t)− 1999y2(t)

,

y1(0) = 1y2(0) = 0.

(A.71)

Ou equivalentemente, [y1′(t)

y2′(t)

]=

[998 1998−999 −1999

].

[y1(t)y2(t)

]. (A.72)

A solução de (A.72) é facilmente calculada, sendo dada em função dos autovalores e autovetores,

y(t) = c1eλ1tv[1] + c2e

λ2tv[2], (A.73)

sendo y(t) = [y1(t), y2(t)]T , c1, c2 são contantes determinadas por meio da solução calculada novalor inicial, λ1, λ2 são os autovalores da matriz do sistema e v[1], v[2] os respectivos autovetores.Calculando o polinômio característico da matriz do sistema (A.72), encontramos os autovalores e

Page 95: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

PROBLEMAS STIFF : UM EXEMPLO 77

consequentemente os autovetores

λ1 = −1, v[1] = [−2, 1]T ,

λ2 = −1000, v[2] = [−1, 1]T .

Substituindo esses valores em (A.73) e calculando no valor inicial, obtemos a solução do sistemay1(t) = 2e−t − e−1000t

y2(t) = −e−t + e−1000t.(A.74)

Observe que a soluções y1, y2 possuem um termo com rápido decaimento (e−1000t), e a razão entreo maior e o menor autovalor da matriz é |λ2|/|λ1| = 1000, indicando que o sistema pode ser sti.

Vamos analisar as restrições que surgem quando resolvemos o sistema (A.72) com métodosnuméricos. Denotando a matriz do sistema por

C =

[998 1998−999 −1999

], (A.75)

temos que a solução numérica calculada com o método de Euler explícito (A.65) é dada por,

yn+1 = yn + h.Cyn

= (I + Ch)yn

= (I + Ch)ny0, (A.76)

onde I é a matriz idendidade de dimensão 2.Repetindo a análise da Seção A.3, teremos que yn+1 → 0 quando n→∞, somente se (I +Ch)n

tende a zero quando n → ∞. Como estamos trabalhando com matrizes, isto implica que o maiorautovalor de (I + Ch) deve ser menor que 1 em módulo, isto é |1 + λmaxh| < 1, onde λmax éo maior autovalor (em módulo) da matriz C. Já calculamos os autovalores da matriz C e temos|λmax| = |λ2| = 1000, logo a desigualdade que temos que analisar é |1 − 1000h| < 1. Resolvendoisto, encontramos que o método será estável para valores de h < 2

1000 .Analogamente, aplicando o método de Euler implícito (A.67) no sistema (A.72), obtemos

yn+1 = yn + h.Cyn+1

= (I − Ch)−1yn. (A.77)

Os autovalores de (I − Ch)−1 são (1− λih)−1, i = 1, 2, os quais tem magnitude menor que 1 paratodo h(> 0), pois ambos λ1 e λ2 são negativos.

Novamente, temos o resultado de que o método de Euler explícito exige um tamanho de passomuito pequeno para manter a solução dentro da região de estabilidade, enquanto o Euler implícitonão tem restrição sobre o valor de h, sendo estável para todo tamanho de passo. Estas análisessão condizentes com a conlusão de Curtiss e Hischfelder (1952) de que equações sti são melhoresresolvidas com métodos implícitos ([HW96]).

Page 96: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

78 APÊNDICE A

Page 97: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

Referências Bibliográcas

[BBH89] P. N. Brown, G. D. Byrne e A. C. Hindmarsh. Vode: A variable-coecient ode solver.SIAM J. Sci. Stat. Comput., 10:10381051, 1989. 1, 17

[BHJB77] G. D. Byrne, A. C. Hindmarsh, K. R. Jackson e H. G. Brown. A comparison of twoode codes: Gear and episode. Computers & Chemical Engineering, 1:125131, 1977. 17

[BT04] Jean-Paul Berrut e L. N. Trefethen. Barycentric lagrange interpolation. SIAM Rev,46:501517, 2004. 64

[But64a] J. C. Butcher. Implicit runge-kutta processes. Mathematics of Computation, 18:5064,1964. 6, 8

[But64b] J. C. Butcher. On runge-kutta processes of high order. Journal of the AustralianMathematical Society, 4:179194, 1964. 8

[CH52] C. F. Curtiss e J. O. Hirschfelder. Integration of sti equations. Proceedings of theNational Academy of Sciences of the United States of America, 38:235243, 1952. 1, 72

[Cor03] M. P. Corrêa. Índice ultravioleta: avaliações a aplicações. Tese de Doutorado, Institutode Astronomia, Geofísica e Ciências Atmosféricas, Universidade de São Paulo, Brasil,Junho 2003. 35

[Dat08] N. S. Dattani. Linear multistep numerical methods for ordinary dierential equations.arXiv preprint arXiv:0810.4965, 2008. 18, 67, 69

[DSD+02] V. Damian, A. Sandu, M. Damian, F. Potra e G. R. Carmichael. The kinetic pre-processor kpp - a software environment for solving chemical kinetics. Computers andChemical Engineering, 26:15671579, 2002. 3, 14, 35, 38, 39

[FLD+05] S. R. Freitas, K. M. Longo, M. A. F. Silva Dias, P. L. Silva Dias, R. Chateld, E. Prins,P. Artaxo, G. A. Grell e F. S. Recuero. Monitoring the transport of biomass burningemissions in south america. Environmental Fluid Mechanics, 5:135167, 2005. 3, 33,38

[FLD+07] S. R. Freitas, K. M. Longo, M. A. F. Silva Dias, R. Chateld, P. Silva Dias, P. Artaxo,M. O. Andreae, G. Grell, L. F. Rodrigues, A. Fazenda e J. Panetta. The coupled aerosoland tracer transport model to the brazilian developments on the regional atmosphericmodeling system (catt-brams). part 1: Model description and evaluation. AtmosphericChemistry and Physics Discussions, páginas 85258569, 2007. 37

[FLR09] S. R. Freitas, K. M. Longo e L. F. Rodrigues. Modelagem numérica da composiçãoquímica da atmosfera e seus impactos no tempo, clima e qualidade do ar. RevistaBrasileira de Meteorologia, 24:188207, 2009. 3, 34, 38

[Gea67] C. W. Gear. The numerical integration of ordinary dierential equations. Mathematicsof Computation, 21(98):146156, 1967. 17, 26

79

Page 98: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

80 REFERÊNCIAS BIBLIOGRÁFICAS

[Gea71] C. W. Gear. The automatic integration of ordinary dierential equations. Communi-cations of the ACM, 14:176179, 1971. 17, 42

[GSDT85] G. K. Gupta, D. Sacks-Davis e P. E. Tischer. A review of recent developments insolving odes. ACM Computing Surveys (CSUR), 17:547, 1985. 67

[Hin83] A. C. Hindmarsh. Odepack: A systematized collection of ode solvers. IMACS Tran-sactions on Scientic Computation, 1983. 17

[Hin93] A. C. Hindmarsh. Description and Use of LSODE the Livermore Solver for Ordi-nary Dierential Equations. National Aeronautics and Space Administration, Oce ofManagement, Scientic and Technical Information Program, 1993. 2, 17, 23, 27

[HNW87] E. Hairer, S. P. Norsett e G. Wanner. Solving Ordinary Dierential Equation I. NonstiProblems. Springer, primeira edição, 1987. 2, 6, 8, 14, 19, 38, 71

[HW83] E. Hairer e G. Wanner. On the instability of the bdf formulas. SIAM Journal onNumerical Analysis, 20:12061209, 1983. 3, 21

[HW96] E. Hairer e G. Wanner. Solving Ordinary Dierential Equation II. Sti and Dierential-Algebraic Problems. Springer, segunda edição, 1996. 1, 2, 5, 8, 9, 10, 11, 12, 14, 21, 38,61, 67, 72, 77

[JSD80] K. R. Jackson e R. Sacks-Davis. An alternative implementation of variable step-sizemultistep formulas for sti odes. ACM Transactions on Mathematical Software, 6:295318, 1980. 26

[Lam91] J. D. Lambert. Numerical Methods for Ordinary Dierential Systems: The Initial ValueProblem. Wiley, ilustrada edição, 1991. 3, 6, 8, 9, 10, 18, 61, 67, 71, 72, 76

[Net] Netlib. Lapack: Linear algebra package. 45, 50

[Nor62] A. Nordsieck. On numerical integration of ordinary dierential equations. Mathematicsof computation, 16:22 49, 1962. 17, 26, 64

[PTVF92] W. H. Press, S. A. Teukolsky, W. T. Vetterling e B. P. Flannery. Numerical Recipesin Fortran. The Art of Scientic Computing. Cambridge University Press, segundaedição, 1992. 76

[RN] A. M. Roma e R. L. Nós. Tratamento numérico de equações diferenciais - notas deaula. IME-USP. 67

[SB02] J. Stoer e B. Bulirsch. Introduction to Numerical Analysis. Springer, segunda edição,2002. 61, 63, 67

[Sem11] M. Semenov. Analyzing the absolute stability region of implicit methods of solvingodes. arXiv preprint arXiv:1101.4434, 2011. 1

[Sot79] J. Sotomayor. Lições de Equações Diferenciais Ordinárias. IMPA, 1979. 61

[SVB+97] A. Sandu, J. G. Verwer, J. G. Blom, E. J. Spee, G. R. Carmichael e F. A. Potra. Ben-chmarking sti ode solvers for atmospheric chemistry problems ii: Rosenbrock solvers.Atmospheric Environment, 31:34593472, 1997. 1, 2, 15, 38

[SVvL+97] A. Sandu, J. G. Verwer, M. van Loon, G. R. Carmichael, F. A. Potra, D. Dabdub eJ. H. Seinfeld. Benchmarking sti ode solvers for atmospheric chemistry problems i:Implicit versus explicit. Atmospheric Environment, 31:31513166, 1997. 1

Page 99: Durante o desenvolvimento deste trabalho a autora recebeu ...cpg/teses/Dissertacao... · Agradecimentos Agradeço a Deus pelas vitórias, pela esperança sempre renoadav e principalmente

REFERÊNCIAS BIBLIOGRÁFICAS 81

[VBvLS96] J.G. Verwer, J.G. Blom, M. van Loon e E.J. Spee. A comparison of sti ode solversfor atmospheric chemistry problems. Atmospheric Environment, páginas 49 58, 1996.42, 43, 44

[vL95] M. van Loon. Numerical smog prediction i: The physical and chemical model. 1995.42, 43, 44

[VSBLN83] J. G. Verwer, S. Scholz, J. G. Blom e M. Louter-Nool. A class of runge-kutta-rosenbrockmethods for solving sti dierential equations. ZAMM - Journal of Applied Mathema-tics and Mechanics, 63:1320, 1983. 9

[YIOS11] S. A. M. Yatim, Z. B. Ibrahim, K. I. Othman e M. B. Suleiman. A quantitative compa-rison of numerical method for solving sti ordinary dierential equations. MathematicalProblems in Engineering, 2011, 2011. 41

[ZLSS11] H. Zhang, J. C. Linford, A. Sandu e R. Sander. Chemical mechanism solvers in airquality models. Atmosphere, 2:510532, 2011. 1, 14, 23, 37, 38