Você está na página 1de 260

DISCRETIZAÇÃO DE EQUAÇÕES

DIFERENCIAIS PARCIAIS
Técnicas de Diferenças Finitas

José Alberto Cuminato


Instituto de Ciências Matemáticas e de Computação
Universidade de São Paulo – Campus de São Carlos

Messias Meneguette Junior


Faculdade de Ciências e Tecnologia
Universidade Estadual Paulista – Presidente Prudente

13 de outubro de 2006
2
Sumário

1 Conceitos Fundamentais 7
1.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.2 Aproximações de Derivadas por Diferenças Finitas . . . . . . . . . . . . . . . 9
1.3 Problema de Valor Inicial em Equações Ordinárias . . . . . . . . . . . . . . . 15
1.3.1 Convergência . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.4 Problema de Valor de Fronteira em Equações Ordinárias . . . . . . . . . . . . 29
1.4.1 Métodos de Diferenças Finitas . . . . . . . . . . . . . . . . . . . . . . 30
1.5 Exercı́cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

2 Introdução às Equações Diferenciais Parciais 45


2.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.2 Classificação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
2.3 Caracterı́sticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
2.4 Discretização . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
2.5 Domı́nios Genéricos e Transformação de Variáveis . . . . . . . . . . . . . . . . 53
2.5.1 Transformação de Coordenadas Cartesianas em Polares . . . . . . . . 55
2.5.2 Transformação de Coordenadas Cartesianas em Oblı́quas . . . . . . . 57
2.5.3 Transformação de Coordenadas Cartesianas em Triangulares . . . . . 60
2.6 Exercı́cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

3 Equações Parabólicas 69
3.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
3.2 Métodos de Diferenças Finitas . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
3.3 Problemas Não Lineares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
3.4 Outros Métodos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
3.5 Equações Parabólicas em Duas Dimensões . . . . . . . . . . . . . . . . . . . . 97
3.6 Exercı́cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

4 Equações Elı́pticas 113


4.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
4.2 Métodos de Diferenças Finitas . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
4.3 Erro de Truncamento Local . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
4.4 Condições de Fronteira em Domı́nios Gerais . . . . . . . . . . . . . . . . . . . 123
4.5 Condição de Fronteria de Neumann . . . . . . . . . . . . . . . . . . . . . . . . 128

3
4 SUMÁRIO

4.6 Diferenças Finitas em Coordenadas Polares . . . . . . . . . . . . . . . . . . . 130

4.7 Métodos Iterativos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131

4.8 Convergência . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

4.9 Método dos Gradientes Conjugados . . . . . . . . . . . . . . . . . . . . . . . . 143

4.10 Exercı́cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149

5 Equações Hiperbólicas 157

5.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157

5.1.1 Equação escalar de advecção . . . . . . . . . . . . . . . . . . . . . . . 157

5.1.2 Equação da onda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181

5.2 Diferenças Finitas para a Equação de Advecção . . . . . . . . . . . . . . . . 190

5.3 Diferenças Finitas para a Equação da Onda . . . . . . . . . . . . . . . . . . . 206

5.4 Métodos Numéricos para Leis de Conservação . . . . . . . . . . . . . . . . . . 211

5.5 Exercı́cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234


SUMÁRIO 5

PREFÁCIO

O universo de técnicas de solução numérica de equações diferenciais parciais é bastante vari-


ado e inclue, entre outros, os métodos de diferenças finitas, volumes finitos, elementos finitos,
elementos de contorno, métodos espectrais e métodos de colocação. O objetivo deste texto
é apresentar uma introdução à solução numérica de equações diferenciais parciais, enfati-
zando os principais conceitos com vistas às aplicações práticas, utilizando discretização por
diferenças finitas. O conteúdo será desenvolvido através de exemplos-modelos de equações
parabólicas, elı́pticas e hiperbólicas. Pretende-se introduzir de maneira bastante natural os
conceitos de estabilidade e convergência, dependência da discretização das condições de fron-
teira, condição CFL e método das caracterı́sticas. Incluimos, sempre que possı́vel, uma certa
dose de teoria e rigor no tratamento desses conceitos sem no entanto relegarmos o lado ex-
perimental, especialmente o lado ilustrativo através de exemplos e gráficos. Nosso objetivo é
o de apresentar uma variedade de técnicas de solução sobre as quais o leitor deverá adquirir
conhecimentos teóricos e também experimental. Por essa razão é imprescindı́vel que o leitor
resolva os exercı́cios práticos, que envolvem programação em MATLAB.
Na literatura é bastante popular a idéia, especialmente em equações parciais, de que
existem tantos métodos numéricos quantos são os problemas a serem resolvidos. Em geral
entretanto, alguns conceitos e técnicas fundamentais estão presentes em todos os métodos.
O propósito deste texto é o de chamar a atenção para esses conceitos esclarecendo-os através
da análise de exemplos. É quase sempre possı́vel classificar um problema em quatro grandes
tipos: Equações Parabólicas, Equações Elı́pticas, Equações Hiperbólicas e Problemas do
tipo misto. Do ponto de vista didático esta divisão parece ser recomendada para melhor
associação entre as técnicas numéricas e a natureza do problema a ser resolvido. O conteúdo
aqui desenvolvido segue essa lógica.
Este livro foi escrito com o propósito de servir como texto básico de disciplinas de
cálculo numérico e matemática aplicada ministradas em cursos de graduação de engenharia,
matemática e áreas afins em ciências exatas. O material mais avançado pode ainda servir
para cursos introdutórios de pós-graduação nas áreas acima citadas. Para cumprir esse ob-
jetivo foi introduzido uma lista bastante completa de exercı́cios que envolve desde a fixação
dos conceitos básicos até a implementação de projetos práticos em computador. A maioria
dos métodos numéricos apresentados foram programados em MATLAB e podem ser utiliza-
dos pelo professor para ilustrar os conceitos ministrados em sala de aula. A programação
em MATLAB inclue uma interface gráfica padronizada que permite a solução de problemas
razoavelmente complexos sem a necessidade de um grande esforço de programação por parte
do aluno. Isto viabiliza a utilização de exercı́cios práticos para a ilustração e reconhecimento
de conceitos como convergência, estabilidade, precisão, etc.
O conteúdo foi dividido em 5 capı́tulos, os dois primeiros apresentando os conceitos
básicos de discretização de problemas de valor inicial e de contorno para equações diferenciais
ordinárias e a teoria elementar das equações diferenciais parciais. Nos outros três capı́tulos
apresentamos separadamente as técnicas de discretização de cada um dos tipos de equações
parabólicas, hiperbólicas e elı́pticas. Todos os capı́tulos inclue uma lista bastante extensa
de exercı́cios, muitos dos quais abordam temas mais avançados do que aqueles tratados no
texto. Essa atitude tem o propósito de estimular o aluno que pretende aprofundar-se nessa
área do conhecimento a pesquisar as referênciais e aguçar sua curiosidade. No entanto,
6 SUMÁRIO

alertamos os professores que pretendem utilizar o texto como guia de um curso, para o fato
de que uma seleção dos exercı́cios pode ser recomendada para não desestimular os estudantes
com problemas muito difı́ceis. A ordem de apresentação dos exercı́cios não segue um critério
de dificuldade crescente e sim a ordem dos tópicos no texto.
O material deste livro deriva em boa parte de cursos de graduação que os autores têm
ministrado em suas respectivas unidades de ensino. Agradecimento especial nos é devido aos
autores da apostila [28], aos alunos do ICMC pela leitura dos originais e o apoio financeiro
do Instituto de Ciências Matemáticas e de Computação - USP São Carlos, Faculdade de
Ciências e Tecnologia - UNESP Presidente Prudente, CNPq e Pró-Reitoria de Graduação
da USP através dos Programa SIAE 97 e SIAE 98.
Capı́tulo 1

Conceitos Fundamentais

1.1 Introdução
Um modelo matemático é uma representação, idealizada e muitas vezes simplificada,
da natureza. Quando derivado de maneira criteriosa, sua solução simula propriedades dos
processos naturais envolvidos, tais como velocidade e pressão no escoamento de um fluido,
temperatura, humidade, direção dos ventos e precipitação na previsão do tempo, trajetória
de um satélite artificial, entre outras muitas aplicações. Assim, as soluções das equações de
um modelo, devem captar os aspectos relevantes no comportamento do problema modelado,
não sendo possı́vel, na maioria dos casos, justificar a utilização de hipóteses simplificado-
ras que modificam a natureza do problema (tal como linearidade) que tornariam possı́vel
a determinação de uma solução exata. Em outra palavras, quando estamos resolvendo
um problema real, em geral, não é possı́vel forçá-lo a satisfazer hipóteses que permitam a
obtenção de uma solução exata. Daı́ a necessidade da procura de soluções numéricas, ou
aproximadas.
A importância da modelagem matemática cresceu muito nos últimos anos porque a
análise detalhada de um modelo e suas propriedades, viabilizada pelo avanço tecnológico
dos computadores, permite um melhor entendimento do evento modelado e, mais do que
isso, permite a simulação de mudanças nos parâmetros do modelo e a análise da respec-
tiva resposta, que não seriam possı́veis na situação real. Por exemplo, no projeto de um
carro, alterações na forma resultam em modificações no comportamento aerodinâmico, de
cuja análise obtém-se um indicador dos ganhos e/ou perdas em performance; a localização
ideal da asa de um avião em relação ao casco pode ser obtida pela resposta à simulação
matemática das equações da aerodinâmica, e até a melhor polı́tica de vacinação contra
doenças transmissı́veis, tipo sarampo, pode ser decidida com base em modelos matemáticos.
A economia de tempo gerada por esta maneira de projetar um produto, ou tomar decisões,
é clara, diminuindo sensivelmente o número de protótipos ou modelos em tamanho reduzido
a serem construı́dos e ensaiados. No projeto de equipamentos com tecnologia avançada, a
simulação através da modelagem matemática é uma ferramenta indispensável a ser utilizada
na eliminação de casos triviais ou impossı́veis, fornecendo um guia seguro para a seleção dos
casos a serem ensaiados em modelos de escala reduzida ou para a construção de protótipos.
Como virtualmente todas as áreas em matemática aplicada, o principal objetivo das

7
8 CAPÍTULO 1. CONCEITOS FUNDAMENTAIS

equaçẽs diferenciais é o de modelar matematicamente eventos da natureza nas mais diversas


áreas de aplicação. Um modelo com várias variáveis independentes envolve necessariamente
derivadas com respeito a cada umas dessas variáveis ou derivadas parciais, sendo portanto
denominado uma equação diferencial parcial ou um sistema de equações diferenciais parciais.
Resumindo as idéias apresentadas acima, o processo de simulação é considerado na lit-
eratura como sendo constituı́do de três partes nitidamente distintas. A fase de modelagem,
isto é, a construção de um conjunto de equações matemáticas que reputamos representar
os fenômenos e os processos modelados. Uma segunda fase, de solução desse conjunto de
equações, normalmente utilizando técnicas de discretização numérica e um computador e
finalmente, a fase de interpretação dos resultados face às caracterı́sticas do problema origi-
nal. Esse é um processo complexo que exige do profissional um conjunto bastante amplo de
habilidades; como por exemplo: um bom conhecimento de engenharia, que será necessário
para os ajustes finos do modelo desprezando complicações que não são fundamentais, um
bom conhecimento de métodos numéricos para selecionar aquele que melhor se adapta ao
problema e finalmente um bom faro de detetive para analisar os resultados e interpretá-los à
luz das restrições e caracterı́sticas do problema. Este texto trata exclusivamente da segunda
fase desse processo.
É claro portanto, que a solução do modelo matemático, ou seja, das equações represen-
tantes desse modelo, é fundamental para a compreensão do fenômeno modelado. Este é o
papel da discretização das equações parciais, uma vez que, como já dissemos, uma solução
analı́tica nem sempre está disponı́vel: ou tem uma forma não prática ou é impossı́vel de
ser obtida. Assim os métodos numéricos são amplamente usados para a aproximação dessas
soluções. A essência dos métodos numéricos está na representação discreta (finita) do prob-
lema que, em geral, é originalmente modelado como um contı́nuo. Essa discretização é que
viabiliza o uso dos computadores no tratamento numérico das equações diferenciais.
Na literatura, especialmente em equações parciais, é comum a idéia, de que existem tan-
tos métodos numéricos quantos são os problemas a serem resolvidos. Em geral entretanto,
algumas técnicas e caracterı́sticas fundamentais estão presentes em todos os métodos. O
propósito deste texto é o de chamar a atenção para esses conceitos definindo-os precisamente
e ilustrando-os através da análise de exemplos. É quase sempre possı́vel classificar um prob-
lema em equações diferenciais em quatro grandes classes: Equações Parabólicas, Equações
Elı́pticas, Equações Hiperbólicas e Problemas do tipo misto. Do ponto de vista didático
esta divisão parece ser recomendada para melhor associação entre as técnicas numéricas e a
natureza do problema a ser resolvido. Seguiremos neste texto essa premissa lógica.
O objetivo deste texto é o de desenvolver uma introdução à solução numérica de equações
diferenciais parciais, enfatizando os principais conceitos com vistas às aplicações práticas,
através da discretização por diferenças finitas. O conteúdo será desenvolvido por meio de
exemplos modelos de equações parabólicas, elı́pticas e hiperbólicas. Pretende-se introduzir
de maneira bastante natural os conceitos de estabilidade e convergência, dependência da
discretização das condições de fronteira, condição CFL e método das caracterı́sticas.
Os conceitos fundamentais e as principais dificuldades, bem como a notação e nomen-
clatura básicas serão introduzidos o caso de problemas de uma dimensão, ou seja, por meio
de equações diferenciais ordinárias. Na sequência, serão tratados cada um dos principais
tipos de equações parciais.
1.2. APROXIMAÇÕES DE DERIVADAS POR DIFERENÇAS FINITAS 9

1.2 Aproximações de Derivadas por Diferenças Finitas


“A essência dos métodos numéricos está na discretização do contı́nuo. É esta
discretização que torna finito o problema e portanto viabiliza sua solução através
dos computadores [19].”

A idéia geral do método de diferenças finitas é a discretização do domı́nio e a substi-


tuição das derivadas presentes na equação diferencial, por aproximações envolvendo somente
valores numéricos da função. Na prática substitui-se as derivadas pela razão incremental
que converge para o valor da derivada quando o incremento tende a zero. Dizemos então
que o problema foi discretizado. Quando o domı́nio tem mais de uma variável, a idéia acima
é aplicada para cada uma das variáveis separadamente.
Nesta seção trataremos apenas o problema unidimensional, pois isto facilita o entendi-
mento. No entanto, a generalização para outras dimensões pode ser obtida sem muitas
dificuldades, como veremos oportunamente. Seja x0 um número real qualquer, e h um
número positivo. Definimos malha de passo h associada a x0 como o conjunto de pontos

xi = x0 ± ih, i = 1, 2, . . . , N.

Nos pontos dessa malha serão calculadas aproximações para uma função y(x) e suas
derivadas. A ferramenta matemática básica no cálculo de aproximações para as derivadas é
a série de Taylor que relaciona valores da função e suas derivadas, num ponto x, com valores
dessa mesma função numa vizinhaça de x, ou seja, com y(x + h). Se y(x) tem derivadas até
a ordem n + 1 em x, podemos escrever:

h2 ′′ hn (n)
y(x + h) = y(x) + hy ′ (x) + y (x) + · · · + y (x) +
2! n!
n+1
h
+ y (n+1) (ξ), x < ξ < x + h. (1.1)
(n + 1)!

O último termo da expressão (1.1) representa o erro da aproximação de y(x + h) pelo


polinômio (na variável h) de grau n:

y ′′ (x) 2 y (n) (x) n


Pn (h) = y(x) + y ′ (x)h + h + ...+ h .
2! n!
Se n = 1 em (1.1) obtemos uma aproximação para a derivada y ′ (x), conhecida como fórmula
progressiva, que é dada por:
y(x + h) − y(x) h ′′
y ′ (x) = − y (ξ).
h 2
Utilizaremos a notação:
∆y(x) = y(x + h) − y(x)
para representar a diferença progressiva de y(x). O termo −hy ′′ (ξ)/2 representa o erro dessa
aproximação. Portanto teremos:
10 CAPÍTULO 1. CONCEITOS FUNDAMENTAIS

1 h
y ′ (x) = ∆y(x) − y ′′ (ξ).
h 2
De modo semelhante, tomando −h em (1.1), ainda com n = 1, obtemos a fórmula
regressiva que utiliza a diferença regressiva (∇y(x)) e seu erro, ou seja:

y(x) − y(x − h) h ′′
y ′ (x) = + y (ξ)
h 2
1 h ′′
= ∇y(x) + y (ξ).
h 2
Tomando n = 2 em (1.1), e reescrevendo (1.1) para h e −h, respectivamente, obtemos

h2 ′′ h3
y(x + h) = y(x) + hy ′ (x) + y (x) + y ′′′ (ξ1 )
2! 3!
e
h2 ′′ h3
y(x − h) = y(x) − hy ′ (x) + y (x) − y ′′′ (ξ2 ).
2! 3!
Subtraindo a última expressão da penúltima obtemos a fórmula centrada ou fórmula de
diferenças centrais

y(x + h) − y(x − h) h2 ′′′


y ′ (x) = − y (ξ) (1.2)
2h 3!
onde ξ ∈ (x − h, x + h) e foi utilizado o teorema do valor intermediário válido para funções
contı́nuas:
1 ′′′
(y (ξ1 ) + y ′′′ (ξ2 )) = y ′′′ (ξ), para algum ξ ∈ [min{ξ1 , ξ2 }, min{ξ1 , ξ2 }].
2
A notação utilizada para denotar a diferença central é δh y(x) e a equação (1.2) nos fornece
também o erro dessa fórmula, ou seja:

1 h2
y ′ (x) = δh y(x) − y ′′′ (ξ).
2h 3!
Observação 1.2.1 Quando se fizer necessário deixar claro a importância do passo h para
um operador que está sendo utilizado, escreveremos: δh , δh2 , ∆h , ∇h , etc..

Erro e Ordem de Aproximação de Uma Fórmula de Diferença


Seja F(x, h) uma fórmula de diferença para aproximação da derivada de ordem q de uma
função y(x) com erro E(x, h). Então:

y (q) (x) = F(x, h) + E(x, h).


1.2. APROXIMAÇÕES DE DERIVADAS POR DIFERENÇAS FINITAS 11

Dizemos que a fórmula F(x, h) é de ordem p se E(x, h) = hp R(x), onde R(x) não depende de
h. Nesse caso usamos a notação E(x, h) = O(hp ). Essa notação significa que limh→0 E(x,h)
hp
é uma constante finita. Por exemplo no caso da fórmula centrada temos que:

y(x + h) − y(x − h) h2 ′′′


F(x, h) = e E(x, h) = − y (ξ).
2h 3!
de forma que essa fórmula é de segunda ordem.
Seguindo as mesmas idéias podemos estabelecer uma expressão para o cálculo aproxima-
do da segunda derivada.Tomando n = 3 em (1.1) com h e −h obtemos:

h2 ′′ h3 h4
y(x + h) = y(x) + hy ′ (x) + y (x) + y ′′′ (x) + y (4) (ξ1 )
2! 3! 4!
e
h2 ′′ h3 h4
y(x − h) = y(x) − hy ′ (x) + y (x) − y ′′′ (x) + y (4) (ξ2 ).
2! 3! 4!
Somando estas duas últimas expressões e isolando y ′′ (x) obtemos:

y(x + h) − 2y(x) + y(x − h) h2 (4)


y ′′ (x) = − y (ξ),
h2 12
1 2 h2 (4)
= δ h y(x) − y (ξ).
h2 2 12
onde ξ ∈ (x − h, x + h). Neste caso,

y(x + h) − 2y(x) + y(x − h) h2 (4)


F(x, h) = , E(x, h) = − y (ξ)
h2 12
e a fórmula é de ordem 2.
Observação 1.2.2 O operador δ 2h deve ser interpretado como a composição do operador
2
δ h com ele mesmo. O leitor deve observar que nessa composição utilizamos o operador δ
2
com passo h2 . Isto é feito para evitar a utilização de pontos muito distantes daquele em que a
derivada está sendo aproximada. Observe também que δ 2 y(x) = ∆∇y(x), e que utilizaremos
as notações simplificadas δ 2 = δ 2h e δ = δ h .
2 2

Outras expressões podem ser obtidas considerando-se mais pontos. Por exemplo, a com-
binação linear
y ′ (x) = c1 y(x + h) + c2 y(x) + c3 y(x − h)
impõe, por expansão em série de Taylor em torno de x e por comparação dos termos de
mesma ordem em h, as seguintes condições sobre os coeficientes c1 , c2 e c3 :

c1 + c2 + c3 = 0
1
c1 − c3 = h
c1 + c3 = erro,
12 CAPÍTULO 1. CONCEITOS FUNDAMENTAIS

onde erro = coeficiente multiplicando a segunda derivada.


A solução é simples quando c2 = hα , ou seja,
1 1 α
c1 = (1 − α) , c3 = −(1 + α) , erro = − .
2h 2h h
Assim
1 αh ′′
y ′ (x) = {(1 − α)y(x + h) + 2αy(x) − (1 + α)y(x − h)} − y (x)
2h 2
h2 ′′′
− y (x) + 0(h3 ).
3!
Note que apenas α = 0 fornece erro = O(h2 ), e nesse caso a fórmula resultante é
a fórmula centrada. Os casos α = −1 e α = 1 , fornecem, respectivamente, as fórmulas
progressiva e regressiva. Essa técnica permite a construção das mais diversas fórmulas. Por
exemplo:
2hy ′ (x) = −3y(x) + 4y(x + h) − y(x + 2h) + O(h2 ).
2hy ′ (x) = 3y(x) − 4y(x − h) + y(x − 2h) + O(h2 ).

2hy (x) = −y(x + 2h) + 8y(x + h) − 8y(x − h) + y(x − 2h) + O(h4 ).
O uso de operadores de diferenças finitas é muito útil para se obter aproximações de
ordem mais elevada para as derivadas. Com a intenção de ilustrar a importância dos op-
eradores na obtenção de fórmulas de diferenças finitas, apresentamos a seguir a derivação
de algumas dessas fórmulas. Informações mais detalhadas podem ser obtidas, por exemplo,
em [Ames 1992] e [31].
Alguns desses operadores mais utilizados no contexto de diferenças finitas são listados
abaixo:
Deslocamento Ey(x) = y(x + h)

Derivada Dy(x) = y ′ (x)

Diferença Centrada δy(x) = y(x + h2 ) − y(x − h2 )


(1.3)
1
Operador Média µy(x) = 2 (y(x + h2 ) + y(x − h2 ))

Diferença Progressiva ∆y(x) = y(x + h) − y(x)

= (E − 1)y(x) =⇒ E = 1 + ∆.
Pela fórmula de Taylor tem-se
h2 2
Ey(x) = (1 + hD + D + · · ·)y(x) = ehD y(x) (1.4)
2
logo, formalmente podemos escrever:
hD = ln E = ln(1 + ∆). (1.5)
1.2. APROXIMAÇÕES DE DERIVADAS POR DIFERENÇAS FINITAS 13

Utilizando agora a expansão em série de Taylor da função ln(1 + x) = x− 12 x2 + 13 x3 − · · ·,


válida para |x| < 1, podemos definir o operador ln(1 + ∆) como:

1 1
ln(1 + ∆)y(x) = (∆ − ∆2 + ∆3 − · · ·)y(x).
2 3
Assim a equação (1.5) pode ser reescrita na forma:

1 1
hy ′ (x) = (∆ − ∆2 + ∆3 − · · ·)y(x)
2 3
constituindo-se numa fórmula que expressa a primeira derivada de uma função em termos
de suas diferenças progressivas. Portanto, aproximações de qualquer ordem podem ser obti-
das considerando-se na série acima o número adequado de termos, pagando-se o preço do
aumento do número de pontos envolvidos na fórmula. Por exemplo uma aproximação de
ordem 2, que utiliza três pontos, é obtida considerando-se apenas os 2 primeiros termos da
soma. Observe o desenvolvimento abaixo:
 
1
hy ′ (x) = ∆ − ∆2 y(x)
2
1
= y(x + h) − y(x) − (y(x + 2h) − y(x + h) − y(x + h) + y(x))
2
1 3
= − y(x + 2h) + 2y(x + h) − y(x).
2 2
que utiliza três pontos, para aproximar a derivada.
Outras fórmulas que podem ser obtidas pela manipulação de operadores são:

1 1
hy ′ (x + h) = (∆ + ∆2 − ∆3 + · · ·)y(x) (1.6)
2 6
11 4 5 5
h2 y ′′ (x) = 2 3
(∆ − ∆ + ∆ − ∆ + · · ·)y(x) (1.7)
12 6
1 4 1 5
h2 y ′′ (x + h) = 2
(∆ − ∆ + ∆ + · · ·)y(x) (1.8)
12 12
1 3 1 5
hy ′ (x) = µ(δ − δ + δ − · · ·)y(x) (1.9)
6 30
e
1 4 1 1 8
h2 y ′′ (x) = (δ 2 − δ + δ6 − δ + · · ·)y(x). (1.10)
12 90 560
Observação 1.2.3 É importante notar que, na prática, os valores da função efetivamente
utilizados numa fórmula, para cada ponto da malha, não serão os valores exatos e sim val-
ores calculados. Dessa forma além do erro de truncamento dessa fórmula estarão também
presentes, os erros de arredondamento do computador. Consequentemente, quando aprox-
imamos uma equação diferencial, as derivadas são substituı́das por aproximações como as
14 CAPÍTULO 1. CONCEITOS FUNDAMENTAIS

que podem ser deduzidas a partir de (1.6), (1.7), (1.8), (1.9) e (1.10) mas com os valores
efetivamente calculados, ou seja,

hy ′ (xi ) ≃ yi+1 − yi
hy ′ (xi ) ≃ yi − yi−1
2hy ′ (xi ) ≃ yi+1 − yi−1

e
h2 y ′′ (xi ) ≃ yi+1 − 2yi + yi−1 ,
onde yi é uma aproximação de y(xi ).

Generalização Para Duas Variáveis


A generalização para mais de uma variável é bastante simples. Como ilustração vamos
tratar o caso de duas variáveis x e t. Considere uma malha no plano x − t como sendo o
conjunto de pontos (xi , tj ) = (x0 + ih, t0 + jk), portanto com espaçamento h em x e k em t.
As diferenças finitas já obtidas em uma dimensão podem agora ser utilizadas em cada
variável para gerar aproximações para as derivadas parciais de uma função de várias variáveis.
Assim, temos as seguintes fórmulas: progressiva

u(x, t + k) − u(x, t) k
ut (x, t) = − utt (x, ζ)
k 2
1 k
= ∆t u(x, t) − utt (x, ζ) (t < ζ < t + k) (1.11)
k 2
regressiva

u(x, t) − u(x, t − k) k
ut (x, t) = + utt (x, ζ)
k 2
1 k
= ∇t u(x, t) + utt (x, ζ), (t − k < ζ < t) (1.12)
k 2
central
u(x + h, t) − u(x − h, t) h2
ux (x, t) = − uxxx(ξ, t)
2h 6
1 h2
= δx u(x, t) − uxxx (ξ, t), (x − h < ξ < x + h)
2h 6

u(x + h, t) − 2u(x, t) + u(x − h, t) h2


uxx (x, t) = − uxxxx(ξ, t)
h2 12
1 2 h2
= δ u(x, t) − uxxxx(ξ, t), (x − h < ξ < x + h) (1.13)
h2 x 12
1.3. PROBLEMA DE VALOR INICIAL EM EQUAÇÕES ORDINÁRIAS 15

u(x, t + k) − 2u(x, t) + u(x, t − k) k 2


utt (x, t) = − utttt (x, ζ)
k2 12
2
1 2 k
= δ u(x, t) − utttt (x, ζ), (t − h < ζ < t + h)
k2 t 12

u(x + h, t + k) − u(x + h, t − k) − u(x − h, t + k) + u(x − h, t − k)


uxt (x, t) =
4hk
h2 k2
− uxxxt(ξ1 , ζ1 ) − uxttt (ξ2, ζ2 ) x − h < ξ1, ξ2 < x + h, e
6 6
t − k < ζ1, ζ2 < t + k,
onde denotamos por ut (x, t) a derivada parcial da função u com relação a t e por ∆t u(x, t)
a diferença progressiva de u na variável t.

1.3 Problema de Valor Inicial em Equações Ordinárias


Uma equação diferencial na qual a variável dependente é função de apenas uma variável, é
dita equação diferencial ordinária. Se mais de uma variável independente está presente então
teremos uma equação diferencial parcial, como já haviamos dito oportunamente. A teoria
das equações parciais é consideravelmente mais complexa do que a das equações ordinárias.
Essa observação é um tanto mais verdadeira no contexto do tratamento numérico, uma vez
que a presença de um número maior de variáveis introduz maior chance de erro. O tema
principal deste texto é o estudo das equações parciais, no entanto, por razões didáticas, os
conceitos fundamentais serão apresentados no contexto das equações diferenciais ordinárias.
Um problema de valor inicial (PVI) é um problema de evolução, no qual a informação
inicial (conhecida), é propagada para o interior do domı́nio pela equação diferencial.
Matematicamente, o mais simples dos problemas de valor inicial pode ser apresentado
na forma:

y′ = f (x, y) (1.14)
y(a) = α,
onde f : IR2 → IR é uma função contı́nua. A função y = y(x) (x ≥ a) é a solução e α é o
valor inicial em a. Equações ordinárias de ordem mais alta podem sempre ser transformadas
nessa forma, desde que estejamos preparados para admitir que y seja um vetor. Por exemplo,
a equação de segunda ordem,
y ′′ = f (x, y, y ′ ) (1.15)
y(a) = α, y ′ (a) = β,
com solução y(x) e os valores iniciais α e β dados no ponto a, pode ser reescrita na forma
vetorial fazendo:
y ′ = v, y(a) = α
v ′ = f (x, y, v), v(a) = β.
16 CAPÍTULO 1. CONCEITOS FUNDAMENTAIS
   
y α
Considerando Y = e γ = o problema acima transforma-se na equação
v β
vetorial de primeira ordem

Y′ = F (x, Y ),
Y (a) = γ

onde  
v
F (x, Y ) = .
f (x, y, v)
Um ponto fundamental na resolução de uma equação diferencial, diz respeito à existência
e unicidade de soluções. Por princı́pio, só tem sentido a solução numérica de um problema
quando este tem solução. Pode-se ainda argumentar que para determinarmos a solução
numérica de um problema esta deveria ser única, pois caso contrário o processo numérico
poderia ficar indeciso sobre qual solução perseguir. No caso de um problema de valor inicial
de equações ordinárias esta dificuldade está bem resolvida.
Vamos supor que a função f (x, y) satisfaz as seguintes condições:
1. f : E → IRn é contı́nua, onde E = {(x, y), x ∈ [a, b], y ∈ IRn };
2. existe uma constante L tal que para todo x ∈ [a, b] e quaisquer dois vetores y e y ∗ em
IRn
|f (x, y) − f (x, y ∗ )| ≤ L|y − y ∗ |. (1.16)
Neste caso dizemos que a função f satisfaz a condição de Lipschitz na variável y.

Teorema 1.1 (Existência e Unicidade-Teorema de Picard) Seja f (x, y) satisfazendo


as condições acima e seja α um vetor dado. Então, existe exatamente uma função y(x) com
as seguintes propriedades:

i) y = y(x) é contı́nua e diferenciável para x em [a, b];


ii) y ′ (x) = f (x, y(x)), x ∈ [a, b];
iii) y(a) = α.

Para a prova ver [Coddington 1955].

Exemplos de Métodos Numéricos


Euler em 1768, usando diferenças progressivas, desenvolveu uma aproximação para (1.14),
que posteriormente descobriu-se tratar-se de um método numérico pertencente à classe dos
métodos de passo múltiplo. Esse método é hoje conhecido como Método de Euler. Sua
dedução segue os passos abaixo, acompanhe: O intervalo [a, b] é dividido em N partes
iguais, cada uma de comprimento h, formando um conjunto discreto, com x0 = a e xN = b,
Rh = {xi = a + ih, i = 0, 1, 2, . . . , N }. Aqui h = (b − a)/N .
Sejam yi ≈ y(xi ) aproximações para y(xi ), i = 1, 2, . . . N e y0 = α. Em cada um dos
pontos x0 , x1 , . . . , xN −1 , aproximamos a equação diferencial (1.14) por
1.3. PROBLEMA DE VALOR INICIAL EM EQUAÇÕES ORDINÁRIAS 17

yi+1 − yi
∆yi = = f (xi , yi ), i = 0, 1, . . . , N − 1
h
ou,
yi+1 − yi = hf (xi , yi ), i = 0, 1, . . . , N − 1.
Este é o método de Euler que é um método explı́cito. Note que o valor de yi+1 é calculado
explicitamente em função de yi , mesmo quando a função f é não linear. Se no lugar de ∆
fosse usado ∇ terı́amos a versão implı́cita do Método de Euler:
yi − yi−1
∇yi = = f (xi , yi ), i = 1, . . . , N
h
ou,
yi+1 − yi = hf (xi+1 , yi+1 ), i = 0, 1, . . . , N − 1. (1.17)
Note que no caso em que f é não linear, a equação (1.17) define o vetor yi+1 implicitamente
e portanto seu cálculo exige a utilização de métodos para a solução de sistemas de equações
algébricas não lineares, como por exemplo, o método das aproximações sucessivas ou o
método de Newton.
Observe também que a equação diferencial no processo de discretização, foi substituı́da
por uma outra equação chamada equação de diferenças que tem sua própria solução inde-
pendente daquela da equação diferencial. Assim o método numérico será considerado eficaz
se a solução da equação de diferenças tiver comportamento similar ao da solução da equação
diferencial. Para mais informações sobre equações de diferenças, ver [18].
Exemplo 1.3.1 Considere o PVI,
y′ = −y + x
y(0) = 1 (1.18)
−x
cuja solução exata é y(x) = x − 1 + 2e , de onde obtemos:
y(0.1) = 0.9097 y(0.3) = 0.7816 y(0.5) = 0.7131 y(0.7) = 0.6932 y(0.9) = 0.7131
y(0.2) = 0.8375 y(0.4) = 0.7406 y(0.6) = 0.6976 y(0.8) = 0.6986 y(1.0) = 0.7357.
A função f é dada por: f (x, y) = −y + x e, portanto o método de Euler explı́cito toma
a forma:
yi+1 = yi + h(−yi + xi ).
Tomando h = 0.2, encontraremos uma solução aproximada em [0, 1] resolvendo a equação
de diferenças:
yi+1 = yi − 0.2yi + 0.2xi ou seja yi+1 = 0.8yi + 0.2xi ,
cuja solução para n = 1, 2, . . . , 5 é:
y0 = 1.0 = y(0.0) (condição inicial)
y1 = 0.8y0 + 0.2x0 = 0.8000 ≃ y(0.2)
y2 = 0.8y1 + 0.2x1 = 0.6800 ≃ y(0.4)
y3 = 0.8y2 + 0.2x2 = 0.6240 ≃ y(0.6)
y4 = 0.8y3 + 0.2x3 = 0.6192 ≃ y(0.8)
y5 = 0.8y4 + 0.2x4 = 0.6554 ≃ y(1.0).
18 CAPÍTULO 1. CONCEITOS FUNDAMENTAIS

Tomando h = 0.1, obtemos um problema semelhante, mas com 10 valores de y para serem
calculados. Um procedimento análogo produz as aproximações:

y1 = 0.9000 y3 = 0.7580 y5 = 0.6810 y7 = 0.6570 y9 = 0.6748


y2 = 0.8200 y4 = 0.7122 y6 = 0.6629 y8 = 0.6609 y10 = 0.6974.

Note que quando h = 0.1 calculamos a aproximação em um número maior de pontos e


portanto devemos tomar o cuidado de comparar as aproximações para h = 0.2 e h = 0.1 nos
mesmos pontos, por exemplo a aproximação y1 obtida com h = 0.2 deve ser comparada com
a aproximação y2 do passo h = 0.1 e assim por diante. Vemos assim que a solução obtida
com h = 0.1 é melhor que aquela para h = 0.2, isto ocorre porque a equação de diferenças
para h = 0.1 representa a equação diferencial de maneira mais fiel do que para h = 0.2.
O método de Euler implı́cito para o problema (1.18) é dado pela equação de diferenças:

yi+1 = yi + h(−yi+1 + xi+1 ),


1
donde yi+1 = 1+h (yi + hxi+1 ) fornece os seguintes valores para h = 0.1,

y1 = 0.9182 y3 = 0.8026 y5 = 0.7418 y7 = 0.7263 y9 = 0.7482


y2 = 0.8529 y4 = 0.7660 y6 = 0.7289 y8 = 0.7330 y10 = 0.7711.

A figura 1.1 ilustra o comportamento dos métodos de Euler explı́cito e implı́cito compara-
dos com a solução exata. Observamos que o método explı́cito erra por falta, já o implı́cito o
faz por excesso.
É natural, portanto, considerarmos a combinação linear desses dois métodos, com o ob-
jetivo de que os erros se cancelem e possamos obter uma melhor aproximação. Por exemplo,
uma combinação linear é a média aritmética, que fornece o Método dos Trapézios, também
conhecido como Regra dos Trapézios:
h
yi+1 − yi = (f (xi , yi ) + f (xi+1 , yi+1 )), i = 0, 1, . . . , N − 1.
2
também implı́cito e que, para o PVI em questão, produz:

y1 = 0.9095 y3 = 0.7816 y5 = 0.7130 y7 = 0.6926 y9 = 0.7125


y2 = 0.8372 y4 = 0.7402 y6 = 0.6970 y8 = 0.6981 y10 = 0.7351.

O método dos trapézios é claramente mais preciso que ambos os métodos anteriores,
conforme pode ser observado na figura 1.2.

1.3.1 Convergência
Seja y(xn ) a solução exata do PVI (1.14) no ponto xn e yn uma aproximação obtida
por um método numérico para essa solução.
Definição 1.1 O erro global no ponto xn é definido por:

en = y(xn ) − yn .
1.3. PROBLEMA DE VALOR INICIAL EM EQUAÇÕES ORDINÁRIAS 19

1.2

1
* Euler Implicito
x Solucao Exata
+ Euler Explicito

y
0.8

0.6

0.4

0 0.2 0.4 0.6 0.8 1


x

Figura 1.1: Solução do problema (1.18) pelos métodos de Euler Explı́cito e


Implı́cito com h = 0.1

A análise do erro global nos permite estabelecer a convergência de um método. Esta é


uma propriedade muito desejável para um método numérico, pois ela irá nos garantir que
ao refinarmos a malha o resultado numérico se torna mais próximo do resultado exato. A
definição formal de convergência é a seguinte:

Definição 1.2 Dizemos que um método numérico é convergente se o erro global en converge
para zero quando n tende para infinito de maneira que o ponto xn permaneça fixo.

Isto quer dizer que a convergência está sendo analisada no ponto xn = a + nh e para que
este ponto permaneça fixo, a quantidade nh deve permanecer fixa, portanto se n tende para
infinito necessariamente h deve tender a zero, ou seja, a malha está sendo refinada para cada
novo valor de n da sequência. É possı́vel verificar a convergência de um método numérico
diretamente a partir de sua definição, como faremos a seguir para o método dos trapézios.
No entanto esta é uma maneira muito trabalhosa e é então preferı́vel fazê-lo indiretamente
utilizando os conceitos de consistência e zero-estabilidade.

Análise da convergência do método dos trapézios


A equação de diferenças para o método dos trapézios é:

h
yn+1 = yn + [f (xn , yn ) + f (xn+1 , yn+1 )]
2
20 CAPÍTULO 1. CONCEITOS FUNDAMENTAIS

1.2

x Solucao Exata
+ Regra dos Trapezios

y
0.8

0.6

0.4

0 0.2 0.4 0.6 0.8 1


x

Figura 1.2: Solução do problema (1.18) pelo método dos trapézios com h = 0.1

e a equação de diferenças para a solução exata, utilizando a série de Taylor é:

h h3
y(xn+1 ) = y(xn ) + [f (xn , y(xn )) + f (xn+1 , y(xn+1 ))] − y ′′′ (ξ).
2 12
Subtraindo a primeira equação da segunda obtemos a seguinte relação para o erro global
en :

h h3
en+1 = en + [f (xn , y(xn )) − f (xn , yn ) + f (xn+1 , y(xn+1 )) − f (xn+1 , yn+1 )] − y ′′′ (ξ).
2 12
Tomando o valor absoluto e utilizando a condição de Lipschitz de f , equação (1.16), obtemos
a desigualdade:

h h3
|en+1 | ≤ |en | + (L|en | + L|en+1 |) + |y ′′′ (ξ)|.
2 12
Supondo agora que |y ′′′ (x)| é limitada por 12M no intervalo de interesse, a desigualdade
acima transforma-se em:
hL hL
(1 − )|en+1 | ≤ (1 + )|en | + h3 M.
2 2

Admitindo que h seja suficientemente pequeno de forma que (1− hL


2 ) > 0, podemos reescrever
1.3. PROBLEMA DE VALOR INICIAL EM EQUAÇÕES ORDINÁRIAS 21

a expressão acima como:


!
hL
1+ 2 h3 M
|en+1 | ≤ hL
|en | + .
1− 2 1 − hL
2

É possı́vel mostrar por indução sobre n (ver exercı́cio (1.8)) que a solução ξn da equação de
diferenças
1 + hL 2 h3 M
ξn+1 = Aξn + B, com A = e B = (1.19)
1 − hL 2 1 − hL
2

domina o erro |en |, isto é |en | ≤ ξn .


A solução geral de (1.19) é:
" !n #
hL
h2 M 1+ 2
ξn = hL
−1 . (1.20)
L 1− 2

Reescrevendo o termo 1+ hL hL
2 na forma 1− 2 +hL, substituindo no quociente entre parênteses
da expressão (1.20) e simplificando os fatores comuns, esse quociente transforma-se em:
!
L
1+h .
1 − hL
2

Utilizando agora o fato que 1 + x ≤ ex para x ≥ 0, podemos escrever:


!n !!n  
1 + hL2 L nh L
hL
= 1+h ≤e 1−
2
1 − hL2 1 − hL
2

e portanto a expressão (1.20) transforma-se na desigualdade:


  !
h2 M nh L
1− hL
ξn ≤ e 2 −1 .
L

Lembrando que xn = a + nh e portanto nh = xn − a a expressão acima torna-se:


  !
h2 M (xn −a) L
1− hL
ξn ≤ e 2 −1 .
L

Como |en | ≤ ξn obtemos o resultado final na forma:


  !
h2 M (xn −a) L
1− hL
|en | ≤ e 2 −1 . (1.21)
L
22 CAPÍTULO 1. CONCEITOS FUNDAMENTAIS

Tomando n tendendo para infinito, ou equivalentemente h tendendo para zero, vemos que
|en | tende para zero com ordem O(h2 ), pois o termo entre parênteses tende para eL(x−a) − 1
quando h → 0, onde x (fixo) é o ponto onde estamos analisando a convergência. Agora, o
termo eL(x−a) − 1 é limitado independentemente de h, o que demonstra a convergência da
regra dos trapézios.
Exemplo 1.3.2 Apresentamos a seguir um exemplo ilustrando o fato de que o limitante
para o erro global obtido em (1.21) é em geral bastante conservador. Consideremos o PVI:

y ′ = −2y, y(0) = 1 , 0 ≤ x ≤ 1.

cuja solução é: y(x) = e−2x . Resolvendo esse problema pela regra dos trapézios com
h = 0.1 e com h = 0.01 obtemos os seguintes valores para o erro global máximo: emax =
0.00123160912 no primeiro caso e emax = 0.0000122631795 no segundo. Por outro lado, cal-
culando o limitante do erro global através da fórmula (1.21), obtemos os valores 0.005727606
e 0.00005727606 respectivamente para h = 0.1 e h = 0.01. Comparando esses valores, vemos
que o limitante é 5 vezes o erro verdadeiro.
Note que o conceito de convergência aqui definido não é de aplicação prática direta, pois
para calcular o erro global precisamos da solução exata que não está disponı́vel. Portanto
para testar na prática a convergência de um método numérico, resolve-se o problema para
vários valores decrescentes de h e observa-se se a sequência assim obtida está se aproxi-
mando de algum valor fixado, ou seja testa-se, de maneira empı́rica, se essa sequência é de
Cauchy e portanto convergente. No entanto, o fato da sequência ser convergente não implica
que ela converge para um limite que é a solução da equação diferencial. Assim, algumas
questões práticas relacionadas ao conceito de convergência merecem ser salientadas, como
por exemplo:
• Havendo convergência no sentido prático, a solução numérica obtida representa a
solução do problema?
• A discretização numérica introduz alguma caracterı́stica (“ruı́do”) que não está pre-
sente na equação original? Neste caso é este ruı́do controlável ou não?
• Quão rápida é a convergência?
As respostas a essas perguntas estão associadas aos conceitos de Consistência, Zero
Estabilidade e Ordem de Convergência que estudaremos logo a seguir.

Consistência
Parece natural admitir-se que a solução numérica aproxime a solução teórica do problema
em estudo. No entanto, este não é sempre o caso pois a equação de diferenças tem vida
própria e portanto sua própria solução, que não necessariamente guarda relação alguma com
a solução do problema original, a menos que assim seja explicitamente exigido desta equação
de diferenças. Essa propriedade, chamada consistência, é imposta à equação de diferenças e
“amarra-a” à equação diferencial. Inversamente, a solução do problema contı́nuo não é, em
geral, solução da equação de diferenças e o erro cometido ao substituirmos a solução exata
na equação de diferenças é chamado de erro de truncamento local. Se o erro de truncamento
1.3. PROBLEMA DE VALOR INICIAL EM EQUAÇÕES ORDINÁRIAS 23

local é de O(hp ), com p ≥ 1 dizemos que esse método tem ordem de consistência p, ou
simplesmente que esse método é de ordem p.
O erro de truncamento local pode também ser interpretado como o erro cometido ao
calcularmos a solução num ponto xi+1 sem levar em consideração os erros dos passos ante-
riores, isto é, levando em conta somente o erro cometido no passo atual. Para o método de
Euler, suponha que até o ponto xi todos os cálculos foram executados exatamente e que o
valor em xi+1 deverá ser aproximado através do método numérico. Essa aproximação terá
então erro de truncamento local τi+1 , dado por:
y(xi+1 ) − y(xi )
= f (xi , y(xi )) + τi+1
h
m
h
y ′ (xi ) − y ′′ (ξ) = f (xi , y(xi )) + τi+1
2
Podemos interpretar ainda o erro de truncamento local como aquele erro introduzido ao
substituirmos a equação diferencial por uma equação de diferenças. Portanto, para o método
de Euler com h → 0 a equação de diferenças aproxima-se da equação diferencial com erro
de truncamento local τi+1 = − h2 y ′′ (ξ), ou seja, com ordem O(h). Dizemos que o método
de Euler é consistente de ordem 1. Analogamente, o método dos trapézios é consistente de
ordem 2, porque o seu erro é O(h2 ).
O erro global é formado pela acumulação dos erros de truncamento local a cada passo
juntamente com os erros de arredondamento. Portanto a ordem de consistência de um
método está relacionada com sua ordem de convergência. Essa ordem é um indicativo da
velocidade com que se dá a convergência. Assim um método com erro O(h2 ) deve convergir
mais rapidamente que outro com erro O(h). Isso significa, pelo menos teoricamente, que
para o mesmo tamanho de passo h um método com ordem mais alta produz aproximações
mais precisas.

Zero Estabilidade
É possı́vel melhorar a ordem de consistência de um método simplesmente aumentando-se
a quantidade de informações nas quais esse método está baseado. Por exemplo a fórmula
do ponto médio que utiliza 3 pontos,
yi+1 − yi−1 = 2hf (xi , yi ), i = 1, 2, . . . , N − 1
ou equivalentemente,
yi+2 − yi = 2hf (xi+1 , yi+1 ), i = 0, 1, . . . , N − 2
tem ordem de consistência 2, e a fórmula implı́cita
3yi+2 − 4yi+1 + yi = 2hf (xi+2 , yi+2 ), i = 0, 1, . . . , N − 2. (1.22)
também tem ordem de consistência 2.
No entanto, como veremos, ao aumentarmos a quantidade de informação utilizada au-
mentamos também a possibilidade de algo dar errado. Na argumentação abaixo, tentare-
mos convencer o leitor da necessidade de uma análise mais detalhada das propriedades das
24 CAPÍTULO 1. CONCEITOS FUNDAMENTAIS

equações de diferenças com o objetivo de esclarecer onde e como esse “algo” pode dar er-
rado. Acompanhe a análise dos exemplos acima, onde estamos aproximando uma equação
diferencial de primeira ordem por uma equação de diferenças de segunda ordem, ou seja,
uma equação que relaciona 3 valores consecutivos. Similarmente às equações diferenciais,
uma solução da equação de diferenças de segunda ordem é uma combinação linear de duas
soluções básicas. De forma que, enquanto a equação diferencial tem apenas uma solução
básica (no caso em que y ∈ IR) a equação de diferenças tem duas distintas. Assim, essas duas
soluções não podem convergir para a solução do problema, ao mesmo tempo. A solução que
não converge para a solução exata é denominada solução espúria à qual não é permitido
crescer de maneira ilimitada, sob pena de inviabiliziar a aplicação do método. O efeito das
soluções espúrias na solução numérica é, comumente, o aparecimento de oscilações. Quando
o método é razoável essas oscilações decrescem com a evolução, o que significa que as soluções
espúrias decaem para zero à medida que i cresce. Um primeiro teste para esta condição de
decaimento é feito para o caso em que f (x, y) = 0, impondo que a solução do método deva
oscilar em torno de uma constante. Se o método é razoável, as oscilações se dissipam e o
método é dito ser zero-estável; caso contrário as oscilações são amplificadas prejudicando a
convergência.

Definição 1.3 A condição necessária para um método ser zero-estável é que as soluções
básicas da equação de diferenças associada, considerando f (x, y) = 0, sejam limitadas.

As soluções básicas da equação de diferenças são dadas pelas raı́zes do polinômio caracte-
rı́stico a ela associado. Por exemplo, a fórmula do ponto médio, yi+2 − yi = 0 tem polinômio
caracterı́stico ρ(z) = z 2 − 1 = 0, cujas raı́zes são 1 e −1, e as soluções básicas, ϕ e ψ, dadas
por ϕn = (1)n e ψn = (−1)n , n = 1, 2, . . . Já a fórmula 3yi+2 − 4yi+1 + yi = 0 tem polinômio
caracterı́stico ρ(z) = 3z 2 − 4z + 1 = 0, cujas raı́zes são 1 e 13 , e as soluções básicas, ϕ e ψ,
dadas por ϕn = (1)n e ψn = ( 13 )n , n = 1, 2, . . ..
Note que o comportamento dos dois métodos é distinto; enquanto a fórmula do ponto
médio conserva a amplitude das oscilações, a fórmula (1.22) amortece-as. Como em nenhum
dos dois casos, as oscilações são amplificadas, isto é, nenhuma das soluções básicas cresce,
ambos os métodos são zero-estáveis.
As condições: consistência e zero-estabilidade são necessárias e suficientes para a con-
vergência de um método [20].
Teorema 1.2 (Equivalência de Lax) No contexto de problema de valor inicial para
equações ordinárias, um método baseado em diferenças finitas é convergente se e somente
se ele é consistente e zero-estável.
É importante notar entretanto, que no caso de equações parciais, apesar de existir de-
terminada analogia, os resultados não são suficientemente abrangentes, ou seja, são válidos
somente em alguns casos particulares. O teorema acima garante a convergência, mas não
especifica a ordem de convergência. Como regra, pode-se dizer que a ordem de convergência
é a mesma da consistência.

Estabilidade
Os conceitos estudados até aqui dizem respeito a h → 0. No entanto, quanto menor o
valor de h, tanto maior será o número de cálculos que deverão ser efetuados para produzir
1.3. PROBLEMA DE VALOR INICIAL EM EQUAÇÕES ORDINÁRIAS 25

uma solução aproximada em determinado ponto x, fixado. Isto pode levar a um acúmulo,
não controlado, de erros e nesse caso dizemos que esse método é não estável ou instável.
A estabilidade (h fixo) é muito importante para problemas que exigem um número muito
grande de aplicações repetidas de um método para obter a solução em um dado intervalo.
Como em geral não é possı́vel predizer o número de passos necessários para obtenção da
solução, é aconselhável que, por precaução, tenhamos um controle do comportamento do
erro, isto é, um controle da propagação do erro. Na verdade, a escolha do tamanho h da
malha está intimamente ligada à estabilidade do método, e é o parâmetro através do qual é
possı́vel exercer esse controle. Podemos interpretar um método numérico como uma máquina
de produzir números a partir de dados iniciais. Como esses dados iniciais contém sempre
erro (de arredondamento do computador por exemplo), se essa máquina tiver o defeito
de amplificá-los, em pouco tempo o crescimento do erro dominará a solução produzida pela
máquina e esta perderá seu significado. Vamos ilustrar essas idéias pela análise, em paralelo,
de dois métodos numéricos.
Considere os métodos do ponto médio e do trapézio
yi+2 − yi = 2hf (xi+1 , yi+1 ), i = 0, 1, . . . , N − 2 (1.23)
h
yi+1 − yi = (f (xi , yi ) + f (xi+1 , yi+1 )), i = 0, 1, . . . , N − 1. (1.24)
2
Substituindo a solução exata nas expressões (1.23-1.24) e considerando a definição de erro
de truncamento local obtemos:

y(xi+2 ) − y(xi ) = 2hf (xi+1 , y(xi+1 )) + τi+2 , i = 0, 1, . . . , N − 2 (1.25)


h
y(xi+1 ) − y(xi ) = (f (xi , y(xi )) + f (xi+1 , y(xi+1 ))) + τi+1 , i = 0, 1, . . . , N − 1.
2
(1.26)
Considerando o erro global ei = y(xi )−yi podemos analisar seu comportamento derivando
uma equação que o represente. Na verdade, o erro global está intimamente relacionado com
o erro de truncamento local, e em geral satisfaz uma equação de diferenças obtida a partir
da expressão do método numérico. Por exemplo, subtraindo (1.25) de (1.23), tem-se, para
o método do ponto médio:
ei+2 − ei = 2h(f (xi+1 , y(xi+1 )) − f (xi+1 , yi+1 )) + τi+2
= 2hfy (xi+1 , ζ)ei+1 + τi+2 , i = 0, 1, . . . , N − 2. (1.27)
Aqui foi usado o teorema do valor médio e a notação ∂f /∂y = fy .
Analogamente, no caso do método do Trapézio, subtraindo-se (1.26) de (1.24) obtém-se:
h
ei+1 − ei = (fy (xi , ζ1 )ei + fy (xi+1 , ζ2 )ei+1 ) + τi+1 , i = 0, 1, . . . , N − 1. (1.28)
2
As equações (1.27)-(1.28) são aquelas que determinam o erro global como função do erro
de trucamento local para os exemplos da regra do ponto médio e trapézios.
Dessas considerações derivamos a motivação para o uso de uma equação teste para a
verificação da estabilidade. As equações (1.27) e (1.28) sugerem que o erro deve satisfazer
26 CAPÍTULO 1. CONCEITOS FUNDAMENTAIS

uma equação do tipo e′ = λe + g, onde λ = 2hfy (xi+1 , ζ) em (1.27) e λ tem uma expressão
um pouco mais complicada no caso (1.28). Obviamente λ não será sempre constante, mas
essas expressões nos motivam a definir a estabilidade, baseada no problema teste y ′ = λy,
pois nesse caso, assumindo que o erro de truncamento local satisfaz τi = T , as equações
(1.27) e (1.28) se transformam, respectivamente, em:

ei+2 = 2hλei+1 + ei + T (1.29)



ei+1 = ei + (ei+1 + ei ) + T
2
que podem ser solucionadas, permitindo uma análise detalhada do seu comportamento.
Essa análise é feita para cada método em separado, assim, por exemplo, no caso da regra
do ponto médio, como (1.29) é uma equação para o erro global, deseja-se que suas soluções
sejam decrescentes para que não haja acúmulo desse erro. Como já sabemos as soluções
serão combinações lineares de (ξ1 )n e (ξ2 )n onde ξ1 e ξ2 são as duas raı́zes do polinômio
π(r, hλ) = r2 − 2hλr − 1 = 0, que é chamado de polinômio de estabilidade da regra do ponto
médio. Portanto para que o erro seja decrescente precisamos impor a condição de que as
raı́zes ξ1 e ξ2 tenham módulo menor que 1. Observe que essas raı́zes são funções de hλ e
portanto a região do plano complexo h̄ = hλ para a qual essas raı́zes estão no disco unitário
é chamada de região de estabilidade absoluta do método.
O estudo da estabilidade está relacionado com o crescimento ou não do erro global
quando o número de aplicações do método numérico aumenta, mantendo-se o passo h fixo.
Para simplificar a análise, a estabilidade é verificada por meio da aplicação do método à
equação teste y ′ = λy. Note que isso significa consideramos T = 0 em (1.29, termo que não
influencia no crescimento de ei . A seguir apresentamos uma breve análise da estabilidade
para os métodos mais populares.

• Euler explı́cito ei+1 − ei = hλei ⇒ ei+1 = (1 + hλ)ei ⇒ estabilidade para


−2 ≤ hλ ≤ 0. Este método é então condicionalmente estável.
1
• Euler implı́cito ei+1 − ei = hλei+1 ⇒ ei+1 = (1−hλ) ei ⇒ estabilidade para hλ ≤ 0.
Este método é considerado absolutamente estável.
(1+ hλ )
• Trapézio ei+1 − ei = hλ2 (ei+1 + ei ) ⇒ ei+1 = (1− hλ
2
ei ⇒ estabilidade para hλ ≤ 0.
2 )
Este método é considerado absolutamente estável.
p
• Ponto médio ei+2 − 2hλei+1 − ei = 0 ⇒ as raı́zes são: ζ1,2 = hλ ± 1 + (hλ)2 e
teremos estabilidade para | ζ1,2 |< 1.

2± 1−6hλ
• Fórmula 3(1 + 2λh)ei+2 − 4ei+1 + ei = 0 ⇒ as raı́zes são: ζ1,2 = 3+6hλ e teremos
estabilidade para | ζ1,2 |< 1.

Observação 1.3.1 Um método absolutamente estável permite qualquer tamanho de passo


h, enquanto um condicionalmente estável impõe restrição ao passo h.

Observação 1.3.2 Para -hλ crescente, o método de Euler implı́cito apresenta amorteci-
mento e o do Trapézio apresenta oscilação, pois o fator de amplificação do método de Euler
1.3. PROBLEMA DE VALOR INICIAL EM EQUAÇÕES ORDINÁRIAS 27

implı́cito é
−1 (1+ hλ
2 )
(1 − hλ) → 0 e o do trapézio é (1− hλ ) → −1 quando −hλ → ∞. Portanto, esses
2
métodos são mais indicados, respectivamente, para problemas que apresentam solução com
decaimento e para problemas com solução periódica. No contexto das equações parciais, um
método similar ao de Euler implı́cito seria adequado para equações parabólicas e um similar
ao Trapézio, mais adequado para equações hiperbólicas (na forma de conservação).

Em resumo, nesta seção apresentamos os principais conceitos e delineamos as maiores


dificuldades dos métodos numéricos e quais as ferramentas para diagnosticá-las. Na prática
porém, podem acontecer dificuldades extras que são inerentes ao problema. Nesse caso,
métodos estáveis gerais podem não ser robustos o suficiente para fazer frente ao problema
e é recomendável a construção de métodos especiais, produzidos sob encomenda, que levem
em conta a natureza do problema.

Exemplos
Nesta seção apresentamos exemplos numéricos ilustrando o efeito prático de cada um dos
conceitos de consistência, zero-estabilidade e estabilidade.
Seja o PVI: √
y ′ = 4x y, y(0) = 1, 0 ≤ x ≤ 2.
cuja solução exata é y(x) = (1 + x2 )2 . Consideremos primeiramente a solução desse PVI
pelo seguinte método explı́cito de 2 passos:
h
yn+2 = yn+1 + (3fn+1 − 2fn ) (1.30)
3
que é zero-estável, mas não é consistente, como pode ser facilmente testado, ver exercı́cio
(1.10).
Ilustração da Consistência
x |Erro| |Erro| |Erro|
h = 0.1 h = 0.05 h = 0.025
0 0 0 0
0.1 0 5.07E-03 8.82E-03
0.2 2.11E-02 3.61E-02 4.50E-02
0.3 7.21E-02 9.76E-02 1.12E-01
0.4 1.57E-01 1.95E-01 2.15E-01
0.5 2.85E-01 3.34E-01 3.61E-01
.. .. .. ..
. . . .
2.0 1.82E+01 1.89E+01 1.92E+01

Como o método é de dois passos necessitamos duas condições iniciais para começar o processo
de cálculo, tomamos y0 = 1 e y1 = y(h) = (1 + h2 )2 . Note que quando o passo diminui o
erro em y(2) aumenta mas não de maneira explosiva. A sequência de soluções numéricas
converge para uma função y(x) à medida que h → 0, mas como o método não é consistente,
essa função não é solução do PVI dado, e sim de um outro problema.
28 CAPÍTULO 1. CONCEITOS FUNDAMENTAIS

Nosso próximo exemplo ilustra as consequências desastrosas da falta da zero-estabilidade.


Seja o método numérico explı́cito de dois passos:
h
yn+2 = (1 + a)yn+1 − ayn + ((3 − a)fn+1 − (1 + a)fn ) (1.31)
2
Veja o exercı́cio (1.10) para concluir que esse método é zero-estável para a = 0, mas não o
é quando a = −5. Assim:
Ilustração da Zero-Estabilidade
x |Erro| |Erro| |Erro| |Erro| |Erro| |Erro|
a=0 a = −5 a=0 a = −5 a=0 a = −5
h = 0.1 h = 0.1 h = 0.05 h = 0.05 h = 0.025 h = 0.025
0 0 0 0 0 0 0
0.1 0 0 5.63E-05 2.50E-05 2.23E-05 2.8E-05
0.2 9.00E-04 4.00E-04 3.61E-04 4.42E-04 1.09E-04 1.65E-02
0.3 2.85E-03 1.14E-03 9.38E-04 1.03E-02 2.64E-04 1.01E+02
0.4 5.97E-0.3 6.73E-3 1.82E-03 2.50E-01 4.95E-04 6.29E+3
0.5 1.04E-02 3.04E-02 3.05E-03 5.99E+00 8.17E-04 3.93E+6
.. .. .. .. .. .. ..
. . . . . . .
2.0 3.67E-01 6.96E+08 9.63E-02 5.46E+21 4.26E-02 3.41E+48
Observe que no caso a = 0 ao refinarmos a malha as aproximações produzidas ficam mel-
hores, mas o mesmo não acontece com a = −5. No primeiro caso o método é convergente e
no segundo não.
Finalmente vamos exemplificar o efeito da estabilidade absoluta no comportamento da
solução numérica de longo prazo. Para isso consideremos o PVI y ′ = −10(y − 1)2 y(0) = 2
cuja solução exata é y(x) = 1 + 1/(1 + 10x). Resolvemos esse problema utilizando o método
de Simpson
h
yn+2 − yn = (fn+2 + 4fn+1 + fn )
3
com h = 0.1 que é implı́cito de dois passos, mas não é absolutamente estável, veja o exercı́cio
(1.10).
Observe o crescimento do erro ao longo do processo.
Ilustração dos efeitos da estabilidade
x 0.5 1.0 1.5 2.0 2.5
|Erro| 2.96E-02 5.64E-02 4.58E-02 9.59E-02 2.68E-01

x 3.0 3.5 4.0 4.8 4.9


|Erro| 1.28E-01 3.02E-01 1.73E-01 9.79E-01 Complexo
Estamos utilizando a palavra complexo na última coluna significando que o resultado pro-
duzido pelo método de Simpson é complexo. Isto ocorre porque, sendo o método de Simpson
implı́cito, devemos resolver uma equação do segundo grau para determinar a solução. Essa
equação é resolvida exatamente, resultando em raı́zes complexas. Na prática, a resolução
exata, não seria possı́vel e terı́amos que resolvê-la por um método iterativo, que teria sérios
problemas de convergência, dado que a equação não possui solução real.
1.4. PROBLEMA DE VALOR DE FRONTEIRA EM EQUAÇÕES ORDINÁRIAS 29

1.4 Problema de Valor de Fronteira em Equações Or-


dinárias
No problema de valor inicial (PVI), como visto, uma condição inicial se propaga passo
a passo. No caso do problema de segunda ordem, foi preciso fixarmos uma condição inicial
e também uma inclinação (a derivada da solução), ambas no mesmo ponto veja (1.15).
Para um problema de valor de fronteira (PVF) em equações ordinárias é preciso fixar
valores da solução em 2 pontos distintos, o que significa que a solução propaga a condição
inicial em x = a, na direção do valor fixado em x = b, e vice-versa. É intuitivo que isso nem
sempre é possı́vel, ou seja, a condição de existência e unicidade de solução é mais complicada
nestes casos. Por exemplo,

y ′′ + π 2 y = 0, y(0) = 0, y(1) = 1 não tem solução,


y ′′ + π 2 y = 0, y(0) = 0, y(1) = 0 tem infinitas soluções.

Um dos PVFs mais simples e de alguma importância prática pode ser colocado como:
Sejam quatro constantes a, b, α e β, com a < b, e uma equação diferencial de segunda
ordem
y ′′ = f (x, y, y ′ ), (1.32)
o problema consiste em encontrar uma função y(x) ∈ C 2 [a, b], satisfazendo (1.32) em
a < x < b, e as duas condições de fronteira:

y(a) = α y(b) = β. (1.33)

Teorema 1.3 (Existência e Unicidade) Se o PVF (1.32) com as condições de fronteira


(1.33) é tal que, para −∞ < a < b < ∞, com α e β constantes arbitrárias; a função f é
Lipschitziana com relação às variáveis y e y ′ , fy é contı́nua e satisfaz fy > 0 e ainda fy′ é
limitada para a ≤ x ≤ b e −∞ < y < ∞, então ele tem solução única. [4]
O problema a ser resolvido pode apresentar dificuldades inerentes se ele for mal condi-
cionado. Por exemplo, considere o problema:

y ′′ + k 2 y = 2k 2 x, y(0) = 0, y(1) = 1,

cuja solução geral é: y(x) = c1 sen kx + c2 cos kx + 2x. Das condições de contorno tem-se
c2 = 0 e c1 = −2/ sen k. Para k = π, o problema não tem solução. Para k = π + ε, ε
pequeno, c1 = −2/ sen ε ≃ 2ε−1 , ou seja, uma pequena variação nos dados do problema
implica em grande variação na solução que passou a existir. O problema acima constitui um
exemplo de um problema mal posto, ou mal condicionado.
Note que instabilidade é uma dificuldade do método numérico, enquanto mal condiciona-
mento diz respeito ao problema.
A solução do problema (1.32) pode ser obtida via métodos para problema de valor inicial,
(Método Shooting), que usa a condição dada em x = a e escolhe um valor para a derivada
(inclinação) também em x = a, calcula a solução até x = b e, de acordo com o resultado,
ajusta o valor da derivada em x = a e resolve novamente, repetindo estes passos até que a
30 CAPÍTULO 1. CONCEITOS FUNDAMENTAIS

solução propagando-se a partir de a encontre o valor de fronteira fixado em b. Não vamos


detalhar este método aqui, vide [Ames 1992]. Outra abordagem procura resolver o problema,
como problema de contorno; o método, didaticamente mais recomendado é aquele que utiliza
diferenças finitas, o qual detalharemos a seguir.

1.4.1 Métodos de Diferenças Finitas


Consideraremos aqui, Métodos de Diferenças Finitas para solução de PVF que não são
baseados na resolução de problemas de valor inicial. O objetivo é fornecer um apanhado
geral, enfatizando os conceitos e dificuldades mais frequentes, como é o caso da restrição do
tamanho h da malha e do tratamento da condição de fronteira com derivadas.
Seja o PVF
y ′′ (x) − p(x)y ′ (x) − q(x)y(x) = r(x)
y(a) = α, y(b) = β
que será rescrito usando-se o operador L, como

L[y(x)] ≡ y ′′ (x) − p(x)y ′ (x) − q(x)y(x) = r(x), (1.34)

y(a) = α, y(b) = β.
Impomos a restrição q(x) ≥ Q∗ > 0, a ≤ x ≤ b que é mais restritiva do que Q∗ ≥ 0
requerida para a prova de existência e unicidade de solução .
Supomos no que segue, que o PVF objeto de estudo possui uma única solução com quatro
derivadas contı́nuas em a ≤ x ≤ b. Usaremos uma malha uniforme com h = Nb−a+1 e diferenças
centradas para aproximar L[y(x)] para obter:

yj+1 − 2yj + yj−1 yj+1 − yj−1


Lh [yj ] ≡ − p(xj ) − q(xj )yj = r(xj ), j = 1, 2, . . . , N. (1.35)
h2 2h
As condições de fronteira são substituı́das por:

y0 = α, yN +1 = β. (1.36)
2
Multiplicando (1.35) por − h2 , obtemos:

h2 1 h
− Lh [yj ] ≡ − {yj+1 − 2yj + yj−1 } + p(xj ) {yj+1 − yj−1 } +
2 2 4

h2 h2
yj = − r(xj ), j = 1, 2, . . . , N.
q(xj )
2 2
Rearranjando os termos de mesmo ı́ndice:

h2 h2
   
1 h
− Lh [yj ] ≡ − 1 + p(xj ) yj−1 + 1 + q(xj ) yj
2 2 2 2
1.4. PROBLEMA DE VALOR DE FRONTEIRA EM EQUAÇÕES ORDINÁRIAS 31

h2
 
1 h
− 1 − p(xj ) yj+1 = − r(xj ), j = 1, 2, . . . N.
2 2 2
Fazendo:
h2
aj ≡ 1 + q(xj ),
 2 
1 h
bj ≡ 1 + p(xj ) ,
2 2
 
1 h
cj ≡ 1 − p(xj ) ,
2 2

chegamos à equação

h2 h2
− Lh [yj ] ≡ −bj yj−1 + aj yj − cj yj+1 = − r(xj ), j = 1, 2, . . . N.
2 2
que em notação vetorial, juntamente com as condições de fronteira (1.36), pode ser escrita
na forma:
Ay = r (1.37)
onde
a1 −c1 0 ··· 0
 
 −b2 a2 −c2 ··· 0 

A≡ .. .. .. .. .. 
, (1.38)
 . . . . . 
 0 ··· −bN −1 aN −1 −cN −1 
0 ··· 0 −bN aN

 
y1 r(x1 ) − 2bh12α
 
y2  r(x2 ) 
h2
 
.. ..
   
y≡ e r≡− .
 
. .

2
  
 
 yN −1   r(xN −1 ) 
yN r(xN ) − 2chN2 β

Assim, resolvendo o sistema linear de ordem N (1.37), cuja matriz dos coeficientes,
A, é tridiagonal, determinamos os valores de yj , j = 1, 2, . . . , N , que desejamos sejam
aproximações da solução exata, y(xj ), onde xj = x0 + jh.
Tendo construı́do o método, deve-se procurar conhecer a consistência e convergência do
mesmo. Um ponto novo aqui é que deve-se também cuidar da existência e unicidade da
solução numérica. Se A é inversı́vel tem-se solução única. Se A for quase singular, o método
será não estável. Note que isso pode ocorrer quando h → 0 e a dimensão de A cresce.
Quando A é quase singular, os elementos de A−1 crescem com o aumento da ordem de
A, deteriorando o erro e consequentemente a convergência. Mais uma vez, estabilidade e
consistência equivalem a convergência.
32 CAPÍTULO 1. CONCEITOS FUNDAMENTAIS

Um critério a ser considerado, é criar condições para que A seja diagonalmente domi-
nante. Vamos exigir que o espaçamento h seja tão pequeno que

h
|p(xj )| ≤ 1, j = 1, 2, . . . , N. (1.39)
2
Então, segue que
|bj | + |cj | = bj + cj = 1 e aj > 1.
Logo,

|a1 | > |c1 |;


|aj | > |bj | + |cj |, j = 2, 3, . . . , N − 1;
|aN | > |bN |;

e, portanto, a matriz A é diagonalmente dominante, por conseguinte inversı́vel e o problema


discreto tem solução única. Na linguagem dos métodos numéricos para problemas de valor
inicial a condição (1.39) representa uma condição de estabilidade. Note que quanto mais
acentuada for a dominância da diagonal de A, mais estável será o método.
A solução de (1.37) pode, assim, ser obtida por simples fatoração de A (Gauss, por
exemplo). Sendo A diagonalmente dominante, a fatoração é estável e não é necessário
pivotamento. É claro que isto fornece uma prova da existência e unicidade da solução
numérica de (1.37), desde que (1.39) seja satisfeita.
Vamos, agora, estimar o erro na aproximação numérica definida em (1.35). O erro
de truncamento local é obtido substituindo-se a solução exata na equação (1.35), assim
definimos τj , o erro de truncamento local, por:

Lh [y(xj )] − r(xj ) = τj , j = 1, 2, . . . , N. (1.40)

Como y(x) é solução de (1.34) temos,

τj = Lh [y(xj )] − L[y(xj )]

y(xj − h) − 2y(xj ) + y(xj + h) y(xj + h) − y(xj − h)


= 2
− p(xj )
h 2h
−q(xj )y(xj ) − [y ′′ (xj ) − p(xj )y ′ (xj ) − q(xj )y(xj )]
 
y(xj − h) − 2y(xj ) + y(xj + h) ′′
= − y (xj )
h2

y(xj + h) − y(xj − h)


−p(xj ) − y (xj ) , j = 1, 2, . . . , N. (1.41)
2h

Supondo que y (4) (x) é contı́nua e usando a expressão do erro nas fórmulas centradas
obtemos:
1.4. PROBLEMA DE VALOR DE FRONTEIRA EM EQUAÇÕES ORDINÁRIAS 33

h2 (4)
τj = [y (ξj ) − 2p(xj )y ′′′ (ηj )], j = 1, 2, . . . , N, (1.42)
12
onde ξj ,ηj ∈ [xj−1 , xj+1 ]. Assim o erro de truncamento local é O(h2 ) e quando h → 0
o método tende para a equação diferencial com ordem O(h2 ). Dizemos que o método é
consistente de ordem 2.
A estimativa de erro global é obtida do seguinte resultado:
Teorema 1.4 Se o espaçamento h da malha satisfaz (1.39) então,
M4 + 2P ∗ M3
 
2
|y(xj ) − yj | ≤ h , j = 0, 1, . . . , N + 1,
12Q∗
onde y(x) é a solução exata de (1.34), yi é a solução calculada
de (1.35) e
P ∗ ≡ maxx∈[a,b] |p(x)|, M3 ≡ maxx∈[a,b] |y ′′′ (x)|, M4 ≡ maxx∈[a,b] y (4) (x) .
Prova: Sejam ej = y(xj ) − yj , j = 0, 1, . . . , N + 1, ve : vetor dos erros ej e vτ : vetor
dos erros τj . Subtraindo (1.35) de (1.40) obtemos:
Lh [y(xj )] − Lh [yj ] = r(xj ) − r(xj ) + τj = τj , j = 1, 2, . . . , N.
Logo,

Lh [y(xj ) − yj ] = τj , ou Lh [ej ] = τj .
Esta última expressão nos diz que o erro global satisfaz a mesma equação de diferenças que
define o método, tendo como lado direito o erro de truncamento local.
2
Multiplicando ambos os membros da expressão acima por − h2 obtemos:
h2 h2
− Lh [ej ] = − τj , j = 1, 2, . . . , N, (1.43)
2 2
2
que utilizando a mesma notação matricial de (1.37) produz, Ave = − h2 vτ , donde segue
2
que ve = − h2 A−1 vτ , e mais uma vez observa-se a necessidade dos elementos de A−1 não
crescerem (estabilidade). Os vetores ve e vτ são formados respectivamente pelas compo-
nentes do erro global e do erro de truncamento local.
Escrevendo individualmente cada equação de (1.43) obtemos
h2
−bj ej−1 + aj ej − cj ej+1 = − τj , j = 1, 2, . . . , N.
2
Daı́,
h2
aj e j = bj ej−1 + cj ej+1 − τj , j = 1, 2, . . . , N
2
h2
|aj ej | ≤ |bj ej−1 | + |cj ej+1 | + |τj |, j = 1, 2, . . . , N
2
h2
|aj ej | ≤ (|bj | + |cj |)e + |τj |, j = 1, 2, . . . , N
2
34 CAPÍTULO 1. CONCEITOS FUNDAMENTAIS

e usando (1.39)
h2
|aj ej | ≤ e + τ,
2
onde:
e≡ max |ej | e τ ≡ max |τj |.
0≤j≤N +1 1≤j≤N

Entretanto, também pela condição (1.39) segue que,


h2
|aj | = aj ≥ 1 + Q∗ .
2
Logo,
h2 h2
 
1 + Q∗ |ej | ≤ |aj ej | ≤ e + τ, j = 1, 2, . . . , N.
2 2
De (1.36) temos e0 = eN +1 = 0. Portanto, a desigualdade acima vale para todo j em
0 ≤ j ≤ N + 1.
Assim, concluı́mos que
h2 h2
 
1 + Q∗ e ≤ e + τ
2 2
ou seja,
h2 h2
Q∗ e ≤ τ.
2 2
Daı́,
1
e ≤ τ.
Q∗
Finalmente, usando as hipóteses do teorema em (1.42) encontramos que,
h2
|τj | ≤ (M4 + 2P ∗ M3 ) , j = 1, 2, . . . , N.
12
Logo,
h2
τ ≤ (M4 + 2P ∗ M3 ) ,
12
e portanto,
M4 + 2P ∗ M3
 
e ≤ h2 .2
12Q∗
Do teorema 1.4 vemos que, sob a condição (1.39), a solução discreta converge para a
solução exata quando h → 0, e ainda, que o erro é O(h2 ).
Muitas vezes, na prática, esta análise é difı́cil ou impossı́vel, calcula-se então a solução
com vários tamanhos de h, observando-se o comportamento das soluções obtidas. Isto
permite-nos ter uma idéia da convergência e precisão dos resultados (número de dı́gitos
fixados) e também da taxa de convergência. Por exemplo, se o erro é O(h2 ), recalcular o
problema com nova malha de espaçamento h2 deve resultar na duplicação da precisão.
Alguns aspectos interessantes podem ainda ser considerados. Por exemplo:
1.4. PROBLEMA DE VALOR DE FRONTEIRA EM EQUAÇÕES ORDINÁRIAS 35

i. outro tipo de condição de fronteira impõe alguma dificuldade?


ii. é possı́vel relaxar a condição (1.39) permitindo o uso de h maior?
iii. é possivel obter métodos mais precisos?
iv. ocorre alguma dificuldade no caso da equação ser não linear?

Vamos tratar de alguns desses aspectos a seguir. Considere que no lugar de y(a) = α em
(1.36), a condição dada seja y ′ (a) + γy(a) = 0. Essa nova condição tem consequências no
sistema (1.37) que passamos a analisar.
Uma primeira abordagem é tomar uma aproximação progressiva (de ordem O(h)) para
a derivada, ou seja,
y(a + h) − y(a) y1 − y0
y ′ (a) ≃ =
h h
donde
y1
y1 − y0 + hγy0 = 0 ⇒ y0 =
1 − hγ
que incorporada ao sistema, modifica apenas a primeira equação para

b1 h2
(a1 − )y1 − c1 y2 = − r(x0 )
1 − hγ 2
deixando o restante inalterado. O inconveniente aqui é o fato de introduzirmos um erro
local de O(h) que deteriora um pouco o resultado final.
Uma outra abordagem, que recupera a ordem 2, se dá pelo uso de uma aproximação
central
y(a + h) − y(a − h) y1 − y−1
y ′ (a) ≃ =
2h 2h
onde y−1 é introduzido artificialmente.
Assim,
y1 − y−1 + 2hγy0 = 0.
Como uma nova incógnita foi introduzida, nova equação é necessária. Esta pode ser
providenciada considerando-se como primeira equação em (1.37), a equação obtida para
j=0

h2
−b0 y−1 + a0 y0 − c0 y1 = − r(x0 ),
2
que por substituição de y−1 fica

h2
(a0 − b0 2hγ)y0 − (b0 + c0 )y1 = − r(x0 ).
2
36 CAPÍTULO 1. CONCEITOS FUNDAMENTAIS

O sistema (1.37) fica agora com uma equação extra, entrando y0 como incógnita. Apesar
de pequeno acréscimo no esforço computacional, o resultado final é O(h2 ), conservando-se a
ordem anterior.
Com relação à utilização de tamanhos de passo maiores, é possı́vel a construção de
um método menos restritivo. Esse método denominado upwind, tem bastante aplicação na
prática, principalmente em equações hiperbólicas e consiste em combinarmos as diferenças
progressiva e regressiva conforme o sinal de p(x). Isto reduz a ordem do método, mas a
restrição sobre h é relaxada.
Assim, o método upwind é baseado na seguinte aproximação para a primeira derivada:
yj+1 − yj yj − yj−1
y ′ (xj ) ≃ η + (1 − η) . (1.44)
h h
Portanto para η = 1, 21 e −1 tem-se as aproximações progressiva, central e regressiva, re-
spectivamente.
Usando (1.44) em (1.35) temos

h2 1
− Lh [yj ] ≡ − {yj+1 − 2yj + yj−1 } +
2 2
p(xj )h {η(yj+1 − yj ) + (1 − η)(yj − yj−1 )} +
h2 h2
q(xj ) yj = − r(xj ), j = 1, 2, . . . , N
2 2
donde
h2
−bj yj−1 + aj yj − cj yj+1 = − r(xj ), j = 1, 2, . . . N
2
com

aj ≡ 1 − (1 − 2η)hp(xj ) − h2 q(xj ),

1
bj ≡ {1 − (1 − η)hp(xj )} ,
2
1
cj ≡ {1 + hηp(xj )} .
2
No método upwind, η vai assumir valores 0 ou 1 , conforme p(xj ) < 0 ou p(xj ) > 0,
respectivamente. Isso mantém a dominância da diagonal de A sem a restrição (1.39). A
ordem do método diminui um pouco, mas o esforço computacional pode diminuir significa-
tivamente, porque a malha pode ser menos fina, ou seja, h pode ser maior.
Foi visto anteriormente que é possı́vel a melhoria da ordem de aproximação, aumentando
os pontos na aproximação da derivada. Esta abordagem acarreta um aumento na banda da
matriz do sistema e o esforço computacional cresce. Para ilustrar uma outra maneira de se
melhorar a ordem, vamos considerar o problema

y ′′ = f (x, y), y(0) = α y(1) = β.


1.5. EXERCÍCIOS 37

A discretização convencional fornece:

yj+1 − 2yj + yj−1 = h2 f (xj , yj )

que é consistente de ordem O(h2 ). Como estão envolvidos yj+1 , yj e yj−1 , pode-se usá-los
para se obter uma aproximação melhor para f (xj , yj ) da seguinte maneira:

yj+1 − 2yj + yj−1 = h2 {c1 f (xj−1 , yj−1 ) + c2 f (xj , yj ) + c3 f (xj+1 , yj+1 )}

onde c1 , c2 e c3 são calculados para aumentar a precisão. O método mais conhecido, assim
obtido, é o método de Numerov

h2
yj+1 − 2yj + yj−1 = {f (xj−1 , yj−1 ) + 10f (xj , yj ) + f (xj+1 , yj+1 )}
12
que é consistente de ordem O(h4 ).
Quando f é não linear e c3 6= 0, esse método requer a solução de uma equação (ou
um sistema) não-linear. Isto pode ser resolvido por iterações sucessivas ou pelo método de
Newton, mas claramente o esforço computacional é bem maior.
Em geral, um problema não-linear de segunda ordem pode ser colocado como

y ′′ = f (x, y, y ′ ), y(0) = α y(1) = β

e a construção do método segue o mesmo procedimento


yj+1 − yj−1
yj+1 − 2yj + yj−1 = h2 f (xj , yj , ), j = 1, 2, . . . , N
2h
com a necessidade de solução de um sistema não linear.

1.5 Exercı́cios

1.1 Utilizando propriedades dos operadores e expansão formal em série de potências das
funções envolvidas prove as relações abaixo:
1 1
∇ = E −1 ∆, ∆∇ = ∇∆ = ∆ − ∇ = δ 2 , µδ = (∆ + ∇), µ2 = 1 + δ 2
2 4
1 1 1
 1 1
∇ = 1 − E −1 , µ = E 2 + E− 2 , δ = E 2 − E− 2 ,
2
 − 21  
1 1 3 4
1 = µµ−1 = µ 1 + δ 2 = µ 1 − δ2 + δ + ···
4 8 128
  r !
−1 δ 1 2 1
hD = ln(1 + ∆) = − ln(1 − ∇) = 2 sinh = 2 ln 1+ δ + δ
2 4 2
38 CAPÍTULO 1. CONCEITOS FUNDAMENTAIS

k k k+1 k(3k + 5) k+2


(hD)k = [ln(1 + ∆)] = ∆k − ∆ + ∆
2 24
k(k + 2)(k + 3) k+3
− ∆ + ···
48
k k k+1 k(3k + 5) k+2
(hD)k = (−1)k [ln(1 − ∇)] = ∇k + ∇ + ∇
2 24
k(k + 2)(k + 3) k+3
+ ∇ + ···
48
2µ sinh−1 2δ

12 3 12 .22 5
 
hD = 1 =µ δ− δ + δ − ···
2
1 + δ4 2 3! 5!
 2n  2n
12 12 .32 12 .32 .52 7

δ
(hD)2n = 2 sinh−1 = δ − 2 δ3 + 4 δ5 − δ + · · ·
2 2 .3! 2 .5! 26 .7!
 2n 2n
12 12 .22 5
 
µ δ
(hD)2n = q 2 sinh−1 = µ δ − δ3 + δ − ···
1 + δ4
2 2 3! 5!
  2n+1  2n+1
δ 1 3 5 5 7
(hD)2n+1 = 2 sinh−1 = δ − δ3 + δ − δ + ··· .
2 24 640 7168
Sugestão: Utilize as expansões em série:

X (2k)!
sinh−1 (x) = (−1)k x2k+1
22k (k!)2 (2k + 1)
k=0

q q(q − 1) 2 q(q − 1)(q − 2) · · · (q − k + 1) k


(1 + x) = 1 + qx + x + ···+ x + ···
2! k!

1.2 Utilizando expansão em série de Taylor de y ′ (xn+1 ) e comparando com a expansão de


y(xn+1 ) deduza que:
h h3
y(xn+1 ) = y(xn ) + [f (xn , y(xn )) + f (xn+1 , y(xn+1 ))] − y ′′′ (ξ).
2 12
1.3 As relações (1.6-1.10) são casos especiais das expansões do exercı́cio (1.1), prove-as.
1.4 Deduzir a partir da expansão em série de Taylor de y(x), fórmulas de ordem 1 e de
ordem 2 para aproximar as derivadas y (3) (x) e y (4) (x).
1.5 Mostrar, usando a equação teste y ′ = λy, que a regra do ponto médio é instável.
1.6 a. Construa o método de maior ordem possı́vel da forma:
a1 yi+1 + a2 yi + a3 yi−1 + a4 yi−2 = f (xi , yi )
para solução de um PVI.
1.5. EXERCÍCIOS 39

b. Mostre que esse método não é convergente.


1.7 Utilizando MATLAB resolva o PVI abaixo pelo método do ponto médio, Euler explı́cito,
implı́cito e regra dos trapézios, no intervalo [0, 2], usando h = 0.1.
y ′ = 5y − 1, y(0) = 1.2.
Explique o comportamento de cada um desses métodos à luz das propriedades discutidas
neste capı́tulo. Solução exata: y(x) = exp(5x) + 0.2.
1.8 Mostre por indução sobre n que |en | ≤ ξn onde ξn é a solução da equação (1.19), com
ξ0 = |e0 |. Prove que (1.20) é realmente solução de (1.19), com ξ0 = 0. A solução (1.20) é
válida se e somente se A e B forem constantes, no entanto tomamos n → ∞ em (1.21) o
que certamente faz com que h → 0 e portanto A e B não são constantes. Como explicar
então a passagem ao limite em (1.21)?
1.9 Deduza a fórmula (1.28).
1.10 Mostre que o método (1.30) é zero-estável mas não é consistente e que o método
(1.31) é consistente para todo valor de a; zero-estável e de ordem 2 se a = 0 e zero-instável
e de ordem 3 se a = −5. (Veja [20] página 41). Mostre que o método de Simpson não é
estável.
1.11 a. Seja o problema de valor de fronteira de segunda ordem definido no intervalo
[a, b]:
y ′′ − q(x)y = r(x) y(a) = y(b) = 0
Determinar os parâmetros α2 , α1 , α0 de modo que o método numérico:
yi+1 − 2yi + yi−1
− [α2 q(xi+1 )yi+1 + α1 q(xi )yi + α0 q(xi−1 )yi−1 ] =
h2

α2 r(xi+1 ) + α1 r(xi ) + α0 r(xi−1 ), i = 1, 2, . . . , N


b−a
com y0 = yN +1 = 0, e h = N +1 , seja de ordem 4.

b. Se q(x) > Q∗ > 0 mostre que a expressão

h4 (2M + 5N + 5R)
720Q∗
é um limitante superior para o erro global do método em (a) onde M e R são limitantes
superiores para a derivada de ordem 6 de y e derivada de ordem 4 de r respectivamente
e N é um limitante superior para a derivada de ordem 4 da função q(x)y(x).
1.12 Encontre a solução geral para a equação de diferenças
yn+2 − yn+1 + 4yn = 2n.
Sugestão: Existe uma solução particular da forma an + b.
40 CAPÍTULO 1. CONCEITOS FUNDAMENTAIS

1.13 Considere o seguinte PVF definido no intervalo [a, b]:

y ′′ (x) − p(x)y ′ (x) − q(x)y(x) = r(x), y ′ (a) + γy(a) = 0 y ′ (b) + ζy(b) = 0

Derivar um método numérico de segunda ordem para aproximar esse problema. Montar o
sistema linear resultante.

1.14 Construa um método de segunda ordem para resolver o seguinte PVF:

y ′′ + xy ′ + y = 2x y(0) = 1, y(1) = 0.

Tomando h = 0.1 construa o sistema linear associado e resolva-o por eliminação de Gauss.

1.15 Deduza a expressão (1.42) para o erro de truncamento local.

1.16 Construa o método de Numerov, mostre que esse método é de fato de O(h4 ) e construa
seu erro de truncamento local.

1.17 Prove que o método


yj+1 − yj−1
yj+1 − 2yj + yj−1 = h2 f (xj , yj , ), j = 1, 2, . . . , N
2h
quando utilizado para aproximar a solução do PVF

y ′′ = f (x, y, y ′ ), y(0) = α, y(1) = β

é de ordem O(h2 ). Calcule seu erro de truncamento local.

1.18 Faça um programa MATLAB para implementar o método de diferenças centrais para
a solução do PVF:

y ′′ − p(x)y ′ − q(x)y = r(x), y(a) = α, y(b) = β.

Prove que se um método é de ordem s então uma estimativa para o valor de s pode ser
obtida de:  
e
ln ehh1
s=  2
ln hh21

onde eh1 e eh2 são os erros globais máximos para os passos h1 e h2 .


Utilizando a estimativa acima, o programa MATLAB que implementa a solução do PVF
e um problema para o qual a solução exata seja conhecida, comprove que de fato esse método
é de ordem 2.
Sugestão: Resolva o problema no intervalo [a, b] para vários valores de h, digamos, h1 , h2 , h3 , · · ·
e depois utilize a estimativa de s para obter uma sequência de aproximações da ordem que
devem aproximar-se de 2.
Dê uma sugestão de como proceder no caso de não conhecermos a solução exata.
1.5. EXERCÍCIOS 41

1.19 Considere o problema de determinar a deflecção de uma viga apoiada nos dois ex-
tremos x = 0 e x = L quando sujeita a uma carga w uniformemente distribuı́da ao longo de
seu comprimento. De acordo com ( [Ames 1992]) a equação que modela essa deflecção é:

∂4y
EI = w − ky
∂x4
onde y é a deflecção da viga, EI é o coeficiente de rigidez e k é um coeficiente relacionado
com a rigidez da fundação. As condições de fronteira são:

∂2y
y = 0 em x = 0 e x = L, = 0 em x = 0 e x = L.
∂x2
yEI
a. Considerando EI = kL4 , ξ = x/L e ψ = wL4 mostre que na forma adimensional a
equação acima transforma-se em:

∂4ψ
=1−ψ
∂ξ 4

∂2ψ
ψ = 0 em ξ = 0 e ξ = 1, = 0 em ξ = 0 e ξ = 1.
∂ξ 2
b. Usando diferenças finitas e MATLAB determine uma aproximação para ψ(ξ), em pon-
tos ξi = i ∗ h ao longo da viga. Use h = 0.1.

1.20 A tensão numa membrana esférica suportada num aro é modelada pelo seguinte PVF:

λ2 x2
y ′′ = − , y(0) = 0, 2y ′ (1) − (1 + ν)y(1) = 0.
8 32y 2
Determine y(1), para ν = 0.3 e λ = 0.991, usando MATLAB e discretização por diferenças
finitas com h = 0.1.

1.21 Um reator tubular isotérmico é constituı́do de um condutor cilı́ndrico, no interior do


qual flui uma mistura de substâncias que reagem quimicamente entre si. Considere a reação
quı́mica isotérmica de primeira ordem A → B, cuja lei de transformação é dada por kC,
onde k é a taxa da reação e C é a concentração da espécie A. Seja agora N a dispersão
axial ao longo do eixo x (ao longo do cilindro), cujo coeficiente de difusão é E, resultando
em um fluxo difusivo descrito pela equação:
dC
N = E(− ).
dx
O balanceamento de fluxo da espécie A entrando e saindo de um volume infinitesimal fornece:
Fluxo total entrando na face esquerda = vC + N
Fluxo total saindo na face direita = N + dN
Razão de desaparecimento da espécie A = kCdx,
42 CAPÍTULO 1. CONCEITOS FUNDAMENTAIS

onde v é a velocidade axial de A. Assumimos que ambos v e k são constantes.


A conservação da espécie A exige que:

(vC + N ) = (vC + d(vC)) + (N + dN ) + kCdx.

Simplificando a expressão acima e substituindo o valor de N , obtém-se:

EC ′′ − vC ′ − kC = 0.

Se a concentração de A na entrada do tubo é C0 , então o fluxo nessa mesma posição será


vC0 , de onde ele é transportado ao longo deste por convecção e difusão, isto é:

vC0 = vC(0) + N (0) = vC(0) − EC ′ (0).


Sendo L o comprimento do tubo, que supõe-se longo o suficiente para que a reação se
complete, a condição de fronteira é obtida assumindo-se que a reação está em equilı́brio; não
há mais variação na concentração C, ou seja, C ′ (L) = 0. Utilizando

y = C/C0 , z = x/L Npe = vL/E R = kL/v,

obtenha a equação e condições de fronteira na forma adimensional. Tomando Npe = 1 e


R = 1 calcule a solução aproximada no intervalo [0, 1], utilizando h = 0.1. Faça o gráfico
de y. Utilizar o MATLAB.

1.22 Considere o problema de encontrar a deflecção de uma viga apoiada nos extremos
com carregamento pontual como na figura 1.3.

y
P

a b

x
L

Figura 1.3: Diagrama da viga com carregamento pontual

A equação diferencial que modela o problema descrito na figura 1.3 é dada por:
Pb
EIy1′′ = L x para x ≤ a
Pb
EIy2′′ = L x − P (x − a) para x ≥ a,

onde y1 e y2 representam as deflecções da viga nos intervalos [0, a] e [a, L] respectivamente.


Como a viga está apoiada nos extremos x = 0 e x = L, temos que as deflecções nesses
pontos devem ser nulas, ou seja, temos as condições de fronteira, y1 (0) = 0 e y2 (L) = 0.
No ponto x = a a deflecção e sua derivada devem ser contı́nuas pois a viga não se rompe
e fisicamente não observa-se a formação de cantos vivos. As condições de fronteira em
1.5. EXERCÍCIOS 43

x = a são então dadas por y1 (a) = y2 (a) e y1′ (a) = y2′ (a). Tomando s = x/L, z1 =
βy1 , z2 = βy2 onde β = EI/(P bL2 ) obtenha as equações e condições de fronteira na
forma adimensional. Obtenha a solução exata desse problema. Utilizando diferenças centrais
derive uma aproximação de ordem 4 para a segunda derivada. Discretize o problema acima
usando a fórmula recém deduzida, para obter um sistema linear com 5 diagonais. Faça
um programa MATLAB para implementar a solução desse problema e resolva-o tomando
β = 1.0 e h = 0.05. Compare seus resultados numéricos com os resultados exatos.
44 CAPÍTULO 1. CONCEITOS FUNDAMENTAIS
Capı́tulo 2

Introdução às Equações


Diferenciais Parciais

2.1 Introdução
Este capı́tulo tem o objetivo de apresentar rapidamente a notação básica e os principais
resultados sobre a teoria das equações diferenciais parciais e geração de malhas, necessários
para a compreensão do material a ser desenvolvido no restante do texto. Não temos a
menor intenção de apresentar material suficiente para o estudo da teoria das equações difer-
enciais parciais muito menos para o estudo de geração de malhas. O leitor interessado em
aprofundar-se nesses assuntos é fortemente encorajado a procurar outras fontes onde eles
são tratados com o rigor necessário. Por exemplo os livros Ockendon [15] e Williams [14]
trazem material suficiente para uma boa visão da teoria clássica das equações diferenciais
parciais, enquanto o livro do Thompson [40] constitui um tratado sobre geração de malhas.
O modelamento matemático de problemas em ciências aplicadas resulta frequentemente
na formulação de uma Equação Diferencial Parcial (EDP), (ou sistema de equações difer-
enciais parciais), que é uma equação envolvendo duas ou mais variáveis independentes
x1 , x2 , . . . , xn e derivadas parciais de uma função real u = u(x1 , x2 , . . . , xn ). A forma mais
geral de uma EDP de ordem k é:
 
∂u ∂u 2 2u ∂k u
ϕ x1 , x2 , . . . , xn , u, ∂x1 , . . . , ∂xn , ∂∂xu2 , ∂x∂1 ∂x 2
, . . . , ∂xk
= 0.
1 n

No caso de um sistema de equações ϕ é uma função vetorial e u um vetor das variáveis


independentes. Por simplicidade, vamos considerar nesta capı́tulo somente equações em
duas variáveis x e y. É bastante comum o caso de problemas práticos importantes onde a
função f é linear nas derivadas de mais alta ordem e nesse caso podemos explicitar essas
derivadas, como no exemplo, para k = 2,

∂2u ∂2u ∂2u


 
∂u ∂u
a 2 +b + c 2 = ϕ x, y, u, ,
∂x ∂x∂y ∂y ∂x ∂y

45
46 CAPÍTULO 2. INTRODUÇÃO ÀS EQUAÇÕES DIFERENCIAIS PARCIAIS

ou em notação mais simples,

L[u] = auxx + buxy + cuyy = ϕ(x, y, u, ux , uy ) (2.1)


2
onde a, b e c são funções de x, y, u, ux e uy apenas, com ux = ∂u ∂ u
∂x , . . . , uxy = ∂x∂y e u(x, y) a
solução da equação (2.1).
Se a ≡ b ≡ c ≡ 0, então a equação (2.1) é de primeira ordem. Quando na equação
(2.1) a, b e c são funções de x, y e u apenas ela é dita quase–linear. Se, em adição, ϕ não
depende de ux e uy , então é dita semi–linear. Será linear se a, b, c e ϕ são funções de x e y
apenas e finalmente, quando não for nenhum dos casos acima será chamada não–linear.
Em geral, uma equação diferencial parcial como (2.1), terá uma famı́lia de soluções. No
entanto, uma equação representando um modelo de um problema fı́sico, terá adicionalmente
condições auxiliares que caracterizam melhor a situação modelada. Essas são as chamadas
condições iniciais e condições de fronteira. As condições de fronteira, especificam o que
acontece no limiar da região de definição, enquanto que as condições iniciais fornecem in-
formações sobre o estado inicial do sistema, ou a partir de onde e com qual valor a solução
vai se propagar. Quando a região é fechada e condições de fronteira são fixadas em todo o
entorno da região, usa-se também a expressão condições de contorno.
Dizemos que os coeficientes, a função ϕ e as condições iniciais e de fronteira são os dados
do problema e que a solução depende continuamente dos dados, se à pequenas perturbações
nos dados, correspondem pequenas mudanças na solução.

Definição 2.1 Um problema é dito bem-posto se ele tem uma única solução que depende
continuamente dos dados iniciais e de fronteira.

Note que se condições auxiliares são prescritas em excesso, pode haver incompatibilidade
entre elas e o problema não terá solução; se, por outro lado, não forem suficientes, o problema
terá muitas soluções. Somente na medida certa, teremos um problema bem posto.
Apresentamos acima a definição matemática de um problema bem posto. Daremos a
seguir uma explicação suscinta do seu significado. Acreditamos que o leitor não terá prob-
lemas com a questão de existência e unicidade de solução. Talvez um conceito que não seja
tão popular é o de dependência contı́nua dos dados. Vamos ilustrar esse conceito através de
um exemplo.
Considere a equação elı́ptica

uxx + uyy = 0 na região R = {(x, y), y > 0}.

com condições iniciais e de fronteira dadas sobre a reta y = 0 por:

sen (nx)
u(x, 0) = , uy (x, 0) = 0,
n
onde n é um inteiro fixo, mas a não ser por isso, arbitrário. Uma solução desse prob-
lema, como pode ser facilmente comprovado por substituição direta da solução na equação
e condições de fronteira, é
sen (nx) cosh(ny)
u(x, y) = .
n
2.2. CLASSIFICAÇÃO 47

Note que u(x, 0) = senn(nx) → 0, quando n → ∞. Já a solução

sen (nx) cosh(ny)


u(x, y) = ,
n
cresce indefinidamente com n, em consequência do termo cosh(ny), que contém um fator
exponencial. Dessa forma à pequenas perturbações nos dados iniciais correspondem enormes
variações na solução, o que implica que esse problema não é bem posto.
Alguns problemas requerem somente condições de fronteira e nesse caso são chamados
problema de valor de fronteira ou em estado de equilı́brio. Se são fixadas condições iniciais
e de fronteira teremos problemas de evolução ou propagação.

2.2 Classificação
A maioria dos problemas práticos classificam-se naturalmente em uma das três categorias:
– problemas de auto-valores.
– problemas de equilı́brio,
– problemas de propagação.
Problemas de auto-valores podem ser entendidos como uma extensão dos problemas de
equilı́brio. Matematicamente, o problema é encontrar uma ou mais constantes λ, e as funções
correspondentes u tais que a equação diferencial

L[u] = λM u

é satisfeita no domı́nio D e as condições

Bi u = λEi u

valem na fronteira de D. Aqui o operador M é em geral um operador que não envolve


derivadas. No caso mais simples do problema de autovalores M = I (identidade). Já os
operadores Bi e Ei representam as condições de fronteira. Novamente no caso mais simples
de condições de fronteira de Dirichlet homogêneas, temos Bi = I e Ei = Θ (operador nulo).
Exemplos tı́picos e clássicos são os problemas de resistência e estabilidade de estruturas,
ressonância de circuitos elétricos e acústicos, etc. Esses tipos de problemas não serão tratados
neste trabalho.
Problemas de equilı́brio são aqueles caracterizados por um estado estacionário (indepen-
dente do tempo) em que a configuração de equilı́brio u num domı́nio D é determinada pela
solução da equação diferencial
L[u] = ϕ
no interior de D, sujeita às condições Bi u = gi sobre a fronteira de D. Frequentemente, o
domı́nio de solução D é fechado e limitado. Exemplos tı́picos e clássicos incluem: pelı́cula de
sabão sobre um anel, distribuição de tensão em estruturas elásticas, distribuição uniforme
de temperatura num corpo, escoamento uniforme de um fluido viscoso, etc.
Problemas de propagação apresentam um comportamento caracterizado por instabilidade
ou transiente (dependência do tempo) que evolue a partir das condições iniciais, e é “guiado”
48 CAPÍTULO 2. INTRODUÇÃO ÀS EQUAÇÕES DIFERENCIAIS PARCIAIS

pelas condições de fronteira quando presentes. Em problemas de propagação pretende-se


predizer o estado subsequente de um sistema dado que ele satisfaz a equação diferencial
L[u] = ϕ
no domı́nio D, que o estado inicial é representado pelo dado inicial Ii u = hi e sobre a
fronteira ele é guiado pelas condições de fronteira Bi u = gi . Exemplos tı́picos e clássicos
incluem a propagação de ondas, a propagação da tensão num sistema elétrico, a propagação
de calor, o aparecimento e evolução de vibrações, etc.
Considerando a equação (2.1), podemos classificar uma EDP da seguinte forma:
- elı́ptica se b2 − 4ac < 0,
- parabólica se b2 − 4ac = 0,
- hiperbólica se b2 − 4ac > 0.
Obviamente que a classificação acima não é exaustiva uma vez que os coeficientes a, b e
c dependem de x e y. A equação pode, portanto, ser de um determinado tipo em uma parte
do domı́nio e de outro tipo em outra, nesse caso chamaremos esse problema de problema do
tipo misto. No entanto, em muitas aplicações reais importantes essa mudança não ocorre,
por exemplo, problemas de equilı́brio são frequentemente do tipo elı́ptico, enquanto proble-
mas de propagação são na maioria das vezes hiperbólicos ou parabólicos. De maneira que
a classificação responde, no mais das vezes, a uma exigência do lado prático das aplicações
em problemas reais, uma vez que problemas elı́pticos têm um comportamento caracterı́stico
distinto daquele dos problemas hiperbólicos ou parabólicos. Matematicamente, essa classi-
ficação é feita tomando-se emprestado a nomenclatura utilizada na classificação das cônicas.
Seja a equação linear de segunda ordem, com coeficientes constantes
auxx + 2buxy + cuyy + dux + euy + f u = g

fazendo uxx = α2 , uyy = β 2 , uxy = αβ, ux = α e uy = β, obtemos o polinômio nas variáveis


α, β.
P (α, β) = aα2 + 2bαβ + cβ 2 + dα + eβ + f
cujo discriminante b2 − ac = 0, < 0 ou > 0 define a cônica P (α, β) como parabólica,
elı́ptica ou hiperbólica.
Note que o tipo da equação é determinado pelas derivadas de mais alta ordem e pode
variar conforme os coeficientes variam. Por exemplo, a equação de Tricomi para escoamento
transônico
uxx + yuyy = 0
tem o polinômio caracterı́stico P (α, β) = α2 + yβ 2 cujo discriminante é:

b2 − ac = −y,
sendo portanto: parabólica para y = 0, elı́ptica para y > 0 e hiperbólica para y < 0.
No caso mais geral uma equação linear de segunda ordem em várias variáveis tem a
forma:
n
X n
X
aij uxi xj + bi uxi + cu = g. (2.2)
i,j=1 i=1
2.2. CLASSIFICAÇÃO 49

Sem perda de generalidade, podemos assumir que aij = aji , uma vez que uxi xj = uxj xi ,
ou seja a matriz dos coeficientes de mais alta ordem é simétrica. Nesse caso a classificação
é baseada nos auto-valores da matriz A = {aij }. (Ver [16], página 4).
Se A tem algum autovalor nulo a equação é parabólica. Se A não tem autovalores nulos
e os seus autovalores são todos positivos ou todos negativos, a equação é elı́ptica. Se A não
tem autovalores nulos, mas tem autovalores positivos e negativos, a equação será hiperbólica.
No caso de sistemas de equações quasi-lineares de primeira ordem em duas variáveis x e
y da forma:
N N
X ∂uj X ∂uj
aij + bij = ci , para i = 1, 2, . . . N
j=1
∂x j=1
∂y

que vetorialmente por ser expresso por:

Aux + Buy = c (2.3)

a classificação é feita, no caso em que B é não singular, escrevendo

P (λ) ≡ det(A − λB)

e considerando o sistema: [16]


• parabólico: se P (λ) = 0 tem somente raı́zes reais com pelo menos uma repetida mas
sem autovetores linearmente independentes.
• elı́ptico: se P (λ) = 0 tem todas as raı́zes complexas.
• hiperbólico: se P (λ) = 0 tem as raı́zes reais e distintas, ou quando repetidas tem
autovetores linearmente independentes.
Novamente, se os coeficientes não são constantes, pode-se ter variação de tipo dependendo
da posição (x, y).
Observação 2.2.1 Quando B = I teremos λ como autovalor de A. No caso (2.3) λ é
autovalor de AB −1 .
Similarmente ao caso de equações ordinárias, uma equação quase-linear de ordem maior
que 1 pode ser facilmente transformada em um sistema de primeira ordem e então a classi-
ficação acima pode ser aplicada, por exemplo:
A equação de segunda ordem (2.1) pode ser escrita na forma vetorial (2.3) fazendo-se a
mudança de variáveis v = ux e w = uy , para obter:

avx + bvy + cwy = f (x, y, u, v, w) e vy − wx = 0.

Essas duas equações podem ser reescritas na forma vetorial como:


       
a 0 vx b c vy f (x, y, u, v, w)
+ = . (2.4)
0 −1 wx 1 0 wy 0
50 CAPÍTULO 2. INTRODUÇÃO ÀS EQUAÇÕES DIFERENCIAIS PARCIAIS

Pondo V = (v, w)T a equação (2.4) pode ser escrita na forma (2.3) com
   
a 0 b c
A= e B=
0 −1 1 0

e portanto P (λ) = det(A − λB) = cλ2 − bλ + a, que resultará numa equação parabólica se
∆ = b2 − 4ac = 0, numa equação elı́ptica se ∆ < 0 e numa equação hiperbólica se ∆ > 0.

Observação 2.2.2 Sistemas nas formas

∂u ∂f (u) ∂G(u) ∂F (u)


+ =0 e + =0
∂x ∂y ∂x ∂y

são chamados, respectivamente, de sistemas na forma de conservação e sistema na forma


de divergente.

É claro que o primeiro é um caso particular do segundo, tomando G(u) = u. Os sistemas


da observação (2.2.2) são sistemas muito importantes na prática, sendo o primeiro muito
utilizado para formulação de métodos para equações hiperbólicas. Para mais informação
vide [23].

2.3 Caracterı́sticas
Apresentamos um estudo bastante simplificado das caracterı́sticas de um sitema hiperbólico.
Esse estudo será apresentado apenas para o sistema de primeira ordem (2.3). O objetivo aqui
é dar uma idéia geométrica do significado das caracterı́sticas. Um estudo tecnicamente mais
detalhado [Courant 1962], [14] mostra que os autovalores λ, raı́zes reais de det(A − λB) = 0,
são direções especiais, chamadas direções caracterı́sticas, ao longo das quais o problema (2.3)
reduz-se a uma equação diferencial ordinária. A equação

dx
= λ(x, y, u)
dy

define essas curvas especiais chamadas curvas caracterı́sticas.


De maneira bastante intuitiva, as curvas caracterı́sticas podem ser interpretadas como
direções preferenciais ao longo das quais informações são transportadas. Com essa inter-
pretação podemos dizer que uma equação elı́ptica não possui direções preferenciais, isto é
todas as direções são igualmente importantes e portanto sua solução depende igualmente
de todos os dados sobre a fronteira dando origem a um problema tipicamente de fronteira.
Já nas equações parabólicas as informações propagam-se em uma direção preferencial e
isto implica que precisamos prescrever uma condição inicial. Nas hiperbólicas a informação
propaga-se em duas direções preferenciais exigindo a prescrição de uma condição inicial e
uma de fronteira. Para o caso da equação (2.1), quando esta for parabólica, as informações
propagam-se em uma direção preferencial e isto significa que precisamos prescrever uma
condição inicial que será transportada de maneira harmoniosa com uma fronteira especifi-
cada; haverá regularização e suavização da solução . Por outro lado se a equação (2.1) for
2.3. CARACTERÍSTICAS 51

hiperbólica as informações propagam-se em duas direções preferenciais causando o trans-


porte de uma condição inicial em duas direções podendo acontecer incompatibilidades nas
fronteiras; não haverá interação harmoniosa e automática com a fronteira. Pode acontecer
que a equação ordinária que define uma famı́lia de curvas caracterı́sticas (um mesmo λ) não
seja continuamente dependente dos dados iniciais. Na prática isto significa que para dois
valores iniciais distintos pode haver cruzamento da curva solução . Se os valores em cada
uma das soluções, no ponto de cruzamento, forem iguais dizemos que os valores iniciais são
compatı́veis. Se forem distintos estaremos produzindo uma descontinuidade na solução da
equação hiperbólica, cuja propagação é conhecida como choque.
Pode ainda ser demonstrado que descontinuidades, tanto da condição inicial como das
suas derivadas são transportadas ao longo das caracterı́sticas, de maneira que a solução
de uma equação hiperbólica pode apresentar este tipo de dificuldade. Dizemos que os op-
eradores elı́ptico ou parabólico têm uma ação de suavização (regularização) das soluções
enquanto o mesmo não ocorre com o operador hiperbólico que, na verdade, pode até dete-
riorar as condições iniciais como no caso dos choques. As equações elı́pticas e parabólicas
possuem soluções suaves não permitindo descontinuidades, quer na solução quer nas suas
derivadas.
Como já dissemos, no choque as informações trazidas separadamente por mais de uma
caracterı́stica, são contraditórias, havendo assim a formação de uma descontinuidade. Isto
é bastante comum na prática e importante em problemas reais. É possı́vel suavizar o efeito
do choque, “parabolizando” a equação hiperbólica, com a adição no modelo, de um termo
artificial multiplicado por ε > 0 (ε pequeno).
É importante notar ainda que, no caso das equações hiperbólicas, a curva Γ sobre a qual
são especificadas as condições iniciais não pode ser uma caracterı́stica (ver [14]).
É possı́vel ainda a utilização das curvas caracterı́sticas φ(x, y) e ψ(x, y) para uma mu-
dança de variáveis ε = φ(x, y), η = ψ(x, y) na equação linear de segunda ordem de maneira
a obtermos as equações lineares canônicas, ou seja,

Parabólica : uεε
Elı́ptica : uεε + uηη
Hiperbólica : uεη ou uεε − uηη ,

donde temos os modelos básicos representados pelas equações:

Parabólica : equação do calor ut − uxx = 0


Elı́ptica : equação de Laplace uxx + uyy = 0 (2.5)
Hiperbólica : equação da onda utt − a2 uxx = 0,

que serão usadas nos próximos capı́tulos, para o estudo da solução numérica das equações
diferenciais parciais por técnicas de diferenças finitas.
Na prática também aparecem problemas em outras dimensões cujos exemplos mais sig-
nificativos são, em duas dimensões espaciais:
equação de advecção ut + aux + buy = 0,
equação do calor ut − uxx − uyy = 0,
equação de Laplace uxx + uyy = 0, (2.6)
equação da onda utt − a2 uxx − b2 uyy = 0.
52 CAPÍTULO 2. INTRODUÇÃO ÀS EQUAÇÕES DIFERENCIAIS PARCIAIS

2.4 Discretização
A aproximação numérica da solução de uma equação a derivadas parciais é obtida pela
transformação do problema contı́nuo num problema discreto finito, exatamente como no caso
das equações ordinárias, brevemente descrito, no primeiro capı́tulo. No caso de equações
parciais o problema tem a dificuldade adicional do número de variáveis independentes ser
maior que 1, isto é, o domı́nio deixa de ser um intervalo e passa a ser uma região do plano
ou do espaço. A transformação acima referida, é realizada tanto na função incógnita e na
equação quanto no domı́nio de solução. No domı́nio ela é obtida pela subdivisão deste em um
conjunto de pontos (discretização), em geral igualmente espaçados, ao qual damos o nome de
malha. A transformação da função incógnita e da equação são obtidas, respectivamente pela
avaliação desta nos pontos da malha e pela aproximação das derivadas por diferenças finitas.
Apresentamos a seguir um exemplo completo do processo de discretização para ilustrar os
conceitos de transformação do domı́nio e da equação.
Exemplo 2.4.1 Seja a equação de difusão:
ut = uxx , 0 ≤ x ≤ 1, t≥0
u(x, 0) = 100 sen πx 0 <x<1
u(0, t) = u(1, t) = 0, t > 0,
2
cuja solução exata é: u(x, t) = 100e−π t sen πx.
Discretizando o intervalo [0, 1] por pontos com espaçamento h = 0.1 e a variável tempo
com espaçamento k = 1/600 = 0.0016667 obtemos uma malha para o domı́nio [0, 1]× [0, 0.5].

t=0.5

2/600
1/600

0.1 0.2 0.8 0.9 1.0 x

Figura 2.1: Representação da malha do exemplo

Por outro lado, discretizando, a função u(x, t) nos pontos dessa malha e aproximando
ut (xi , tj ) e uxx (xi , tj ) por diferenças finitas como em (1.11) e (1.13), obtemos:
k
Ui,j+1 = Ui,j + (Ui+1,j − 2Ui,j + Ui−1,j ), para i = 0, 1, · · · N, j = 0, 1, · · · (2.7)
h2
2.5. DOMÍNIOS GENÉRICOS E TRANSFORMAÇÃO DE VARIÁVEIS 53

onde Ui,j é uma aproximação para u(xi , tj ). Das condições iniciais temos que:
U0,0 = 0, U1,0 = 100 sen 0.1π = 30.901699, · · · , U10,0 = 100 sen 1.0π = 0.
Das condições de fronteira obtemos:
U0,j = UN,j = 0, para j = 0, 1, · · ·
A equação de diferenças finitas (2.7), juntamente com as condições de fronteira pode ser
resolvida para cada j e i = 1, 2, · · · , N − 1. Assim procedendo obtemos as seguintes aprox-
imações para u(xi , 0.5) = u(xi , 300 ∗ k) = Ui,300 , i = 1, 2, · · · , N − 1.
(x, y) Aproximada Exata
(0.0, 0.5) 0.0 0.0
(0.1, 0.5) 0.222262 0.222242
(0.2, 0.5) 0.422767 0.422730
(0.3, 0.5) 0.581889 0.581838
(0.4, 0.5) 0.684051 0.683992
(0.5, 0.5) 0.719254 0.719192
(0.6, 0.5) 0.684051 0.683992
(0.7, 0.5) 0.581889 0.581838
(0.8, 0.5) 0.422767 0.422730
(0.9, 0.5) 0.222262 0.222243
(1.0, 0.5) 0.0 0.0

Como podemos observar da tabela acima, esse método numérico é bastante eficiente
na tarefa de aproximar a solução teórica, apesar de sua simplicidade. Esse fato encoraja o
estudo de outras técnicas mais elaboradas, pois se com uma aproximação tão simples e óbvia
pode-se produzir resultados tão bons é de se esperar que com um pouco mais de empenho
seja possı́vel melhorá-los. Este de fato é o caso, como teremos oportunidade de discutir nos
capı́tulos a seguir.
Antes de prosseguirmos com o estudo de novos métodos vamos comentar brevemente
que os conceitos de Estabilidade, Consistência e Convergência, já introduzidos no primeiro
capı́tulo no contexto da solução numérica de equações diferenciais ordinárias, são essencial-
mente os mesmos com as devidas adaptações que levem em conta as dimensões do prob-
lema. Esses conceitos serão melhor trabalhados dentro de cada classe de equação estudada
nos capı́tulos subsequentes. Como é usual, esses conceitos servirão de parâmetro para com-
paração e avaliação de novos métodos numéricos. Novamente, em linha com a teoria dos
métodos numéricos para equações ordinárias temos a equivalência “Consistência + Esta-
bilidade = Convergência”, que é conhecido como Teorema de Equivalência de Lax; ver por
exemplo ( [Cryer 1983]).
Na próxima seção discutiremos um pouco mais detalhadamente a questão da aproximação
do domı́nio, já que nos capı́tulos subsequentes, dedicados especificamente a cada uma das
classes de equações, discutiremos longamente a discretização da equação.

2.5 Domı́nios Genéricos e Transformação de Variáveis


Na maioria das vezes o modelo matemático de um problema prático é construı́do para
o sistema cartesiano de coordenadas. Para o problema discreto derivado desse modelo,
54 CAPÍTULO 2. INTRODUÇÃO ÀS EQUAÇÕES DIFERENCIAIS PARCIAIS

recomenda-se a utilização desse mesmo sistema desde que a geometria do domı́nio não
imponha dificuldades ou apresente aspectos simplificadores, como por exemplo simetrias.
Entretanto, existem situações em que a geometria do domı́nio sugere a utilização de uma
malha não cartesiana. É o caso, por exemplo, quando desejamos calcular a distribuição
de calor num disco circular; a malha mais adequada é dada em coordenadas polares. Na
prática, as vezes tem-se sistemas construı́dos para reproduzir, ou que melhor se ajustam à
geometria do problema em estudo, é o caso por exemplo do escoamento de gás pelo bocal
de uma turbina, ver figura 2.2

Figura 2.2: Malha do sitema ξ, η

No caso de domı́nios irregulares outras dificuldades são introduzidas, pois raramente,


nesse caso, um ponto da malha retangular situa-se exatamente sobre a fronteira; em geral é
preciso o uso de interpolações, em pontos junto à fronteira. Vamos apresentar três exemplos,
de maneira bastante sumarizada, para ilustração da técnica que transforma as variáveis para
um novo sistema, com consequente mudanças na equação em questão. No novo sistema
de variáveis, a aproximação por diferenças se faz de maneira similar aos casos anteriores.
Mais informações podem ser encontradas em [17]. Exemplos de diferentes domı́nios e suas
respectivas malhas são apresentados na figura 2.3.

(a) malha retangular (b) malha circular (c) malha inclinada (d) malha triangular

Figura 2.3: Diferentes domı́nios e respectivas malhas


2.5. DOMÍNIOS GENÉRICOS E TRANSFORMAÇÃO DE VARIÁVEIS 55

2.5.1 Transformação de Coordenadas Cartesianas em Polares


Esse tipo de transformação de coordenadas é útil quando o domı́nio apresenta algum tipo
de simetria circular. Por exemplo quando o domı́nio for um disco de raio a ou parte dele.
A transformação de coordenadas cartesianas para polares transforma um disco no plano
cartesiano em um retângulo no plano polar, e portanto uma discretização desse retângulo
pode ser facilmente realizada com uma malha retângular como aquela da figura 2.1. Se
por um lado a transformação simplifica a discretização do domı́nio por outro ela complica
a equação diferencial, que deve ser reescrita no novo sistema de coordenadas. Para o caso
bi-dimensional de uma equação de segunda ordem, precisamos das derivadas parciais de u
na forma polar, até segunda ordem. Ilustramos na figura 2.4 como cada ponto de uma curva
ω(x, y) no plano cartesiano pode ser expresso em função do raio r e do ângulo θ.

y (r, θ )

ω (x,y)
r

θ
ω x x

Figura 2.4: Representação de uma função nos sistemas cartesiano e polar

A função u(x, y), no novo sistema passa a ser u(r, θ), onde r = r(x, y) e θ = θ(x, y).
No caso de coordenadas polares

x = r cos θ e y = r sen θ

donde
y
r2 = x2 + y 2
e θ = arctan .
x
Podemos então ilustrar a transformação do disco no retângulo, com a respectiva trans-
formação de uma malha polar em uma cartesiana como na figura 2.5.

y Θ

−1 1 x 1 r

−π

Figura 2.5: Tranformação do disco no quadrado por coordenadas polares


56 CAPÍTULO 2. INTRODUÇÃO ÀS EQUAÇÕES DIFERENCIAIS PARCIAIS

Utilizando a regra da cadeia podemos obter as derivadas de u com relação a x e y como


função do novo sistema de coordenadas. Acompanhe o desenvolvimento abaixo:
∂u ∂u ∂r ∂u ∂θ ∂u ∂u ∂r ∂u ∂θ
= + e = + . (2.8)
∂x ∂r ∂x ∂θ ∂x ∂y ∂r ∂y ∂θ ∂y
Derivando r em relação a x e y obtemos:
∂r ∂r x
2r = 2x ⇒ = = cos θ
∂x ∂x r
∂r ∂r y
2r = 2y ⇒ = = sen θ
∂y ∂y r
e derivando θ também em relação a x e y obtemos:

∂θ −y/x2 −y 1
= = 2 = − sen θ
∂x 1 + (y/x)2 x + y2 r
e
∂θ 1/x x 1
= = 2 = cos θ.
∂y 1 + (y/x)2 x + y2 r
Substituindo em (2.8) determina-se as derivadas parciais de u com relação a x e y na forma
polar:
∂u ∂u 1 ∂u
= cos θ − cos θ (2.9)
∂x ∂r r ∂θ
∂u ∂u 1 ∂u
= sen θ + cos θ . (2.10)
∂y ∂r r ∂θ
As derivadas parciais de ordem 2 são determinadas usando-se (2.9-2.10) e a regra da
cadeia. Após uma quantidade considerável de cálculos obtém-se:

∂2u
   
∂ ∂u 1 ∂ ∂u
= cos θ − sen θ
∂x2 ∂r ∂x r ∂θ ∂x
2 2 2
∂ u sen θ ∂ u sen θ cos θ ∂ 2 u
= cos2 θ 2 + 2 2
−2
∂r r ∂θ r ∂r∂θ
sen 2 θ ∂u sen θ cos θ ∂u
+ +2 ;
r ∂r r2 ∂θ

∂2u ∂ 2 u cos2 θ ∂ 2 u sen θ cos θ ∂ 2 u


= sen 2 θ + + 2
∂y 2 ∂r2 r2 ∂θ2 r ∂r∂θ
2
cos θ ∂u sen θ cos θ ∂u
+ −2 ;
r ∂r r2 ∂θ
e
2.5. DOMÍNIOS GENÉRICOS E TRANSFORMAÇÃO DE VARIÁVEIS 57

∂ 2u ∂2u sen θ cos θ ∂ 2 u cos2 θ − sen 2 θ ∂ 2 u


= sen θ cos θ + +
∂x∂y ∂r2 r2 ∂θ2 r ∂r∂θ
sen θ cos θ ∂u sen 2 θ − cos2 θ ∂u
− + .
r ∂r r2 ∂θ

Exemplo 2.5.1 Transformar a Equação de Laplace em coordenadas cartesianas


∂2u ∂2u
+ 2 = 0,
∂x2 ∂y
para sua forma equivalente em coordenadas polares.
∂2u ∂2u
Solução: Substituindo as expressões para as derivadas ∂x2 e ∂y 2 obtidas acima, na equação
de Laplace obtemos:
∂2u ∂2u ∂2u sen 2 θ + cos2 θ ∂ 2 u sen 2 θ + cos2 θ ∂u
0= + 2 = (cos2 θ + sen 2 θ) + +
∂x2 ∂y ∂r 2 r 2 ∂θ 2 r ∂r
∂2u 1 ∂ 2 u 1 ∂u
= + 2 2 + ,
∂r2 r ∂θ r ∂r
que é a equação de Laplace em coordenadas polares.
Agora, se Ui,j representa uma aproximação para u(ri , θj ) a equação
∂ 2u 1 ∂ 2 u 1 ∂u
+ + =0
∂r2 r2 ∂θ2 r ∂r
pode ser discretizada normalmente nesse novo sistema, com ordem O(h2 + k 2 ), onde k 2 =
(δθ)2 , como
Ui+1,j − 2Ui,j + Ui−1,j 1 Ui,j+1 − 2Ui,j + Ui,j−1 1 Ui+1,j − Ui−1,j
2
+ 2 2
+ = 0,
h (ih) k ih 2h
onde h e k são respectivamente, os espaçamentos nos eixos r e θ e ri = i ∗ h, como ilustrado
na figura 2.6.

2.5.2 Transformação de Coordenadas Cartesianas em Oblı́quas


Um outro sistema relativamente comum e útil de transformação de coordenadas é o
sistema de coordenadas oblı́quas. Aqui u(x, y) se transforma em u(q, r), com θ um ângulo
fixo, como ilustrado na figura 2.7.
Temos assim,
x = q + r cos θ
y = r sen θ.
58 CAPÍTULO 2. INTRODUÇÃO ÀS EQUAÇÕES DIFERENCIAIS PARCIAIS

δθ

ij

h i

Figura 2.6: Malha para discretização da equação de Laplace em coordenadas


polares

y
(q,r)
ω (x,y)
r

θ
q
ω x x ,q

Figura 2.7: Representação de uma função em coordenadas cartersianas e oblı́quas

Vamos abordar este problema de uma maneira um pouco diferente: ao invés de encon-
trarmos as derivadas parciais no sistema cartesiano, as determinaremos, primeiro, no sistema
de coordenadas oblı́quas. Isto é,

∂u ∂u ∂x ∂u ∂y
= +
∂r ∂x ∂r ∂y ∂r
∂u ∂u ∂x ∂u ∂y
= + .
∂q ∂x ∂q ∂y ∂q

Mas

∂x ∂x ∂y ∂y
= cos θ, = 1, = sen θ e = 0.
∂r ∂q ∂r ∂q
2.5. DOMÍNIOS GENÉRICOS E TRANSFORMAÇÃO DE VARIÁVEIS 59

Por substituição,

∂u ∂u ∂2u ∂2u
= ⇒ = ,
∂q ∂x ∂q 2 ∂x2
∂u ∂u ∂u
= cos θ + sen θ
∂r ∂x ∂y
∂2u ∂ 2
u ∂2u ∂2u
= cos2 θ 2 + 2 sen θ cos θ + sen 2 θ 2 .
∂r2 ∂x ∂x∂y ∂y
e
∂2u ∂2u ∂2u
= cos θ 2 + sen θ .
∂q∂r ∂x ∂x∂y
Note que:
! !
∂u   ∂u
∂q 1 0 ∂x
= ∂u
∂u cos θ sen θ ∂y
∂r

e
∂2u ∂2u
   
1 0 0
!
∂q2 ∂x2
∂2u ∂2u

 ∂q∂r =
 cos θ sen θ 0 
 ∂x∂y .

(2.11)
∂2u cos2 θ 2 sen θ cos θ sen 2 θ ∂2u
∂r 2 ∂y 2

∂2u ∂2u ∂2u ∂2u ∂2u ∂2u


Podemos determinar 2
, e 2
, em termos de 2
, e , resolvendo o
∂x ∂x∂y ∂y ∂q ∂q∂r ∂r2
sistema (2.11) por substituição direta.
Exemplo 2.5.2 Transformar a equação de Laplace

∂2u ∂2u
+ 2 = 0,
∂x2 ∂y
do sistema cartesiano para o sistema de coordenadas oblı́quas usando θ = 45o .
Solução: Fazendo θ = 45o no sistema acima, obtém-se:
 2    ∂2 u

∂ u
∂q2 1 0 0 ∂x2
 ∂ 2 u   √2 √2 ∂2 u
 ∂q∂r  = 0  .
 
2 2 ∂x∂y
1 1 ∂2 u
2
∂ u
2 1 2
2 ∂r ∂y 2

Portanto
∂2u ∂2u
=
∂x2 ∂q 2
60 CAPÍTULO 2. INTRODUÇÃO ÀS EQUAÇÕES DIFERENCIAIS PARCIAIS

∂2u ∂2u √ ∂2u


= + 2
∂x∂y ∂q 2 ∂q∂r
e
∂2u ∂2u √ ∂2u ∂2u
= −2 2 + 2.
∂y 2 ∂q 2 ∂q∂r ∂r
Assim
∂2u ∂2u ∂2u √ ∂2u ∂2u
+ 2 = − 2 + 2 =0
∂x2 ∂y ∂r 2 ∂q∂r ∂q
que é a Equação de Laplace no sistema de coordenadas oblı́quas com θ = 45o .
2
∂ u
Note que a discretização nesse caso, exige também uma aproximação para ∂q∂r . Para
mantermos ordem 2, é preciso utilizar diferença central em q e em r; assim teremos O(h2 +k 2 )
com h = δr e k = δq.
Se Ui,j representa uma aproximação para u(qi , rj ), temos:

∂2u
 
∂ Ui+1,j − Ui−1,j
 
∂ ∂u
= =
∂r∂q ∂r ∂q ∂r 2h
 
1 Ui+1,j+1 − Ui−1,j+1 − Ui+1,j−1 + Ui−1,j−1
= .
2h 2k

Portanto a discretização da equação de Laplace em coordenadas oblı́quas, para θ = 450


e com ordem O(h2 + k 2 ) é dada por:

Ui+1,j − 2Ui,j + Ui−1,j 2
2
− (Ui+1,j+1 − Ui−1,j+1 − Ui+1,j−1 + Ui−1,j−1 )
h 4hk
Ui,j+1 − 2Ui,j + Ui,j−1
+ = 0.
k2

A presença da derivada mista exige que um número maior de pontos da malha este-
jam envolvidos nessa discretização. Serão necessários 9 pontos no lugar da já conhecida
discretização de 5 pontos. Observe atentamente a figura 2.8.

2.5.3 Transformação de Coordenadas Cartesianas em Triangulares


Este sistema de coordenadas é muito útil, nos permitindo tratar com mais facilidade
problemas que envolvem regiões irregulares. Aqui u(x, y) se transforma em u(q, r, s), com θ
e β ângulos fixos, de conformidade com a figura 2.9 e as relações abaixo.
Da figura 2.9 vemos que:

x = q + r cos θ + s cos β,
y = r sen θ + s sen β.
2.5. DOMÍNIOS GENÉRICOS E TRANSFORMAÇÃO DE VARIÁVEIS 61

δr

i,j

δq q

Figura 2.8: Malha para a discretização da equação de Laplace em coordenadas


oblı́quas

s
y
r
ω (x,y)
(q,v)=(q,(r,s))
y

v
β

θ
ω q x x,q

Figura 2.9: Representação de uma função nos sistemas cartesiano e triangular

e notemos que x e y são expressos em termos de três variáveis. Portanto, por substituição:
∂u ∂u ∂x ∂u ∂y ∂u
= + = ,
∂q ∂x ∂q ∂y ∂q ∂x
∂u ∂u ∂x ∂u ∂y ∂u ∂u
= + = cos θ + sen θ ,
∂r ∂x ∂r ∂y ∂r ∂x ∂y
∂u ∂u ∂x ∂u ∂y ∂u ∂u
= + = cos β + sen β .
∂s ∂x ∂s ∂y ∂s ∂x ∂y
As segundas derivadas parciais, calculadas como fizemos nas secções anteriores, são dadas
por:
∂2u ∂2u
= ,
∂q 2 ∂x2
∂2u ∂2u ∂2u ∂2u
= cos2 θ + 2 sen θ cos θ + sen 2 θ 2 ,
∂r2 ∂x 2 ∂x∂y ∂y
∂2u ∂ 2
u ∂ 2
u ∂ 2u
= cos2 β 2 + 2 sen β cos β + sen 2 β 2 .
∂s2 ∂x ∂x∂y ∂y
62 CAPÍTULO 2. INTRODUÇÃO ÀS EQUAÇÕES DIFERENCIAIS PARCIAIS

Na forma matricial:
∂2 u
 2   
∂ u 
∂q2 1 0 0 ∂x2
∂2 u
∂2u = cos2 θ 2 sen θ cos θ sen 2 θ   . (2.12)
    
 ∂r 2 ∂x∂y
∂2u cos2 β 2 sen β cos β 2
sen β ∂2 u
∂s2 ∂y 2

∂2u
Resolvendo o sistema (2.12), já que θ e β são dados, determinamos os valores de e
∂x2
∂2u ∂2u ∂2u ∂2u
em termos de , e , restando somente substituı́-los na Equação de Laplace
∂y 2 ∂q 2 ∂r2 ∂s2
em coordenadas cartesianas para obtermos a Equação de Laplace em coordenadas triangu-
lares. Para θ = 600 e β = 1200 a equação de Laplace torna-se:

∂2u ∂2u ∂2u ∂2u ∂2u


 
2
+ 2 = + 2 + 2 = 0.
∂x2 ∂y 3 ∂r2 ∂q ∂s

A discretização por diferenças centradas em cada direção fica então:



2 Ui+1,j,k − 2Ui,j,k + Ui−1,j,k Ui,j+1,k − 2Ui,j,k + Ui,j−1,k
+
3 δq 2 δr2

Ui,j,k+1 − 2Ui,j,k + Ui,j,k−1
+ = 0. (2.13)
δs2

A molécula de cálculo com 7 pontos está representada na figura 2.10.

r
s

i,j,k

δr δs
δq q

Figura 2.10: Malha para discretização da equação de Laplace em coordenadas


triangulares

2.6 Exercı́cios
2.6. EXERCÍCIOS 63

2
P∞ π 2 at
2.1 Mostre que u(x, t) = n=1 cn exp(− n l2 ) sen ( nπx
l ) é solução do problema:

ut + auxx = 0, 0 < x < l, t > 0


u(x, 0) = f (x), 0 < x < l
u(0, t) = u(l, t) = 0, t > 0

onde os coeficientes cn são dados por:


l
2 nπx
Z
cn = f (x) sen ( )dx.
l 0 l

2.2 Considere o problema:

uxx + uyy = 0 − ∞ < x < ∞, y > 0


u(x, 0) = 0 −∞<x<∞
sen (nx)
uy (x, 0) = −∞<x<∞
n
senh(ny) sen (nx)
cuja solução é u(x, y) = . Mostre que este não constitui um problema bem
n2
posto uma vez que a solução não depende continuamente dos dados iniciais.
Sugestão: Considere o problema com todas as condições de fronteiras nulas que obviamente
tem como solução a função nula. Compare agora as soluções e condições de fronteira.

2.3 Prove utilizando o teorema da divergência que o problema de Neumann

∇2 u = f em R
∂u
= g em ∂R
∂n
tem solução somente se a condição de consistência:
Z Z
f dR = g d(∂R)
R ∂R

for satisfeita.

2.4 Mostre que a equação de advecção ux + a(x, y)uy = 0 é hiperbólica se a(x, y) 6= 0.

2.5 Mostre que as equações do calor, da onda e de Laplace, são respectivamente, Parabólica,
Hiperbólica e Elı́ptica; ver (2.5).

2.6 Mostre que as equações de Cauchy-Riemann, ux = vy e uy = −vx formam um sistema


Elı́ptico de primeira ordem.
64 CAPÍTULO 2. INTRODUÇÃO ÀS EQUAÇÕES DIFERENCIAIS PARCIAIS

2.7 Considere a equação diferencial de primeira ordem quasi-linear em duas variáveis

aux + buy = c,

onde a, b e c são funções de x, y e u. Se x = x(t) e y = y(t) são funções do parâmetro t,


mostre que a curva caracterı́stica dessa equação é dada por:

dx dy
= a, =b
dt dt
e a solução u satisfaz ao longo dessa curva caracterı́stica a equação diferencial ordinária :

du c dx c dy
= = .
dt a dt b dt
Deduza então que essas equações podem ser reescritas numa forma compacta como:

dx dy du
= = .
a b c
Sugestão: Ver [13].
Utilizando essa técnica encontre a solução da equação:

yux + uy = 2

com condição inicial u(x, 0) dado para x ∈ IR.

2.8 Utilizando as conclusões do exercı́cio (2.7) encontre a solução do problema:

tut + xuux = −tx, u=5 sobre a curva tx = 1, t > 0.



Observamos que a solução é dada por u(x, t) = −1 + 38 − 2tx.

2.9 Mostre que a solução do problema de valor inicial:

ut + a(u)ux = 0, u(x, 0) = u0 (x)

é dada implicitamente por u(x, t) = u0 (x − a(u)t) desde que 1 + u′0 (x − a(u)t)a′ (u)t 6= 0.

2.10 Seja p(x, t) uma função real positiva e continuamente diferenciável. Derivar a parte
principal e classificar de cada uma das equações abaixo.

∇ · (p∇u) + qu = f, ut − ∇ · (p∇u) + qu = f, utt − ∇ · (p∇u) + qu = f

onde ∇ representa o operador gradiente, e · representa o produto escalar. Sugestão: Es-


creva as expressões acima na forma (2.2) e utilize então a classificação para essa classe de
problemas.
2.6. EXERCÍCIOS 65

2.11 Considere o sistema de equações de primeira ordem quase linear,


Aux + Buy = c
como em (2.3). Mostre que se existem uma matriz inversı́vel T e uma matriz diagonal E
tais que
T A = ET B
onde
e1 0 ··· 0
 
 0 e2 ··· 0 
E= .. 
 . 
0 0 ··· en
então o sistema acima pode ser escrito na forma
n
X  
a∗ij ei uj x + uj y = c∗i (2.14)
j=1

α
onde A∗ = T B e c∗ = T c. Escrevendo agora ei = β = cot(θ) cada uma das equações em
(2.14) pode ser reescrita como:
n
X 1 
a∗ij uj x cos(θ) + uj y sen (θ) = c∗i
j=1
β

e portanto conclua que esta equação representa uma equação diferencial ordinária na direção
do vetor (cos(θ), sen (θ)).
Mostre em seguida que a condição para existência das matrizes T e E é que a equação
det(A − λB) = 0 tenha n raı́zes reais e que os autovetores associados a elas forme uma base
do espaço. Observe também que nesse caso as curvas caracterı́sticas são dadas por:
dx
= ei = cot(θi ).
dy

2.12 O escoamento em uma dimensão de um gás ideal isentrópico é descrito pelas equações
de momento, da continuidade e lei dos gases, como a seguir:
ut + uux + ρ−1 px = 0
ρt + ρux + uρx = 0
pρ−γ = α constante > 0, γ > 0
onde u(x, t), p(x, t) e ρ(x, t) são, respectivamente a velocidade, a pressão e a densidade
do sistema. Eliminando a pressão p das duas primeiras equações utilizando a terceira,
escreva esse sistema na forma (2.3) e então mostre, utilizando o exercı́cio (2.11), que elas
formam um sistema hiperbólico. Calcule as equações caracterı́sticas. Mostre, utilizando os
invariantes de Riemann ( [Ames 1972] páginas 81-84) que para γ = 3 as caracterı́sticas são
linhas retas. Calcule as matrizes E e T que o transforma em (2.14).
66 CAPÍTULO 2. INTRODUÇÃO ÀS EQUAÇÕES DIFERENCIAIS PARCIAIS

2.13 O escoamento de água num canal retangular, aberto e levemente inclinado com largura
unitária, profundidade u e velocidade v é descrito pelo sistema de equações de primeira
ordem:
vux + uvx + ut = 0
gux + vvx + vt = g(S0 − Sf )
onde S0 é a inclinação do fundo do canal, Sf é uma medida da resistência do atrito ao
escoamento e g é aceleração da gravidade. Mostre que esse sistema é hiperbólico e determine
suas caracterı́sticas. Escreva-o na forma (2.14) calculando as matrizes E e T . Mostre que
os invariantes de Riemann quando S0 − Sf = 0 (lei de conservação) são v + 2c e v − 2c com
c2 = gu.
2.14 Considere a mudança de coordenadas ξ = ξ(x, y) e η = η(x, y) que transforma o sis-
tema cartesiano num sistema de coordenadas genérico. Mostre que a equação transformada
para o sistema (ξ, η) nos casos
a. ux + auy = 0 é (ξx + aξy ) uξ + (ηx + aηy ) uη = 0
b. ∇2 u = 0 é J 2 (auξξ − 2buξη + cuηη + duξ + euη ) = 0, onde
J = 1/(xξ yη − xη yξ ), a = x2η + yη2 , b = xξ xη + yξ yη , c = x2ξ + yξ2 ,
d = J (xη β − yη α) , e = J (yξ α − xξ β) , α = axξξ − 2bxξη + cxηη ,
β = ayξξ − 2byξη + cyηη .
2.15 Qual o resultado da transformação de coordenadas triangulares se β = 180o, ou β =
θ + 180o?
2.16 Calcular a solução numérica da equação de Laplace que fornece a distribuição de
temperatura numa região triangular como a da figura 2.11. Utilizar a expressão derivada
em (2.13) para construir o sistema linear de acordo com a numeração da figura 2.11 com
δq = δs = δr = 1.

1
o
40o C 2 3
10 C

4 5 6

0o C

Figura 2.11: Malha triangular

2.17 Montar o sistema linear resultante da aplicação da discretização de 5 pontos para a


equação de Laplace com condição de Dirichlet no domı́nio dado pela figura 2.12. Na região
R usa-se a equação em coordenadas cartesianas, e em S usa-se a equação em coordenadas
oblı́quas.
2.6. EXERCÍCIOS 67

5 6 7 8
S
3
1 2 3 4
R
1 4

✕ S
2 ✕

✕ ✕
✕ ✕ ❍ ●

Figura 2.12: Composição de malhas

2.18 Montar o sistema linear resultante da aplicação da discretização de 5 pontos para a


equação de Laplace com condição de Dirichlet no domı́nio dado pela figura 2.12. Os pontos
marcados com “×” na malha refinada devem ser calculados utilizando-se interpolação nos
pontos vizinhos da malha mais grossa. Já para os pontos marcados com “◦” na intersecção
das malhas cartersiana e oblı́qua, a malha da região R é continuada para dentro da região S,
como na figura 2.12, e a equação de diferenças é aplicada para cada um desses pontos, que
são então determinados em função dos pontos marcados com “•”. Os pontos marcados com
“•” são determinados como a média dos 4 pontos vizinhos da malha, e seu valor substituido
na equação relevante.
2.19 Obtenha a transformação do problema representado pela equação de Laplace no domı́nio
da figura 2.13 com as condições de fronteira:
u(x, 0) = 0, a < x < 1, e ux (0, y) = 0, a < y < 1
 
2 2y
u(x, y) = arctan para x2 + y 2 = a2 e u(x, y) = 1 para x2 + y 2 = 1
π 1 − a2
 
2 2y
cuja solução exata é: arctan
π 1 − x2 − y 2
y
1

u=1

u x =1

a u=2/ π arctan(2y/(1-a*a))

u=0
a 1 x

Figura 2.13: Domı́nio para a equação Laplace


68 CAPÍTULO 2. INTRODUÇÃO ÀS EQUAÇÕES DIFERENCIAIS PARCIAIS
Capı́tulo 3

Equações Parabólicas

3.1 Introdução
As equações parabólicas são equações de evolução, ou seja, elas modelam fenômenos que
evoluem (de maneira geral, irreversivelmente) com o tempo, assim uma das variáveis tem
sempre um caráter temporal que a distingue das demais. Esse aspecto serve de motivação
para, no caso bidimensional, usarmos a variável x com sentido espacial e t como variável
evolutiva. Essas variáveis são tratadas distintintamente tanto do ponto de vista teórico
quanto do ponto de vista experimental e também numérico. Esperamos que no material
que segue esta distinção fique bastante clara, pois este é um aspecto muito importante da
classificação das equações nos três tipos clássicos.
Como vimos, se b2 − ac = 0 na equação

auxx + 2buxt + cutt = r(x, t, u, ux , ut ) (3.1)


temos uma equação diferencial parcial parabólica, cuja solução é u(x, t).
Em aplicações, uma forma mais comum de ocorrência de equações parabólicas é:

ut − g(x, t)uxx = r(x, t, u, ux ), a < x < b e 0 < t < T,


u(x, 0) = ψ(x), a≤x≤b (3.2)
u(a, t) = f (t), 0<t<T
u(b, t) = g(t), 0 < t < T.

Teorema 3.1 Se g(x, t) é contı́nua e limitada e r(x, t, u, ux ) é monotonicamente decrescente


em u, então existe uma única solução para (3.2).
Para mais detalhes sobre a teoria geral de equações parabólicas ver Friedman [2] e Bern-
stein [Bernstein 1950].
O modelo fundamental das equações parabólicas é a equação do calor
ut − a(x, t)uxx = r(x, t), a(x, t) > 0, 0 ≤ x ≤ L, 0<t<T (3.3)

69
70 CAPÍTULO 3. EQUAÇÕES PARABÓLICAS

u(x, 0) = ψ(x), 0 ≤ x ≤ L condição inicial



u(0, t) = f (t), 0 < t < T
condições de fronteira.
u(L, t) = g(t), 0 < t < T

É importante lembrar que no caso das equações parabólicas, a solução num ponto interior
depende de toda a condição inicial. Além disso, o operador parabólico regulariza a solução,
ou seja, num ponto interior (t > 0), mesmo que bem próximo da condição inicial (t = 0), a
solução é completamente suave (regular), mesmo que, por exemplo f (0) 6= ψ(0). A mesma
observação é válida próximo de x = L.

Discretização
Para desenvolver algumas técnicas para solução de equações parabólicas vamos usar,
em princı́pio, o modelo da equação do calor, apresentado em (3.3), com a(x, t) constante e
r(x, t) ≡ 0.
Consideremos, então, o problema de Dirichlet
ut = auxx , a > 0, 0 ≤ x ≤ L, 0<t<T (3.4)
u(x, 0) = ψ(x), 0 ≤ x ≤ L
u(0, t) = f (t), 0 < t < T
u(L, t) = g(t), 0 < t < T.
Dividindo o intervalo [0, L], da variável espacial x, em N partes iguais de comprimento
L
h, temos os N + 1 pontos xi = ih, i = 0, 1, . . . , N , onde h = N e, dividindo o intervalo
[0, T ], da variável tempo t, em M partes iguais de comprimento k, temos os M + 1 pontos
T
tj = jk, j = 0, 1, . . . , M , onde k = M . Assim vamos obter uma aproximação da solução nos
pontos (xi , tj ) da malha, como mostra a figura 3.1
Vamos denotar por ui,j a solução exata no ponto (xi , tj ) e por Ui,j o valor aproximado
de ui,j .

3.2 Métodos de Diferenças Finitas


Método Explı́cito
Usando diferenças centradas de segunda ordem na variável espacial para aproximar a
derivada de segunda ordem obtemos:
Ui−1,j − 2Ui,j + Ui+1,j
uxx (xi , tj ) ≃ = δx2 Ui,j (3.5)
h2
e usando agora diferenças progressivas no tempo para aproximar a derivada de primeira
ordem produzimos a aproximação:
Ui,j+1 − Ui,j
ut (xi , tj ) ≃ = ∆t Ui,j .
k
3.2. MÉTODOS DE DIFERENÇAS FINITAS 71

k
f(t) g(t)
h

0 L x
ψ (x)
Figura 3.1: Domı́nio da equação e respectiva malha

Substituindo essas aproximações em (3.4) obtemos a equação aproximada:


 
Ui,j+1 − Ui,j Ui−1,j − 2Ui,j + Ui+1,j
=a , (3.6)
k h2
ou seja,

Ui,j+1 = Ui,j + σ(Ui−1,j − 2Ui,j + Ui+1,j ), (3.7)


2
onde σ = ka/h .
Assim, conhecidos os valores Ui−1,j , Ui,j e Ui+1,j calculamos Ui,j+1 explicitamente, sem
qualquer complicação suplementar (ver figura 3.2):
A molécula computacional é uma tradução gráfica da fórmula (3.7), pois ela estabelece a
relação de dependência existente entre o valor no ponto (i, j + 1) e seus vizinhos. Note que
no caso do método explı́cito o ponto (i, j + 1) depende apenas dos pontos (i − 1, j), (i, j) e
(i + 1, j), todos do nı́vel anterior e daı́ a palavra explı́cito. Observe também na figura 3.2
que, como os valores sobre a linha j = 0 são conhecidos (dados iniciais), é possı́vel calcular
os valores da linha j = 1 a menos do primeiro e do último, mas esses dois valores são dados
exatamente pelas condições de fronteira completando assim o cálculo da linha j = 1. Tendo
a linha j = 1 procedemos de maneira análoga para calcular a linha j = 2 e as sucessivamente.
Ilustraremos essas idéias através de um exemplo.
1
Exemplo 3.2.1 Calcule a primeira linha de soluções da equação abaixo, com σ = 6 e
1
k = 54 .
72 CAPÍTULO 3. EQUAÇÕES PARABÓLICAS

Condições de Fronteira i,j+1

3
2 k
1

1 2 3 i i-1,j i,j i+1,j


h
Condição Inicial

Figura 3.2: Discretização e correspondente molécula computacional do método


explı́cito

ut = uxx , 0 ≤ x ≤ 1, 0 < t < T


u(x, 0) = x(1 − x), 0≤x≤1
(3.8)
u(0, t) = 0, 0<t<T
u(1, t) = 0, 0 < t < T,
cuja solução exata é:

8 X sen (2n + 1)πx
u(x, t) = exp(−((2n + 1)π)3 t). (3.9)
π3 n (2n + 1)3

Solução: Como σ = 16 , a = 1 e k = 54 1
temos que h = 13 e portanto x0 = 0, x1 = 31 , x2 =
2 1 2
3 , x3 = 1 e t0 = 0, t1 = 54 , t2 = 54 , . . .. Da condição inicial vem que:

u00 = u(x0 , t0 ) = u(0, 0) = 0(1 − 0) = 0 = U00 ,


1 1 1 2
u10 = u(x1 , t0 ) = u( , 0) = (1 − ) = = U10 ,
3 3 3 9
2 2 2 2
u20 = u(x2 , t0 ) = u( , 0) = (1 − ) = = U20 ,
3 3 3 9
u30 = u(x3 , t0 ) = u(1, 0) = 1(1 − 1) = 0 = U30 .

Das condições de fronteira deduz-se que:

1
u01 = u(x0 , t1 ) = u(0, ) = 0 = U01 ,
54
1
u31 = u(x3 , t1 ) = u(1, ) = 0 = U31 .
54
3.2. MÉTODOS DE DIFERENÇAS FINITAS 73

Usando o método explı́cito

5
u11 = u(x1 , t1 ) = 0.1861023 ≃ U11 = U10 + σ(U00 − 2U10 + U20 ) = = 0.1851852,
27
5
u21 = u(x2 , t1 ) = 0.1861023 ≃ U21 = U20 + σ(U10 − 2U20 + U30 ) = = 0.1851852.
27

Erro de Truncamento Local


O exemplo (3.2.1) acima mostra claramente que a solução numérica calculada nos pontos
(x1 , t1 ) e (x2 , t1 ) são apenas aproximações para o valor verdadeiro da solução nesses pontos,
mesmo tendo utilizado a solução exata no cálculo dos valores anteriores que entram na
formação de U1,1 e U2,1 . Dessa forma, o erro introduzido no cálculo acima advém única e
exclusivamente da substituição das derivadas por diferenças finitas, ou em última instância
da substituição da equação diferencial pela equação de diferenças. A esse erro chamaremos
de erro de truncamento local, que passaremos a definir precisamente.
Denotando por ui,j = u(xi , tj ) e por τi,j o erro ocorrido no cálculo de Ui,j+1 assumindo
que todos os valores anteriores utilizados nesse cálculo são exatos, e ponderado pelo passo
temporal k, podemos definir,
u(xi , tj+1 ) − Ui,j+1 u(xi , tj+1 ) − (Ui,j + σ(Ui−1,j − 2U i, j + Ui+1,j ))
τi,j = = ,
k k
onde utilizamos a equação de diferenças (3.7) para substituir o valor de Ui,j+1 . Usando
agora a hipótese de que Ui,j = u(xi , tj ), ∀i temos:
u(xi , tj+1 ) − (u(xi , tj ) + σ(u(xi−1 , tj ) − 2u(xi , tj ) + u(xi+1 , tj )))
τi,j = ,
k
que, substituindo o valor de σ pode ser reescrita na forma:
ui,j+1 − ui,j a
= 2 (ui−1,j − 2ui,j + ui+1,j ) + τi,j . (3.10)
k h
Observe que (3.10) tem exatamente a mesma forma de (3.6) a menos do termo do erro de
truncamento local, o que nos permite dizer que o erro de truncamento local é uma medida
de quanto a solução da equação diferencial, discretizada na malha, deixa de satisfazer a
equação de diferenças. Note que a situação inversa, isto é, quanto a solução da equação
de diferenças deixa de satisfazer a diferencial não é possı́vel de ser definida, uma vez que a
primeira sendo uma solução discreta não pode ser diferenciada para substuição na equação
diferencial. Portanto o inverso do erro de truncamento local não pode ser definido.
Uma forma mais prática para o erro de truncamento local pode ser obtida aplicando
expansão em série de Taylor em torno de (xi , yj ).

ui,j+1 = u(x0 + ih, t0 + jk + k)


∂u k2 ∂ 2 u
= u(x0 + ih, t0 + jk) + k (x0 + ih, t0 + jk) + (x0 + ih, t0 + jk) + O(k 3 )
∂t 2 ∂t2
74 CAPÍTULO 3. EQUAÇÕES PARABÓLICAS

ui+1,j = u(x0 + ih + h, t0 + jk)


∂u h2 ∂ 2 u
= u(x0 + ih, t0 + jk) + h (x0 + ih, t0 + jk) + (x0 + ih, t0 + jk)
∂x 2 ∂x2
h3 ∂ 3 u h4 ∂ 4 u
+ (x0 + ih, t0 + jk) + (x0 + ih, t0 + jk) + O(h5 ).
3! ∂x3 4! ∂x4

ui−1,j = u(x0 + ih − h, t0 + jk)


∂u h2 ∂ 2 u
= u(x0 + ih, t0 + jk) − h (x0 + ih, t0 + jk) + (x0 + ih, t0 + jk)
∂x 2 ∂x2
h3 ∂ 3 u h4 ∂ 4 u
− (x0 + ih, t0 + jk) + (x0 + ih, t0 + jk) + O(h5 ).
3! ∂x3 4! ∂x4
Substituindo na equação (3.10), e cancelando os termos comuns obtemos:
k h2
ut + utt + O(k 2 ) = auxx + a uxxxx + O(h3 ) + τi,j .
2 12
Daı́ utilizando a equação diferencial ut = auxx , podemos reescrever o erro de truncamento
local como:
k ah2
τi,j = utt − uxxxx + O(k 2 ) + O(h3 ) = O(k + h2 ). (3.11)
2 12
Assim recordando o estudo de métodos numéricos para equações diferenciais ordinárias
introduzido no primeiro capı́tulo podemos dizer que o método é incondicionalmente consis-
tente de ordem 1. Veja a seção (1.3.1).

Erro Global
Definimos o erro global em um ponto (xi , tj ), por:

ei,j = Ui,j − ui,j ,


isto é, a diferença entre a solução aproximada e a exata no ponto (xi , tj ) da malha. Note que
diferentemente do caso do erro de truncamento local, a definição de erro global não assume
que os valores anteriores utilizados no cálculo de Ui,j são exatos, e portanto o erro global
como o nome sugere, pode conter toda espécie de erro que contamine a solução incluindo o
erro de arredondamento do computador.
Então, da equação (3.7), temos

ei,j+1 = Ui,j+1 − ui,j+1


= Ui,j + σ(Ui−1,j − 2Ui,j + Ui+1,j ) − [ui,j + σ(ui−1,j − 2ui,j + ui+1,j ) + kτi,j ]
= ei,j + σ(ei−1,j − 2ei,j + ei+1,j ) − kτi,j
= σ(ei−1,j + ei+1,j ) + (1 − 2σ)ei,j − kτi,j (3.12)
3.2. MÉTODOS DE DIFERENÇAS FINITAS 75

e, então
|ei,j+1 | ≤ |σ|(|ei−1,j | + |ei+1,j |) + |1 − 2σ||ei,j | + | − k||τi,j |. (3.13)
Fazendo Ej = max{|ep,j |, 0 ≤ p ≤ N }, τj = max{|τp,j |, 0 ≤ p ≤ N }, supondo 1 − 2σ ≥ 0,
(condição de estabilidade) e como σ > 0 podemos reescrever a equação (3.13) como:

|ei,j+1 | ≤ |σ|2Ej + |1 − 2σ|Ej + |k||τi,j | ≤ Ej + k | τi,j |≤ Ej + kτj .


Portanto:

Ej+1 ≤ Ej + kτj (3.14)


Aplicando (3.14) recursivamente para j, j − 1, j − 2, . . . , 1, obtemos a seguinte expressão:
Ej+1 ≤ k(τ0 + τ1 + . . . + τj ) ≤ (j + 1)kτ ≤ T τ
onde τ = max{τi , i = 0, 1, . . . , M } e T = M k é um limitante para o domı́nio na direção do
eixo tempo, ver equação (3.4).
Então, se a condição 1 − 2σ ≥ 0 (estabilidade) é satisfeita e se τ é de ordem pelo menos
h (consistência), Ej+1 → 0 quando k → 0 e portanto o método é convergente no sentido
definido na seção (1.3.1). A desigualdade 1 − 2σ ≥ 0, pode ser reescrita como σ ≤ 21 , que é a
condição para estabilidade do método explı́cito, que será portanto dito ser condicionalmente
estável. Note que na prova de convergência, entraram a condição de consistência e a de
estabilidade. Analogamente ao caso das equações diferenciais ordinárias, consistência e
estabilidade implicaram convergência.
Como pudemos observar a condição de estabilidade foi crucial na prova da convergência.
No entanto nossa definição foi um tanto particular para o caso em análise, e certamente
se esse conceito deve ser aplicado em situações mais gerais uma definição mais precisa e
critérios de mais fácil aplicação prática devem ser deduzidos. A definição de estabilidade
deste contexto segue os mesmos princı́pios da definição de zero-estabilidade da seção (1.3.1)
e não a repetiremos aqui, apenas devemos recordar que estabilidade é uma propriedade
intrinseca da equação de diferenças finitas, e consiste em esta não ter o defeito de amplificar
erros dos passos anteriores. Já com relação aos critérios para determinação da estabilidade,
estudaremos a seguir os dois mais conhecidos o de Von Neumann e o da matriz.

Estabilidade - Critério de von Neumann


Observação 3.2.1 Utilizaremos nesse trabalho a notação I = −1.
Este é um critério simples e muito utilizado para determinar a estabilidade de um método
numérico. Ele é baseado no princı́pio da superposição, ou seja, na observação de que o erro
global é a somatória de erros mais simples também chamados harmônicos. Esse processo é
inspirado na expansão de uma função em série de Fourier. Denotando por Ei , i = 0, 1, . . . N
o erro global em cada ponto ao longo da primeira linha t = 0 permite-nos escrever:
N
X
Ei = an exp(Iαn ih), i = 0, 1, . . . N
n=0
76 CAPÍTULO 3. EQUAÇÕES PARABÓLICAS

onde αn = nπ L e N h = L, que constitue um sistema linear com N + 1 incógnitas an e


N + 1 equações, cuja matriz de coeficientes é não singular, e portanto pode ser resolvido de
maneira única para determinar an . Tendo representado o erro no passo inicial, para analisar
a sua propagação ao longo dos passos subsequentes basta observarmos a propagação de um
harmônico genérico exp(Iβih) exp(λjk), onde β é um número real e λ um número complexo,
ambos arbitrários. Portanto a estratégia do critério de von Neumann para determinação da
estabilidade é a de examinar o resultado da propagação de um dado modo de Fourier em
uma linha ou estágio subsequente j. Se houve amplificação desse harmônico dizemos que
o método é instável, se houve amortecimento ele será estável. Por utilizar o princı́pio de
superposição o critério de von Neumann só deve ser usado quando a equação é linear com
coeficientes constantes e além disso ele ignora completamente a influência das condições
de fronteira sobre o comportamento da solução da equação de diferenças. Geralmente,
a condição de estabilidade deduzida do critério de von Neumann produz uma condição
necessária para a estabilidade, mas não suficiente, uma discussão bastante detalhada desse
problema é apresentada em [32] páginas 117-132, veja também o exercı́cio (3.22).
A seguir ilustramos a aplicação prática do critério de von Neumann utilizando-o para
determinar a estabilidade do método explı́cito. Com esse objetivo vamos admitir então que
exista uma solução da equação de diferenças (3.7) da forma:

Ui,j = eλj eIβi = (eλ )j eIβi (3.15)


e tentamos encontrar λ e β tais que (3.15) seja de fato uma solução de (3.7). Substituimos
(3.15) em (3.7) para obter:

eλ(j+1) eIβi = (1 − 2σ)Ui,j + σ(eλj eIβ(i−1) + eλj eIβ(i+1) ).


Daı́,

eλ Ui,j = (1 − 2σ)Ui,j + σ(e−Iβ Ui,j + eIβ Ui,j ).


Logo, eliminando os termos comuns obtém-se

eλ = (1 − 2σ) + σ(e−Iβ + eIβ )


= (1 − 2σ) + 2σ cos β
= 1 + 2σ(cos β − 1)
β
= 1 − 4σ sen2 .
2

Como σ ≥ 0 então eλ = 1 − 4σ sen2 β2 ≤ 1. Assim, se eλ ≥ 0, de (3.15) a solução da


equação (3.7) decairá uniformente quando j → ∞. No entanto eλ pode ser negativo, uma vez
que λ é complexo, e portanto teremos mais duas situações a considerar: Se −1 ≤ eλ < 0 a
solução terá amplitude decrescente e sinal oscilante quando j → ∞. Finalmente, se eλ < −1
a solução oscila com amplitude crescente quando j → ∞. Neste último caso (3.7) será
instável, enquanto que no caso anterior será estável. Assim, resumindo, para estabilidade
será exigido que:
|eλ | ≤ 1.
3.2. MÉTODOS DE DIFERENÇAS FINITAS 77

Como eλ < 1 sempre, precisamos ainda impor −1 ≤ eλ , ou seja, −1 ≤ 1 − 4σ sen 2 β2 .


Daı́,
1 1
σ≤ ∀β, ou seja, σ ≤ . (3.16)
1 − cos β 2
Note que a condição (3.16) obtida pelo critério de von Neumann para estabilidade do
método explı́cito é exatamente aquela que foi obtida na seção anterior impondo que 1 − 2σ ≥
0.
Com a imposição do limitante sobre σ para estabilidade, o método explı́cito geralmente
produz aproximações satisfatórias. Porém, σ ≤ 12 é uma condição muito restritiva para o
2
tamanho do passo na direção t, pois esta condição significa que k ≤ h2a , e o esforço computa-
cional poderá ser grande se desejarmos calcular a solução para um tempo T razoavelmente
longo.

Estabilidade - Critério da Matriz


Vamos iniciar esta seção observando que a discretização explı́cita da equação (3.4) e
respectivas condições iniciais e de fronteira fornecem a seguinte equação de diferenças:

Ui,j+1 = σUi−1,j + (1 − 2σ)Ui,j + σUi−1,j , i = 1, 2, . . . N − 1, j = 0, 1, . . .


Ui,0 = ψ(ih), i = 0, 1, . . . N
(3.17)
U0,j = f (jk), j = 1, 2, . . .
UN,j = g(jk), j = 1, 2, . . .

Introduzindo a notação vetorial

Uj = (U1,j , U2,j , · · · UN −1,j )T (3.18)

então para cada j a equação (3.17) pode ser escrita na forma matricial:

Uj+1 = AUj + cj , j = 0, 1, . . . (3.19)

onde A é a seguinte matriz (N − 1) × (N − 1)

1 − 2σ σ 0 ... 0
 
 σ 1 − 2σ σ ... 0 

A= .. .. 
(3.20)
. .

 
 0 ... σ 1 − 2σ σ 
0 ... 0 σ 1 − 2σ

e cj é um vetor de (N − 1) componentes contendo informações das condições de fronteira


dado por:
cj = (f (jk), 0, . . . , 0, g(jk))T .
De maneira análoga introduzindo os vetores uj = (u(x1 , tj ), . . . , u(xN −1 , tj ))T , τj =
(τ1,j , . . . , τN −1,j )T e ej = (e1,j , . . . , eN −1,j )T para representarem, respectivamente, a solução
78 CAPÍTULO 3. EQUAÇÕES PARABÓLICAS

exata, o erro de truncamento local e o erro global, e considerando (3.10), podemos escrever
a equação matricial para o erro de truncamento local,
uj+1 = Auj + cj + τj . (3.21)
Subtraindo (3.19) de (3.21) obtemos a equação vetorial para o erro global:
ej+1 = Aej + τj . (3.22)
Aplicando a equação (3.22) recursivamente para j, j − 1, . . . 0 obtemos:
ej+1 = Aj+1 e0 + Aj τ0 + Aj−1 τ1 + · · · + Aτj−1 + τj
= Aj τ0 + Aj−1 τ1 + · · · + Aτj−1 + τj (3.23)
se lembrarmos que e0 = 0 por construção. Vê-se de (3.23) que o erro global é formado pelo
acúmulo dos erros de truncamento local de cada passo propagados pelas potências da matriz
A. Portanto a matriz A tem um papel crucial na propagação desses erros e ela é chamada
de matriz de amplificação. O erro cresce se algum autovalor de A tem módulo maior do
que 1. Se todos são menores do que 1 em módulo, temos o erro decrescendo e portanto
estabilidade. Definimos então:
Definição 3.1 Uma equação de diferenças vetorial da forma
Uj+1 = AUj + cj
é dita estável com relação a alguma norma || · || se e somente se existem constantes h0 > 0,
k0 > 0, K ≥ 0 e β ≥ 0 com:
||An || ≤ K exp(βt),
sempre que 0 ≤ t = nk, 0 < h ≤ h0 e 0 < k ≤ k0 .
Em particular se os autovetores de A são linearmente independentes e se seus autovalores
λi satisfazem |λi | ≤ 1 + O(k), ∀i, então o método será estável. Ver exercı́cio (3.10).
No caso particular da matriz A do método explı́cito (3.20) seus autovalores são dados no
exercı́cio (3.12) e portanto para estabilidade precisamos que:

|λi | = |1 − 4σ sen 2 ( )| ≤ 1 + O(k)
2N
que pode ser facilmente mostrado implicar em σ ≤ 12 , ou seja a mesma condição já obtida
pelos critérios anteriores.
Note que a matriz A de um método numérico geral terá sempre seus elementos depen-
dentes do parâmetro σ, e portanto determinar a estabilidade desse método numérico requer
a determinação dos autovalores de uma matriz de ordem arbitrária N cujos elementos de-
pendem de σ. Esta pode ser uma tarefa bastante difı́cil. Para tanto contamos com alguns
resultados de álgebra linear que nos auxiliam na tarefa de encontrar limitantes para esses
autovalores. Eles são os teoremas de Gerschgorin que aplicam-se para uma matriz A geral
da forma:
a11 a12 · · · a1N
 
 a21 a22 · · · a2N 
A=  ... .. .. ..  .
. . . 
aN 1 aN 2 . . . aN N
3.2. MÉTODOS DE DIFERENÇAS FINITAS 79

PN
Seja di = j=1 |ai,j |, temos então o primeiro teorema:

Teorema 3.2 Seja λ o maior autovalor de A tomado em módulo. Então λ ≤ max1≤i≤N |di |.
Prova: Ver [13] página 87.
O segundo teorema pode ser enunciado como a seguir:
Teorema 3.3 Seja ri = di − |aii |. Então os autovalores de A estão na união dos discos de
centro em |aii | e raio ri .
Prova: Ver [13] páginas 88-89.
Como mostrado em (3.11) o erro de truncamento local do método explı́cito é de ordem
O(k + h2 ). Uma pergunta que surge naturalmente é se podemos obter métodos com ordem
melhor. A resposta é positiva como veremos a seguir.

Melhorando a ordem
Uma tentativa de melhoria da ordem, ainda mantendo a condição de método explı́cito,
pode ser feita incorporando-se mais um ponto à fórmula (3.7), ou seja, usando-se diferença
centrada na variável t. Tem-se então a seguinte equação de diferenças, chamado método de
Richardson, e respectiva molécula computacional

Ui,j+1 − Ui,j−1 Ui+1,j − 2Ui,j + Ui−1,j


=a . (3.24)
2k h2

i,j+1

i,j

i-1,j i+1,j
h

i,j-1

Figura 3.3: Molécula computacional do método de Richardson

e o erro de truncamento local será


k2 h2
τi,j = uttt (xi , η) − uxxxx(ξ, tj ) = O(h2 + k 2 ),
6 12
portanto de ordem 2.
A análise da estabilidade pode ser feita utilizando o critério de von Neumann. Escrevemos
então
Ui,j = eλj eIβi
80 CAPÍTULO 3. EQUAÇÕES PARABÓLICAS

que após substituição em (3.24) e várias simplificações resulta em:


β β 1
λ = −4σ sen 2 ± (1 + 16σ 2 sen 4 ) 2 .
2 2
Teremos sempre uma raiz de módulo maior do que 1, portanto este método é incondicional-
mente instável.
Uma opção para solucionar o problema da instabilidade é substituir o termo Ui,j pela
média dos termos Ui,j+1 e Ui,j−1 , na aproximação de uxx . Vamos obter dessa forma o
método de Du Fort–Frankel
Ui,j+1 − Ui,j−1 Ui+1,j − (Ui,j+1 + Ui,j−1 ) + Ui−1,j
=a , (3.25)
2k h2
cujo erro de truncamento local é dado por:

k2 h2 k2 k4
τi,j = uttt − uxxxx − 2 autt + O(h4 + k 4 + 2 ).
6 12 h h
Agora, se k = rh temos que o método não será consistente, melhor dizendo, o método
será consistente com a equação
ut = auxx − ar2 utt
que é uma equação hiperbólica!
Portanto, para obtermos um método consistente, é preciso restringir k em função de h,
por exemplo k = rh2 e aı́ teremos um método consistente de ordem 2. O método de Du
Fort-Frankel é pois condicionalmente consistente e a condição imposta é bastante restritiva.
Analisando a estabilidade, vemos que, a partir de
Ui,j+1 − Ui,j−1 = 2σ(Ui+1,j − (Ui,j+1 + Ui,j−1 ) + Ui−1,j )
obtém-se
(1 + 2σ)Ui,j+1 − 2σ(Ui+1,j + Ui−1,j ) − (1 − 2σ)Ui,j−1 = 0
e pelo critério de von Neumann, escrevendo:

Ui,j = eλj eIβi


teremos
(1 + 2σ)e2λ − 2eλ σ cos β − (1 − 2σ) = 0,
cujas raı́zes são:
1
2σ cos β ± (1 − 4σ sen 2 β) 2 a ± Ib
γ= = .
1 + 2σ 1 + 2σ
Temos que 1 − 4σ sen 2 β < 1, podendo ser positivo ou negativo.
i) Se negativo:
Teremos raı́zes complexas conjugadas e

(a + Ib)(a − Ib) 4σ 2 − 1
|γ| = = 2 < 1.
1 + 2σ 4σ + 4σ + 1
3.2. MÉTODOS DE DIFERENÇAS FINITAS 81

ii) Se positivo:
1 1+2σ
Então, 0 < (1 − 4σ sen 2 β) 2 < 1 e |2σ cos β| < 2σ , logo |γ| < 2σ+1 = 1.
Portanto o método é incondicionalmente estável.
Este método é um método explı́cito de dois passos, pois exige conhecimento da solução em
2 nı́veis anteriores de tempo para a construção da solução no próximo nı́vel. Diferentemente
dos métodos de um nı́vel, ele só pode ser aplicado para o cálculo da solução a partir do nı́vel
2, exigindo que o primeiro passo seja calculado por meio de outro método.
Este método constitue um exemplo claro do cuidado que se deve ter em relação ao
teorema da equivalência de Lax ilustrando o importante fato de que nem sempre a escolha
da malha (relação entre h e k) é ditada pela condição de estabilidade. No caso do método
de DuFort–Frankel quem impõe a escolha da malha é a consistência e não a estabilidade.
Está implı́cito no teorema de Lax que é preciso verificar não só a condição de estabilidade
mas também a escolha adequada da malha.
Como vimos resolvemos o problema da instabilidade e criamos um outro com a con-
sistência, este será sempre um dilema pois essas duas propriedades estão no mais das vezes
em conflito. Uma maneira de aliviar esse problema é considerar métodos implı́citos, pois
estes têm melhores propriedades de estabilidade, mas como veremos abaixo o custo com-
putacional aumenta consideravelmente.

Método Implı́cito
Uma fórmula implı́cita é aquela em que dois ou mais valores desconhecidos na linha j
são especificados simultaneamente em termos de valores conhecidos das linhas j − 1, j − 2, . . .
(ver figura 3.4). Claramente, não será possı́vel o cálculo direto de Ui,j ; usualmente exigi-se
a solução de um sistema linear.
Aplicando diferenças regressivas do lado esquerdo da equação e diferenças centradas do
lado direito, temos:
 
Ui,j − Ui,j−1 Ui−1,j − 2Ui,j + Ui+1,j
=a (3.26)
k h2
que depois de alguma manipulação algébrica pode ser reescrita na forma:

−σUi−1,j + (1 + 2σ)Ui,j − σUi+1,j = Ui,j−1 para i = 1, 2, . . . , N − 1 e j = 1, 2, . . . (3.27)

A molécula computacional dá-nos uma idéia precisa da relação de dependência entre os


diversos elementos da fórmula.
Observe que (3.27) forma um sistema tridiagonal de equações, e ao resolvê-lo encontramos
todas as aproximações do estágio j. Escrevendo mais detalhadamente, o sistema a ser
resolvido em cada estágio é:

1 + 2σ −σ 0 ... 0 U1j U1,j−1 σU0,j


      
 −σ 1 + 2σ −σ ... 0   U2j   U2,j−1   0 
 .
. .
.
 .
.
 
= .
.
 
+ .. 
. . . . .
  
      
 0 ... −σ 1 + 2σ −σ   U 
N −2,j
 U 
N −2,j−1
 0 
0 ... 0 −σ 1 + 2σ UN −1,j UN −1,j−1 σUN,j
82 CAPÍTULO 3. EQUAÇÕES PARABÓLICAS

i,j

i-1,j i+1,j
h

i,j-1

Figura 3.4: Molécula computacional do método implı́cito

ou na notação vetorial introduzida em (3.18)


AUj = Uj−1 + cj (3.28)
onde cj = (σf (jh), 0, . . . , 0, σg(jh))T , para o caso de condições de fronteira como as de (3.4).
Podemos observar que A é uma matriz (N − 1) × (N − 1) estritamente diagonalmente
dominante e portanto o sistema (3.28) tem solução única. Além disso, a propriedade de
diagonal dominância nos garante que (3.28) pode ser resolvido por qualquer método de
solução de sistemas de equações lineares, como por exemplo, o método de eliminação de
Gauss sem pivotamento, ou um método iterativo.
Exemplo 3.2.2 Calcule a primeira linha de soluções do problema do (3.9).
Solução:
1 1 1
σ= ek= ⇒h=
6 54 3
1 1 2
Com h = temos x0 = 0, x1 = , x2 = , x3 = 1.
3 3 3
1 1 2
Com k = temos t0 = 0, t1 = , t2 = ,....
54 54 54
Usando as aproximações U00 , U10 , U20 , U30 , U01 e U31 , do exemplo (3.9), vamos calcular U11
e U21 .

U10 = −σU01 + (1 + 2σ)U11 − σU21


U20 = −σU11 + (1 + 2σ)U21 − σU31
    
(1 + 2σ) −σ U11 U10 + σU01
= ,
−σ (1 + 2σ) U21 U20 + σU31
    
4/3 −1/6 U11 2/9
= .
−1/6 4/3 U21 2/9
Resolvendo o sistema acima obtemos:
U11 = U21 = 0.1904762.
A solução exata é u11 = u21 = 0.1861023.
3.2. MÉTODOS DE DIFERENÇAS FINITAS 83

Veja que a utilização de um método implı́cito como o acima é de difı́cil justificativa


prática, uma vez que a precisão dos resultados não melhorou na mesma proporção do au-
mento do esforço computacional.
Apresentaremos ainda neste capı́tulo um método implı́cito que apresenta erro de trun-
camento com ordem mais alta. Antes vamos calcular o erro de truncamento do método
implı́cito para justificar os resultados numéricos obtidos no exemplo acima.

Erro de Truncamento Local


O desenvolvimento aqui segue exatamente as mesmas idéias do caso do método explı́cito
e portanto repetiremos somente os passos principais.
Seja τi,j o erro de truncamento ocorrido no cálculo de Ui,j . Então, podemos escrever
ui,j − ui,j−1 a
= 2 (ui−1,j − 2ui,j + ui+1,j ) + τi,j .
k h
Aplicando expansão em série de Taylor em torno de (xi , tj ), obtemos,

k h2
ut − utt + O(k 2 ) = auxx + a uxxxx + O(h4 ) + τi,j .
2 12
Daı́,
k ah2
τi,j = − utt − uxxxx + O(k 2 ) + O(h4 ) = O(k + h2 ). (3.29)
2 12
Concluı́mos que o método é incondicionalmente consistente e de ordem 1. Comparando
as expressões (3.11) e (3.29) observamos que elas diferem apenas no sinal do termo k2 utt
sendo um positivo e outro negativo. Esse fato nos motiva a considerar uma nova aproximação
que é a média entre as aproximações explı́cita e implı́cita, na esperança de que esse termo
desapareça do erro de truncamento local, como de fato ocorre. Essa estratégia dá origem ao
método de Crank-Nicolson que será estudado logo mais adiante.

Erro Global
Segue o mesmo desenvolvimento feito para o método explı́cito.

Estabilidade
Analogamente ao caso do método explı́cito pelo critério de von Neumann escrevemos

Ui,j = eλj eIβi .

Substituindo na equação (3.27) temos o seguinte desenvolvimento:

Ui,j−1 = −σUi−1,j + (1 + 2σ)Ui,j − σUi+1,j ,


λ(j−1) Iβi
e e = −σeλj eIβ(i−1) + (1 + 2σ)Ui,j − σeλj eIβ(i+1)
e−λ Ui,j = −σe−Iβ Ui,j + (1 + 2σ)Ui,j − σeIβ Ui,j
84 CAPÍTULO 3. EQUAÇÕES PARABÓLICAS

e−λ = −σ(e−Iβ + eIβ ) + (1 + 2σ)


= −2σ cos β + 1 + 2σ
= 1 + 2σ(1 − cos β)
β
= 1 + 4σ sen 2 .
2
Daı́,
1
eλ = .
1 + 4σ sen 2 β2
Para a estabilidade, |eλ | ≤ 1. Mas, neste caso |eλ | < 1 para todo σ, ou seja, o método é
incondicionalmente estável. Algumas vezes, esse fato é usado para justificar a utilização de
um método implı́cito, pois sendo esse método incondicionalmente estável, não devemos nos
preocupar com a amplificação de erros e portanto podemos utilizar uma malha menos fina
para obter a solução, minimizando o esforço computacional.
Como nos casos anteriores, a análise da estabilidade pode ser feita também pelo critério
da matriz, aplicado à equação de diferenças,
ej = A−1 ej−1 + A−1 τj ,

de maneira que teremos estabilidade se os autovalores de A−1 estiverem no disco unitário.


Ver exercı́cio (3.13).

Método de Crank-Nicolson
Este é um dos métodos mais utilizados na solução de equações parabólicas. Como no
caso do método do Trapézio para equações diferenciais ordinárias, este método é a “média
aritmética” do explı́cito com o implı́cito. Tomando pois a média entre as expressões (3.7) e
(3.27) obtemos o método de Crank-Nicolson dado por:

σ(Ui−1,j + Ui−1,j+1 − 2(Ui,j + Ui,j+1 ) + Ui+1,j + Ui+1,j+1 )


Ui,j+1 = Ui,j + , (3.30)
2
ou ainda,
Ui,j+1 − Ui,j a
= 2 (Ui−1,j − 2Ui,j + Ui+1,j + Ui−1,j+1 − 2Ui,j+1 + Ui+1,j+1 )
k 2h
cuja molécula computacional é dada pela figura 3.5.
Podemos observar que estas equações formam o seguinte sistema linear tridiagonal
AUj+1 = BUj + cj que é diagonalmente dominante.

2 + 2σ −σ 0 ... 0 U1,j+1
  
 −σ 2 + 2σ −σ ... 0   U2,j+1 
 .
.. .
..
 .. 
=
.
 
  
 0 ... −σ 2 + 2σ −σ   UN −2,j+1 
0 ... 0 −σ 2 + 2σ UN −1,j+1
3.2. MÉTODOS DE DIFERENÇAS FINITAS 85

i-1,j+1 i,j+1 i+1,j+1

h h
i-1,j i,j i+1,j

Figura 3.5: Molécula computacional do método de Crank-Nicolson

2 − 2σ σ 0 ... 0 U1,j σU0,j+1


    
 σ 2 − 2σ σ ... 0  U2,j   0 
 .. ..  ..  
+ .. 
. . . .
  
    
 0 ... σ 2 − 2σ σ  UN −2,j   0 
0 ... 0 σ 2 − 2σ UN −1,j σUN,j+1
ou utilizando notação vetorial podemos escrever:
AUj+1 = BUj + cj . (3.31)
Para se obter a solução em cada estágio, é preciso resolver um sistema tridiagonal. Note
que, sendo A diagonalmente dominante, o problema discreto tem solução única.

Erro de Truncamento Local


Analogamente às definições de erro de truncamento local dos demais métodos, definimos
τi,j por:
ui,j+1 − ui,j a
= 2 (ui−1,j − 2ui,j + ui+1,j + ui−1,j+1 − 2ui,j+1 + ui+1,j+1 ) + τi,j .
k 2h
Expandindo em série de Taylor em torno do ponto (xi , tj+ 21 k ), obtemos:
 2
ui,j+1 − ui,j k 1
= ut + uttt + O(k 4 )
k 2 6

h4
ui−1,j − 2ui,j + ui+1,j = h2 uxx + uxxxx + O(h6 )
12

h4 h2 k 2 h4 k 2
ui−1,j+1 − 2ui,j+1 + ui+1,j+1 = h2 uxx + uxxxx uxxtt + uxxxxtt + O(h6 ).
12 8 96
Logo,
k2 ah2 ak 2 h2 k 2
τi,j = uttt − uxxxx − uxxtt − a uxxxxtt + O(h4 ) + O(k 4 ) = O(h2 + k 2 ),
24 12 8 96
e o método é consistente de ordem 2.
86 CAPÍTULO 3. EQUAÇÕES PARABÓLICAS

Estabilidade
A análise da estabilidade segue o mesmo raciocı́nio desenvolvido para o método explı́cito.
Substituindo (3.15) em (3.30) obtemos:

1 − 2σ sen 2 β2
eλ = , (3.32)
1 + 2σ sen 2 β2
e concluı́mos que o método é incondicionalmente estável, pois |eλ | é sempre menor do que
1.
É possı́vel provar que o erro global satisfaz a equação vetorial Aej = Bej−1 + τj e
como A é inversı́vel, tem-se estabilidade se todos os autovalores da matriz de amplificação
C = A−1 B estão no disco unitário. Ver exercı́cio (3.15).

Condição de Fronteira com Derivadas


Quando as condições de fronteira envolvem a derivada da função u(x, t), dizemos tratar-
se de condições de fronteira de Neumann. Podemos ter uma das condições de fronteira ou
ambas, com derivadas. Teremos então um problema como a seguir:

ut = auxx, a > 0, 0 ≤ x ≤ L, 0<t<T (3.33)


u(x, 0) = ψ(x), 0≤x≤L
∂u(0, t)
= f (t), 0<t<T
∂x
∂u(L, t)
= g(t), 0 < t < T.
∂x
Ao discretizarmos esse problema por qualquer das técnicas anteriores teremos agora que
resolver a questão de que os valores U0,j e UN,j deixaram de ser conhecidos, veja a figura
3.6.
Note que conhecemos os valores das derivadas direcionais sobre as fronteiras x = 0 e x =
L e não mais o valor da função como no caso da condição de fronteira de Dirichlet, de forma
que devemos tratar esses valores (U0,j , UN,j ) como incógnitas, ou seja, nossa discretização
deve incluir os valores da função nos pontos x0 = 0 e xN = L como incógnitas. O problema
é que ao escrevermos uma equação para o ponto x0 = 0, por exemplo, no caso do método
explı́cito obtemos:
U0,j+1 = σU−1,j + (1 − 2σ)U0,j + σU1,j
que contém o ponto U−1,j que não faz parte da malha. Devemos portanto utilizar a condição
de fronteira para calculá-lo, fazendo:

∂u(0, tj ) U1,j − U−1,j


f (tj ) = ≃ (3.34)
∂x 2h
onde foi utlizado a discretização da derivada por diferenças centrais. A equação (3.34) pode
ser reescrita na forma:
U−1,j = U1,j − 2hf (tj ) (3.35)
3.2. MÉTODOS DE DIFERENÇAS FINITAS 87

-1 0 1 2 N N+1

(-1,j) (N+1,j)

ux ( 0, t )=f ( t ) u x ( L,t )=g( t )

(−1,2) (N+1,2)

(−1,1) (N+1,1)

(−1,0) (N+1,0)
L
u ( x , 0)=ψ ( x ) x

Figura 3.6: Discretização do problema de Neumann com inclusão de pontos fan-


tasmas

e portanto o valor de U−1,j pode ser substituı́do por (3.35) na expressão do método numérico
sem maiores problemas. Devemos no entanto observar que a notação vetorial introduzida
em (3.18) deve ser modificada para refletir o fato de que U0,j e UN,j são agora incógnitas.
Assim:
Uj = (U0,j , U1,j , . . . , UN,j )T
e portanto um vetor de N + 1 componentes. Certamente a matriz A da equação (3.19) deve
ser de ordem (N + 1) × (N + 1) e ter sua primeira e última linhas modificadas. A equação
equivalente a (3.19) para o caso de condições de fronteira com derivadas é:
Uj+1 = AUj + cj
onde A é a matriz não simétrica
1 − 2σ 2σ 0 ... 0
 
 σ 1 − 2σ σ ... 0 
A=
 .. .. 
(3.36)
. .
 

 0 ... σ 1 − 2σ σ 
0 ... 0 2σ 1 − 2σ

e cj é um vetor de (N + 1) componentes contendo informações das condições de fronteira


dado por:
cj = (−2hf (jk), 0, . . . , 0, −2hg(jk))T .
88 CAPÍTULO 3. EQUAÇÕES PARABÓLICAS

Já para o caso de um método implı́cito teremos um pouco mais de dificuldades. Consid-
eremos o método de Crank-Nicolson (3.30) que pode ser reescrito na forma:
−σUi+1,j+1 + (2 + 2σ)Ui,j+1 − σUi−1,j+1 = σUi+1,j + (2 − 2σ)Ui,j + σUi−1,j . (3.37)
Novamente quando i = 0 ou i = N teremos o aparecimento dos termos U−1,j+1 , U−1,j ,
UN +1,j+1 e UN +1,j que não fazem parte da malha e portanto são pontos fantasmas. Da
mesma maneira que fizemos para o caso explı́cito em (3.35) eliminamos esses valores da
equação (3.37), para obter a equação matricial:
AUj+1 = BUj + cj
onde as matrizes A e B são de ordem N + 1 e dadas por:
2 + 2σ −2σ 0 ... 0
 
 −σ 2 + 2σ −σ ... 0 
A=
 .
. .. 
. .
 

 0 ... −σ 2 + 2σ −σ 
0 ... 0 −2σ 2 + 2σ
2 − 2σ) 2σ 0 ... 0
 
 σ 2 − 2σ σ ... 0 
B=
 .
.. .. 
.
 

 0 ... σ 2 − 2σ σ 
0 ... 0 2σ 2 − 2σ
e o vetor independente cj = (2hσ(f (tj+1 ) − f (tj )), 0, . . . , 0, 2hσ(g(tj+1 ) − g(tj )))T
Observação 3.2.2 Observamos que a matriz A do método de Crank-Nicolson para prob-
lemas com condição de fronteira de Neumann não é simétrica, mas continua estritamente
diagonalmente dominante. A perda da simetria é um fator de considerável complicação para
a solução do sistema linear.
Observação 3.2.3 Uma outra observação importante é que no caso do domı́nio possuir
uma fronteira irregular, os pontos próximos da fronteira precisam de tratamento especı́fico,
por meio de interpolação. Este aspecto será tratado com mais detalhe nas equações elı́pticas.

Observação 3.2.4 É também possı́vel encontrar na prática problemas com condições de


fronteira do tipo misto, ou seja, ux (0, t) − α1 u(0, t) = g(t). O tratamento numérico desse
tipo de condição de fronteira é uma combinação daquele dos casos de fronteira de Dirichlet
e de Neumann estudados acima.

3.3 Problemas Não Lineares


A maioria dos métodos discutidos anteriormente podem ser generalizados para equações
lineares com coeficientes variáveis, ou seja, a = a(x, t) na equação (3.4). Mas encontramos
algumas dificuldades como:
3.3. PROBLEMAS NÃO LINEARES 89

• embora as matrizes continuem diagonalmente dominantes, σ não é mais constante;


• temos que calcular ai,j a cada passo, e no método de Crank-Nicolson, por exemplo,
precisamos de ai,j no ponto intermediário, para isso calculamos:
a(xi , tj ) + a(xi , tj+1 )
a(xi , tj+ k ) ou ;
2 2
• não poderemos usar análise de Fourier para fazer a análise da estabilidade de maneira
global, apenas localmente.
Quando a = a(x, t, u) ou a = a(u) temos o chamado problema quase-linear, neste caso o
método explı́cito pode ser usado sem dificuldades, pois sua utilização não requer a solução
de equações não lineares. Já para os métodos implı́cito e de Crank-Nicolson obtemos um
sistema de equações não lineares, que podemos resolver por aproximações sucessivas ou
pelo método de Newton, com a aproximação inicial calculada pelo método explı́cito. Na
prática, no entanto, recomenda-se a utilização de métodos implı́citos para evitar problemas
de estabilidade, uma vez que estes são incondicionalmente estáveis.
O caso mais geral de uma equação não linear parabólica é representado pela expressão:
r(x, t, u, ut , ux , uxx ) = 0. (3.38)
Casos particulares importantes são representados pela equação de Burgers, onde se tem
r(x, t, u, ut , ux , uxx ) = ut + uux − auxx = 0 e pela equação de Ritchmyer ( [9]) onde
r(x, t, u, ut , ux , uxx ) = ut − (um )xx = 0, m ≥ 2.
Um método explı́cito para resolver (3.38), simplesmente avalia essa expressão no ponto
(xi , tj ) e substitui a derivada em t por diferença progressiva e as derivadas em x por diferenças
centrais. No caso em que a derivada temporal pode ser escrita de forma explı́cita em função
das outras variáveis, ou seja, quando a equação é da forma:
ut = r(x, t, u, ux , uxx )
podemos discretizá-la facilmente pelo método explı́cito para obter:
Ui+1,j − Ui−1,j Ui+1,j − 2Ui,j + Ui−1,j
Ui,j+1 = Ui,j + kr(xi , tj , Ui,j , , ). (3.39)
2h h2
Uma análise da estabilidade linear desse método é possı́vel e pode ser encontrada em detalhes
em [Ames 1992] páginas 74-76. O resultado demonstrado em [Ames 1992] é o seguinte:
Teorema 3.4 Seja r uma função satisfazendo as seguintes hipóteses:
i. ruxx ≥ α > 0
ii. |ru | + |rux | + ruxx ≤ β
onde rφ representa a derivada parcial da função r com relação ao argumento φ e supomos
que u seja uma função 4 vezes diferenciável em x e 2 vezes em t. Então o método (3.39) é
convergente se:
2α k 1 − βk
h≤ e 0< 2 ≤ .
β h 2β
90 CAPÍTULO 3. EQUAÇÕES PARABÓLICAS

No caso em que
2
∂2u

m m−2 ∂u
r(x, t, u, ux , uxx ) = (u )xx = m(m − 1)u + mum−1 , m ≥ 2, (3.40)
∂x ∂x2

teremos 0 < α = mum−1 e β = mum−1 +2m(m−1)|um−2 ux |+m(m−1)(m−2)|um−3 (ux )2 |.


Observe que assumimos que α > 0 e portanto β > α, de forma que o teorema acima impõe
as condições de estabilidade:

i. h < 2α/β < 2

k k
ii. < (1 − βk)/(2β), ou seja, β 2 < (1 − βk)/2 < 1/2.
h2 h
Usando agora que β > α na última desigualdade obtemos:

k k 1
mum−1 2
=α 2 < .
h h 2

Esse mesmo resultado poderia ser obtido por comparação com a equação linear com
coeficientes constantes, isto é, reescrevendo a equação (3.40) na forma

ut = (mum−1 ux )x

e comparando com a equação com coeficientes constantes ut = (aux )x para concluir que a
condição de estabilidade do método explı́cito toma a forma

ak mum−1 k 1
σ= = ≤ .
h2 h2 2

Isto quer dizer que para problemas não lineares a estabilidade depende, além da equação
de diferenças finitas, da solução do problema que está sendo resolvido e portanto a condição
de estabilidade pode variar ao longo do domı́nio.
Para obter-se um método implı́cito substitui-se as derivadas da variável espacial por
fórmulas envolvendo o mesmo nı́vel de tempo. Um exemplo de método implı́cito para resolver
(3.38) é o método de Crank-Nicolson dado por:

Ui,j+1 + Ui,j Ui,j+1 − Ui,j µδx Ui,j+1 + µδx Ui,j δx2 Ui,j+1 + δx2 Ui,j
 
r xi , tj+ 12 , , , , =0
2 k 2h 2h2

onde os operadores µ e δx estão definidos em (1.3). A equação acima deve ser aplicada em
todos os pontos do domı́nio para os quais quer-se calcular uma aproximação, produzindo
portanto um sistema de equações não lineares nas variáveis Ui,j . Esse sistema pode ser
resolvido por aproximações sucessivas ou pelo método de Newton.
3.4. OUTROS MÉTODOS 91

Métodos em Três Nı́veis


Lees [21] considerou a equação não linear

b(u)ut = (a(u)ux )x , a(u) > 0, b(u) > 0

e a construção de métodos com três caracterı́sticas:


i. lineares (solução de sistemas lineares apenas)
ii. preservam a estabilidade
iii. preservam a precisão (ordem de convergência).
Utilizando a notação δx para representar as diferenças centradas Lees obteve:
1 1 1
b(Ui,j ) (Ui,j+1 − Ui,j−1 ) = δx (a(Ui,j ) δx Ui,j )
2k h h
1
= {a(Ui+1/2,j )(Ui+1,j − Ui,j ) − a(Ui−1/2,j )(Ui,j − Ui−1,j )}.
h2
Esta equação de diferenças será instável quando a ≡ b ≡ 1. Para resolver esse prob-
lema Lees propôs substituir Ui+1,j , Ui,j e Ui−1,j , respectivamente pelas médias 31 (Ui+1,j+1 +
Ui+1,j + Ui+1,j−1 ), 31 (Ui,j+1 + Ui,j + Ui,j−1 ), 31 (Ui−1,j+1 + Ui−1,j + Ui−1,j−1 ) e também os
coeficientes a(Ui+1/2,j ) e a(Ui−1/2,j ) por a( 21 (Ui+1,j + Ui,j )) e a( 21 (Ui,j + Ui−1,j )) obtendo
o método de Lees, que é consistente de ordem 2, estável e convergente, para h e k suficien-
temente pequenos, com erro global de ordem 2, ver [13]. O método, mesmo para problemas
não-lineares, exige apenas a solução de sistemas lineares. A desvantagem é aquela inerente
a todo método com mais de 1 passo: no inı́cio do processo, necessita de valores extras para
j = 1. Sobre esse dilema temos a seguinte observação .

“Embora pareça que os métodos com 2 passos (3 nı́veis) têm vantagem sobre
os de 2 nı́veis (Crank-Nicolson) na solução de equações parabólicas, é possı́vel
que a introdução de um nı́vel extra cause dificuldades em problemas especı́ficos.
Cada problema não-linear tem suas peculiaridades e a escolha entre um método
de 2 ou de 3 nı́veis, para um dado problema, é bastante difı́cil. Todos os métodos
devem ser tentados quando o problema é não linear e uma análise crı́tica dos
resultados deve ser feita para a melhor certeza de sua solução” [6]

3.4 Outros Métodos


Método Hopscotch
Os métodos que examinaremos agora são chamados assimétricos e são muito usados
para dimensões altas, pois reduzem o esforço computacional necessário.
A idéia básica, primeiro publicada por Gordon [3], para resolver uma equação parabólica,
é usar os métodos de diferenças finitas explı́cito e implı́cito em pontos alternados da malha
sobre uma linha de tempo tj . Estes métodos são, às vezes chamados de métodos hopscotch,
92 CAPÍTULO 3. EQUAÇÕES PARABÓLICAS

Figura 3.7: Molécula computacional do método hopscotch: x calculado pelo


método explı́cito, ◦ calculado pelo método implı́cito, —- molécula do método
explı́cito, - - - molécula do método implı́cito.

pois o caminho do algoritmo computacional parece com o jogo da amarelinha, como mostra
a figura 3.7.
O resultado global é uma série de cálculos explı́citos, onde ui,j+1 é a incógnita, pois
todos os valores da j-ésima linha são conhecidos. Gordon [3] demonstra a consistência e
estabilidade deste algoritmo. Além disso, é um método muito rápido e portanto muito
usado para dimensões mais altas.
A sequência de cálculos aproximados para a equação ut = auxx pode ser descrita como
segue.
Para j fixado,
Ui,j+1 = Ui,j + σ(Ui−1,j − 2Ui,j + Ui+1,j ), para todo i tal que i + j + 1 é par
e em seguida,
Ui,j+1 = Ui,j + σ(Ui−1,j+1 − 2Ui,j+1 + Ui+1,j+1 ), para todo i tal que i + j + 1 é ı́mpar
onde σ = ka/h2 .
Se definirmos β p = 1 para p par e β p = 0 para p ı́mpar, então o método hopscotch pode
ser expresso em uma única equação:
Ui,j+1 = Ui,j +β i+j+1 σ(Ui−1,j −2Ui,j +Ui+1,j )+β i+j σ(Ui−1,j+1 −2Ui,j+1 +Ui+1,j+1 ). (3.41)
Agora, este método corresponde à aplicação do método de Crank-Nicolson e do método
explı́cito. De fato, substituindo j por j + 1 na equação (3.41), temos:

Ui,j+2 = Ui,j+1 + β i+j+2 σ(Ui−1,j+1 − 2Ui,j+1 + Ui+1,j+1 )


+ β i+j+1 σ(Ui−1,j+2 − 2Ui,j+2 + Ui+1,j+2 ).
E, substituindo agora Ui,j+1 pela equação (3.41), obtemos:

Ui,j+2 = Ui,j + β i+j+1 σ(Ui−1,j − 2Ui,j + Ui+1,j )


+ β i+j σ(Ui−1,j+1 − 2Ui,j+1 + Ui+1,j+1 )
+ β i+j+2 σ(Ui−1,j+1 − 2Ui,j+1 + Ui+1,j+1 )
+ β i+j+1 σ(Ui−1,j+2 − 2Ui,j+2 + Ui+1,j+2 ).
3.4. OUTROS MÉTODOS 93

Como βi+j+2 = βi+j ,

Ui,j+2 = Ui,j + 2β i+j σ(Ui−1,j+1 − 2Ui,j+1 + Ui+1,j+1 )


+ β i+j+1 σ[(Ui−1,j − 2Ui,j + Ui+1,j ) + (Ui−1,j+2 − 2Ui,j+2 + Ui+1,j+2 )]. (3.42)

Para i + j ı́mpar, a equação (3.42) torna-se o método de Crank-Nicolson com passo 2h:

Ui,j+2 = Ui,j + β i+j+1 σ[(Ui−1,j − 2Ui,j + Ui+1,j ) + (Ui−1,j+2 − 2Ui,j+2 + Ui+1,j+2 )].

Para i + j par a equação (3.42) torna-se o método explı́cito

Ui,j+2 = Ui,j + 2β i+j σ(Ui−1,j+1 − 2Ui,j+1 + Ui+1,j+1 ).

Aproximações Assimétricas
Uma série de aproximações assimétricas para a equação do calor foi introduzida por
Saul’yev [12]. O resultado é um par de aproximações que resulta explı́cito e incondiciona-
mente estável.
A idéia básica do método é substituir ux (xi−1/2 , tj ) da equação:

ux (xi+1/2 , tj ) − ux (xi−1/2 , tj )
uxx (xi , tj ) ≃ ,
h
por ux (xi− 21 , tj+1 ), e então usarmos diferenças centradas para aproximar ux .

Ui+1,j − Ui,j
ux (xi+1/2 , tj ) ≃ ,
h
Ui,j+1 − Ui−1,j+1
ux (xi−1/2 , tj+1 ) ≃ .
h
Para ut usamos diferenças progressivas. O algoritmo de Saul’yev A (ver figura 3.8) é então
dado por:

(1 + σ)Ui,j+1 = Ui,j + σ(Ui−1,j+1 − Ui,j + Ui+1,j ). (3.43)


O método assim construido é de ordem O( hk +h2 ),
portanto condicionalmente consistente.
É claro que se aplicamos o método da fronteira esquerda para a direita, com j fixado, ele
torna-se explı́cito.
Analogamente, construimos o algoritmo Saul’yev B (ver figura 3.8) com as mesmas pro-
priedades e que será explı́cito se o cálculo for feito da direita para a esquerda

(1 + σ)Ui,j+1 = Ui,j + σ(Ui+1,j+1 − Ui,j + Ui−1,j ). (3.44)


Várias opções de aplicação das fórmulas A e B são possı́veis. As duas mais interessantes
são:
94 CAPÍTULO 3. EQUAÇÕES PARABÓLICAS

i,j+1 i,j+1

Figura 3.8: Moléculas computacionais para as equações (3.43) e (3.44)

i. calcula-se uma linha com o método A e a seguinte com o método B.


ii. usa-se A e B na mesma linha, considerando-se como aproximação final a média dos
valores obtidos em cada ponto. Note que nessa média pode haver cancelamento de erro
de truncamento, compensando o aumento do esforço computacional com a obtenção
de um resultado mais preciso.

Aproximações assimétricas de ordem mais alta são construı́das incomporando-se mais


pontos à fórmula.

Método Box
Keller [5] propôs o método box, um método simples e compacto, que pode inclusive
ser usado com malha de tamanho variável. A precisão é de ordem 2 e incondicionalmente
estável. Ele pode ser usado para problemas lineares e não-lineares. Considere a equação

ut = (a(x)ux )x + c(x)u, (3.45)


com as condições auxiliares:

u(x, 0) = ψ(x), 0 ≤ x ≤ 1,

α0 u(0, t) + α1 ux (0, t) = α2 (t), t > 0, (3.46)


β0 u(1, t) + β1 ux (1, t) = β2 (t), t > 0.
O primeiro passo é transformar a equação em um conjunto de equações de primeira
ordem. Isto pode ser feito de várias maneiras, uma das quais é

v = a(x)ux , (3.47)
vx = ut − c(x)u,
com

u(x, 0) = ψ(x), 0 ≤ x ≤ 1,

α0 u(0, t) + α3 v(0, t) = α2 (t), t > 0,


β0 u(1, t) + β3 v(1, t) = β2 (t), t > 0
α1 β1
onde α3 = a(0) e β3 = a(1) supondo-se a(0) e a(1) não nulos.
3.4. OUTROS MÉTODOS 95

A malha usada para as aproximações de (3.46), é mostrada na figura 3.9, com


t0 = 0, x0 = 0, tj = tj−1 + kj , j = 1, 2, . . . , M, e xi = xi−1 + hi , i = 1, 2, . . . , N. Os kj
e hi são arbitrários e podem mudar ao longo da malha.
Busca-se a solução no ponto médio da célula da malha, mas de modo que as aproximações
sendo médias dos valores nos pontos da malha, forneçam a solução procurada.
Portanto
1
tj−1/2 = (tj + tj−1 ),
2
1
xi−1/2 = (xi + xi−1 ),
2
e
1
φi±1/2,j = (φi,j + φi±1,j ),
2
1
φi,j±1/2 = (φi,j + φi,j±1 ),
2
onde φ representa u ou v.
1
i- __ ,j i,j
2

1
i,j- __
2

Figura 3.9: Molécula computacional do método box

Usando diferenças centradas, as equações (3.47) são aproximadas por


Ui,j − Ui−1,j
ai−1/2 = Vi−1/2,j ,
hi
Vi,j − Vi−1,j Ui−1/2,j − Ui−1/2,j−1
= − ci−1/2 Ui−1/2,j−1/2 , 1 ≤ j ≤ M, 1 ≤ i ≤ N, (3.48)
hi kj
e
Ui,0 = f (xi ),
α0 U0,j + α1 V0,j = α2 (tj ),
β0 UN,j + β1 VN,j = β2 (tj ).
Keller [5] nota que o método box gera uma matriz bloco triangular no caso linear, e no
caso não linear pode-se usar o método de Newton.
96 CAPÍTULO 3. EQUAÇÕES PARABÓLICAS

Método das Linhas


O método das linhas (ver Schiesser [24]) transforma a EDP a ser resolvida em um sistema
de EDO’s, usualmente por discretização do espaço x por diferenças finitas. No caso de
equações parabólicas, o novo sistema será um problema de valor inicial e então métodos
para equações ordinárias podem ser usados.
Para ilustrar o procedimento, consideramos o problema não linear:
ut = uxx + (ux )2 , 0 ≤ x ≤ 1, 0 < t < T
u(x, 0) = x(1 − x), 0 ≤ x ≤ 1
u(0, t) = 0, 0 < t < T
u(1, t) = sen (t), 0 < t < T.
O domı́nio [0, 1] de x é substituido por um conjunto de pontos discretos xi = ih, i =
0, 1, . . . , N , onde h = N1 . Ao longo de cada uma dessas linhas (xi , t) temos uma função
Ui (t). A figura 3.10 ilustra a idéia com h = 51 .

x
U5(t) =U(1,t)=sen(t) x=1
U5 (0)=0
U4(t)
U4(0)=0.16
U3(t)
U3 (0)=0.24
U2(t)
U2 (0)=0.24
U1 (t) 0.2
U1 (0)=0.16

U0 (0)=0
U0(t) =U(0,t)=0
t

Figura 3.10: Método das linhas


Usando diferenças centradas para uxx e ux e desprezando o erro da discretização, temos
 2
Ui+1 (t) − 2Ui (t) + Ui−1 (t) Ui+1 (t) − Ui−1 (t)
Ui′ (t) = + , i = 1, 2, 3, 4,
h2 2h
Desconsiderando, por simplicidade, a variável tempo em Ui (t), obtemos o seguinte sis-
tema de EDO’s:

U0 (t) = 0
1 1
U1′ (t) = (U2 − 2U1 + U0 ) + (U2 − U0 )2
0.04 0.16
1 1
U2′ (t) = (U3 − 2U2 + U1 ) + (U3 − U1 )2
0.04 0.16
1 1
U3′ (t) = (U4 − 2U3 + U2 ) + (U4 − U2 )2
0.04 0.16
1 1
U4′ (t) = (U5 − 2U4 + U3 ) + (U5 − U3 )2
0.04 0.16
U5 (t) = sen (t),
3.5. EQUAÇÕES PARABÓLICAS EM DUAS DIMENSÕES 97

com condições iniciais para t = 0:

U0 (0) = 0
U1 (0) = u(0.2, 0) = 0.2(1 − 0.2) = 0.16
U2 (0) = u(0.4, 0) = 0.4(1 − 0.4) = 0.24
U3 (0) = u(0.6, 0) = 0.6(1 − 0.6) = 0.24
U4 (0) = u(0.8, 0) = 0.8(1 − 0.8) = 0.16
U5 (0) = 0.

Resolvendo este sistema, obtemos aproximações para u(x, t) ao longo das linhas (xi , t).

3.5 Equações Parabólicas em Duas Dimensões


Nesta seção consideraremos a discretização de equações parabólicas lineares em duas
dimensões, da forma:

ut = a1 uxx + a2 uyy , (3.49)


onde u, a1 e a2 são funções de x, y e t; x e y são variáveis espaciais e t é a variável tempo,
ou em notação de operadores,

ut = Lu (3.50)
com L ≡ a1 uxx + a2 uyy .
Todos os métodos discutidos anteriormente podem ser adaptados para este caso mas o
esforço computacional aumenta quadraticamente, de forma que a simples adaptação não é
uma solução satisfatória. Apresentamos a seguir alguns métodos criados para contornar esse
problema, exigindo um número menor de operações aritméticas.
Inicialmente supomos que a região de definição do problema seja formada pelo retângulo
[0, a] × [0, b] do plano x − y e pelo intervalo de tempo [0, ∞). Essa região do plano é coberta
por uma malha retangular com lados paralelos aos eixos, com espaçamento h1 na direção x,
h2 na direção y e por uma discretização temporal com passo k. Os pontos da malha (x, y, t)
serão dados por x = lh1 , y = mh2 e t = nk, onde l, m, n são inteiros. Uma função discreta
n
definida nessa malha será denotada por Ul,m .
Da expansão em série de Taylor de u(x, y, tn+1 ) = u(x, y, tn + k) em torno do ponto
(x, y, tn ), obtemos:

k2
utt (x, y, tn ) + · · · .
u(x, y, tn+1 ) = u(x, y, tn ) + kut (x, y, tn ) + (3.51)
2
Observando agora que ut = Lu e que L independe de t, deduzimos por diferenciação com
relação a t que utt = (Lu)t = Lut = L × Lu = L2 u. Assim podemos mostrar por indução
que:
∂ pu
= Lp u.
∂tp
98 CAPÍTULO 3. EQUAÇÕES PARABÓLICAS

Levando esse resultado em (3.51) obtemos:

k2 2
u(x, y, tn+1 ) = u(x, y, tn ) + kLu(x, y, tn ) + L u(x, y, tn ) + · · ·
2
k2 2 k3 3
= (I + kL + L + L + · · ·)u(x, y, tn ) = exp(kL)u(x, y, tn )(3.52)
2 3!
Avaliando a expressão (3.52) no ponto (xl , ym , tn ) obtemos a fórmula (3.53), que será uti-
lizada na dedução dos diversos métodos a seguir.

un+1 n
l,m = exp(kL)ul,m (3.53)

Método Explı́cito
Vamos exemplificar esta técnica usando

Lu ≡ uxx + uyy = (D12 + D22 )u, (3.54)


ou seja, a1 ≡ a2 ≡ 1 e D1 u = ux , D2 u = uy .
A equação (3.53) torna-se:

un+1 = exp(kD12 ) exp(kD22 )un

onde un = unl,m .
Como
1 2 1 1
D12 = (δ − δ 4 + δ 6 · · ·)
h2 x 12 x 90 x
e
1 2 1 1
D22 = 2
(δy − δy4 + δy6 · · ·),
h 12 90
veja (exercı́cio (1.1)), então
1 1 1 1
un+1 = [1 + σδx2 + σ(σ − )δx4 · · ·][1 + σδy2 + σ(σ − )δy4 · · ·]un , (3.55)
2 6 2 6
onde σ = k/h2 . Aqui estamos utilizando h1 = h2 = h, como espaçamento nas variáveis x e
y. A conclusão final não será muito distinta se considerarmos espaçamentos diferentes para
cada uma das variáveis espaciais. No entanto, alertamos que essa talvez seja uma situação
mais realista para aplicações práticas.
Vários métodos explı́citos podem ser obtidos da equação (3.55). Por exemplo, multi-
plicando as duas séries e em seguida considerando somente os termos de primeira ordem
obtemos,
n+1
Ul,m = [1 + σ(δx2 + δy2 )]Ul,m
n
+ O(k 2 + kh2 ), (3.56)
3.5. EQUAÇÕES PARABÓLICAS EM DUAS DIMENSÕES 99

que é o método explı́cito padrão envolvendo cinco pontos no nı́vel de tempo t = nk.
Outro método simples pode ser obtido da equação (3.55) considerando os termos de
primeira ordem em cada uma das expansões separadamente
n+1
Ul,m = (1 + σδx2 )(1 + σδy2 )Ul,m
n
+ O(k 2 + kh2 ), (3.57)
Esta fórmula envolve nove pontos do nı́vel de tempo t = nk.

Estabilidade
Analogamente ao caso unidimensional temos o critério de von Neumann e o critério da
matriz para análise da estabilidade. No entanto, em duas dimensões a análise da estabilidade
pelo método da matriz se torna um tanto complexa, pois na tentativa de generalizar o
procedimento feito para o problema unidimensional, para por exemplo a equação (3.49),
obtemos um sistema linear Un+1 = AUn + cn , onde agora, Un é um vetor de vetores e A
uma matriz de matrizes. Se compararmos com a matriz (3.20) veremos que no lugar dos
elementos dessa matriz aparecerão agora matrizes. Este fato, complica a análise do problema
de autovalores.
Pela sua simplicidade e facilidade de exposição concentraremo-nos aqui no estudo do
critério de von Neumann que assume uma decomposição harmônica dos erros em um dado
nı́vel de tempo, por exemplo, t = 0. Um modo individual, representando a decomposição é
então dado por:

eαt eIβx eIγy (3.58)


onde β e γ são números reais arbitrários e α ≡ α(β, γ) é em geral complexo. Tomando essa
solução nos pontos da malha obtemos:

eαtn eIβxi eIγyj = (eαk )n eIβxi eIγyj .

E portanto, essa componente do erro será uniformente limitada se:

|eαk | ≤ 1

para todo α.
Se (3.58) é substituı́do na fórmula (3.56), o resultado após a eliminação dos fatores
comuns torna-se
 
βh γh
eαk = 1 − 4σ sen 2 + sen 2 .
2 2

Para estabilidade |eαk | ≤ 1 e, então


 
2 βh 2 γh
−1 ≤ 1 − 4σ sen + sen ≤ 1.
2 2

O lado direito da desigualdade é satisfeito, e o lado esquerdo resulta em:


100 CAPÍTULO 3. EQUAÇÕES PARABÓLICAS

1 1
σ≤   ≤ ,
2 sen 2 βh + sen 2 γh 4
2 2

então temos a condição de estabilidade σ ≤ 14 .


Muitas vezes a restrição imposta pela estabilidade sobre o passo temporal, torna-se muito
restritiva, e pode levar o usuário a preferir a utilização de um método implı́cito para escapar
dessa restrição. Na próxima seção apresentamos brevemente os métodos mais utilizados na
prática.

Métodos de Direções Alternadas Implı́citos

A discretização de uma equação parabólica em duas dimensões por um método implı́cito


leva à necessidade de solução de um conjunto de sistemas de equações lineares, cuja matriz
tem a dimensão do número de pontos da malha nas variáveis espaciais, isto é se tivermos
N pontos na direção x e M na direção y, a cada passo de tempo, teremos que resolver um
sistema linear com N M equações. Esse processo pode ser extremamente caro do ponto de
vista computacional, se não levarmos em consideração a estrutura muito especial da matriz
dos coeficientes. Por exemplo a discretização implı́cita equivalente a (3.56) é:
n+1 n n+1
Ui,j = Ui,j + σ(δx2 + δy2 )Ui,j (3.59)

ou seja,
n+1
(1 + σ(δx2 + δy2 ))Ui,j n
= Ui,j

que resulta num sistema linear cuja matriz A tem no máximo 5 elementos não nulos por
linha. Na maioria das vezes é possı́vel arranjar as incógnitas desse sistema de tal forma
que os 5 elementos não nulos de cada linha estejam posicionados de maneira a formar uma
matriz com 5 diagonais, a principal, uma imediatamente acima e outra imediatamente abaixo
desta, e duas outras localizadas a certa distância da diagonal principal. Obviamente esta
é uma matriz muito especial e não devemos tentar resolver o sistema linear resultante sem
ter essa caracterı́stica em mente. A grande dificuldade é que não existem métodos especiais
eficientes para tratar o problema com cinco diagonais, e o método de Gauss não é muito
adequado pois ao aplicarmos o processo de triangularização os elementos que eram nulos
originalmente o deixam de ser ao longo do processo, provocando o fenômeno conhecido como
“fill in”. Esta mesma dificuldade não ocorre se a matriz tiver apenas 3 diagonais; a principal
e as duas adjacentes. Nesse caso o método de eliminação de Gauss pode ser aplicado sem
nenhuma dificuldade. A tentativa de resolver o problema bidimensional resolvendo-se apenas
sistemas tridiagonais é materializada pela concepção dos Métodos de Direções Alternadas
(ADI). Métodos ADI são métodos de 2-passos onde em cada passo apenas uma das variáveis
é tratada implicitamente. No primeiro passo uxx é discretizado implicitamente e uyy é
tratado explicitamente, no segundo passo os papeis se invertem e assim sucessivamente. O
esforço computacional do método ADI é cerca de três vezes o do método explı́cito, preço
que pagamos ao utilizar um método incondicionalmente estável.
3.5. EQUAÇÕES PARABÓLICAS EM DUAS DIMENSÕES 101

Ilustraremos estes métodos por meio da equação (3.50), com L como em (3.54). A região
a ser considerada consiste em R x [t ≥ 0], onde R é uma região arbitrária fechada em IR2 .
Inicialmente tomamos R como quadrado [0 ≤ x ≤ 1, 0 ≤ y ≤ 1].
Da equação (3.53) temos:

un+1 = exp(k(D12 + D22 ))un

k k
un+1 = exp( (D12 + D22 ) + (D12 + D22 ))un
2 2
logo,
k k
exp(− (D12 + D22 ))un+1 = exp( (D12 + D22 ))un (3.60)
2 2

k k k k
exp(− D12 )exp(− D22 )un+1 = exp( D12 )exp( D22 )un ,
2 2 2 2
cuja expansão e truncamento da série fornece a equação:

1 1 1 1
(1 − σδx2 )(1 − σδy2 )U n+1 = (1 + σδx2 )(1 + σδy2 )U n + O(k 3 + kh2 ) (3.61)
2 2 2 2
Este método é uma modificação do método de Crank-Nicolson em duas dimensões que é
dado por:
1 1 1 1
(1 − σδx2 − σδy2 )U n+1 = (1 + σδx2 + σδy2 )U n + O(k 3 + kh2 ). (3.62)
2 2 2 2
Note que para obter (3.61) de (3.62) um termo da forma σ4 δx2 δy2 foi adicionado em ambos os
membros de (3.62).
A equação (3.61) pode ser interpretada de uma forma mais conveniente para a imple-
mentação computacional introduzindo-se um passo intermediário para “decompor” (3.61)
em duas equações:
(1 − 12 σδx2 )U n+1∗ = (1 + 21 σδy2 )U n

(3.63)
(1 − 12 σδy2 )U n+1 = (1 + 12 σδx2 )U n+1∗
ou seja, o passo intermediário representa uma solução na direção x e o passo final uma
solução na direção y.

O método decomposto (3.63) com U n+1 = U n+1/2 , isto é o passo intermediário é inter-
pretado como um “meio” passo, foi introduzido por Peaceman e Rachford [8] e é conhecido
como método de Peaceman e Rachford.
Um método decomposto e com precisão mais alta pode ser obtido da equação (3.60)
substituindo D12 e D22 por, (veja exercı́cio (1.1))

δx2 δy2
D12 = 1 2 e D22 = 1 2
h2 (1 + 12 δx ) h2 (1 + 12 δy )
102 CAPÍTULO 3. EQUAÇÕES PARABÓLICAS

cuja expansão fornece:

σ1 1 σ2 1 σ1 1 σ2 1
[1− (σ1 − )δx2 ][1− (σ2 − )δy2 ]U n+1 = [1+ (σ1 + )δx2 ][1+ (σ2 + )δy2 ]U n +O(k 3 +kh4 ),
2 6 2 6 2 6 2 6
(3.64)
que pode ser decomposto em duas equações:

σ1 σ2
− 61 )δx2 )U n+1 + 61 )δy2 )U n

(1 − 2 (σ1 = (1 + 2 (σ2
σ2 σ1 ∗ (3.65)
(1 − 2 (σ2 − 61 )δy2 )U n+1 = (1 + 2 (σ1 + 61 )δx2 )U n+1

este método foi obtido por Mitchell e Fairweather [7].


As equações (3.63) e (3.65) são exemplos de métodos envolvendo a solução de sistemas
tridiagonais ao longo das linhas paralelas aos eixos x e y respectivamente. Estes são os
métodos ADI.
As fórmulas (3.61) e (3.64) podem ser decompostas de uma outra maneira sugerida por
D’Yakonov [D’yakonov 1963]:

(1 − 12 σδx2 )U n+1 = (1 + 12 σδx2 )(1 + 12 σδy2 )U n


(1 − 21 σδy2 )U n+1 = U n+1 ,

e

(1 − 12 (σ − 61 )δx2 )U n+1 (1 + 12 (σ + 16 )δx2 )(1 + 21 (σ + 16 )δy2 )U n

=

(1 − 12 (σ − 61 )δy2 )U n = U n+1

respectivamente.
Finalmente, Douglas e Rachford [Douglas 1956] formularam um método ADI que é dado
na forma decomposta por:

(1 − σδx2 )U n+1 (1 + σδy2 )U n

=

(1 − σδy2 )U n+1 = U n+1 − σδy2 U n ,

e é conhecido como o método de Douglas-Rachford. Eliminando-se U n+1 temos a fórmula:

(1 − σδx2 )(1 − σδy2 )U n+1 = (1 + σ 2 δx2 δy2 )U n ,

que pode ser decomposta, de acordo com o método de D’Yakonov, em:



(1 − σδx2 )U n+1 = (1 + σ 2 δx2 δy2 )U n ,


(1 − σδy2 )U n+1 = U n+1 .

Usando o método de von Neumann, mostra-se a estabilidade, dos métodos ADI apresen-
tados nesta seção, para todo valor de σ > 0; ver exercı́cio (3.25).
3.5. EQUAÇÕES PARABÓLICAS EM DUAS DIMENSÕES 103

Método Localmente Unidimensional


Vamos ilustrar os métodos localmente um-dimensionais (LOD) resolvendo a equação

ut = uxx + uyy ,
que pode ser reescrita como o par de equações
1 1
ut = uxx e ut = uyy . (3.66)
2 2
A idéia é portanto, aproximar a solução de um problema em duas dimensões resolvendo-
se dois problemas unidimensionais que localmente representam o problema original. As
discretizações explı́citas mais simples dessas fórmulas são:
1
!
1 U n+ 2 − U n δx2 n
= U
2 k/2 h2
!
δy2 n+ 1
1
1 U n+1 − U n+ 2
= U 2
2 k/2 h2

que pode ser reescrita na forma compacta como:


1 1
U n+ 2 = (1 + σδx2 )U n e U n+1 = (1 + σδy2 )U n+ 2 , (3.67)
1
e eliminando U n+ 2 temos:
U n+1 = (1 + σδy2 )(1 + σδx2 )U n .

Obtemos assim a equação (3.57) que aproxima a solução com erro de truncamento da
O(k 2 + kh2 ). Para um problema de valor inicial com condições dadas sobre o plano t = 0,
−∞ < x < ∞, −∞ < y < ∞, se usarmos o método LOD (3.67) temos a mesma precisão e
estabilidade mas mais economia de cálculos do que usando (3.57). Já o método de Crank-
Nicolson para o par de equações (3.66) toma a forma:
1
! 1
1 U n+ 2 − U n δ 2 U n+ 2 + δx2 U n
= x
2 k/2 2h2
! 1
δy2 U n+1 + δy2 U n+ 2
1
1 U n+1 − U n+ 2
=
2 k/2 2h2
que pode ser reescrito como:
 σ  1
 σ 2 n
1 − δx2 U n+ 2 = 1+ δ U
2 2 x
(3.68)
 σ   σ  1
1 − δy2 U n+1 = 1 + δy2 U n+ 2 .
2 2
104 CAPÍTULO 3. EQUAÇÕES PARABÓLICAS

Se os operadores δx2 e δy2 comutam, e este é o caso quando o domı́nio é um retângulo de


lados paralelos aos eixos x e y, então o método (3.68) é equivalente ao método Peaceman–
Rachford. O método LOD construı́do acima é de segunda ordem, é incondicionalmente
estável e envolve apenas a solução de sistemas tridiagonais.
Neste capı́tulo tentamos apresentar uma coleção representativa dos diferentes tipos de
métodos e problemas em equações parabólicas. No entanto o leitor com aplicações mais
especı́ficas pode encontrar um grande número deles em Ames [Ames 1972], Thomas [32]
Lapidus e Pinder [31] e Sod [36].

3.6 Exercı́cios

3.1 Mostre pelo método de separação de variáveis, que a solução do problema (3.8) é dada
pela fórmula (3.9).

3.2 Seja a equação


ut = uxx 0<x<1
com condições de fronteira u(0, t) = u(1, t) = 0, para t > 0 e com a condição inicial:

para 0 ≤ x ≤ 12

2x,
u(x, 0) =
2 − 2x, para 12 ≤ x ≤ 1

cuja solução exata é:



8 X 1
u(x, t) = ( sen ( nπ))( sen (nπx)) exp(−n2 π 2 t).
π 2 n=1 2

Faça um programa em MATLAB para resolver esse problema usando o método explı́cito
com h = 0.05 e
5 2
a. k = 11 h

b. k = 59 h2 .
Utilizando MATLAB faça um gráfico da solução numérica e da solução exata para cada
um dos casos acima, plotando U e u contra x para vários valores de t, por exemplo,
t = 0.05, 0.1, 0.15, . . . , 0.5. Observe atentamente os gráficos dos dois casos. Note que a
solução inicial tem uma descontinuidade na primeira derivada no ponto x = 1/2, e esta
descontinuidade é suavizada imediatamente quando entramos no domı́nio. Esta é uma pro-
priedade geral das equações parabólicas e elı́pticas. Obtenha pelo método de separação de
variáveis a solução exata desse problema.

3.3 Mostre que a equação de diferenças

Ui,j+1 = Ui,j + σ(Ui−1,j − 2Ui,j + Ui+1,j )


3.6. EXERCÍCIOS 105

admite uma solução separável Ui,j = Xi Tj . Determine as equações para Xi e Tj . Obtenha


soluções para essas equações substituindo Xi = exp(iλ) e determinando dois valores para λ,
que chamaremos λ1 e λ2 e a solução Xi pode ser então determinada por superposição como:
Xi = C1 exp(iλ1 ) + C2 exp(iλ2 )
com C1 e C2 constantes arbitrárias.
3.4 Mostre que escolhendo σ = 16 em (3.7) e levando em consideração a expressão (3.11)
obtemos um método que é condicionalmente consistente de ordem O(k 2 ) com a equação do
calor ut = auxx .
3.5 Mostre que o método explı́cito
2σ 4σ
Ui,j+1 = Ui+1,j + (1 − 2σ)Ui,j + Ui−1,j
3 3
não é consistente com a equação ut = auxx . Encontre a equação para a qual esse método é
consistente.
Discuta a consistência da generalização do método de DuFort–Frankel (3.25)

Ui,j+1 − Ui,j−1 Ui+1,j − 2(θUi,j+1 + (1 − θ)Ui,j−1 ) + Ui−1,j


=a ,
2k h2
para os casos:
a. k = rah
b. k = rah2
onde r é uma constante positiva.
3.6 Mostre que a matrix (A)pq = exp(Iαq ph), p = 0, 1, . . . N, q = 0, 1, . . . N , onde αq =

l ,é não singular.
Sugestão: Observe que A é uma matriz de Vandermond.
3.7 Considere a equação diferencial
ut = uxx − bu, t > 0, x ∈ IR
com b > 0. Analise a convergência do método de diferenças finitas:

Ui,j+1 = σUi−1,j + (1 − 2σ − bk)Ui,j + σUi+1,j , j = 0, ±1, . . .


3.8 Considere a equação diferencial
ut = auxx − bux , a > 0, 0 ≤ x ≤ L, 0<t<T
u(x, 0) = ψ(x), 0 ≤ x ≤ L
u(0, t) = f (t), 0 < t < T
u(L, t) = g(t), 0 < t < T.
106 CAPÍTULO 3. EQUAÇÕES PARABÓLICAS

Discretizando essa equação pelo método explı́cito e diferenças centrais para aproximar ux
obtém-se:
bk bk
Ui,j+1 = (σ + )Ui+1,j + (1 − 2σ)Ui,j + (σ − )Ui−1,j .
2h 2h
Utilizando o critério de von Neumann estude a estabilidade desse método. Compare com a
estabilidade do método resultante do seguinte critério para aproximar o termo ux , chamado
método “up-wind”; aproximamos ux por diferenças progressivas se b > 0 e por diferenças
regressivas caso contrário.

3.9 Considere o seguinte problema de valor de fronteira de Neumann

ut = auxx , a > 0, 0 ≤ x ≤ L, 0<t<T


u(x, 0) = ψ(x), 0≤x≤L
∂u(0, t)
= α1 (u − u1 ), 0<t<T
∂x
∂u(L, t)
= −α2 (u − u2 ), 0<t<T
∂x
onde α1 , α2 são constantes positivas.
a. Obtenha o método resultante da aproximação das condições de fronteira por diferenças
centrais e da equação pelo método explı́cito.
b. Obtenha o método resultante da aproximação da fronteira esquerda por diferenças
progressivas da fronteira direita por diferenças regressivas e da equação pelo método
explı́cito.
c. Repetir os items acima considerando o método implı́cito para aproximar a equação.
Escreva esses métodos em notação matricial. Qual o efeito das condições de fronteira na
matriz dos coeficientes? Usando o segundo teorema de Gershgorin estude a estabilidade do
método resultante do primeiro item, mostrando que a restrição de estabilidade é dada por:
1 1
σ ≤ min{ , }.
2 + α1 h 2 + α2 h
3.10 Mostre que se para a equação de diferenças Uj+1 = AUj + cj os autovetores de A
são linearmente independentes e se seus autovalores λi satisfazem |λi | ≤ 1 + O(k), ∀i, então
essa equação será estável.

3.11 Seja A a matriz tridiagonal de ordem N


a b
 
c a b 
 c a b 
A= .. .
 
 . 
c a b
 
c a
3.6. EXERCÍCIOS 107

Mostre que os autovalores e autovetores dessa matriz são: (i = 1, 2, . . . , N )


 c  21 iπ
λi = a + 2b cos( ),
b N +1
 T
c 1 iπ c 2 2iπ c 3 3iπ c N N iπ
vi = ( ) 2 sen ( ), ( ) 2 sen ( ), ( ) 2 sen ( ), · · · , ( ) 2 sen ( ) .
b N +1 b N +1 b N +1 b N +1
Sugestão: Ver [13] páginas 113-115.

3.12 Mostre que os autovalores e autovetores da matriz (3.20) são dados por:
 T
2 iπ iπ 2iπ (N − 1)iπ
λi = 1 − 4σ sen ( ), vi = sen ( ), sen ( ), · · · , sen ( ) .
2N N N N

3.13 Mostre que os autovalores da matriz do método implı́cito (3.28) são:


λi = 1 + 4σ sen 2 ( )
2N

e portanto os autovalores de A−1 são λ1i que são menores que 1 para todo valor de σ impli-
cando que esse método é incondicionalmente estável, como já haviamos concluı́do.

3.14 Prove a igualdade:

∂2u
 
1 2 1 4 1 6
= 2 δx − δx + δx + . . . u.
∂x2 h 12 90

Utilize-a para obter a seguinte discretização da equação do calor:


(  2  )
Ui,j+1 − Ui,j ∂2u

1 ∂ u
= +
k 2 ∂x2 i,j+1 ∂y 2 i,j
 
1 2 1 4 1 6
= δ x − δ + δ + . . . (Ui,j+1 + Ui,j ). (3.69)
2h2 12 x 90 x
1 2
Aplicando o operador (1+ 12 δx ) a ambos os membros de (3.69) obtemos um método numérico
de quarta ordem no espaço:

(1 − 6σ)Ui−1,j+1 + (10 + 12σ)Ui,j+1 + (1 − 6σ)Ui+1,j+1 =


= (1 + 6σ)Ui−1,j + (10 − 12σ)Ui,j + (1 + 6σ)Ui+1,j

Escreva o método acima na forma matricial e utilize o critério da matriz para estudar sua
estabilidade.
108 CAPÍTULO 3. EQUAÇÕES PARABÓLICAS

3.15 Sejam p1 (x) = am xm + am−1 xm−1 + · · · + a1 x + a0 e p2 (x) = bl xl + bl−1 xl−1 + · · · +


b1 x + b0 dois polinômios de graus m e l e A uma matriz N × N . Se λ é um autovalor
de A com autovetor v e se p1 (A) for uma matriz inversı́vel então pp21 (λ)(λ) é autovalor de
(p1 (A))−1 p2 (A) com autovetor v. Utilize esse resultado para mostrar que os autovalores da
matriz de amplificação do método de Crank-Nicolson são:

1 − 2σ sen 2 ( 2N )
λi = iπ i = 1, 2, . . . , N − 1.
1 + 2σ sen 2 ( 2N )

3.16 Considere a seguinte aproximação para a equação do calor no intervalo [0, 1]:
3 1 1
∆t Ui,j − ∇t Ui,j = 2 δx2 Ui,j+1 .
2k 2k h
Utilizando o critério da matriz analise a estabilidade desse método.
3.17 Considere a equação parabólica não linear
ut = um
xx , m inteiro ≥ 2
que pode ser aproximada pelo método implı́cito,
Ui,j+1 − Ui,j θδ 2 (Ui,j+1 )m + (1 − θ)δx2 (Ui,j )m
= x .
k h2
Expansão em série de Taylor de (u(xi , tj+1 ))m , em torno do ponto (xi , tj ) produz:
∂(ui,j )m
(ui,j+1 )m = (ui,j )m + k + ···
∂t
∂ui,j
= (ui,j )m + km(ui,j )m−1 + ···.
∂t
Dessa forma, a menos de termos com ordem maior que O(k), temos a seguinte aproximação:
(Ui,j+1 )m = (Ui.j )m + m(Ui,j )m−1 (Ui,j+1 − Ui,j )
que se substituı́da na equação do método o torna linear. Escrevendo ωi = Ui,j+1 − Ui,j
deduza um sistema linear em termos dessa nova variável.
3.18 a. Considere a equação parabólica não linear:
ut = φ(x, t, u, ux , uxx ), 0 < x < 1, 0 < t ≤ T, (3.70)
u(x, 0) = ψ(x),
u(0, t) = f (t),
u(1, t) = g(t).
∂φ
Esse problema constitue um problema bem posto se a condição ∂u xx
≥ a > 0 estiver
satisfeita no domı́nio. Expandindo u(xi , tj+1 ) em série de Taylor no ponto (xi , tj ),
e utilizando a equação (3.70), para substituir ut , deduza um método explı́cito para
resolvê-la.
3.6. EXERCÍCIOS 109

b. Uma outra classe importante de equações parabólicas não lineares é:


uxx = φ(x, t, u, ux , ut ), 0 < x < 1, 0 < t ≤ T, (3.71)
u(x, 0) = ψ(x),
u(0, t) = f (t),
u(1, t) = g(t).
∂φ
Esse problema constitue um problema bem posto se a condição ∂u t
≥ a > 0 estiver
satisfeita no domı́nio. Discretizando as derivadas espaciais por diferenças centrais e
a derivada temporal por diferença regressiva, no ponto (xi , tj+1 ), obtenha um método
impı́cito para resolver (3.71). Qual a ordem desse método?
c. Considere a equação parabólica quase-linear com
uxx = a(x, t, u)ux + b(x, t, u)ut + c(x, t, u).
Baseando-se no item (b) acima, obtenha um método implı́cito linear para resolver
esse problema, isto é, um método cuja solução requeira a solução de um sistema linear
apenas.
d. Derive o método de Crank-Nicolson para a equação (3.71).
3.19 Seja ψ a solução da equação do calor ψt = ψxx . Mostre que se ψ = exp(− v2 ) e u = vx ,
então u é solução da equação não linear:
ut = uxx − uux .
Utilizando a transformação acima encontre a solução exata do problema:
ut = uxx − uux 0 < x < 1, t > 0
u(x, 0) = sen πx
u(0, t) = u(1, t) = 0.
Resolva esse problema numericamente utilizando um dos métodos discutidos acima e compare
seus resultados com a solução exata.
3.20 Determinar o erro de truncamento local e a estabilidade do método hopscotch.
3.21 Mostre que cada uma das fórmulas de Saul’yev (3.43-3.44) é incondicionalmente
estável.
3.22 Utilizando o método da matriz mostre a que condição de estabilidade da equação de
diferenças:
Ui,j+1 = Ui,j + σ(Ui−1,j − 2Ui,j + Ui+1,j ), i = 0, 1, . . . N − 1
U−1,j = U1,j − 20hU0,j
UN,j = 0
1
é σ ≤ 2+10h . Por outro lado usando o critério de von Neumann obtemos a condição σ ≤ 21 .
Conclua então que o critério de von Neumann é uma condição necessária mas não suficiente
para estabilidade da equação de diferenças.
110 CAPÍTULO 3. EQUAÇÕES PARABÓLICAS

3.23 Mostre que a complexidade algorı́tmica (número de operações aritméticas) do método


explı́cito para resolver a equação do calor em 2D é: 4 adições + 3 multiplicações por ponto
da malha. Mostre também que no caso de um método ADI esse número é: 10 adições + 8
multiplicações + 6 divisões.

3.24 Considere o método obtido pela média ponderada dos métodos implı́cito e explı́cito:

k
Ui,j+1 − Ui,j = σ θδx2 Ui,j+1 + (1 − θ)δx2 Ui,j ,

σ= , 0 ≤ θ ≤ 1.
h2
Observe que para θ = 0 obtemos o método explı́cito, para θ = 1 obtemos o método implı́cito
e para θ = 1/2 obtemos o método de Crank-Nicolson. Deduzir a expressão do erro de
truncamento local e usando a técnica de von Neumann mostre que para 0 ≤ θ < 1/2 o
1
método é estável se σ ≤ 2(1−2θ) e incondicionalmente estável para 1/2 ≤ θ ≤ 1.

3.25 Mostre que os métodos implı́cito e ADI em 2D são incondicionalmente estáveis.

3.26 Mostre que os operadores δx2 e δy2 comutam quando o domı́nio onde eles se aplicam
é um retângulo. Dê um contra-exemplo para ilustrar o caso em que o domı́nio não é um
retângulo.

3.27 Mostre que o método de Crank-Nicolson em duas dimensões com espaçamento k na


direção t, hx e hy nas direções x e y, pode ser escrito como:
 σx 2 σy 2  n+1  σx 2 σy 2  n
1− δx − δy U = 1+ δ + δ U (3.72)
2 2 2 x 2 y

onde σx = hk2 e σy = hk2 .


x y
Mostre que o termo:
σx σy 2 2 n+1
− Un

δ δ U
4 x y
é de ordem O(k 3 ).
Mostre que adicionando o termo
σx σy 2 2 n+1
δ δ U
4 x y
no lado esquerdo de (3.72) e o termo
σx σy 2 2 n
δ δ U
4 x y
no lado direito, obtemos um método com a mesma ordem do método de Crank-Nicolson que
pode ser fatorado na forma:
 σx 2   σy 2  n+1  σx 2   σy 2  n
1− δx 1 − δy U = 1+ δx 1 + δ U .
2 2 2 2 y
3.6. EXERCÍCIOS 111

3.28 Mostre que o método de Peaceman-Rachford para solução da equação do calor não
homogênea
ut = uxx + uyy + F (x, y, t)
toma a forma:
 σx 2  n+ 1  σy 2  n k n
1− δ U 2 = 1+ δ U + F
2 x 2 y 2
 σy 2  n+1  σx 2  n+ 1 k
1− δ U = 1+ δ U 2 + F n+1 .
2 y 2 x 2
112 CAPÍTULO 3. EQUAÇÕES PARABÓLICAS
Capı́tulo 4

Equações Elı́pticas

4.1 Introdução
Problemas de equilı́brio em duas ou três dimensões geralmente dão origem à equações
elı́pticas. Exemplos tı́picos dessa classe são problemas de difusão e de pressão, problemas
em elasticidade, problemas de camada limite, problemas de vibração de membranas, etc.
Mais simplificadamente, os problemas elı́pticos caracterizam-se pela propagação de suas
propriedades fı́sicas em todas as direções coordenadas indistintamente, ao contrário das
equações parabólicas e hiperbólicas onde essas propriedades propagam-se em direções pref-
erenciais. Daı́ porque as condições de fronteira de um problema elı́ptico são normalmente
especificadas ao longo de toda a fronteira.
Seja R uma região limitada do plano com fronteira ∂R. A equação

∂2u ∂2u ∂2u


 
∂u ∂u
a(x, y) 2 + 2b(x, y) + c(x, y) 2 = d x, y, u, , (4.1)
∂x ∂x∂y ∂y ∂x ∂y
de acordo com a definição apresentada na seção 2.2 do capı́tulo 2, é elı́ptica em R se b2 −ac <
0 para todo ponto (x, y) de R. Como já observado anteriormente uma equação diferencial
como (4.1) necessita de condições iniciais e/ou de fronteria para constituir-se num problema
bem posto. Isto ocorre porque, supondo que w seja uma solução da equação (4.1) com
d ≡ 0, então v = u + αw será uma solução de (4.1) para qualquer valor de α, onde u é
uma solução particular de (4.1). Esta observação indica a possibilidade de que a equação
(4.1) sozinha tenha infinitas soluções e portanto precisamos de condições adicionais para
assegurar unicidade.
Imaginamos que não seja difı́cil para o leitor compreender a necessidade de um problema
ter uma única solução para que seu tratamento numérico possa ser considerado. Não faria
muito sentido tentar aproximar a solução de um problema para o qual não existe uma, ou que
tenha uma infinidade delas, caso em que o método numérico ficaria totalmente “indeciso”
sobre qual delas perseguir. De forma que parece claro que só tem sentido tentar resolver
numericamente um problema com solução única. Já a importância da continuidade em
relação aos dados iniciais, para a solução numérica, pode não ser tão óbvia. Ocorre que
quando resolvemos um problema numericamente, estamos fazendo aproximações, e tudo se

113
114 CAPÍTULO 4. EQUAÇÕES ELÍPTICAS

passa como se na verdade estivessemos resolvendo um outro problema cujos dados iniciais
sofreram uma pequena perturbação. Se o problema não se comporta bem com relação à
pequenas perturbações nesses dados, a solução numérica obtida será desastrosa.
Vimos então a necessidade de que à equação (4.1) seja adicionada condições de fron-
teira e que essas condições de fronteira devem ser escolhidas de maneira a resultar em um
problema bem posto. Felizmente, a maioria dos problemas que reclamam um tratamento
numérico provêm de aplicações práticas e essas mesmas aplicações determinam as condições
de fronteira, formando problemas bem postos.
Três tipos de problemas distintos envolvendo a equação (4.1) podem ser destacados
dependendo das condições de fronteira:
• (i) o problema de Dirichlet, requer que a solução u de (4.1) seja conhecida sobre a
fronteira ∂R, isto é,
u(x, y) = f (x, y), (x, y) ∈ ∂R.
∂u
• (ii) quando ∂n é conhecida sobre ∂R, ou seja,

∂u
= g(x, y), (x, y) ∈ ∂R,
∂n
onde n é a normal externa à fronteira ∂R, o problema de valor de fronteira é conhecido
como problema de Neumann.
• (iii) o problema de Robbins ou misto, surge quando conhecemos
∂u
α(x, y)u + β(x, y) = γ(x, y) sobre ∂R,
∂n
onde α(x, y) > 0, β(x, y) > 0, (x, y) ∈ ∂R.
Quando em (4.1) tomamos a = c ≡ 1 e b = d ≡ 0 obtemos o protótipo de equação
elı́ptica mais conhecido que é a famosa equação de Laplace

− (uxx + uyy ) = 0. (4.2)


Passamos a seguir a discutir métodos de aproximação para a classe de equações elı́pticas.

4.2 Métodos de Diferenças Finitas


Os métodos de diferenças finitas, a exemplo do que fizemos no capı́tulo 3 para as equações
parabólicas, consistem em substituir as derivadas parciais presentes na equação diferencial
por aproximações por diferenças finitas. Para isto é necessário que os pontos onde essas
diferenças serão calculadas sejam pré estabelecidos, ou seja, é necessário a definição de uma
malha de pontos no domı́nio. Para ilustrar como esta discretização é realizada na prática
consideremos a equação de Poisson:
−∆u = −(uxx + uyy ) = f, (4.3)
definida no retângulo R = {(x, y), 0 ≤ x ≤ a, 0 ≤ y ≤ b} com condição de Dirichlet:
4.2. MÉTODOS DE DIFERENÇAS FINITAS 115

u = g(x, y) (4.4)
sobre a fronteira, ∂R desse retângulo.
Primeiramente, para que possamos aproximar uxx e uyy por diferenças finitas cobrimos
a região R com uma malha. Escolhemos a opção mais óbvia que consiste em traçar linhas
paralelas aos eixos coordenados, conforme ilustrado na figura 4.1. Os pontos dessa malha
serão denotados por (xi , yj ), xi = ih, yj = jk, i = 0, 1, · · · M, j = 0, 1, · · · N , onde h repre-
senta o espaçamento na direção x e k na direção y. Denotamos por Rδ os pontos da malha
interiores a R, isto é,
Rδ = {(xi , yj ), 0 < i < M, 0 < j < N }
e por ∂Rδ os pontos da malha que estão sobre a fronteira, ou seja,
∂Rδ = {(xi , yj ), (i = 0, M, 0 ≤ j ≤ N ) e (0 ≤ i ≤ M, j = 0, N )}

b =y N h

y1

y0
x0 x1 x M= a x

Figura 4.1: Malha da discretização

Podemos agora aproximar as derivadas da equação (4.3) da seguinte forma. A equação


(4.3) é válida para todos os pontos de R, então em particular para um ponto genérico de Rδ
podemos escrever,
−(uxx (xi , yj ) + uyy (xi , yj )) = f (xi , yj ). (4.5)
Assim, as derivadas podem ser aproximadas por:
u(xi + h, yj ) − 2u(xi , yj ) + u(xi − h, yj )
uxx (xi , yj ) ≃
h2

u(xi , yj + k) − 2u(xi , yj ) + u(xi , yj − k)


uyy (xi , yj ) ≃ .
k2
Substituindo essas aproximações em (4.5) obtemos:
 
u(xi + h, yj ) − 2u(xi , yj ) + u(xi − h, yj ) u(xi , yj + k) − 2u(xi , yj ) + u(xi , yj − k)
− +
h2 k2
≃ f (xi , yj ). (4.6)
116 CAPÍTULO 4. EQUAÇÕES ELÍPTICAS

Note que a expressão (4.6) não representa uma equação porque o segundo membro é somente
uma aproximação para o primeiro e portanto não temos uma igualdade. Isto decorreu de
termos substituı́do uxx (xi , yj ) e uyy (xi , yj ) por suas respectivas aproximações. Podemos
transformar (4.6) numa equação, simplesmente trocando o sinal ≃ pelo de igualdade. Se
assim procedermos, no entanto, não poderemos mais garantir que os valores numéricos
presentes no lado esquerdo de (4.6) coincidam com os valores da solução de (4.3) nos mesmos
pontos.
Seguindo a notação utilizada na literatura denotaremos por ui,j o valor da solução no
ponto (xi , yj ) e por Ui,j a solução da equação de diferenças:
 
Ui+1,j − 2Ui,j + Ui−1,j Ui,j+1 − 2Ui,j + Ui,j−1
− + = fi,j . (4.7)
h2 k2

A equação (4.7) deverá ser aplicada para todos os pontos em Rδ . Para os pontos em ∂Rδ
calculamos Ui,j diretamente da condição de fronteira de Dirichlet

Ui,j = g(xi , yj ). (4.8)

Nossa esperança quando escrevemos a equação (4.7) é que Ui,j seja uma aproximação
para u(xi , yj ), isto é, Ui,j ≃ u(xi , yj ). Demonstraremos mais adiante que, de fato, isto é
verdadeiro. Provaremos mais ainda que Ui,j “converge” para u(xi , yj ) quando a malha é
refinada. Para simplificar a notação para a equação de diferenças definimos o operador:
 
Ui+1,j − 2Ui,j + Ui−1,j Ui,j+1 − 2Ui,j + Ui,j−1
−∆δ Ui,j = − + .
h2 k2

Com essa notação as equações discretas (4.7)-(4.8) podem ser reescritas na forma:

−∆δ Ui,j = f (xi , yj ), (xi , yj ) ∈ Rδ (4.9)

Ui,j = g(xi , yj ), (xi , yj ) ∈ ∂Rδ . (4.10)

Substituindo na equação (4.9) cada um dos (N − 1) × (M − 1) pontos interiores da


malha em Rδ veremos que a função discreta U satisfaz um sistema de equações lineares
com (N − 1) × (M − 1) equações no mesmo número de incógnitas, incógnitas essas que são
as aproximações para a solução da equação diferencial nos pontos da malha. Em notação
matricial, seguindo a convenção notacional adotada no capı́tulo 3, podemos escrever esse
sistema como:
AU = r

onde o vetor U, a matriz A e o vetor r são dados respectivamente por:

U = (U1,1 , U2,1 , · · · , UN −1,1 , U1,2 , U2,2 , · · · , UN −1,2 , · · · , U1,M−1 , U2,M−1 , · · · , UN −1,M−1 )T


4.2. MÉTODOS DE DIFERENÇAS FINITAS 117

a b c
 
..
b

a b . 0


 .. .. .. .. 
 . . . 0 . 
.. .. ..
 
. . .
 
 c

A= .. .. .. 
(4.11)
 . . . 

 .. .. .. 
c . . . 
.. .. .. ..
 
. . . .
 
 0 
 .. 
 0 . b a b
c b a
g(x0 , y1 ) g(x1 , y0 )
 
f (x1 , y1 ) + +
 h2 k2 
 g(x2 , y0 ) 
f (x2 , y1 ) +
 
k2
 
r=
 
.. 

 . 

 
g(xN , y1 ) g(xN −1 , y0 )
 
f (xN −1 , y1 ) + +
h2 k2
Na matriz A, os números a, b e c são os coeficientes da discretização de 5 pontos e são dados
por:
2 2 1
a = 2 + 2, c = − 2,
h k k
sendo que o valor de b não é constante na matriz toda: em algumas posições esse valor é
nulo. Essas posições correspondem àqueles pontos situados sobre a fronteira que são dados
pelas posições da matriz A (p ∗ (M − 1), p ∗ (M − 1) + 1) e (p ∗ (M − 1) + 1, p ∗ (M − 1))
com p = 1, 2, . . .. Nas demais posições o valor de b é b = − h12 .
Talvez essas idéias fiquem mais claras se considerarmos um exemplo.
Exemplo 4.2.1 Consideremos a equação de Poisson com condições de fronteira de Dirich-
let no domı́nio 0 < x < 1 e 0 < y < 1 discretizada na malha mostrada na figura 4.2.
Existem 4 pontos internos: P1,1 , P1,2 , P2,1 , P2,2 , (Pi,j = (xi , yj )). Nesse caso N = M = 3.
As condições de fronteira para o problema de Dirichlet são dadas como:

u(0, y) = 0, u(1, y) = 1, u(x, 0) = 0, u(x, 1) = 0

Observe que estamos utilizando h = k e portanto a equação (4.7) pode ser reescrita como:

4Ui,j − Ui+1,j − Ui−1,j − Ui,j+1 − Ui,j−1 = h2 fi,j . (4.12)


Variando os ı́ndices i e j obtemos:
1
4U1,1 − U2,1 − U0,1 − U1,2 − U1,0 = f1,1
9
118 CAPÍTULO 4. EQUAÇÕES ELÍPTICAS

y
3

2
h=1/3
1

j=0 h
i=0 1 2 3 x
1
Figura 4.2: Malha de discretização com h = 3

1
4U1,2 − U2,2 − U0,2 − U1,3 − U1,1 = f1,2 (4.13)
9
1
4U2,1 − U3,1 − U1,1 − U2,2 − U2,0 = f2,1
9
1
4U2,2 − U3,2 − U1,2 − U2,3 − U2,1 = f2,2 .
9
Todos os valores de Ui,j para i = 0 ou i = 3, e qualquer j, e j = 0 ou j = 3 e qualquer i,
são conhecidos. Substituindo esses valores nas equações (4.13) acima podemos reescrevê-las
na forma matricial como:

4 −1 −1 0 U1,1 f1,1 /9
    
 −1 4 0 −1   U1,2   f1,2 /9 
 −1 = .
0 4 −1   U2,1   1 + f2,1 /9 
0 −1 −1 4 U2,2 1 + f2,2 /9

4.3 Erro de Truncamento Local


Comentamos na seção anterior que a aproximação gerada pela discretização por diferenças
finitas “converge” para a solução do problema (4.3-4.4). Nesta seção vamos demonstrar esse
fato para o caso de um domı́nio retangular. Para esse fim precisamos introduzir alguns
conceitos e resultados.
Note que a expressão (4.6) não é uma igualdade, de forma que podemos definir a quan-
tidade:
τi,j = −∆δ ui,j − f (xi , yj ). (4.14)
4.3. ERRO DE TRUNCAMENTO LOCAL 119

Lema 4.1 Se a solução u(x, y) é diferenciável até ordem 4 com derivada limitada, então o
erro de truncamento local definido por (4.14) satisfaz:

|τi,j | ≤ c1 h2 + c2 k 2
onde c1 e c2 são constantes independentes de h e k.
Prova: Da definição do operador ∆δ temos o seguinte:

u(xi + h, yj ) − 2u(xi , yj ) + u(xi − h, yj )
τi,j = −
h2
 (4.15)
u(xi , yj + k) − 2u(xi , yj ) + u(xi , yj − k)
+ − f (xi , yj ).
k2
Expandindo os termos u(xi + h, yj ), u(xi − h, yj ), u(xi , yj + k) e u(xi , yj − k) em série de
Taylor em torno do ponto (xi , yj ) obtemos:

h2 h3 h4
u(xi + h, yj ) = u(xi , yj ) + hux (xi , yj ) + uxx (xi , yj ) + uxxx(xi , yj ) + uxxxx(ξ1 , yj )
2! 3! 4!
h2 h3 h4
u(xi − h, yj ) = u(xi , yj ) − hux (xi , yj ) + uxx (xi , yj ) − uxxx(xi , yj ) + uxxxx(ξ2 , yj )
2! 3! 4!
k2 k3 k4
u(xi , yj + k) = u(xi , yj ) + kuy (xi , yj ) + uyy (xi , yj ) + uyyy (xi , yj ) + uyyyy (xi , η1 )
2! 3! 4!
k2 k3 k4
u(xi , yj − k) = u(xi , yj ) − kuy (xi , yj ) + uyy (xi , yj ) − uyyy (xi , yj ) + uyyyy (xi , η2 )
2! 3! 4!
onde ξ1 , ξ2 , η1 e η2 são pontos arbitrários com ξ1 ∈ (xi , xi + h),
ξ2 ∈ (xi − h, xi ), η1 ∈ (yj , yj + k), η2 ∈ (yj − k, yj ).
Substituindo essas expansões em (4.15) e simplificando os termos semelhantes obtemos:
h2 h2

τi,j = − uxx (xi , yj ) + uxxxx (ξ1 , yj ) + uxxxx(ξ2 , yj )
4! 4!
k2 k2

+uyy (xi , yj ) + uyyyy (xi , η1 ) + uyyyy (xi , η2 ) − f (xi , yj ) . (4.16)
4! 4!
Da hipótese de que as derivadas uxxxx e uyyyy existem e são limitadas segue que os números
P = max |uxxxx (x, y)| e Q = max |uyyyy (x, y)| estão bem definidos. Assim tomando o
módulo e em seguida o máximo da expressão (4.16) obtemos, considerando que uxx +uyy = f ,
P 2 Q 2
|τi,j | ≤ h + k . (4.17)
12 12
2
Observe que nesse caso o erro de truncamento local decresce ao refinarmos a malha, isto
é, ao fazermos h e k menores. Na verdade o lema 4.1 nos diz mais do que simplesmente que o
erro diminui, ele nos dá a velocidade de convergência desse erro, que nesse caso é quadrática.
No entanto, isto não implica necessariamente que o erro global também está decrescendo.
120 CAPÍTULO 4. EQUAÇÕES ELÍPTICAS

Observação 4.3.1 Lembramos que o erro global é definido por:


ei,j = ui,j − Ui,j (4.18)
onde ui,j e Ui,j denotam respectivamente as soluções exata e aproximada calculadas no ponto
(xi , yj ).
Provaremos esse fato a seguir; mas para esse fim necessitamos de alguns resultados
preliminares que passamos a apresentar e demonstrar.
Teorema 4.1 (Princı́pio do Máximo) S
(a) Se V (x, y) é uma função discreta (de malha) definida sobre Rδ ∂Rδ e satisfaz
∆δ V (x, y) ≥ 0, ∀(x, y) ∈ Rδ ,
então,
max V (x, y) ≤ max V (x, y).
(x,y)∈Rδ (x,y)∈∂Rδ

(b) Alternativamente, se V (x, y) satisfaz


∆δ V (x, y) ≤ 0, ∀(x, y) ∈ Rδ ,
então,
min V (x, y) ≥ min V (x, y).
(x,y)∈Rδ (x,y)∈∂Rδ

Prova: Provaremos a parte (a) por contradição. Suponhamos que em algum ponto P0 ≡
(xr , ys ) de Rδ temos V (P0 ) = M0 , onde M0 ≥ V (P ), ∀P ∈ Rδ e M0 > V (P ), ∀P ∈ ∂Rδ .
Sejam
P1 = (xr + h, ys ),
P2 = (xr − h, ys ),
P3 = (xr , ys + k) e
P4 = (xr , ys − k).
Então, usando, (4.7) podemos escrever
 
V (P1 ) + V (P2 ) V (P3 ) + V (P4 ) 1 1
∆δ V (P0 ) ≡ + −2 + 2 V (P0 ).
h2 k2 h2 k
Mas, por hipótese, temos ∆δ V (P0 ) ≥ 0, de modo que
 
1 1 V (P1 ) + V (P2 ) 1 V (P3 ) + V (P4 )
M0 = V (P0 ) ≤ + 2 . (4.19)
1/h2 + 1/k 2 h2 2 k 2
Como M0 ≥ V (Q), ∀Q ∈ Rδ ∪ ∂Rδ , implica que V (Pν ) = M0 para ν = 1, 2, 3, 4, pois
se V (Pν ) < M0 para algum ν = 1, 2, 3, 4 então (4.19) implica o seguinte:
 
1 1 M0 + M0 1 M0 + M0
M0 = V (P0 ) < + 2 = M0
1/h2 + 1/k 2 h2 2 k 2
4.3. ERRO DE TRUNCAMENTO LOCAL 121

o que leva a uma contradição pois M0 não pode ser estritamente menor do que ele mesmo.
Lembre-se que estamos supondo que M0 é o máximo de V em todo o domı́nio e portanto
V (Q) ≤ M0 ∀Q.
Agora, repetimos esse argumento para cada um dos pontos interiores Pν no lugar de
P0 . Por repetição, cada ponto de Rδ e ∂Rδ aparece como um dos pontos Pν para algum
correspondente P0 . Assim, concluı́mos que

V (P ) = M0 para todo P ∈ Rδ ∪ ∂Rδ ,

o que contradiz a hipótese que V < M0 em ∂Rδ . Daı́, a parte (a) do teorema segue.1
Para provar a parte (b), podemos repetir o argumento acima. Entretanto, é mais simples
recordar que

max[−V (x, y)] = − min V (x, y),

∆δ (−V ) = −∆δ (V ).
Portanto, se V satisfaz a hipótese da parte (b), então −V satisfaz a hipótese da parte
(a). Mas a conclusão da parte (a) para −V é a mesma da parte (b) para V . 2
Aplicando adequadamente o princı́pio do máximo podemos obter um limitante para a
solução da equação de diferenças (4.7). O resultado, chamado estimativa a priori, pode ser
dado por:

Teorema 4.2 Seja V (x, y) qualquer função discreta definida sobre os conjuntos Rδ e ∂Rδ .
Então,
a2
max |V (x, y)| ≤ max |V (x, y)| + max |∆δ V (x, y)| (4.20)
(x,y)∈Rδ (x,y)∈∂Rδ 2 (x,y)∈Rδ

Prova: Vamos introduzir a função


1 2
φ(x, y) ≡ x
2
S
e observemos que para todo (x, y) ∈ Rδ ∂Rδ ,

a2
0 ≤ φ(x, y) ≤ e ∆δ φ(x, y) = 1.
2
Agora, sejam V+ (x, y) e V− (x, y) dadas por

V± (x, y) ≡ ±V (x, y) + N0 φ(x, y),

onde
N0 ≡ max |∆δ V (x, y)|.
(x,y)∈Rδ

1 Na verdade provamos mais que isso. Provamos que se o máximo, no caso (a) ou o mı́nimo, no caso (b),
de V (x, y) ocorre em Rδ , então V (x, y) é constante em Rδ e ∂Rδ .
122 CAPÍTULO 4. EQUAÇÕES ELÍPTICAS

Para todo (x, y) ∈ Rδ é fácil mostrar que (ver exercı́cio 4.8)

∆δ V± (x, y) = ±∆δ V (x, y) + N0 ≥ 0.

Assim, podemos aplicar o princı́pio do máximo, parte (a) do Teorema 4.1, a cada V± (x, y)
e obtemos, para todo (x, y) ∈ Rδ ,

V± (x, y) ≤ max V± (x, y) =


(x,y)∈∂Rδ

a2
max [±V (x, y) + N0 φ] ≤ max [±V (x, y)] + N0 .
(x,y)∈∂Rδ (x,y)∈∂Rδ 2
Mas, da definição de V± e do fato que φ ≥ 0, obtemos:

±V (x, y) ≤ V± (x, y).

Portanto,

a2 a2
±V (x, y) ≤ max [±V (x, y)] + N0 ≤ max |V (x, y)| + N0 .
(x,y)∈∂Rδ 2 (x,y)∈∂Rδ 2

Como o lado direito da desigualdade acima é independente de (x, y) ∈ Rδ o teorema


segue. 2

a2 b2
Observação 4.3.2 Note que podemos substituir 2 em (4.20) por 2 desde que usemos
2
y
ψ(x, y) = 2 no lugar de φ(x, y) na prova do teorema.

Para encontrar uma estimativa para o erro global, tomaremos no teorema 4.2,
V (x, y) = e(x, y) então segue que:

a2
±ei,j ≤ max |ei,j | + N0 .
∂Rδ 2

Mas como Ui,j = ui,j = gi,j na fronteira ∂Rδ temos que ei,j = 0 em ∂Rδ . Assim,

a2
±ei,j ≤ N0
2
ou seja,
a2 a2
|ei,j | ≤ N0 = max |∆δ ei,j |.
2 2 Rδ
Agora,

∆δ ei,j = ∆δ (u(xi , yj ) − Ui,j ) = ∆δ u(xi , yj ) − ∆δ Ui,j = ∆δ ui,j − fi,j = τi,j ,


4.4. CONDIÇÕES DE FRONTEIRA EM DOMÍNIOS GERAIS 123

usando (4.14). Assim,

a2 a2
|ei,j | ≤ max |τi,j | ≤ (P h2 + Qk 2 ).
2 Rδ 24

Portanto o método numérico definido em (4.7) produz uma solução Ui,j que converge
pontualmente para a solução u(xi , yj ) quando h → 0 e k → 0, com xi = ih e yj = jk valores
fixos.

Corolário 4.1 Uma consequência do teorema 4.2 é que o sistema de equações lineares
AU = r definido pela matriz (4.11) tem uma única solução.

Prova: Provaremos que o sistema homogêneo correspondente a (4.7) tem somente a solução
trivial. Para isso consideremos o problema homogêneo:

−(uxx + uyy ) = 0 em R

com condição de fronteria homogênea u = 0 sobre a fronteira ∂R, cuja única solução é
obviamente a solução u ≡ 0. Discretizando esse problema, como fizemos para obter (4.7),
teremos um sistema linear homogêneo para as incógnitas Ui,j . Utilizando agora o teorema
4.2 com V (x, y) = Ui,j , obtemos:

max Ui,j ≤ max Ui,j = 0.


Rδ ∂Rδ

Por outro lado como ∆δ Ui,j = 0, pois estamos assumindo que Ui,j é solução da equação de
diferenças, temos também , usando a parte (b) do teorema 4.1:

min Ui,j ≥ min Ui,j = 0.


Rδ ∂Rδ

Assim, Ui,j = 0 é a unica solução do sistema em questão. 2

4.4 Condições de Fronteira em Domı́nios Gerais


Na prática, raramente os problemas possuem domı́nios retangulares, de forma que os
métodos apresentados na seção anterior teriam pouco valor na solução de problemas reais,
não fossem eles estendı́veis para domı́nios mais gerais. Nesta seção apresentaremos duas
técnicas para aproximação numérica da equação de Poisson com condição de fronteira de
Dirichlet em domı́nios gerais. O caso da condição de Neumann é bem mais complexo e será
tratado em outra seção. Consideremos então o problema de Dirichlet num domı́nio R como
o da figura 4.3.

Observação 4.4.1 Na figura 4.3 e seguintes estaremos utilizando a localização geográfica


para rotular os pontos da discretização de 5 pontos, isto é, o ponto central da discretização
chamaremos de C, N para o ponto acima (Norte), S para o ponto abaixo (Sul), L para o
ponto à direita (Leste) e O para o ponto à esquerda (Oeste).
124 CAPÍTULO 4. EQUAÇÕES ELÍPTICAS

yN=b

O C L
y2
P Q
y1
S
y0
x0 x1 x2 xM=a x

Figura 4.3: Domı́nio geral – Aproximação por lados da malha

Notemos que, ao contrário do caso de domı́nio retangular, neste caso os pontos onde
a condição de fronteira é conhecida não fazem parte da malha e portanto não podemos
utilizar a condição de fronteira para eliminá-los da equação (4.7). A primeira técnica que
apresentamos consiste em aproximar a fronteira do domı́nio por segmentos da malha como
ilustrado na figura 4.3 pela linha mais grossa. Completada essa aproximação passamos
a resolver o problema no novo domı́nio supondo que a condição de fronteira u(x, y) =
g(x, y) aplica-se agora sobre a nova fronteira. Como pode ser facilmente e diretamente
observado da figura 4.3, ao refinarmos a malha melhores aproximações da fronteira são
obtidas. Entretanto, esse não é o método mais preciso que podemos deduzir. Sua grande
vantagem está na simplicidade e facilidade de aplicação. Na prática, quando aproximamos
o domı́nio pelos lados das células e transportamos a condição de fronteira para essa nova
curva, (observe o ponto P na figura 4.3), estamos aproximando o valor de UO por aquele
de UP , ou seja, estamos interpolando u na célula por um polinômio constante de grau zero.
Como é sabido da teoria da aproximação [30], o erro em tal aproximação é de ordem h. Já
o erro de aproximação da equação diferencial por diferenças finitas, como foi mostrado em
(4.17), é de ordem h2 . Por essa razão foi comentado acima ser esse um método que não goza
de boa precisão.
O sistema linear resultante da aplicação dessa técnica é similar àquele obtido para o caso
de um domı́nio retangular tendo a forma AU = r, onde U representa o vetor das incógnitas,
a matriz A tem as mesmas caracterı́sticas daquela em (4.11), a menos do fato de que a
subdiagonal onde aparece a constante c deixa de ser uma diagonal e os valores aparecem em
zig-zag.
4.4. CONDIÇÕES DE FRONTEIRA EM DOMÍNIOS GERAIS 125

Exemplo 4.4.1 Considere como um exemplo, a equação de Poisson com condição de fron-
teira de Dirichlet para o domı́nio da figura 4.4. A discretização dessa equação por diferenças

y9 =b

22 23 24

17 18 19 20 21

11 12 13 14 15 16

6 7 8 9 10

2 3 4 5
y2
y1 1

y0
x0 x1 x2 x 8=a x

Figura 4.4: Exemplo de discretização com 24 pontos internos

finitas de cinco pontos tomando como aproximação da fronteira irregular os lados da malha,
conforme ilustrado pela linha cheia na figura 4.4, produz um sistema linear 24 × 24 AU = r
onde:

U = (U1 , U2 , . . . , U24 )T
126 CAPÍTULO 4. EQUAÇÕES ELÍPTICAS

com Ui denotando uma aproximação para u(x, y) no ponto da figura 4.4 marcado com i.
a c
 
 a b c 

 b a b c 

c b a b c 
 

 b a c 

 a b c 
c b a b c
 
 

 c b a b c 


 c b a b c 


 c b a c 

 a b 
c b a b c
 
A=
 
 c b a b c 


 c b a b c 


 c b a b c 

 c b a c 
c a b c
 
 

 c b a b c 


 c b a b c

 c b a b 

 c b a 
c a b
 
 
 c b a b
c b a
onde
2 2 1 1
a= + 2, b = − 2 e c=− 2
h2 k h k
O vetor r contém o valor da função f (x, y) avaliada nos pontos correspondentes à enu-
meração da figura 4.4 e também os valores da fronteira. Por exemplo a primeira coordenada
de r é:
g(x4 , y1 ) + g(x6 , y1 ) g(x5 , y0 )
r1 = f (x5 , y1 ) + +
h2 k2
que corresponde ao valor de f no ponto 1 adicionado aos valores da fronteira correspondentes
aos pontos à esquerda e à direita de 1 e também do ponto abaixo.
As demais coordenadas de r são calculadas de maneira similar e deixamos como exercı́cio.
(Ver exercı́cio (4.9)). )
A outra técnica consiste na utilização de um polinômio de primeiro grau na interpolação.
No caso da figura 4.3 utilizamos os pontos P e C para interpolação e avaliamos esse polinômio
no ponto O, na verdade uma extrapolação! Assim o valor de UO será expresso como função
dos valores de UP que é conhecido e de UC que não o é. Isto produz uma equação que
permite a eliminação de UO da equação de diferenças para UC .
Deduzimos a seguir as fórmulas para o caso especial do ponto C da figura 4.3. Na notação
da figura 4.3 temos
UO − 2UC + UL UN − 2UC + US
+ = fC . (4.21)
h2 k2
4.4. CONDIÇÕES DE FRONTEIRA EM DOMÍNIOS GERAIS 127

A grande dificuldade de (4.21) comparado com (4.7) é que em (4.21) o valor de UO é


desconhecido, pois este não está sobre a fronteria como seria o caso quando o domı́nio é
retangular. Observe na figura 4.5 a ampliação de uma parte da figura 4.3, onde mostramos
uma célula em que a fronteira do domı́nio corta seus lados.

0 < θ1<1
0 < θ2 < 1
(1- θ 1) h hθ1
O P L
C
hθ 2

Q
(1- θ 1) h

S
Figura 4.5: Interpolação linear

O polinômio linear que interpola UP e UC é


1
[(x − xC )UP − (x − xP )UC ] .
xP − xC
A aproximação para UO pode então ser facilmente deduzida substituindo x por xO na
expressão acima para obter:
1 −1
UO ≃ [(xO − xC )UP − (xO − xP )UC ] = [−hUP + (1 − θ1 )hUC ]
xP − xC hθ1
1
= [UP − (1 − θ1 )UC ] .
θ1
Da mesma forma
1
US ≃ [UQ − (1 − θ2 )UC ] .
θ2
Substituindo essas aproximações em (4.21) obtemos:
   
1 UP − (1 − θ1 )UB 1 UQ − (1 − θ2 )UB
− 2UB + UC + 2 − 2UB + UE = fB .
h2 θ1 k θ2
128 CAPÍTULO 4. EQUAÇÕES ELÍPTICAS

Eliminando agora os termos semelhantes e passando para o segundo membro os termos


conhecidos obtemos a equação final:
   
1 (1 + θ1 )UC 1 (1 + θ2 )UC UP UQ
U L − + U N − = fC − 2 − 2 . (4.22)
h2 θ1 k2 θ2 h θ1 k θ2

Uma variação da técnica de interpolação acima descrita e que é muitas vezes preferida
na prática por tratar-se de interpolação propriamente dita e não extrapolação é a seguinte:
Aplica-se a equação de diferenças de 5 pontos somente para aqueles pontos da malha
interiores ao domı́nio e para os quais todos os 4 vizinhos estão no domı́nio. Para pontos
interiores ao domı́nio com algum vizinho fora dele, calculamos uma aproximação por in-
terpolação. Assim, para o ponto C da figura 4.3 calculamos uma primeira aproximação
para UC interpolando na direção x os pontos UP e UL em seguida calculamos uma segunda
aproximação para UC interpolando na direção y os pontos UQ e UN e finalmente adotamos
como aproximação definitiva para UC a média ponderada pelas distâncias dos dois valores
obtidos
Formalmente, calculamos o polinômio que interpola UP e UL dado por:
1
[(x − xP )UL − (x − xL )UP ] .
xL − xP

Avaliamos esse polinômio no ponto xC para obter a primeira aproximação UC1 de UC .

hθ1 UL + hUP θ1 U L + U P
UC1 = = .
h + hθ1 1 + θ1

Da mesma forma calculamos uma segunda aproximação UC2 de UC interpolando na outra


direção e obtemos:
hθ2 UN + hUQ θ2 U N + U Q
UC2 = = .
h + hθ2 1 + θ2
Finalmente uma aproximação para UC pode então ser derivada tomando a média ponderada:

hθ1 UC1 + hθ2 UC2 θ1 UC1 + θ2 UC2


UC = = .
hθ1 + hθ2 θ1 + θ2
Maiores detalhes sobre as técnicas aqui descritas podem ser encontrados em [13] e [31].

4.5 Condição de Fronteria de Neumann


Consideramos nesta seção o problema de Poisson com condição de fronteira contendo
derivadas, ou seja, condições de fronteira de Neumann. No caso de domı́nio retangular,
o problema é especificado conforme a figura 4.6, onde além das condições de fronteira
mostramos também a malha da discretização .
Diferentemente do caso da condição de Dirichlet onde o valor de u é conhecido na fron-
teira, no presente caso devemos determinar u também nos pontos da fronteira. De forma
que precisamos considerar a equação de diferenças finitas para pontos como o ponto C da
4.5. CONDIÇÃO DE FRONTERIA DE NEUMANN 129

u y ( x ,b)=f 3 ( x )
b

ux ( 0, y )=f 4 ( y ) ux x + uy y = f(x,y) u x ( a, y )=f 2 ( y )

N
O C L

S a x
uy ( x , 0)=f 1 ( x )

Figura 4.6: Problema de Neumann no retângulo

figura 4.6. Como a equação de diferenças utiliza pontos para traz e para frente (também
para cima e para baixo) teremos que introduzir pontos fantasmas que estão fora do domı́nio
de cálculo, como aqueles formados pelas linhas tracejadas da figura 4.6. Utilizamos então as
condições de fronteira para eliminá-los. Assim, a equação de Poisson discretizada no ponto
C fica:
UO − 2UC + UL UN − 2UC + US
+ = fC . (4.23)
h2 k2
O ponto O é fantasma e deve ser eliminado. Descrevemos a seguir como eliminar esse
ponto. Procede-se de maneira similar na eliminação de pontos sobre as outras linhas trace-
jadas.
Com esse objetivo aproximamos a condição de fronteira ∂u(0,y)∂x = f4 (y) por diferenças
centrais no ponto C para obter:
UL − UO
f4 (yC ) =
2h
ou seja
UO = UL − 2hf4 (yC ). (4.24)
Portanto (4.23) transforma-se em:

UL − 2hf4 (yC ) − 2UC + UL UN − 2UC + US


+ = fC .
h2 k2
Eliminado os termos comuns e passando aqueles conhecidos para o segundo membro
obtemos:
2UL − 2UC UN − 2UC − US 2f4 (yC )
+ = fC + . (4.25)
h2 k2 h2
Observando as equações (4.25) e (4.22) concluimos que o efeito das condições de fronteira
no primeiro caso e da irregularidade da fronteira no segundo, nas equações discretizadas, é a
modificação do termo independente no lado direito dessas equações e também a modificação
130 CAPÍTULO 4. EQUAÇÕES ELÍPTICAS

de alguns elementos da matriz de coeficientes. As modificações na matriz são as mais


relevantes, pois apesar de somente uns poucos elementos sofrerem modificações, estas podem
ser suficientes para destruir propriedades importantes da matriz tais como simetria e diagonal
dominância.
O caso de domı́nios irregulares com condição de Neumann é muito mais complicado
para o tratamento com diferenças finitas. A grande dificuldade reside no fato de conhecer-
mos a derivada direcional ∂u ∂η sobre a fronteira do domı́nio de forma que ao, por exemplo,
aproximarmos o domı́nio pelos lados das células da discretização, como descrito para o caso
da condição de Dirichlet, não podemos simplesmente transportar essas condições para os
pontos da malha pois precisamos levar em consideração os cossenos diretores das derivadas
direcionais. Isto torna esse expediente extremamente tedioso e complexo o que leva alguns
autores [29] a sugerir que esses termos devam ser ignorados e devemos então considerar
as condições de fronteira sobre a malha como se aı́ fosse realmente sua localização. Esse
processo obviamente introduz erros que são de difı́cil análise.

4.6 Diferenças Finitas em Coordenadas Polares


A mudança de variáveis x = r cos(θ), y = r sen (θ) transforma a equação de Poisson em:
∂ 2 u 1 ∂u 1 ∂2
+ + = h(r, θ). (4.26)
∂r2 r ∂r r2 ∂θ2
Essa transformação pode ser bastante simplificadora no tratamento da discretização do
domı́nio no caso deste conter formas circulares, pois nesse caso as derivadas em (r, θ) são
derivadas direcionais nas direções do raio e do ângulo, de forma que podemos utilizar uma
malha como mostrado na figura 4.7.

δθ

ij

h i

Figura 4.7: Discretização em coordenadas polares

A equação aproximada no ponto (i, j) da malha toma então a forma:


 
Ui+1,j − 2Ui,j + Ui−1,j 1 Ui+1,j − Ui−1,j
+
h2 ih 2h
 
1 Ui,j+1 − 2Ui,j + Ui,j−1
+ = h(ih, jδθ)
(ih)2 δθ
4.7. MÉTODOS ITERATIVOS 131

Notemos que a equação acima tem a mesma forma da equação (4.7) a menos dos termos
resultantes da discretização da derivada de primeira ordem. No entanto esse termo irá
agrupar-se com aqueles provenientes das derivadas de segunda ordem e ao final teremos
o mesmo tipo de molécula de cálculo de 5 pontos tão bem conhecida. Os coeficientes da
discretização serão porém distintos daqueles que aparecem na discretização da equação de
Poisson em coordenadas cartesianas, como na equação (4.7).

4.7 Métodos Iterativos


Como ficou bastante enfatizado na seção anterior os métodos de discretização por
diferenças finitas, e de fato a maioria dos métodos de discretização de equações diferenciais
parciais, reduzem o problema contı́nuo a um problema discreto que resume-se, em última
instância, na solução de um conjunto de equações lineares, ou um sistema de equações lin-
eares como aquele de (4.9)-(4.10). Como sistemas lineares, estes poderiam ser resolvidos
por qualquer método de resolução de sistemas lineares, como os métodos diretos tipo Gauss,
ou métodos iterativos tipo Gauss-Seidel. Dessa forma, o leitor poderia indagar: que car-
acterı́sticas peculiares apresentam esses sistemas para merecerem uma seção especial nesta
monografia? No texto a seguir nos propomos a responder essa questão e discutir que alter-
nativas mostraram-se, ao longo dos anos, mais eficientes, baseando-nos na experiência de
vários autores relatada na literatura ao longo dos anos. A primeira particularidade dos sis-
temas lineares provenientes da discretização de equações diferenciais é que eles são, em geral,
muito grandes, pois o número de incógnitas é aproximadamente proporcional ao número de
pontos da malha, o que faz com que uma discretização por uma malha bidimensional com 10
pontos em cada direção produza um sistema com 100 equações. Na simulação de problemas
reais uma tal malha conteria ainda um número muito reduzido de pontos para a uma boa
representação dos fenômenos que pretende-se simular, de forma que malhas mais finas se são
uma necessidade. Com o refinamento da malha vem o crescimento quadrat́ico do número de
equações envolvidas. A segunda caracterı́stica está relacionada com a estrutura particular da
matriz do sistema de equações resultante dessas discretizações. Observando cuidadosamente
o sistema do exemplo 4.2.1, veremos que cada linha tem no máximo 5 elementos não nulos.
Esta constatação pode também ser auferida observando-se a equação (4.7). Isto faz com
que a grande maioria dos elementos da matriz coeficiente sejam nulos, ou seja essa matriz é
esparsa. A aplicação de um método direto do tipo Gauss para solução de um sistema cuja
matriz é esparsa não é em geral recomendado, pois ao se tentar eliminar os elementos da
parte triangular inferior dessa matriz, muitos elementos que eram nulos na matriz original
tornam-se não nulos ao longo do processo. Isto é chamado “fill in”. A grande dificuldade
imposta pelo processo de “fill in” está em que não se sabe a priori quais elementos serão
modificados, portanto deve-se reservar o espaço necessário para armazenar toda a matriz na
memória do computador, apesar da maior parte desse espaço estar sendo preenchida com
zeros.
Os métodos iterativos não sofrem desse problema pois, como veremos abaixo, esses
métodos requerem somente o resultado da multiplicação da matriz coeficiente por um vetor,
e portanto o padrão de zeros da matriz não sofre qualquer modificação ao longo do processo.
Por outro lado, os métodos iterativos nem sempre produzem uma solução do problema, pois
sua convergência não está assegurada no caso de matrizes gerais, ao passo que os métodos di-
retos sempre produzem uma solução em geral confiável. Felizmente as matrizes que surgem
132 CAPÍTULO 4. EQUAÇÕES ELÍPTICAS

da aplicação do método de diferenças finitas à equações parciais têm boas propriedades


e portanto os métodos iterativos têm algum sucesso na solução desses problemas. Resta
ainda a escolha, dentre os vários métodos existentes, daquele com melhor eficiência para a
solução do problema. Daremos a seguir uma introdução ao estudo dos métodos iterativos
que esperamos poderá guiar o leitor nessa tarefa.
Métodos iterativos resultam da aplicação repetida de um algoritmo, em geral simples,
que a partir de uma aproximação conhecida constrói uma nova, mais próxima da solução
exata. Portanto, eles fornecem a solução exata somente como limite de uma sequência,
mesmo quando erros de arredondamento não são levados em conta, ou seja, a solução obtida
não é exata mesmo no caso de trabalharmos com aritmética exata. Os métodos iterativos
são muito aplicados na solução do sistema Au = v, quando a matriz A é esparsa, pois nesse
caso pode-se programá-los levando-se em consideração os zeros de A. Outra caracterı́stica
muito positiva é que os métodos iterativos são auto-corrigı́veis, isto é, sua convergência é
independente da aproximação inicial, e sua estrutura permite a introdução de parâmetros
de controle, tais como sub e sobre-relaxação.
Todo método iterativo começa com uma aproximação inicial que é sucessivamente mod-
ificada de acordo com alguma regra. Para que seja útil, a iteração deve convergir mas, só
será considerada efetiva se a convergência for rápida.
Para resolver o sistema não singular Au = v por iteração, precisamos que a sequência
u(k) construı́da convirja para A−1 v (a solução),
u(k) −→ A−1 v, quando k → ∞.
Se u(k) é função de A, u, u(k−1) , ..., u(k−g) , dizemos que g é o grau da iteração. Para
economizar memória de computador usualmente escolhemos g como 1, 2 ou 3. Assim, com
g = 1, temos
u(k) = Fk (A, v, u(k−1) ).
Se Fk é independente de k o método iterativo é dito ser estacionário e, se Fk é linear
em relação a u(k−1) ele é chamado linear. O método iterativo linear mais geral é
u(k) = Gk u(k−1) + rk
onde Gk é uma matriz que depende de A, e rk é um vetor.
Para que este método seja útil é razoável esperar que quando tomarmos u(k−1) = A−1 v
a sequência produzida pelo método seja estacionária, isto é u(k) = A−1 v e portanto:

A−1 v = Gk A−1 v + rk . (4.27)


Assim, obtemos como condição de consistência
rk = (I − Gk )A−1 v.
Introduzindo a notação Mk = (I − Gk )A−1 , podemos expressar o método iterativo linear
geral como
u(k) = Gk u(k−1) + Mk v. (4.28)
Podemos analisar a convergência do método iterativo, equação (4.28), examinando o vetor
erro ek definido por:
4.7. MÉTODOS ITERATIVOS 133

ek = u(k) − A−1 v
= Gk u(k−1) + Mk v − A−1 v
= Gk u(k−1) + Mk v − Gk A−1 v − Mk v
= Gk (u(k−1) − A−1 v)
= Gk ek−1 .

Aplicando-se esta equação repetidamente, temos:

e1 = G0 e0 ,
e2 = G2 G1 e0 ,
..
.
ek = Gk Gk−1 · · · G1 e0 .

Consequentemente, a convergência do método, para um erro inicial conhecido e0 , de-


pende da condição:

Hk e0 = Gk Gk−1 · · · G1 e0 −→ 0, quando k −→ ∞.

Quando o método iterativo é estacionário e linear, Gk = G. Logo, Hk = Gk , de modo


que a questão da convergência depende da análise de Gk e0 .
Os métodos iterativos são classificados quase que naturalmente, em duas categorias:
os métodos iterativos pontuais e os bloco iterativos. Os métodos iterativos pontuais são
caracterizados pela natureza explı́cita dos cálculos de cada componente da aproximação
seguinte, em contraposição à necessidade da solução de vários subsistemas lineares em cada
estágio do cálculo nas técnicas bloco iterativas.
Descreveremos, a seguir, alguns métodos iterativos pontuais elementares.
Muitos dos mais conhecidos métodos iterativos são construidos a partir da decomposição
de A em

A = L + D + S,

onde

0 0 ... 0
 
 a21 0 ... 0
L=
 ... .. .. .
. . .. 
an1 an2 ... 0
é uma matriz estritamente triangular inferior,

a11 0 ... 0
 
 0 a22 ... 0 
D=
 ... .. .. .. 
. . . 
0 0 . . . ann
134 CAPÍTULO 4. EQUAÇÕES ELÍPTICAS

é uma matriz diagonal e


0 a12 . . . a1n
 
0 0 . . . a2n 
S=
 ... .. .. .. 
. . . 
0 0 ... 0
é uma matriz estritamente triangular superior.

Método de Jacobi
Este método, primeiro aplicado por Jacobi em 1844, é também chamado iteração por
passos totais ou método dos deslocamentos simultâneos. O método de Jacobi, devido a
sua simplicidade de implementação é muito utilizado como primeira tentativa de solução
por muitos usuários, principalmente iniciantes na arte. No entanto, a convergência desse
método pode ser excessivamente lenta comparada com outras técnicas mais elaboradas.
Neste texto, utilizaremos sempre o método de Jacobi para ilustrar os conceitos discutidos.
Seja:
A = L + D + S.
Para a aplicação do método de Jacobi é necessário que os elementos diagonais da matriz
D, os a′ii s, sejam não nulos (no caso do exemplo 4.2.1, aii = 4, i = 1, 2, ..., N ), de modo que
D é não singular. Portanto, D−1 existe e, pré-multiplicando (L + D + S)u = v por D−1
temos:

u = −D−1 (L + S)u + D−1 v.

Comparando com o esquema iterativo linear geral, vemos que a escolha

Gk = −D−1 (L + S), Mk = D−1 , (4.29)


caracteriza o método de Jacobi

u(k) = GJ u(k−1) + MJ v, (4.30)


onde dispensamos o ı́ndice k em Gk e Mk para enfatizar o carácter estacionário deste método
e o substituimos por J para identificar o método como sendo o de Jacobi. Logo, a matriz
GJ , conhecida como matriz de iteração do método, é dada por GJ = −D−1 (L + S).
Escolhendo um vetor inicial arbitrário u(0) e, escrevendo os elementos de GJ como gij J
,
(k)
cada componente do vetor u da k-ésima iteração, é dada por:
N
(k) (k−1)
X
J
ui = gij uj + ti , (4.31)
j=1

onde ti denotam os elementos de MJ v = D−1 v.


Como exemplo, tomemos a equação (4.7), para aproximar o problema (4.3) – (4.4). O
(k)
valor da solução melhorada Ui,j é obtido por uma média da solução “velha” nos quatro
vizinhos de i, j:
4.7. MÉTODOS ITERATIVOS 135

(k) 1 (k−1) (k−1) (k−1) (k−1)


Ui,j = [U + Ui−1,j + Ui,j+1 + Ui,j−1 + h2 fij ]. (4.32)
4 i+1,j
(k)
A ordem dos ı́ndices i, j, com que as componentes Ui,j são calculadas não traz con-
sequência alguma, embora, na prática, é necessário que uma ordem seja seguida. Observe
que a implementação da equação (4.32) exige o armazenamento de U(k−1) até que a k-ésima
iteração se complete. Esta é uma das desvantagens desse método, uma vez que ele requer
o armazenamento dos dois vetores das iterações k − 1 e k. Essa desvantagem não aparece
com o método de Gauss-Seidel estudado a seguir.

Método de Gauss-Seidel
Este método foi usado por Gauss em seus cálculos e independentemente descoberto
por Seidel em 1874. Esse esquema, também conhecido como método dos deslocamentos
sucessivos ou por passos simples, é baseado no uso imediato dos valores recentemente atual-
izados. Pode ser derivado da equação (4.31) substituindo-se os valores da iteração corrente,
já calculados, nessa mesma iteração, isto é,
i−1 N
(k) (k) (k−1)
X X
J J
ui = gij uj + gij uj + ti . (4.33)
j=1 j=i+1

Na forma vetorial, lembrando a forma da matriz GJ :

Iu(k) = −D−1 Lu(k) − D−1 Su(k−1) + D−1 v,

que pode ser reescrito como:

(L + D)u(k) = −Su(k−1) + v.

Logo,

u(k) = −(L + D)−1 Su(k−1) + (L + D)−1 v. (4.34)


Assim, o método de Gauss-Seidel é um esquema iterativo estacionário linear cuja matriz de
iteração é

GS = −(L + D)−1 S.

A matriz −(L + D)−1 existe desde que o determinante de L + D seja não nulo e este é
o caso quando os elementos diagonais de A são não nulos.
Para ilustrar este conceito retornamos à equação (4.7) supondo que a enumeração sele-
cionada seja U1,1 , U1,2 , ..., U1,N , U2,1 , U2,2 , ... , isto é, de baixo para cima e da esquerda para
(k)
a direita como na figura 4.8. Assim, para calcular Ui,j os valores já calculados no k-ésimo
passo são usados em todos os pontos que estão sobre todas as linhas abaixo da j-ésima e
nos pontos da j-ésima linha com coordenadas menores que i, isto é, abaixo da linha sólida
L na figura 4.8.
136 CAPÍTULO 4. EQUAÇÕES ELÍPTICAS

(i,j)
3
L
2

j=0
i=0 1 2 3 4 5 6

Figura 4.8: Ilustração gráfica dos pontos utilizados na iteração de Gauss–Seidel

Consequentemente, a forma prática para implementação do método de Gauss-Seidel para


a equação (4.7) será

(k) 1 (k−1) (k) (k−1) (k)


Ui,j = [U + Ui−1,j + Ui,j+1 + Ui,j−1 + h2 fij ]. (4.35)
4 i+1,j

Sobre-relaxação Sucessiva (SOR)


A simplicidade dos métodos de Jacobi e Gauss-Seidel é um grande atrativo para sua
utilização, especialmente por usuários que não pretendem fazer um grande investimento
de tempo na implementação de um método de solução de sistemas lineares, como já men-
cionamos. Mencionamos também, que infelizmente esses métodos podem não correponder
quanto à sua rapidez de convergência, pois esta vai depender, como veremos na próxima
seção, do raio espectral da matriz G. Se este raio for próximo de 1 a convergência pode
ser proibitivamente lenta. Uma tentativa para sanar essa dificuldade e trazer o raio es-
pectral para valores bem menores que um, consiste na seguinte modificação do método de
Gauss-Seidel conhecido como sobre-relaxação sucessiva (SOR).
(k)
Sejam ui as componentes do vetor obtido na k-ésima iteração do método de Gauss-
Seidel. A técnica SOR é definida por meio da relação
(k) (k−1) (k) (k−1) (k−1) (k)
ui = ui + w[ui − ui ] = (1 − w)ui + wui , (4.36)
que significa que, o vetor a ser calculado no passo k é uma combinação linear entre o vetor
obtido na k-ésima iteração do método de Gauss-Seidel e do vetor obtido no passo anterior, na
verdade uma média ponderada entre esses vetores, cujo fator de ponderação é w. Se w = 1,
o método reduz-se ao método da Gauss-Seidel. w é chamado parâmentro de relaxação e sua
escolha determina a velocidade de convergência.
Substituindo (4.33) em (4.36), temos a forma algébrica do método SOR:
i−1 N
(k) (k−1) J (k) J (k−1)
X X
ui = (1 − w)ui + w[ gij uj + gij uj + ti ]. (4.37)
j=1 j=i+1

Em notação matricial podemos escrever


4.8. CONVERGÊNCIA 137

Iu(k) = (1 − w)Iu(k−1) − w[D−1 Lu(k) − D−1 Su(k−1) + D−1 v]. (4.38)


Multiplicando ambos os membros de (4.38) por D e rearranjando, obtemos:

(D + wL)u(k) = [(1 − w)D − wS]u(k−1) + wv.

Logo,

u(k) = (D + wL)−1 {[(1 − w)D − wS]u(k−1) + v}, (4.39)


cuja matriz de iteração é

Gw = (D + wL)−1 [(1 − w)D − wS].

Note que fazendo w = 1 na equação acima obtemos a matriz de iteração de Gauss-Seidel.


Espera-se dessa forma que com uma escolha adequada de w possamos reduzir o raio espectral
dessa matriz de iteração, o que faria esse método ter uma convergência mais rápida. Na
prática no entanto essa escolha do parâmetro w não é tão simples como pode parecer a
primeira vista. De fato esse é um problema extremamente complexo e em geral a escolha do
parâmetro que proporcionará melhor convergência é feita por experimentação ou de forma
empı́rica basendo-se em propriedades do problema prático que está sendo resolvido.

4.8 Convergência
Consideremos um método iterativo linear estacionário (como na seção 4.7)

u(k) = Gu(k−1) + r.

A solução exata u desse problema satisfaz:

u = Gu + r.

Subtraindo membro a membro essas equações deduzimos que o erro na k-ésima iteração é
dado por

ek = u(k) − u = G(uk−1 − u) = Gek−1 .

Consequentemente,
ek = Gk e0 . (4.40)
Portanto, a análise da convergência de um método iterativo está intimanente relacionada
com o comportamento de Gk quando k → ∞. Para estudar esse comportamento com um
pouco mais de detalhe, faremos a seguir uma rápida revisão de alguns conceitos de Álgebra
Linear (ver, por exemplo, Varga, [22] ).
Seja u um vetor com N componentes complexas e A = (aij ) uma matriz complexa N xN .
Sejam também u∗ e A∗ os respectivos transpostos conjugados de u e A. A norma euclidiana
de u é definida por
138 CAPÍTULO 4. EQUAÇÕES ELÍPTICAS

N
!1/2
X
∗ 1/2 2
||u|| = [u u] = |ui | (4.41)
i=1

e a norma espectral de A por:

||A|| = [λ(A∗ A)]1/2 , (4.42)


onde λ(A∗ A) é o raio espectral de A∗ A. O Raio espectral de uma matriz é definido como o
maior autovalor em valor absoluto, isto é:

λ(A) = max {|λ|, tal que λ é autovalor de A} .

A norma espectral e o raio espectral estão relacionados da seguinte forma:


i. Para qualquer matriz A tem-se ||A|| ≥ λ(A).
ii. Se A é hermitiana (isto é, A∗ = A), então ||A|| = λ(A).
iii. Se λ(A) < 1 e n é grande, então ||An || ≈ [λ(A)]n .
De (4.41) e (4.42) pode-se mostrar que
||Ax||
||A|| = sup e ||Ax|| ≤ ||A||||x||. (4.43)
x6=0 ||x||
Tomando a norma em (4.40) e usando (4.43) obtemos a desigualdade fundamental para
o estudo da convergência dos métodos iterativos:

||ek || = ||Gk e0 || ≤ ||Gk ||||e0 ||. (4.44)


Consequentemente, se e0 não é o vetor nulo, ||Gk || fornece um limitante superior para a
razão ρ = ||ek ||
||e0 || .
Podemos então enunciar o seguinte teorema:
Teorema 4.3 Se o raio espectral da matriz de iteração G satisfaz λ(G) < 1, então o pro-
cesso iterativo linear definido por u(k) = Gu(k−1) + r converge para a solução u = A−1 v
qualquer que seja o vetor inicial u(0) .
Esse resultado pode ser utilizado, ver Golub e Van Loan [26], para mostrar que se A é
simétrica e definida positiva então o método de Gauss-Seidel é convergente.
De (4.44) e da definição do raio espectral vemos que:

||ek || ≤ λ(G)k ||e0 ||.

Reescrevendo essa relação com k+1 no lugar de k e dividindo-se uma pela outra encontramos:

||ek+1 ||
λ(G) ≈ . (4.45)
||ek ||
4.8. CONVERGÊNCIA 139

||ek+1 ||
De forma que para valores grandes de k, ||ek || se aproxima de λ(G). Portanto, na média, o
||ek+1 ||
erro decresce de um fator λ(G) a cada passo de iteração. Na verdade, se ||ek || se aproxima
de λ(G), então, o número

R(G) = − log10 λ(G) (4.46)


k k−1
é a taxa de convergência da iteração linear u = Gu + r, caracterizada pela matriz G.
Substituindo ||Gk || por [λ(G)]k na equação (4.44) vemos que ρ ≈ [λ(G)]k . Assim, uma
boa aproximação para o número de iterações necessárias para reduzir o erro inicial de um
fator ρ pode ser calculado da forma a seguir.
Por definição temos:
||ek ||
ρ= ≈ [λ(G)]k .
||e0 ||
Tomando agora o logarı́tmo de ambos os lados obtemos:
− log ρ − log ρ
k= = . (4.47)
− log λ(G) R(G)
Note que ||ek || = ρ||e0 || e portanto ρ pode ser interpretado como o fator de redução do erro
||e0 || obtido depois de k iterações do método, e portanto (4.47) deve ser interpretado como
uma estimativa para o número necessário de iterações para reduzir um dado erro de um
fator ρ.
Acompanhe o desenvolvimento a seguir no qual vamos apresentar a comparação dos
vários métodos iterativos através de um exemplo simples. Seja R o quadrado, 0 < x <
π, 0 < y < π, onde pretendemos determinar a solução do problema de Dirichet para a
equação de Poisson, pela aplicação do método dado pela equação (4.7), com M = N e
h = k, isto é,
Ui−1,j − 4Ui,j + Ui+1,j + Ui,j−1 + Ui,j+1
= −fij . (4.48)
h2
π
Obviamente h = N e R foi então dividido em (N − 1)2 quadrados de lado h, com
2
n = (N − 1) pontos interiores.
Denotaremos por Ah a matriz quadrada formada pela aplicação da equação (4.48) para
i, j = 1, 2..., N − 1, isto é,
−4 1 1
 
..
 1 −4 1
 . 0 

 .. .. .. .. 
 . . . 0 . 
.. .. ..
 
. . .
 
 1 
1  .. .. .. 
Ah = 2  . . .
 (4.49)
h   
 1 . .. . .
.. ..


 
 . .. . . . . . . 
 0 . . . 
..
 

0 . 1 −4 1

1 1 −4
140 CAPÍTULO 4. EQUAÇÕES ELÍPTICAS

Denotaremos por Xpq os (N − 1)2 autovetores de −Ah com correspondentes autovalores


µpq , p, q = 1, 2, . . . , N − 1.
Da relação

−Ah Xpq = µpq Xpq , (4.50)


é possı́vel provar que os autovetores de −Ah , para cada par de inteiros (p, q), podem ser
obtidos variando-se os parâmetros i e j na expressão:

Xpq = ( sen (iph) sen (jqh))T i, j = 1, 2, . . . , N − 1. (4.51)


Os autovalores são:
 
4 ph
2 2 qh
µpq = 2 sen ( ) + sen ( ) . (4.52)
h 2 2
Facilmente vemos que
8 h
min µpq = µ11 = 2
sen2 −→ 2, quando h → 0 e (4.53)
h 2
8 h 8
max µpq = µN −1,N −1 = (1 − sen2 ) ∼ 2 , quando h → 0. (4.54)
h2 2 h
A convergência do método de Jacobi é determinada pelos autovalores de

GJ = −D−1 (L + S).

Desde que A = L + D + S, temos

GJ = −D−1 (A − D) = I − D−1 A.

Em nosso problema, A = −Ah e D = h42 I, de modo que




h2
GJ = I + (Ah ).
4
Como os autovalores de −Ah são dados por (4.52), os autovetores, λJpq , de GJ são
   
ph qh cos ph + cos qh
λJpq = 1 − sen 2
− sen 2
= , p, q = 1, 2, . . . , N − 1.
2 2 2

Consequentemente, o raio espectral é

h2
λ(GJ ) = max |λJpq | = cos h ∼ 1 − , quando h → 0,
2
e a taxa de convergência é portanto
4.8. CONVERGÊNCIA 141

h2 h2
R(GJ ) = − log(cos h) ∼ − log(1 − )= + O(h4 ). (4.55)
2 2
2
Portanto, a taxa de convergência do método de Jacobi é aproximadamente h2 , que é bastante
lenta para valores pequenos de h.
A convergência do método de Gauss-Seidel aplicado à equação (4.48) é estudada de
maneira análoga. O autovalor dominante, nesse caso, é

λ(GS ) = max |λSpq | = cos2 h ∼ 1 − h2 , quando h → 0.

Consequentemente, a taxa de convergência é

R(GS ) = − log(cos2 h) ∼ h2 + O(h4 ),

que é duas vezes mais rápido do que o método de Jacobi. Se a matriz A tem uma propriedade
chamada propriedade 2 A ( [Ames 1992] páginas 168-170) é possı́vel mostrar que o método
SOR, cuja matriz de iteração é dada por,

Gw = (D + wL)−1 [(1 − w)D − wS]

tem seus autovalores λw


pq dados pelas soluções da equação:

(λw
pq + w − 1)
2

w
= w2 (λJpq )2 , (4.56)
λpq

onde λJpq é um autovalor da matriz de iteração GJ do método de Jacobi.


Este resultado relaciona os autovalores da matriz de iteração do método SOR com os da
matriz de iteração do método de Jacobi e portanto permite a determinação dos autovalores
de Gw em função daqueles de GJ . A prova desse resultado esta além dos objetivos deste
texto, mas pode ser encontrada em [37] nas páginas 55-58.
Se w = 1, então o método SOR se transforma no método de Gauss-Seidel e encontramos

λSpq = (λJpq )2 .

Assim, temos a seguinte relação para os raios espectrais

λ(GS ) = [λ(GJ )]2 ,

de onde segue que

R(GS ) = 2R(GJ ),

ou seja, a taxa de convergência do método de Gauss-Seidel é duas vezes a do método de


Jacobi, conforme já havı́amos concluido.
 
2 Uma D1 F
matriz tem a propriedade A se existe uma matriz de permutação Π tal que ΠAΠ−1 =
G D2
onde F e G são matrizes retangulares e D1 , D2 matrizes diagonais. A
142 CAPÍTULO 4. EQUAÇÕES ELÍPTICAS

Vários autores [37], [Ames 1992] e [31] estudam em detalhes a relação (4.56) na tentativa
de derivar um valor de w que minimize o raio espectral de Gw . E de fato esse estudo produz
o seguinte valor ótimo para o parâmetro w, no sentido de minimizar o raio espectral de Gw ,
ver [Ames 1992] páginas 171-173.

2 2
wotm = p = p (4.57)
1 + 1 − (λ(GJ ))2 1 + 1 − (λJ11 )2

Com w = wotm temos que λ(Gw ) = wotm − 1.


Para o sistema linear produzido pela equação (4.48) sabemos que λ(GJ ) = cos h e por-
tanto o raio espectral de Gw com w = wotm pode ser calculado e obtemos:

2 2 1 − sen h
λ(Gw ) = wotm − 1 = p −1 = √ −1 = ≈ 1 − 2h.
1 + 1 − (λ(GJ ))2 2
1 + 1 − cos h 1 + sen h

Portanto a taxa de convergência do método SOR utilizando o parâmetro ótimo é:

R(Gwotm ) = log(λ(Gwotm )) ≈ 2h

que é consideravelmente maior que a taxa de convergência de Jacobi ou Gauss-Seidel.


A tabela abaixo apresenta alguns valores comparativos entre as taxas de convergência
dos métodos de Gauss-Seidel e SOR com parâmetro ótimo, para valores pré-fixados do
raio espectral da matriz de iteração de Jacobi. As colunas marcadas com k representam
o número de iterações de cada método (a primeira é para Gauss-Seidel e a segunda para
SOR) necessárias para reduzir um dado erro de um fator de 10. Observe que quando o raio
espectral aproxima-se de 1 o método SOR é muito mais eficiente do que o método de Gauss-
Seidel. (Veja [37] página 61). As outras colunas mostram o raio espectral das matrizes de
iteração desses métodos.

Tabela 4.1
2
λ(GJ ) k wotm λ(Gwotm ) k
0.500 4 1.17 0.17 2
0.700 7 1.29 0.29 2
0.800 11 1.38 0.38 3
0.900 18 1.52 0.52 4
0.950 45 1.63 0.63 5
0.990 230 1.82 0.82 12
0.999 2300 1.94 0.94 37

Um dos grandes problemas para a aplicação prática do método SOR é a escolha do


parâmetro w, pois não é viável o cálculo do raio espectral da matriz de iteração de Jacobi,
por ser esse um processo muito custoso computacionalmente. Nas aplicações utiliza-se a
seguinte estratégia: Começamos com a iteração de Gauss-Seidel, isto é w = 1, calculamos o
seu resı́duo resk = v − Au(k) e então podemos escrever:

resk = v − Au(k) = Au − Au(k) = A(u − u(k) ) = −Aek . (4.58)


4.9. MÉTODO DOS GRADIENTES CONJUGADOS 143

A equação (4.58) indica que o resı́duo é “proporcional” ao erro e consequentemente eles


apresentam o mesmo comportamento assintótico. Agora sabemos de (4.45) que ek ≈
λ(GJ )2 ek−1 . Assim,

resk = −Aek ≈ −λ(GJ )2 Aek−1 = λ(GJ )2 resk−1 (4.59)


e portanto o quociente das normas dos resı́duos de duas iterações consecutivas do método de
Gauss-Seidel produz uma aproximação para o raio espectral λ(GJ )2 . Estimando esse valor
podemos utilizá-lo para estimar o valor de wotm , isto é, uma estimativa para o raio espectral
é derivada de (4.59) na forma:
||resk ||
λ(GJ )2 ≈
||resk−1 ||
que juntamente com (4.57) produz uma estimativa para wotm .
Observação 4.8.1 Uma outra questão prática fundamental é que nunca devemos subesti-
mar o parâmetro wotm mas superestima-lo, isto deve-se ao fato de que o comportamento do
raio espectral como função de w não é diferenciável no ponto w = wotm , e tem tangente
− +
infinita para w → wotm mas tem tangente finita para w → wotm , veja a figura em [37]
página 61.
Uma classe de métodos que recentemente tem se tornado muito popular para solução de
sistemas lineares derivados da discretização de equações diferenciais parciais é o método dos
gradientes conjugados, que passaremos a apresentar de forma suscinta.

4.9 Método dos Gradientes Conjugados


O material dessa seção segue a apresentação em [Shewchuck 1994]. Alguns resultados
podem ser também encontrados em [26]. O método dos gradientes conjugados (GC) tem sido
um dos métodos mais utilizados recentemente para a solução de sistemas lineares esparsos
simétricos e definidos positivos. A razão para essa preferência é frequentemente justificada
pelas boas propriedades de convergência desse método e sua versatilidade no tratamento de
sistemas esparsos, juntamente com a facilidade de implementação em ambientes paralelos.
Como veremos logo adiante, para a aplicação do método GC tudo que precisamos saber é
como calcular o produto matriz-vetor Ax, onde x é um vetor arbitrário. Na maioria das
vezes, é possı́vel calcular esse produto sem a necessidade de armazenamento da matriz de
coeficientes A. Por exemplo no caso da discretização da equação de Poisson definida num
retângulo, por diferenças finitas de 5 pontos, temos que a coordenada m do vetor produto
y = AU pode ser calculada da forma:
Um+1 − 2Um + Um−1 Um+p − 2Um + Um−p
ym = 2
+
h k2
onde p representa o número de pontos na direção x. Vemos da fórmula acima que para
calcular o produto AU, tudo que temos que fazer é saber quais valores de U entram no
cálculo, não sendo necessário o armazenamento de uma matriz. No caso mais geral em que
o domı́nio não é um retângulo as considerações acima continuam válidas, mas nesse caso o
144 CAPÍTULO 4. EQUAÇÕES ELÍPTICAS

número p varia com a coordenada m de y que está sendo calculada, de forma que p será
então uma função de m. Computacionalmente essa dependência é resolvida utilizando-se
endereçamento indireto, isto é, os ı́ndices m + p e m − p são armazenados em variáveis
indup(m) e inddown(m) que conterão as localizações das posições de U que devem entrar
na formação da coordenada m de y.
Começamos a dedução do método GC considerando como fariamos para minimizar o
funcional:
1
φ(x) = xT Ax − xT b
2
onde b é um vetor de n componentes, A uma matriz n × n simétrica e definida positiva.
Definição 4.1 Uma matrix A é definida positiva se para todo vetor x não nulo tem-se
xT Ax > 0.
A definição acima não é muito intuitiva, mas o leitor não deve desesperar-se pois esse
conceito ficará mais claro quando explicarmos como ele influencia o gráfico de uma forma
quadrática.
O cálculo dos pontos crı́ticos de φ, leva-nos à conclusão de que o único mı́nimo de φ
T −1
ocorre quando x = A−1 b, com valor do mı́nimo igual a −b 2A b . Dessa forma minimizar o
funcional φ e resolver o sistema linear Ax = b são problemas equivalentes. Para ilustrar o
que dissemos acima consideremos o seguinte sistema linear:

10x + 2y = 12
2x + 8y = 10

cuja solução é (1, 1)T .


A solução desse sistema é dada graficamente pela intersecção das retas y = 6 − 5x e
y = 1.25 − 0.25x.
A matriz A, o vetor b e o vetor x são dados por:
     
10 2 12 x
A= , b= e x= .
2 8 10 y

A matriz acima é definida positiva (verifique!). A forma quadrática φ(x) = 12 xT Ax−xT b =


5x2 + 2xy + 4y 2 − 12x − 10y associada tem o gráfico da figura 4.9:
Como prometemos, uma interpretação gráfica para a propriedade “definida positiva” é
a seguinte: O gráfico da função φ(x), no caso em que A é definida positiva, tem sempre a
forma de um cálice (veja a figura 4.9), o que implica que φ(x) tem um único ponto crı́tico
que é um ponto de mı́nimo. Esse cálice pode ser bastante distorcido de forma que o corte
(intersecção) dele por um plano horizontal resulte em uma elipse e não em um cı́rculo.
Se a propriedade xT Ax > 0 for enfraquecida para xT Ax ≥ 0 a garantia de um único
ponto de mı́nimo fica comprometida como pode ser facilmente imaginado considerando-se
uma calha de seção parabólica (o eixo maior da elipse torna-se infinito). Todos os pontos
no fundo da calha são pontos de mı́nimo.
Uma estratégia para minimizar φ é o método de máxima descida, no qual um ponto x0
sobre o parabolóide é escolhido como ponto inicial e descemos em direção ao fundo do cálice
por uma série de pontos x1 , x2 , x3 , · · · até encontrarmos um ponto suficientemente próximo
4.9. MÉTODO DOS GRADIENTES CONJUGADOS 145

600

500

400

300

f(x,y)
200

100

−100
10
5 10
0 5
0
−5
−5
y −10 −10
x

Figura 4.9: Gráfico da forma quadrática φ(x)

do ponto de mı́nimo. A descida na direção do ponto de mı́nimo é efetuada pelo algoritmo:


Para qualquer ponto xp dado, a direção em que a função φ decresce mais rápidamente é a
direção oposta ao gradiente ▽φ(xp ), isto é, na direção − ▽ φ(xp ) = b − Axp .
Definimos agora o resı́duo em xp como rp = b − Axp . No método de máxima descida um
número α deve ser encontrado de forma que φ(xp + αrp ) seja mı́nimo, isto é, minimizamos
a função φ na direção de busca rp . Temos então:

1
φ(xp + αrp ) = (xp + αrp )T A(xp + αrp ) − (xp + αrp )T b.
2
Diferenciando essa expressão em relação a α e igualando a zero para encontrar os pontos
crı́ticos, encontramos o valor de α.

rTp rp
αcritico = . (4.60)
rTp Arp

Repetindo-se agora esse processo com o ponto xp + αcritico rp obtemos o seguinte algoritmo
(de máxima descida) para minimização do funcional φ, ou equivalentemente para a solução
do sistema Ax = b :

• k = 0, x0 = b, r0 = b − Ax0
• Enquanto rk 6= 0
• k =k+1
• αk = rTk−1 rk−1 /rTk−1 Ark−1
• xk = xk−1 + αk rk−1
• rk = b − Axk
146 CAPÍTULO 4. EQUAÇÕES ELÍPTICAS

• Fim Enquanto

A convergência global e a velocidade de convergência do algoritmo acima são dadas pelo


teorema:

Teorema 4.4 Se A é simétrica e definida positiva então o algoritmo acima produz uma
sequência xk satisfazendo:
  
1 λn (A) 1
φ(xk ) + bT A−1 b ≤ 1 − φ(xk−1 ) + bT A−1 b . (4.61)
2 λ1 (A) 2

onde λi (A) são os autovalores de A ordenados em ordem decrescente.

A demonstração desse resultado pode ser encontrada em Luenberger [25] na página 218-
219. Uma interpretação geométrica do teorema 4.4 pode ser obtida observando-se a figura
4.10. O fato dos autovalores de A serem bastante separados implica que o eixo maior da
elipse é muito maior do que o eixo menor e assim o método faz um “zig-zag” ao longo do
vale tornando a convergência muito demorada.

x1 1

x*
x2
x0

Figura 4.10: Interpretação geométrica da convergência no método de máxima


descida

Como pode ser observado de (4.61) se a razão λn (A)/λ1 (A) for pequena a taxa de
convergência desse algoritmo é sofrı́vel. Quando λn (A)/λ1 (A) é pequeno as curvas de nı́vel
da função φ são elipsoides muito alongados (figura 4.10) e devemos encontrar o mı́nimo que
está localizado num vale com paredes laterais muito ı́ngremes e com o fundo relativamente
plano. Nesse caso o método de máxima descida oscila de um lado pra outro nessas paredes
laterais ao invés de ir diretamente vale-abaixo. Essas oscilações é que fazem o processo de
convergência ser lento, pois pode ocorrer que um determinado passo seja tomado na mesma
direção de busca de um passo anterior. Seria mais razoável que uma vez escolhida uma
direção de busca tomássemos um passo que minimizasse a função naquela direção de uma
vez por todas, sem a necessidade de retornarmos a ela num passo posterior. Uma cura para
esse problema está na escolha de uma direção de descida diferente daquela da direção oposta
ao gradiente.
Suponha que tenhamos escolhido um conjunto de direções de busca ortogonais
p0 , p1 , · · · pn−1 . Em cada uma dessas direções nós faremos exatamente um passo de forma a
obtermos uma das coordenadas da solução x. Depois de n passos o processo deverá terminar
com a solução exata, uma vez que x tem somente n coordenadas. Em geral, para cada passo
escolhemos o ponto
xk+1 = xk + αk pk . (4.62)
4.9. MÉTODO DOS GRADIENTES CONJUGADOS 147

Para determinar o valor de αk usamos o fato de que ek+1 = x − xk+1 deve ser ortogonal a
pk , de forma que nunca mais precisaremos andar na direção de pk . Subtraindo x em ambos
os membros de (4.62) e fazendo o produto escalar com ek+1 encontramos:

pTk ek
αk = − .
pTk pk

A fórmula acima resolveria o problema não fosse o fato de que não conhecemos ek , pois
este depende da solução x. A alternativa é escolher as direções de busca p0 , p1 , · · · pn−1 de
forma que elas sejam A-ortogonais ou conjugadas ao invés de ortogonais, isto é:

pTi Apj = 0, para i 6= j.


Assim, devemos escolher αk de forma que ek+1 seja A-ortogonal a pk , ou seja:

0 = pTk Aek+1 = pTk Aek + αk pTk Apk .

Portanto
pTk Aek pT A(x − xk ) pT (b − Axk ) pT Ark
αk = − T
=− k T =− k T = − Tk . (4.63)
pk Apk pk Apk pk Apk pk Apk

A expressão para αk encontrada acima é exatamente o ponto crı́tico da função f (α) =


φ(xk + αpk ), e portanto a condição de A-ortogonalidade das direções de busca corresponde
a encontrar o mı́nimo de f (α) ao longo da direção pk exatamente como no caso do método
de máxima descida. De fato, se tomarmos a direção pk = rk o valor de αk fica exatamente
como em (4.60).
Escolhendo as direções de busca como direções A–conjugadas e tomando o parâmetro αk
como em (4.63) podemos provar, como já indicado acima o seguinte resultado.
Teorema 4.5 Se as direções de busca p0 , p1 , · · · , pn−1 são A-conjugadas e αk é escolhido
como em (4.63) então o processo termina em n passos.
Prova: Exercı́cio.

Resta-nos agora especificar como as direções A–conjugadas devem ser escolhidas. Uma
maneira de gerar essas direções é o processo de Gram-Schmidt conjugado ( [Shewchuck 1994]
página 25). Nesse processo, dado um conjunto {u0 , u1 , · · · un−1 } de vetores linearmente
independentes um novo conjunto de direções A–conjugadas {p0 , p1 , · · · pn−1 } é gerado a
partir de combinações lineares dos vetores originais, isto é, escolhendo p0 = u0 , as demais
direções conjugadas podem ser geradas a partir da fórmula:
i−1
X
pi = ui + βi,k pk (4.64)
k=0

uT Ap
onde βi,k = − piT Apk estão definidos para i > k. Uma dificuldade na utilização da fórmula
k k
(4.64) está no fato de que todas as direções conjugadas calculadas préviamente precisam ser
148 CAPÍTULO 4. EQUAÇÕES ELÍPTICAS

armazenadas para a construção da próxima, com um custo de O(n3 ) operações aritméticas.


O método dos gradientes conjugados evita esse problema escolhendo o conjunto de vetores
linearmente independentes {u0 , u1 , · · · un−1 } como o conjunto dos resı́duos {r0 , r1 , · · · rn−1 }.
Com essa escolha pode-se provar (veja exercı́cio (4.19) que:
(
rTi ri
T , i = j + 1,
βi,j = α i−1 p i−1
Api−1
0, i > j + 1.

O fato de que a maioria dos coeficientes βi,j se anulam significa que não é necessário o
armazenamento de um grande número de direções de busca anteriores para a construção
de uma nova e que o cálculo dessas direções envolve somente O(n) operações aritméticas.
Utilizando a notação simplificada βi = βi,i−1 e a expressão para αi podemos escrever:

rTi ri rTi ri
βi = T
= T
pi−1 ri−1 ri−1 ri−1

Juntando todas as fórmulas deduzidas nessa breve introdução, obtemos o algoritmo simpli-
ficado do método dos gradientes conjugados:
i. p0 = r0 = b − Ax0
rTi ri
ii. αi = pT Api
i

iii. xi+1 = xi + αi pi
iv. ri+1 = ri − αi Api
rT
i+1 ri+1
v. βi+1 = rT r
i i

vi. pi+1 = ri+1 + βi+1 pi


O método CG é essencialmente um método direto, uma vez que não podemos gerar
direções ortogonais indefinidamente. Podemos gerar no máximo n vetores ortogonais, mas
na prática, devido a erros de arredondamento, a ortogonalidade é perdida ao longo do
processo e portanto o método não termina num número finito de iterações. Além disso para
os problemas para os quais o método CG é aplicado o valor de n é muito grande, de tal forma
que n iterações é ainda uma quantidade inaceitável. Dessa forma é costumeiro considerar o
método CG como um método iterativo. Com relação a convergência desse método temos o
seguinte resultado.
Teorema 4.6 Seja A simétrica e definida positiva, então o algoritmo dos gradientes con-
jugados produz uma sequência de vetores x0 , x1 . . . com a seguinte propriedade:
√ k
κ−1
|| x − xk ||A ≤ 2 || x − x0 ||A √ .
κ+1
λmax
onde κ = λmin e λmax e λmin são respectivamente o maior e o menor autovalor de A.
4.10. EXERCÍCIOS 149

A prova desse resultado pode ser encontrada em [25], pag. 248 ou [Shewchuck 1994], pag.
36. Uma implicação imediata do teorema 4.6 é que se os autovalores de A estão bastante
separados então a convergência do método CG pode ser bastante lenta, e será de apenas
uma iteração no caso em A tenha todos os autovalores iguais. De forma que a convergência
do método CG será tão mais rápida quanto mais agrupados estiverem os autovalores de A.
Considere uma matriz M simétrica e definida positiva e o sistema resultante da pré-
multiplicação do sistema Ax = b por M −1 , isto é o sistema M −1 Ax = M −1 b, que obvia-
mente tem a mesma solução que o sistema original. É possı́vel, com uma escolha cuidadosa
da matriz M fazer com que os autovalores de M −1 A estejam mais agrupados do que os
de A, de forma que o método CG aplicado ao sistema M −1 Ax = M −1 b convergirá mais
rapidamente do que quando aplicado ao sistema original Ax = b. A matriz M deve ser es-
colhida de forma que M −1 seja uma boa aproximação para A−1 . Esse processo é conhecido
na literatura como pré-condicionamento, e é muito utilizado para acelerar a convergência do
método CG. Resta agora a escolha de uma matriz M que tenha a propriedade de agrupar
os autovalores de A. Muitas são as escolhas possı́veis mas esta análise está além das pre-
tensões deste livro, de forma que referimos ao livro [26] ou ao trabalho [Shewchuck 1994]
para maiores detalhes.

4.10 Exercı́cios

4.1 Escreva um programa MATLAB para resolver o problema:

∂2u ∂2u
+ 2 = −2
∂x2 ∂y

definido no quadrado [−1, 1] × [−1, 1] com condição de Dirichlet nula na fronteira. Utilize
h = 0.2. Compare seu resultado com a solução exata:

32 X (−1)n
     
2 (2n + 1)π (2n + 1)πx (2n + 1)πy
u(x, y) = 1−y − 3 sech cosh cos .
π n=0 (2n + 1)3 2 2 2

4.2 Escreva um programa MATLAB para resolver o problema:

∂2u ∂2u
+ 2 − 10u = 0
∂x2 ∂y

definido no quadrado [−1, 1] × [−1, 1] com condições de fronteira dadas por:


i. u = 0 para y = 1 e −1 ≤ x ≤ 1;
ii. u = 1 para y = −1 e −1 ≤ x ≤ 1;
∂u
iii. ∂x = −0.5u para x = 1 e −1 < y < 1;
∂u
iv. ∂x = 0.5u para x = −1 e −1 < y < 1.
150 CAPÍTULO 4. EQUAÇÕES ELÍPTICAS

Utilize uma malha uniforme com h = 0.1.


4.3 Considere o problema
uxx + uyy = 0
definido no domı́nio:
R = {(x, y), x2 + y 2 ≤ 1, x ≥ 0, y ≥ 0}
que corresponde ao semi-cı́rculo superior de centro na origem e raio 1, com condições de
fronteira:
u(x, 0) = 0, −1 ≤ x ≤ 1, u(x, y) = 100, x2 + y 2 = 1,
cuja solução analı́tica em coordenadas polares é:

400 X 1  r 2n−1
u(r, θ) = sen (2n − 1)θ.
π n=1 2n − 1 2

Obter a discretização desse problema em coordenadas polares com δr = 0.1, δθ = π/10. Usar
MATLAB para resolver o sistema linear resultante.
4.4 Como já mencionado várias vezes, a fórmula de 5 pontos é de ordem O(h2 ). Se
porventura necessitarmos de uma fórmula mais precisa para discretizar a equação de Laplace,
devemos utilizar mais pontos. Mostre que uma fórmula de ordem O(h4 ) pode ser obtida
utilizando-se os pontos da molécula da figura 4.11 e é dada por:
1
U0 = (−U7 + 16U3 + 16U1 − U5 − U6 + 16U2 + 16U4 − U8 ) .
60

2
7 3 0 1 5

8
Figura 4.11: Molécula de cálculo para a fórmula de O(h4 )

No entanto essa fórmula não pode ser aplicada para pontos próximos à fronteira, pois
ela utiliza dois pontos em cada direção. Poder-se-ia utilizar a molécula de cálculo da figura
4.12 para deduzir o esquema numérico (4.65), que também é de ordem O(h4 ).
4.10. EXERCÍCIOS 151

6 2 5

3 0 1

7 4 8
Figura 4.12: Molécula de cálculo para a fórmula de O(h4 ) utilizando um ponto em
cada direção

1
U0 = (4(U1 + U2 + U3 + U4 ) + U5 + U6 + U7 + U8 ) . (4.65)
20
Mostre que no caso da equação de Poisson o esquema (4.65) transforma-se em:
h2
4 (U1 + U2 + U3 + U4 ) + U5 + U6 + U7 + U8 − 20U0 = − (8f0 + f1 + f2 + f3 + f4 ) .
2
Calcule o ETL em todos os casos.
4.5 Considere a numeração como na figura 4.13

y
5 20 10 24 13

16 6 21 11 25
2 17 7 22 12

14 3 18 8 23
1 15 4 19 9 x
Figura 4.13: Numeração “red–black” diagonal

Obtenha a matriz do sistema linear resultante. Generalize esse resultado para uma malha
com N pontos na direção x e M pontos na direção y.
152 CAPÍTULO 4. EQUAÇÕES ELÍPTICAS

Repita esse exercı́cio para a numeração “red–black” da figura 4.14

y
11 24 12 25 13

21 9 22 10 23
6 19 7 20 8

16 4 17 5 18
1 14 2 15 3 x
Figura 4.14: Numeração “red–black” horizontal

4.6 A equação biharmônica é dada por:

∆∆u = uxxxx + 2uxxyy + uyyyy = f (x, y).

Aproximando o operador ∆∆u por:


4
X 8
X 12
X
∆∆u ≈ α0 U0 + α1 Ui + α2 Ui + α3 Ui
i=1 i=5 i=9

numa malha uniformente espaçada de h, obtenha valores para os parâmetros α0 , α1 , α2 e α3


tal que a fórmula tenha ordem O(h2 ). Deduza a fórmula do ETL. A molécula computacional
é dada na figura 4.15.

4.7 Considere o problema elı́ptico:


   
∂ ∂u ∂ ∂u
a(x, y) + b(x, y) = f (x, y)
∂x ∂x ∂y ∂y

com condição de Dirichlet sobre a fronteira de um retângulo. Mostre que a matriz resultante
da discretização de 5 pontos é simétrica.

4.8 Mostre que


∆δ V± (x, y) = ±∆δ V (x, y) + N0 ≥ 0.

4.9 Obtenha os demais elementos do vetor r do exemplo (4.4.1) e escreva detalhadamente


a matriz A.
4.10. EXERCÍCIOS 153

y
10

6 2 5
11 3 0 1 9

7 4 8
12
x
Figura 4.15: Molécula de cálculo para a equação biharmônica

4.10 Mostre que a discretização de 5 pontos da equação de Poisson para a molécula da


figura 4.16 é dada por:

α0 U0 + α1 U1 + α2 U2 + α3 U3 + α4 U4 = f0

onde os coeficientes α são calculados de:


 
1 1 2 2
α0 = −2 + ; α1 = ; α2 = ;
h1 h3 h2 h4 h1 (h1 + h3 ) h2 (h2 + h4 )

2 2
α3 = ; α4 = ;
h3 (h1 + h3 ) h4 (h2 + h4 )

h2

3 h1
h3 0 1

h4
4
Figura 4.16: Molécula de cálculo para a dicretização de 5 pontos numa malha não
uniformemente espaçada
154 CAPÍTULO 4. EQUAÇÕES ELÍPTICAS

Calcule o erro de truncamento local e determine a ordem de consistência dessa dis-


cretização. Mostre que quando h1 = h3 = h e h2 = h4 = k essa discretização é de ordem
O(h2 + k 2 ). Explique como essa molécula pode ser utilizada para discretizar a equação de
Poisson num domı́nio geral.

4.11 Utilizar a técnica derivada no exercı́cio anterior para aproximar a solução do problema
do exercı́cio (4.3) na malha da figura 4.17.

u=100

u=0
Figura 4.17: Malha para um domı́nio semi–circular

Utilizar MATLAB na solução do sistema linear.

4.12 Considere o caso 4 × 4 da matriz Ah de (4.49). Utilizando MATLAB calcule os


autovalores de Ah . Resolva agora o sistema linear resultante pelo método de Jacobi, também
utilizando MATLAB e confirme que a taxa de convergência desse método é cerca de 0.5.
Repita esse mesmo exercı́cio para Gauss-Seidel.

4.13 Lembrando que a matriz de iteração do método SOR é:

Gw = (D + wL)−1 [(1 − w)D − wS]

e lembrando que o determinante de uma matriz triangular é o produto dos seus elementos
diagonais, mostre que det(Gw ) = (1 − w)n , onde n é a dimensão do problema. Utilizando
agora que det(Gw ) = λ1 λ2 . . . λn onde λi é um autovalor de Gw , mostre que:

λ(Gw ) ≥ |1 − w|.

Conclua que o método SOR só pode ser útil na prática se 0 < w < 2.

4.14 Mostre que (4.52) é um autovalor da matriz Ah definida em (4.49) com autovetor
dado por (4.51).
Sugestão: Discretizando o problema:

uxx + uyy = αu

definido no retângulo [0, a] × [0, b] com condição de fronteira de Dirichlet nula na fronteira,
por diferenças finitas de 5 pontos obtemos o problema:

Ui+1,j + Ui−1,j + Ui,j+1 + Ui,j−1 + (β − 4)Ui,j = 0; β = h2 α,


4.10. EXERCÍCIOS 155

com condições de fronteira U0,j = UN,j = Ui,0 = Ui,M = 0, cuja solução pode ser obtida por
separação de variáveis e é dada por:

Ui,j = sen (α1 i) sen (α2 j)


com β = 4 − 2(cos(α1 ) + cos(α2 )) e α1 = pπ
N , α2 = qπ
M, p e q inteiros.
Portanto para cada par de inteiros p e q teremos (N − 1) × (M − 1) autovalores distintos:
 pπ qπ 
βp,q = 4 − 2 cos( ) + cos( ) .
N M
Conclua o exercı́cio utilizando identidades trigonométicas. Note que (4.52) corresponde ao
caso a = b = 1.

4.15 Prove que para matrizes 2 × 2 Gauss-Seidel é convergente se e somente se Jacobi


também o é.

4.16 Mostre que o método de Jacobi não é convergente para qualquer valor de a que faz a
matriz abaixo definida positiva.
 √ 
2
1 2 a
√ √ 
A =  22 1 2
2
.

2
a 2 1

O que poderia ser afirmado sobre o método de Gauss-Seidel?


Já para a matriz
1 2 4
!
1
A= 8 1 1
−1 4 1
ocorre o contrário, o método de Jacobi é convergente enquanto que o de Gauss-Seidel não
é. Prove esse fato.

4.17 Utilizar MATLAB para desenhar o gráfico de λ(Gw ) como função de w no intervalo
[1, 2] para o caso em que (λJ11 )2 = 0.95.
Sugestão: Para cada valor de w resolver a equação (4.56) plotando o maior módulo das
raı́zes.

4.18 Demonstre o teorema (4.5). Sugestão: Consulte [Shewchuck 1994] páginas 24-25.
4.19 Mostre que os números βi,k definidos em (4.64) satisfazem:
rT
(
i ri
αi−1 pT
, i = j + 1,
βi,j = i−1
Api−1
0, i > j + 1.

Sugestão: Consulte [Shewchuck 1994] páginas 30-31.


4.20 Programar em MATLAB o algoritmo do gradiente conjugado.
156 CAPÍTULO 4. EQUAÇÕES ELÍPTICAS

4.21 Mostre que o número k de iterações necessário para reduzir a norma do erro de um
valor ǫ, isto é, ||ek || < ǫ||e0 || satisfaz:
 
1p 2
k≤ κ(A) ln .
2 ǫ

Sugestão: Utilize o teorema 4.6.

4.22 No caso do método CG com pré-condicionamento, uma dificuldade é que a matriz


M −1 A pode não ser nem simétrica nem definida positiva, mesmo M −1 e A sendo. Mostre
que existe uma matriz E tal que M = E T E, e portanto o sistema Ax = b pode ser transfor-
mado em E −1 AE −T x̂ = E −1 b, onde x̂ = E T x. Mostre que a matriz E −1 AE −T é simétrica
e definida positiva, sendo portanto possı́vel a utilização do método CG para obter sua solução.
Deduza o algoritmo CG para os sistema transformado. A obtenção da matriz E apesar de
possı́vel é um processo caro que devemos evitar. Fazendo uma mudança de variáveis conve-
niente no método CG que você obteve, derive um novo algoritmo CG que não dependa da
matriz E.

4.23 Aplicando o teorema 4.6 para a matriz Ah definida em (4.49) calcule a velocidade de
convergência do método GC em função do parâmetro h.
Capı́tulo 5

Equações Hiperbólicas

5.1 Introdução
Ao contrário das equações parabólicas, onde, em geral, a solução é mais suave do que os
dados do problema, nas equações hiperbólicas, as descontinuidades são transportadas sem
suavização, podendo haver também a formação de singularidades (choques) mesmo no caso
de dados iniciais bem comportados.
Os modelos mais simples para o estudo das equações hiperbólicas são a equação de
advecção ut + aux = 0, a equação escalar conservativa ut + (f (u))x = 0 e a equação da onda
utt − a2 uxx = 0.
Nesta introdução vamos abordar alguns aspectos analı́ticos desse tipo de equação, que
causam dificuldades significativas no seu tratamento numérico. O problema de valor inicial,
ou problema de Cauchy, para tais equações consiste em encontrar uma função u(x, t) no semi
plano D = {(x, t)/t ≥ 0, −∞ < x < ∞}, que satisfaça a equação, juntamente com a condição
inicial. Em geral, a solução no sentido clássico é contı́nua e suficientemente diferenciável, mas
isto nem sempre acontece. Torna-se imprescindı́vel que o espaço de soluções seja ampliado
para que, por exemplo, soluções clássicas por partes sejam possı́veis; dizemos que essas
soluções existem no sentido fraco ou são soluções fracas. Um tratamento analı́tico, nesse
caso, envolve soluções no sentido de distribuições, que está além do escopo deste livro.
Para o leitor interessado em maiores detalhes sobre o tópico de soluções no sentido de
distribuições, recomendamos a leitura de [Cryer 1983], [Debnath 1990] ou [Taylor 1996].
Vamos inicialmente tentar entender detalhadamente vários aspectos da equação escalar de
advecção para em seguida analisar a equação da onda e também sistemas de equações.

5.1.1 Equação escalar de advecção


Seja, para u(x, t) a equação de primeira ordem:

ut + aux = 0, em D
(5.1)
u(x, 0) = u0 (x), ∀x.

157
158 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

Solução Clássica
A dedução da solução para a equação (5.1) pode ser estabelecida, considerando uma
transformação linear x = x(s) e t = t(s). Portanto u(x, t) = u(x(s), t(s)). A transformação
mais simples que podemos tentar é: x(s) = x + c1 s e t(s) = t + c2 s, onde c1 e c2 são
constantes a serem determinadas. Diferenciando u(x(s), t(s)) com relação ao parâmetro s
obtemos:
du dt dx
= ut + ux .
ds ds ds
dx dt
Esta expressão transforma-se na equação (5.1) quando =ae = 1, ou seja, c1 = a e
ds ds
c2 = 1 e portanto x(s) = x + as e t(s) = t + s. Além disso

du
= ut + aux .
ds

Como du ds = 0 em D, conforme a equação (5.1), temos que u é constante em relação a s.


Substituindo s = −t em u(x(s), t(s)) = u(x + as, t + s), obtemos u(x − at, 0) que usando a
condição inicial fornece u(x − at, 0) = u0 (x − at). Portanto, como u é constante em relação
a s e vale u0 (x − at) para qualquer s, obtemos em s = 0 u(x(0), t(0)) = u(x, t) = u0 (x − at)
e claramente,
u(x, t) = u0 (x − at)
é solução da equação (5.1).
Podemos dizer que a solução foi determinada a partir de

dx
=a (5.2)
dt
que define as caracterı́sticas da equação (5.1).

Exemplo 5.1.1 Consideremos a equação:

ut + tux = 3 (5.3)

onde a condição inicial é dada sobre o eixo x. As caracterı́sticas de (5.3) são as soluções
da equação diferencial ordinária:
dx
= t,
dt
que são dadas pela famı́lia de curvas (parábolas)

t2
x= +A
2
onde o parâmetro A é uma constante possivelmente distinta para cada caracterı́stica. Para
a caracterı́stica passando por (x0 , 0) temos A = x0 e portanto a curva é definida por t2 =
2(x − x0 ).
5.1. INTRODUÇÃO 159

u=3t+u0 (x0 )

x0 x

Figura 5.1: Curvas caracterı́sticas para a equação (5.3)

A solução ao longo de uma caracterı́stica genérica é dada por:


du
= 3.
dt
Resolvendo encontramos u = 3t + B e usando agora a condição inicial para t = 0 temos
B = u0 (x0 ) e portanto u = 3t + u0 (x0 ) ao longo dessa caracterı́stica. A figura 5.1 ilustra as
caracterı́sticas de (5.3). Considerando a condição inicial
6, x<8


x − 2, 8 ≤ x < 12

u(x, 0) = ,
 22 − x, 12 ≤ x < 18

4, x ≥ 18
sabendo que a solução exata é u(x, t) = 3t + B e que as curvas caracterı́sticas são dadas por
x = t2 /2 + A temos, para um x0 fixado, os seguintes valores para as constantes A e B:
• A = x0 , ∀x0
• B = 6 se x0 < 8; B = x0 − 2 se 8 ≤ x < 12; B = 22 − x0 se 12 ≤ x < 18 e B = 4 se
x0 ≥ 18.
Portanto, ao longo da caracterı́stica partindo de x0 a solução é dada por:
3t + 6, x<8


3t + x0 − 2, 8 ≤ x < 12

u(x, t) = ,
 3t + 22 − x0 ,
 12 ≤ x < 18
3t + 4, x ≥ 18
Como a caracterı́stica é determinada por x = t2 /2 + x0 obtemos, por substituição , a
solução geral
 2
 3t + 6,2
 x < 8 + t2
2 2
3t − t2 + x − 2, 8 + t2 ≤ x < 12 + t2


2 2 2 ,
 3t + 22 − x + t2 , 12 + t2 ≤ x < 18 + t2

 2
3t + 4, x ≥ 18 + t2

160 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

que pode ser visualizada nas figuras 5.2 e 5.3

30

25

20

U(x,t)
15

10

0
6
5
30
4 25
3 20
2 15
10
1 5
0 0
t
x

Figura 5.2: Solução exata

Características da Equação
7

4
t

0
0 5 10 15 20 25 30
x

Perfil da Solução

25

20

15
U

10

0
0 5 10 15 20 25 30
x

Figura 5.3: Caracterı́sticas e perfı́s da solução


5.1. INTRODUÇÃO 161

Caracterı́sticas e Formação de Singularidades


Observando a expressão da solução u(x, t) = u0 (x − at), constatamos que em qualquer
ponto (x, t) a solução é completamente determinada por seu valor no ponto iniciall (x0 , 0),
ou seja u0 (x0 ). Dizemos que o valor inicial foi transportado domı́nio adentro por meio de
x − at = x0 . Em outras palavras, a solução é construı́da por esse transporte.
No caso da equação (5.1), a solução u(x, t) é constante ao longo de cada curva x−at = x0 ,
pois du
dt = 0. De fato:

du(x(t), t) dx
= ut + ux = ut + aux = 0.
dt dt
Essas curvas são as caracterı́sticas, uma vez que dx dt = a.
Note que se a é constante, então as caracterı́sticas são retas paralelas; se a depende
apenas de u, isto é, a = a(u), as caracterı́sticas ainda serão retas, mas não necessariamente
paralelas, podendo interceptar-se umas às outras. Mesmo no caso mais simples da equação
(5.1), onde u é uma constante, possivelmente distinta, ao longo de cada curva caracterı́stica,
na interseção de duas dessas curvas o valor de u não estará unicamente definido, ou seja
teremos nesse ponto uma singularidade. Por outro lado, se a não depende de u mas de
x e/ou t, as caracterı́sticas não mais serão retas, mas não haverá cruzamentos se a(x, t) é
t-Lipschitz. No caso mais geral, a = a(x, t, u) as caracterı́sticas não serão retas e novamente
é possı́vel ocorrer singularidades. A figura 5.4 ilustra esses casos.

t t

a>0 x a=a(x,t)=t x

t t

a=a(u) x a=a(u) x

Figura 5.4: Diferentes tipos de caracterı́sticas para a equação (5.1)

Observação 5.1.1 Como vimos, uma equação hiperbólica não está completamente estab-
elecida sem as condições iniciais. As caracterı́sticas “transportam” a informação inicial
162 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

Q
T
P
Γ

Figura 5.5: Ilustração de uma curva inicial tangente às curvas caracterı́sticas

dada sobre a curva Γ(x(s), t(s)) domı́nio adentro construindo a solução. No caso de Γ ser
ela mesma uma caracterı́stica, a equação faz com que um valor u(s) seja transportado ao
longo de Γ. Portanto, os valores iniciais sobre Γ devem ser compatı́veis com a equação, e
nesse caso o domı́nio de existência da solução é formado apenas pela curva inicial.

Observação 5.1.2 Mesmo no caso de Γ ser suave, algum cuidado é necessário pois po-
dem ocorrer incompatibilidades. Por exemplo, na figura 5.5, o valor inicial em Q deve ser
compatı́vel com aquele transportado a partir de P. Esse problema ocorre porque a curva Γ
tornou-se tangente às caracterı́sticas no ponto T . A partir do ponto de tangência a curva Γ
deveria ser considerada uma curva de fronteira e não uma curva inicial. Sem muito rigor,
uma curva inicial é aquela da qual partem as curvas caracterı́sticas, enquanto uma curva de
fronteira é aquela para a qual as caracterı́sticas afluem.

Observação 5.1.3 Para equações mais gerais

ut + aux + bu = d

as caracterı́sticas são dadas por dx du


dt = a e u é determinado por dt = d − bu. Então se a não
depende de u e: a condição inicial, a, b, e d são suficientemente suaves, a solução sempre
existirá no sentido clássico.

Observação 5.1.4 Nem sempre duas equações com o mesmo conjunto de caracterı́sticas
têm a mesma solução, pois se prescrevermos valores iniciais distintos a cada uma delas, o
valor transportado ao longo de cada caracterı́stica será distinto.

Observação 5.1.5 Na prática, existe sempre uma restrição no domı́nio, de maneira que,
além de se especificar valores iniciais sobre Γ, também são estabelecidos dados de fronteira
sobre uma curva Ω. Em alguns casos a fronteira Ω desempenha um papel semelhante àquele
da curva de condição inicial Γ (caso (a) da figura 5.6, onde as curvas caracterı́sticas partem
da curva Ω), em outros é preciso compatibilidade (caso (b) da figura 5.6 onde as curvas
caracterı́sticas chegam na curva Ω trazendo informações da condição inicial).
É possı́vel também a formação de singularidades, dependendo dos valores especificados
na fronteira; casos (a) e (b) da figura 5.7.
5.1. INTRODUÇÃO 163

t t

Γ (a) x Γ (b) x

Figura 5.6: Condições iniciais e de fronteira

t t Ω

Γ (a) x Γ x
(b)

Figura 5.7: Formação de singularidades

Exemplo 5.1.2 Consideremos o problema

ut + ux = 1
u(0, t) = 0
(5.4)
0, 0≤x<3
u(x, 0) =
x − 3, x ≥ 3.

As caracterı́sticas são retas paralelas dx = dt, ou seja x = t + A como no caso (a) da figura
5.6. Então t = x + x0 e t = x + t0 são as caracterı́sticas passando pelos pontos (x0 , 0)
e (0, t0 ) respectivamente. A solução ao longo de cada caracterı́stica partindo do eixo x é
u = t + B1 e do eixo t é u = x + B2 . Assim, utilizando as condições iniciais, (verifique)
u = x sobre as caracterı́sticas partindo do eixo t; u = t sobre as caracterı́sticas partindo do
intervalo 0 ≤ x < 3 e u = x − 3 sobre as caracterı́sticas partindo do eixo x, com x ≥ 3.
Na expressão da solução ao longo das caracterı́sticas, podemos substituir os valores de x e t
para obter a solução geral u(x, t).
Temos então, considerando a condição inicial para t = 0,

t, t≤x<3+t
u(x, t) = ,
x − 3, x ≥ 3 + t
164 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

16

14

12

10

15
15
10
10
5 5
0 0
t
x

Figura 5.8: Solução exata do problema (5.4)

e também, partindo da condição de “contorno” (x = 0), u(x, t) = x, t > x, podemos escrever


a expressão da solução como:
x, x<t
(
u(x, t) = t, t≤x<3+t ,
x − 3, x ≥ 3 + t
que pode ser visulaizada na figura 5.8.
Observe na figura 5.8 que está havendo propagação de descontinuidade de contacto ao
longo das caracterı́sticas pontilhadas, conforme figura 5.9. Apesar da condição inicial ser
contı́nua em (0, 0) houve formação de descontinuidade na derivada devido à uma mudança
brusca em Γ.

Método das Caracterı́sticas


Como vimos, as equações hiperbólicas se tornam substancialmente mais simples se as car-
acterı́sticas forem utilizadas como um sistema natural de coordenadas. Um método numérico
para aproximação da solução de uma equação hiperbólica sugerido por esse sistema de co-
ordenadas é o chamado método das caracterı́sticas, pelo qual se faz a discretização e cálculo
da solução ao longo das caracterı́sticas.
Em linhas gerais, é feita a discretização da condição inicial e a partir dela integra-se
a equação da caracterı́stica usando métodos de solução numérica de equações ordinárias.
Frequentemente o método de Euler ou um método de Runge-Kutta é utilizado.
Uma abordagem mais sistemática fixa um espaçamento k em t como ilustrado na figura
5.10, e calcula a posição da curva caracterı́stica e uma aproximação para a solução em cada
um dos nı́veis. Para ilustrar o método das caracterı́sticas vamos considerar a equação escalar
5.1. INTRODUÇÃO 165

18

16

14

12

10

15
15
10
10
5 5

0 0
t
x

Figura 5.9: Caracterı́sticas e perfı́s da solução

R
Q

P x

Figura 5.10: Método das caracterı́sticas com discretização temporal

but + aux = r.
Supondo, como já feito anteriormente, que x, t e u são funções de um parâmetro s e difer-
enciando a equação acima com relação a esse parâmetro obtemos:
du dt dx
= ut + ux .
ds ds ds
Assim, uma escolha natural para a parametrização é aquela que satisfaz:
dx dt du
= a, = b, = r,
ds ds ds
que definem as equações caracterı́sticas para a equação original. Claramente foi consider-
ada a regularidade da solução; no caso de descontinuidades um tratamento especial se faz
166 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

necessário para utilizar-se o método das caracterı́sticas. É portanto possı́vel obter aprox-
imações da solução ao longo das caracterı́sticas usando o devido deslocamento (vide figura
5.10) fazendo:
xQ − xP tQ − tP uQ − uP
= aP , = bP , = rP . (5.5)
δs δs δs
Então, fixando tQ = tP + k, podemos eliminar δs para obter:
aP rP
xQ = xP + (tQ − tP ) = xP + σaP , uQ = uP + (tQ − tP ) = up + σrP ,
bP bP
onde
tQ − tP k
σ= = .
bP bP
Note que as aproximações em (5.5) foram deduzidas pela discretização das equações
originais pelo método de Euler. Um melhor resultado, especialmente quando a, b ou r são
funções de (x, t, u), poderia ser obtido utilizando-se a regra dos trapézios que resulta em:
xQ − xP 1 tQ − tP 1 uQ − uP 1
= (aP + aQ ), = (bP + bQ ), = (rP + rQ ). (5.6)
δs 2 δs 2 δs 2
As equações (5.5) e (5.6) podem então ser utilizadas como um par previsor-corretor, com
(5.5) atuando como o previsor e (5.6) atuando como o corretor. Podemos levar essa idéia
um passo adiante e construir um método iterativo conforme o que segue.
Calculamos uma primeira aproximação de
(0) (0) (0)
xQ − xP tQ − tP uQ − uP
= aP , = bP , = rP
δs δs δs
e para m = 0, 1, . . . corrigimos esse valor utilizando,
(m+1) (m+1) (m+1)
xQ − xP 1 (m) tQ − tP 1 (m) uQ − uP 1 (m)
= (aP +aQ ), = (bP +bQ ), = (rP +rQ ).
δs 2 δs 2 δs 2

É possı́vel também o cálculo de xQ e uQ na equação (5.6), tendo eliminado δs usando σ,


após a aproximação de tQ pelo método de Euler.
No caso de uma equação não linear, por exemplo se a = a(x, t, u), o sistema de equações
resultantes similar a (5.6) torna-se não linear. O caso de singularidades ou de descon-
tinuidade nos dados devem ser tratados de maneira especı́fica.
O leitor é incentivado a resolver os dois exemplos anteriores pelo método das carac-
terı́sticas, conforme exercı́cio (5.1).

Domı́nios de Dependência e Influência


Considerando a equação de advecção podemos dizer que cada ponto P da curva ini-
cial influencia a solução em todos os pontos sobre a caracterı́stica passando por P (região
5.1. INTRODUÇÃO 167

Região de influência
x Q

Região de dependência
P
Γ

Figura 5.11: Regiões de influência e dependência

de influência) e, a solução em cada ponto Q do domı́nio só depende dos pontos sobre a
caracterı́stica que vai dele até a condição inicial (região de dependência). Veja figura 5.11.
Quando, há descontinuidades nos dados, elas serão transportadas sem suavização ao
longo das caracterı́sticas, sendo isto uma das principais propriedades das equações hiperbólicas
e que traz dificuldades adicionais do ponto de vista do tratamento numérico. As descon-
tinuidades ao longo das caracterı́sticas são denominadas descontinuidades de contato quando
referem-se a descontinuidades nos dados, isto é, a condição inicial é dada por uma função
contı́nua mas com derivada descontı́nua, por exemplo.

u u(x,t 1) u(x,t2)

x
x+at1 x+at2

Figura 5.12: Evolução da solução no tempo

Afim de melhor ilustrar os conceitos introduzidos nesta seção apresentamos alguns ex-
emplos gráficos. A figura 5.12 representa a evolução de uma onda no tempo com velocidade
a constante, sem deformação do perfil. Para este mesmo caso em que a é constante, os
gráficos da figura 5.13 ilustram a ação da equação hiperbólica sobre um perfil inicial através
das caracterı́sticas. Apresentamos na figura 5.13 as soluções para diferentes casos de condição
inicial.

Solução Fraca
Não havendo regularidade na solução, devido à propagação de descontinuidades, é preciso
entender a solução não no sentido global imposto pelas derivadas (solução clássica), mas em
um sentido local e mais fraco. Por exemplo, admitir-se-ia uma solução (solução fraca) que
por partes seja contı́nua e diferenciável. Quando soluções fracas são admitidas, o problema de
valor inicial pode apresentar uma multiplicidade de soluções (ver observação 5.1.7), sendo
168 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

t u0(x−at) t
a(t)=t u0(x−t2)

u0(x) u0(x)
s=x−at

x x

t u0(x−at) t u0(x−at)

u0(x) u0(x)
s=x−at s=x−at

x x

Figura 5.13: Propagação da condição inicial pelas caracterı́sticas

necessárias informações adicionais para a escolha da solução mais adequada. Assim, um


critério frequentemente adotado, para a escolha da solução fraca é tomá-la como o limite
das soluções de uma sequência de problemas com condições iniciais contı́nuas convergindo
pontualmente para a condição inicial original. Outra alternativa é tomá-la como o limite
de uma regularização da própria equação. Esta regularização pode ser obtida pela adição à
equação hiperbólica original de um termo que a transforme em uma equação parabólica.

Regularização dos Dados


Para exemplificar a primeira situação consideremos o seguinte problema, que é conhecido
na literatura como equação de Burgers não viscosa:

ut + uux =0
0, x≤0 (5.7)
u(x, 0) =
1, x > 0.

O valor da solução u(x, t) é constante ao longo de cada caracterı́stica, uma vez que,

du du(x(t), t)
= = ut + uux = 0.
dt dt
Desse fato e de (5.2) resulta que as caracterı́sticas são retas dadas por:

x(t) = u(x(t), t)t + c2 = c1 t + c2


5.1. INTRODUÇÃO 169

Para t = 0, x(0) = x0 = c2 e como u é constante ao longo da caracterı́stica x(t), seu valor é


dado por u(x(0), 0) = u(x0 , 0) = u0 .
Assim x = u0 t + x0 é a reta caracterı́stica que passa por (x0 , 0), cuja inclinação depende
do valor de u0 inicial. As caracterı́sticas, em geral são não paralelas.
A condição inicial para o problema (5.7) é claramente descontı́nua em x = 0. Essa
condição inicial pode ser aproximada pela sequência de funções contı́nuas:

0, x≤0
(
uǫ (x, 0) = x/ǫ, 0<x≤ǫ
1, x > ǫ.

t u(x,t) t u(x,t)

uε (x,0) u(x,0)

ε x x
(a) (b)

Figura 5.14: Condições iniciais contı́nuas tendendo para descontı́nua e carac-


terı́sticas

A figura 5.14-b representa a situação limite da figura 5.14-a quando ǫ → 0. As soluções


dos problemas intermediários são contı́nuas e convergem para a solução do problema original
(5.7), quando ǫ → 0, que nesse caso é também contı́nua para t > 0. Essa situação surge
como consequência do valor da condição inicial para x ≤ 0 ser menor do que o valor para
x > 0, o que permite a variação contı́nua das inclinações das caracterı́sticas na região da
descontinuidade. Como pode ser observado pela figura 5.14-b essa solução representa uma
expansão e por isso é comumente chamada na literatura de onda de rarefação.

Observação 5.1.6 Note que se

0, x ≤ −ǫ
(
ǫ
u (x, 0) = (x + ǫ)/ǫ, −ǫ < x ≤ 0
1, x>0

o limite para ǫ → 0 produz a mesma solução ilustrada na figura 5.14-b. O ideal seria
trabalharmos com um intervalo de comprimento ǫ centrado na origem ou seja:

0, x ≤ ǫ/2
(
uǫ (x, 0) = (2x + ǫ)/(2ǫ), −ǫ/2 < x ≤ ǫ/2
1, x > ǫ/2.
170 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

Verifique que no limite, ǫ → 0, a solução da equação (5.7) é dada por:

0, x≤0
(
u(x, t) = x/t, 0<x≤t
1, x > t.

Observação 5.1.7 Os exercı́cios (5.6) e (5.7) mostram que soluções fracas não são únicas
e pode-se obter diferentes soluções dependendo do procedimento utilizado para encontrá-las.

Na situação oposta,

ut + uux =0
1, x≤0 (5.8)
u(x, 0) =
0, x>0

quando a condição inicial à direita da descontinuidade tem valor menor que à esquerda,
temos então a situação ilustrada na figura 5.15. Nesse caso para ǫ > 0 e condição inicial
uǫ (x, 0) como na figura 5.15(a), existe um tǫ onde as caracterı́sticas se interceptam dando
origem à formação de uma descontinuidade ou choque.

t t
choque choque

uε (x,0) u(x,0)

ε x x
(a) (b)

Figura 5.15: Condições iniciais contı́nuas tendendo para descontı́nua e carac-


terı́sticas

A figura 5.16 detalha a solução em perfis para diversos valores de t enfatizando a formação
do choque em t = tǫ .
O problema agora é determinar como e em que direção o choque se propaga. No caso
do modelo simples que estamos considerando, esse problema pode ser abordado da seguinte
maneira.
A solução clássica do problema (5.8), com condição inicial uǫ (x, 0), existe somente para
t < tǫ . No ponto t = tǫ a solução tem uma descontinuidade do mesmo tipo que a condição
inicial original, situada na posição x = ǫ, e portanto podemos considerar o mesmo problema
com a mesma condição inicial transladada para o ponto (ǫ, tǫ ), isto é o problema:

ut + uux =0
1, x≤ǫ (5.9)
u(x, tǫ ) =
0, x > ǫ.
5.1. INTRODUÇÃO 171

tε u(x, t ε)

u(x, t 3 )
u(x,t 2 )
u(x,0)
u(x,t 1 )

ε x

Figura 5.16: Perfis da solução para valores de t

Regularizando a condição inicial do problema (5.9) obtemos uma nova solução clássica
que existe até t = 2tǫ . Analogamente, um novo problema poderia ser considerado com
condição inicial: 
1, x ≤ 2ǫ
u(x, 2tǫ ) =
0, x > 2ǫ.
Esse processo poderia então ser repetido para 3tǫ , 4tǫ , · · ·, produzindo uma sequência de
problemas cujas soluções clássicas existem até t = 3tǫ , t = 4tǫ , etc. A figura 5.17 é uma
tentativa de ilustrar esse processo.

t
2t ε

tε u2ε(x,tε)

u1ε(x,0)

ε x

Figura 5.17: Localização aparente do choque numa posição inclinada

A discussão acima foi apresentada com o objetivo de ilustrar a composição dos efeitos
da não-linearidade da equação, com a descontinuidade da condição inicial, na formação do
choque. Observamos que, a primeira vista, parece que a contribuição da condição inicial
para a formação do choque vem somente dos valores à direita da descontinuidade. Note que
as caracterı́sticas emanando da condição inicial à esquerda da descontinuidade permanecem
172 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

paralelas em todo o domı́nio, enquanto que aquelas emanando da condição inicial à direita
da descontinuidade interceptam-se sobre a caracterı́stica passando pelo ponto de descon-
tinuidade.
O mesmo desenvolvimento pode ser feito considerando-se a condição inicial:
1, x ≤ −ǫ
(
uǫ (x, 0) = −x/ǫ, −ǫ < x ≤ 0
0, x>0

e obtemos a figura 5.18.


t
2t ε

uε2 (x,tε)


−ε

uε1 (x,0)

−ε x

Figura 5.18: Localização aparente do choque na vertical

Sugerimos que o leitor resolva o exercı́cio (5.8), para convencer-se de que a solução do
problema é de fato a apresentada na figura 5.18.
Se observarmos atentamente a figura 5.18, notamos que ela ilustra uma situação oposta
àquela da figura 5.17, no que diz respeito ao papel desempenhado pela condição inicial na
formação do choque. Agora são as caracterı́sticas à direita da descontinuidade que per-
manecem paralelas, enquanto aquelas à esquerda interceptam-se para formar o choque.
Na passagem ao limite com ǫ → 0, a figura 5.17 dá a ilusão de que o choque está
localizado sobre a caracterı́stica inclinada passando pela descontinuidade, enquanto que a
figura 5.18 sugere que este mesmo choque deveria estar localizado sobre a caracterı́stica
vertical passando pela mesma descontinuidade. No entanto, nenhuma dessas duas situações
correspondem à verdadeira localização do choque que está, na realidade, situado entre elas.
Essa configuração intuitiva pode ser obtida pelo processo de passagem ao limite na sequência
de problemas obtidos da regularização centralizada na descontinuidade, isto é, considerando
a sequência de problemas
ut + uux =(0
1, x ≤ −ǫ/2
(5.10)
uǫ (x, 0) = (ǫ − 2x)/(2ǫ), −ǫ/2 < x ≤ ǫ/2
0, x > ǫ/2.

A repetição do argumento utilizado para produzir a figura 5.17 leva-nos à figura 5.19,
que ilustra o choque produzido pela solução da sequência de problemas (5.10).
5.1. INTRODUÇÃO 173

t
2 tε

uε2(x,t ε)


ε

uε1(x,0)

−ε/2 ε/2 x

Figura 5.19: Localização real do choque

A figura 5.19 sugere que o choque deve estar localizado na média daquelas posições
indicadas pelas figuras 5.17 e 5.18, ou em outras palavras, a condição inicial em cada lado
da descontinuidade participa igualmente na formação do choque.
Como pode-se observar nos pontos tǫ , 2tǫ , 3tǫ , . . . está havendo a intersecção das carac-
terı́sticas à esquerda e à direita da descontinuidade. Assim para ǫ → 0, em todos os pontos
do choque devemos ter cruzamento das caracterı́sticas que provém da condição inicial.

u(x,t)

u(x,0)

Figura 5.20: Caso limite mostrando a localização final do choque

A figura 5.20 mostra a posição do choque; note como a solução descontı́nua se propaga.
Observe que a solução da equação (5.8) pode ser dada por:

1, x ≤ t/2
u(x, t) =
0, x > t/2.

A propriedade de que o choque deve ser determinado pelas condições iniciais é muito
importante porque fornece um critério simples para escolha da solução descontı́nua que
melhor representa a fı́sica do modelo.
174 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

Regularização da Equação
Como já mencionado no inı́cio desta seção uma solução fraca pode ser obtida pelo limite
de aproximações contı́nuas dos dados iniciais, ou como um caso limite de regularização da
própria equação pela adição de um termo parabólico, isto é, pela adição de viscosidade arti-
ficial à equação original. Assim, por exemplo, pode ser considerada a seguinte regularização:

uǫt + auǫx = ǫuǫxx , t>0

para ǫ > 0, suficientemente pequeno. A solução uǫ (x, t) é sempre suave e limǫ→0 uǫ (x, t) =
u(x, t). Note que na prática resolve-se uma sequência de problemas com valores decrescentes
de ǫ.
O efeito da parabolização é a suavização da solução, como ilustrado pelas figuras 5.21 e
5.22, que representam a solução do problema

ut + ux = 1 + ǫuxx

com condição inicial linear por partes

6, x≤3
(
u(x, 0) = x + 3, 3≤x<7 (5.11)
17 − x, x ≥ 7.

Note que para ǫ = 0, a condição inicial seria transportada domı́nio adentro sem suavização
.

11

11
10
10

9
9
8
u(x,t)

7 8
u(x,.)

6
7
5 t=0.54

t=0
4 6
15
0.6
10 5
0.4
5
0.2
4
0 0 0 2 4 6 8 10 12 14
x t x

Figura 5.21: Gráfico da solução e perfis nos tempos t = 0 e t = 0.54 para ǫ = 0.2

Para o caso da equação de Burgers com condição inicial constante por partes, com
apenas um salto (Problema de Riemann), pode ser provado que as soluções obtidas através
do processo limite, tanto no caso de modificação da condição inicial quanto no caso da
parabolização da equação, coincidem, ver exercı́cios (5.9-5.10) [23]. No entanto o caso geral
de equações hiperbólicas não lineares pode apresentar singularidades mesmo se os dados
5.1. INTRODUÇÃO 175

11

11
10
10

9
9
8

u(x,t)
7 8

u(x,.)
6
7
5 t=0.54

t=0
4 6
15
0.6
10 5
0.4
5
0.2
4
0 0 0 2 4 6 8 10 12 14
x t x

Figura 5.22: Gráfico da solução e perfis nos tempos t = 0 e t = 0.54 para ǫ = 0.01

iniciais forem regulares. Portanto, a regularização das condições iniciais não é suficiente para
garantir a existência de uma solução clássica para o problema não linear com condição inicial
uǫ (x, 0). Por outro lado a equação parabolizada com dados iniciais descontı́nuos sempre tem
uma solução clássica. Dessa forma, a segunda técnica de regularização é preferida, por
generalizar-se para outros problemas.
Como esperamos ficou claro dessa discussão, soluções fracas não são, em geral, unica-
mente determinadas. Os processos de passagem ao limite discutidos acima, fornecem um
critério lógico para a escolha da solução fraca que melhor representa a fı́sica do problema.
Dizemos que neste caso a solução fraca satisfaz a condição de entropia.
O processo de passagem ao limite oferece sérias dificuldades do ponto de vista prático,
principalmente com relação à obtenção de uma solução numérica. Dessa forma, para a
classe dos problemas de conservação de fluxos, que modelam situações reais importantes,
foram estabelecidas propriedades, a serem descritas logo a seguir, que se observadas, levam
à solução que satisfaz a condição de entropia. No entanto, para o caso de uma equação geral
a escolha da solução entrópica é um problema ainda não resolvido ( [23], página 75).

Leis de Conservação
Diversos aspectos das equações hiperbólicas foram abordados até aqui, ficando claro,
que esses tipos de equações oferecem diversas dificuldades (por exemplo, admitem soluções
com descontinuidades). No sentido de oferecer resultados práticos, a pesquisa nessa área
evoluiu na direção das equações na forma de lei de conservação, onde conseguiu-se estabelecer
resultados importantes principalmente no que concerne à compreensão sobre choques.
Uma lei de conservação estabelece que a variação de uma quantidade u(x, t) definida em
um domı́nio D só depende do fluxo de u através da fronteira ∂D. Se o fluxo de u é dado
por uma função f , então
d
Z Z
udx = − f ηds (5.12)
dt D ∂D

onde η é o vetor normal à ∂D apontando para o exterior de D. Se u e f são bem comportadas


176 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

então (5.12) pode ser reescrita na forma:


Z
(ut + (f (u))x )dx = 0. (5.13)
D

Como o conjunto D é arbitrário, (5.13) resulta em:


ut + (f (u))x = 0 (5.14)

que é a equação na forma de conservação. É importante observar que a forma integral (5.13)
não impõe exigências de diferenciabilidade tão restritivas quanto a forma diferencial (5.14).
Por isso a formulação integral é frequentemente usada para a construção de soluções fracas.
No caso de um sistema de equações de conservação, um bom exemplo de (5.14) é a equação
de Euler da dinâmica dos gases em que u = (ρ, ρv, ρE)T é o vetor de estado das variáveis
conservadas e f = (ρv, ρv 2 + P, ρvE + P v)T , sendo ρ, v, E e P a massa especı́fica do gas, a
velocidade, a pressão e a energia total, respectivamente.
A equação na forma de conservação fornece informações mais detalhadas sobre o choque.
De fato, seja uma curva x = ξ(t) ao longo da qual a solução u é descontı́nua e seja [a, b] um
intervalo na variável espacial x que contenha ξ(t), como ilustrado pela figura 5.23.

t
ξ(t)

[ ]
a b

Figura 5.23: Parametrização do choque

Sejam ue e ud valores limites de u à esquerda e à direita de ξ(t), definimos então a função:


Z b
I(t) = u(x, t)dx
a

então
ξ(t) b
dI
Z Z
= ut dx + ue s + ut dx − ud s
dt a ξ(t)

onde s = dξ
dt . No caso de um choque estacionário s representa sua inclinação.
Como, ut = −(f (u))x , obtemos,
dI
= f (ua ) − f (ue ) + ue s − f (ub ) + f (ud ) − ud s (5.15)
dt
5.1. INTRODUÇÃO 177

onde ua e ub representam a solução u nos pontos a e b. Mas, pela lei de conservação


dI
= f (ua ) − f (ub )
dt
e portanto a equação (5.15) pode ser reescrita como:
s(ue − ud ) = f (ue ) − f (ud ). (5.16)
A expressão (5.16) é conhecida como condição de Rankine-Hugoniot. Na literatura essa
condição é frequentemente escrita na forma
[f (u)]
s= ,
[u]
onde [ ] denota uma função que fornece o valor do salto na descontinuidade.
Note que haverá choque quando [u] 6= 0, caso contrário teremos a chamada descon-
tinuidade de contato. Assim, como x = ξ(t) e s = [f[u]
(u)]
a posição do choque é dada por:

dx [f (u)]
= .
dt [u]
Por exemplo, no caso da equação de Burgers
ut + uux = 0 (5.17)
que pode ser colocada na forma conservativa
ut + (f (u))x = 0
2
onde f (u) = u2 é a função de fluxo, a condição de Rankine-Hugoniot indica que o choque
será dado pela curva:
dx u2 /2 − u2d /2 ue + ud
= e = .
dt ue − ud 2
confirmando o que já havı́amos observado na figura 5.20.
Observação 5.1.8 Chamamos a atenção do leitor para o fato de que a forma conservativa
em que uma equação hiperbólica é escrita determina a solução fraca escolhida pelo processo
de Rankine–Hugoniot e portanto influencia a posição do choque. Duas formas conservativas
distintas e equivalentes de uma mesma equação geram soluções fracas diferentes, por exemplo
a equação
2
(u2 )t + ( u3 )x = 0 (5.18)
3
é equivalente à equação de Burgers pois é uma forma conservativa para u2 obtida pela mul-
tiplicação de (5.17) por 2u. Se considerarmos o problema de Riemann para (5.17) e (5.18)
com condição inicial tal que ue > ud então (5.17) possue um choque com inclinação:
2
[f (u)] [u ] 1
s1 = = 2 = (ue + ud )
[u] [u] 2
178 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

já (5.18) possue choque com inclinação:

[ 23 u3 ] 2(u2e + ue ud + u2d )
s2 = =
[u2 ] 3(ue + ud )
diferente portanto de s1 .

Problema de Riemann
Um problema de Riemann é constituı́do de uma equação diferencial parcial na forma de
conservação tendo como condição inicial a função de Heaviside, isto é uma função da forma:

ue , se x ≤ 0
Heav(x) = .
ud , se x > 0

Mais precisamente, um problema de Riemann é dado por:


ut + (f (u))x = 0 (5.19)
u(x, 0) = Heav(x), (5.20)
com ue 6= ud . Como já mencionado anteriormente esse tipo de equação possui soluções não
diferenciáveis e em muitos casos nem mesmo contı́nuas ao longo da curva caracterı́stica que
passa pela origem.
Por exemplo para a equação ut + aux = 0 para a constante positiva, com a condição
inicial u(x, 0) = Heav(x) temos que a solução é constante por partes e dada pela expressão:

ue , se x ≤ at
u(x, t) =
ud , se x > at
ou graficamente como na figura 5.24.

t
ue

ud

ue
ud

Figura 5.24: Solução do problema de Riemann

No caso da equação de Burgers não viscosa a solução poderá apresentar onda de rarefação
ou onda de choque, conforme ue < ud ou ue > ud , respectivamente, conforme já estabelecido
na subseção Regularização dos dados.
5.1. INTRODUÇÃO 179

t ue ud
t
ud ue

ue ud
ud ue

x x

Figura 5.25: Soluções da equação de Burgers

Condições de Entropia
A escolha da solução entrópica, via regularização dos dados ou da própria equação é
quase sempre de difı́cil tratamento. A literatura apresenta condições alternativas quando as
equações estão escritas na forma de leis de conservação . Como vimos, um critério, no caso
da equação escalar, é que as condições iniciais compartilhem a construção e evolução das
descontinuidades. Por exemplo é o que ocorre no caso de choque, onde a descontinuidade vai
se formar se a inclinação das caracterı́sticas à esquerda for maior do que à direita do ponto
de descontinuidade da condição inicial. Uma outra forma de apresentação deste critério é:

Critério 1: Seja s a condição de Rankine-Hugoniot, então a solução u(x, t) é a solução


entrópica, se ao longo da descontinuidade vale a relação:
f ′ (ue ) > s > f ′ (ud ).

Em outras palavras, as caracterı́sticas partem da condição inicial em direção da descon-


tinuidade, ou seja, a inclinação da descontinuidade está entre as inclinações das carac-
terı́sticas à sua esquerda e à sua direita.
Note que se f é convexa então a condição se reduz a ue > ud . No caso de f ser côncava
teremos ud > ue , veja exercı́cio (5.12).
Uma condição mais geral foi estabelecida por Oleinik [Oleinik 1957].

Critério 2: A solução u(x, t) é a solução entrópica se ao longo da descontinuidade vale


a relação:
f (u) − f (ue ) f (u) − f (ud )
≥s≥
u − ue u − ud
para todo u entre ue e ud .

Note que se f é convexa esta relação reduz-se àquela do critério 1. Ver exercı́cio (5.3).
Uma outra relação importante diz respeito à expansão de uma rarefação e foi também
estabelecida por Oleinik, [Oleinik 1957] para f ′′ > 0.
180 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

Critério 3: A solução u(x, t) é entrópica se existe uma constante E tal que para δ > 0,
t > 0 e qualquer x ∈ IR, tem-se:
u(x + δ, t) − u(x, t) E
< .
δ t
Aspectos adicionais sobre condições de entropia incluindo funções de entropia podem ser
obtidos, por exemplo, em LeVeque [23].
No caso escalar com f convexa, um problema de Riemann apresenta alternativamente,
ou choque ou rarefação como solução entrópica. No caso em que f é côncava a mesma
afirmação é verdadeira. Porém, quando f tem um ponto de inflexão os dois tipos de solução
entrópica podem desenvolver-se simultaneamente. Ver figura 5.26.
O exemplo mais simples e interessante é aquele dado pela equação de Buckley–Leverett
que modela o escoamento de um fluido em meio poroso com duas fases, por exemplo a injeção
de água para extração de petróleo. O modelo é dado por:

u2
ut + (f (u))x = 0, com f (u) = , (5.21)
u2 + c(1 − u)2
e c constante.
A solução u(x, t) representa a saturação de água satisfazendo portanto a desigualdade
0 ≤ u(x, t) ≤ 1.
Pode ser demonstrado (veja por exemplo LeVeque [23], página 48) que para o problema
de Riemann com ue = 1 (água) e ud = 0 (óleo) a solução possui uma rarefação com um
choque no extremo da área de rarefação, chamada de uma rarefação seguida de choque.

ue

u*

t ud

ue

ud
x

Figura 5.26: Perfis da solução da equação de Buckley-Leverett

O ponto u∗ é determinado pela intersecção da envoltória convexa de f (u) com o gráfico


de f (u) (vide linha tracejada da figura 5.27). Para uma visualização detalhada da construção
do ponto u∗ veja a figura 5.27.
Verifique que a posição do choque é dada pela direção f ′ (u∗ ).

Observação 5.1.9 Se f (u) tem vários pontos de inflexão a solução pode apresentar uma
composição de choques e rarefações.
5.1. INTRODUÇÃO 181

0.9

0.8

0.7

0.6

f(u)
0.5

0.4

0.3

0.2

0.1

0
0 0.2 0.4 0.6 u* 0.8 1
u

Figura 5.27: Definição de u∗

Informações mais detalhadas sobre a equação de Buckley-Leverett podem ser encontradas


em ( [Leme 1981], página 96).
Se no lugar de uma equação escalar tivermos um sistema de equações a solução do
problema de Riemann torna-se muito mais difı́cil, pois em cada ponto (x, t) passam p
caracterı́sticas havendo portanto diversas possibilidades de propagação e formação de de-
scontinuidades, acarretando dificuldades na seleção da solução entrópica. Uma discussão
mais detalhada desse assunto pode ser encontrada em Sod [36], LeVeque [23], Jeffrey [38],
Godlewski [39] e Thomas [33].

5.1.2 Equação da onda


Consideremos a equação da onda:

utt − a2 uxx = 0, (5.22)


u(x, 0) = f (x), ∀x,
ut (x, 0) = g(x), ∀x.
Fazendo a mudança de variáveis: ξ = x + at e η = x − at, de modo que φ(η, ξ) = u(x, t),
temos
∂ ∂ ∂
≡ +
∂x ∂ξ ∂η
e
 
∂ ∂ ∂
≡a − .
∂t ∂ξ ∂η
Assim a equação (5.22) se reduz a:

∂2φ
4a2 ≡ 0.
∂ξ∂η
A solução geral desta equação é da forma:
182 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

φ(η, ξ) = Q(η) + P (ξ).

Portanto, a solução geral da equação (5.22) é dada por:

u(x, t) = P (x + at) + Q(x − at), (5.23)


onde P e Q são funções arbitrárias (duas vezes diferenciáveis). Desde que P (x + at) é
constante ao longo das linhas x+ at = constante, esta parte da solução pode ser considerada
como uma onda que se propaga para a esquerda, com velocidade a > 0, quando o tempo
avança. De forma semelhante, Q(x − at) representa uma onda se movendo para a direita
com velocidade a. As linhas no plano (x, t), ao longo das quais as ondas viajam,

x ± at = constante,

são as curvas caracterı́sticas da equação. Note que a equação da onda (de ordem 2) tem
duas famı́lias de caracterı́sticas, enquanto a equação de advecção (de ordem 1) tem apenas
uma.
Quando aplicamos as condições iniciais da equação (5.22), na solução (5.23), obtemos:

P (x) + Q(x) = f (x),


1
P ′ (x) − Q′ (x) = g(x).
a
Integrando a segunda relação no intervalo [0, x], temos:

1 x
Z
P (x) − Q(x) = g(y)dy + Q(0) − P (0).
a 0

Assim, obtemos
x
1 1
Z
P (x) = f (x) + g(y)dy + M
2 2a 0

e
x
1 1
Z
Q(x) = f (x) − g(y)dy − M,
2 2a 0

onde M = 21 [P (0) − Q(0)].


A solução da equação (5.22), é dada, portanto, por:

u(x, t) = φ(η, ξ) = P (ξ) + Q(η)


x+at
1 1
Z
= [f (x + at) + f (x − at)] + g(y)dy. (5.24)
2 2a x−at
5.1. INTRODUÇÃO 183

Os valores da solução em um ponto (x0 , t0 ) fixo dependem somente dos valores iniciais
sobre o segmento de reta no eixo x delimitado pelas retas x−at = x0 −at0 e x+at = x0 +at0 .
Este segmento é chamado de intervalo de dependência do ponto (x0 , t0 ). Inversamente, o
conjunto de pontos (x, t) no qual a solução é influenciada pelos dados iniciais em um ponto
(x0 , 0) é a região limitada pelas linhas x + at = x0 e x − at = x0 . Esta região é chamada de
domı́nio de influência do ponto (x0 , 0).

t (x 0 , t 0)

x-at= x-0 at 0 x+at= x0+ at 0

x
Intervalo de dependência
x-0 at 0 x0+ at 0

Figura 5.28: Intervalo de dependência de (x0 , t0 )

t Domínio de
influência
Dominio de
x+at=x 0 influencia x-at=x 0

(x0 , 0) x

Figura 5.29: Domı́nio de influência de (x0 , 0)

Esta rápida dedução reforça o papel básico das caracterı́sticas na construção da solução.
Note que para equações hiperbólicas mais gerais (a ≡ a(x, t, u)) > 0 teremos duas famı́lias
de caracterı́sticas não necessariamente linhas retas, mas os mesmos conceitos se aplicam.
Exemplo 5.1.3 Vamos considerar a equação
utt − 4uxx = 0 0 < x < 1, t ≥ 0
u(x, 0) = sen (2πx), 0 < x < 1,
ut (x, 0) = 0, 0 < x < 1,
u(0, t) = u(1, t) = 0, t > 0,
cuja solução exata é u(x, t) = sen (2πx) cos (4πt) e as caracterı́sticas são x ± 2t = c.
184 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

Conforme (5.24) e como g(x) = 0, temos que a solução será a média de duas ondas que
se propagam, para a direita e para a esquerda, com velocidade 2 nas direções x − 2t e x + 2t,
ou seja,
1
u(x, t) = ( sen (2π(x − 2t)) + sen (2π(x + 2t)) = sen (2πx) cos (4πt).
2
As figuras em 5.30 representam 5 perfis das ondas sen (2π(x − 2t)) e sen (2π(x + 2t)).
1 1

0.8 0.8

0.6 0.6

0.4 0.4

0.2 0.2

0 0

−0.2 −0.2

−0.4 −0.4

−0.6 −0.6

−0.8 −0.8

−1 −1
0 5 10 15 20 25 30 35 40 0 5 10 15 20 25 30 35 40

Figura 5.30: Perfis de uma onda propagando-se para a direita e esquerda


−− : Representa a condição inicial

Os perfis da média das duas ondas, que coincidem com os respectivos perfis da solução
exata, são mostrados na figura 5.31.
1

0.8

0.6

0.4

0.2

−0.2

−0.4

−0.6

−0.8

−1
0 5 10 15 20 25 30 35 40

Figura 5.31: Média dos perfis das ondas esquerda e direita


−− : Representa a condição inicial

A solução u(x, t) é mostrada na figura 5.32.


5.1. INTRODUÇÃO 185

0.5

−0.5

−1
200

150 40
30
100
20
50
10
0 0

Figura 5.32: Solução do exemplo (5.1.3)

Sistemas de Equações Hiperbólicas Lineares


A equação da onda é um modelo interessante também porque pode representar a classe
dos sistemas lineares hiperbólicos, uma vez que essa equação pode ser transformada em um
sistema com duas equações de primeira ordem.
Introduzindo uma nova variável v(x, t) com vt = aux a equação da onda transforma-se
no sistema equivalente:

ut = avx
vt = aux
ou em forma matricial
      
u 0 a u 0
− = , (5.25)
v t a 0 v x 0
com as respectivas condições iniciais.
Denotando por V = (u, v)T o sistema (5.25) toma a forma Vt + AVx = 0. As direções das
caracterı́sticas são dadas pelos autovalores de A que são λ1 = a e λ2 = −a. Considerando
os autovetores associados podemos desacoplar o sistema, por meio da diagonalização de A
e de uma mudança de variáveis, chamada variáveis das caracterı́sticas. Sendo A = T ΛT −1
a nova variável será dada por W = T −1 V e o sistema com Λ diagonal se torna
Wt + ΛWx = Θ.
O valor de W é constante ao longo de cada caracterı́stica e por isso é chamado de Riemann
invariante.
Os autovetores para a equação (5.25) são (1, 1)T e (1, −1)T e portanto as variáveis das
caracterı́sticas são u + v e u − v. Logo o sistema torna-se:
      
u+v a 0 u+v 0
+ = .
u−v t 0 −a u−v x 0
186 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

Uma preocupação sempre presente quando trabalhamos com sistemas está ligada à es-
pecificação de condições de fronteira. Se essas condições de fronteira não forem cuidadosa-
mente especificadas ocorrerá incompatibilidade e o problema não será então bem posto.
Para ilustrar essa situação vamos considerar um sistema 2 × 2 ligeiramente mais geral.
Seja
      
u b a u 0
− = , t > 0, 0 < x < 1.
v t a b v x 0
Os autovalores são λ1 = b + a e λ2 = b − a e as variáveis caracterı́sticas são u + v e u − v
e portanto obtemos o sistema:
      
u+v b+a 0 u+v 0
+ = . (5.26)
u−v t 0 b−a u−v x 0
As caracterı́sticas propagam informações nas direções λ1 = b + a e λ2 = b − a.
Se 0 < a < b então λ1 > 0 e λ2 > 0 e ambas as caracterı́sticas se propagam para a direita
no plano (x, t). Nesse caso as condições de fronteira deverão ser especificadas em x = 0.
Se 0 < b < a então uma caracterı́stica propaga-se para a direita (λ1 > 0) enquanto a
outra propaga-se para a esquerda (λ2 < 0). Devemos então especificar valores para x = 0
e também para x = 1. Como λ1 está associado à variável u + v da caracterı́stica e λ2 está
associado à variável u − v, devemos especificar u + v em x = 0 e u − v em x = 1. Na verdade
as seguintes condições tornam o problema bem posto, ( [Quarteroni 1997], página 453).

u+v = α0 (t)(u − v) + β0 (t), para x = 0


u−v = α1 (t)(u + v) + β1 (t), para x = 1.

Considerando a fronteira x = 0, quando λ > 0 dizemos que a caracterı́stica associada


está entrando no domı́nio e quando λ < 0 a caracterı́stica associada está saindo. Assim
devemos especificar condições de fronteira para as variáveis caracterı́sticas em x = 0 em
mesmo número das caracterı́sticas que estão entrando no domı́nio e, em x = 1 o mesmo
número de caracterı́sticas saindo do domı́nio. Algebricamente esse procedimento para um
sistema linear n × n toma a forma a seguir.
Para m ≤ n    
Λ+ Θ W+
Λ= e W =
Θ Λ− W−
as condições

W + (t, 0) = α0 (t)W − (t, 0) + β0 (t)


W − (t, 1) = α1 (t)W + (t, 1) + β1 (t)

tornam o problema bem posto, onde Λ+ = diag(λ1 , λ2 , . . . , λm ) com λi > 0 e W + =


(w1 , w2 , . . . , wm )T , são as variáveis caracterı́sticas associadas a valores positivos de λ e Λ− =
diag(λm+1 , λm+2 , . . . , λn ) com λi < 0 e W − = (wm+1 , wm+2 , . . . , wn )T são as variáveis
caracterı́sticas associadas com valores negativos de λ.
É claro que para sistemas não lineares essa análise é muito mais complexa.
5.1. INTRODUÇÃO 187

Método das caracterı́sticas


Mostramos anteriormente que as equações hiperbólicas são substancialmente simplifi-
cadas se as caracterı́sticas, isto é, o sistema natural de coordenadas, forem utilizadas. Assim,
um dos primeiros métodos numéricos desenvolvidos e que procura aproveitar a vantagem de
construir a solução seguindo as caracterı́sticas foi chamado de método das caracterı́sticas.
Primeiramente é preciso obter as caracterı́sticas, que para o caso de uma equação de
segunda ordem, pode ser feito como a seguir.
Considere a equação de segunda ordem:

auxx + buxt + cutt = e, (5.27)


temos que:

d(ux ) = uxx dx + uxt dt, (5.28)


d(ut ) = uxt dx + utt dt.
As equações (5.27) e (5.28) formam um sistema linear de 3 equacões para uxx , uxt e utt :

c b a utt e
! ! !
dt dx 0 uxt = d(ut ) .
0 dt dx uxx d(ux )

As inclinações das direções caracterı́sticas da equação (5.27) são dadas por:

c b a
!
det dt dx 0 = 0,
0 dt dx

ou seja, são as raı́zes da equação quadrática:


 2  
dx dx
c −b + a = 0, (5.29)
dt dt
que são dadas por:
dx 1  p 
= b ± b2 − 4ac .
dt 2c
Temos, portanto, duas direções para as caracterı́sticas.
Denotando as derivadas de ordens 1 e 2 por:

∂u ∂u ∂2u ∂2u ∂2u


= p, = q, = r, = s, e = y,
∂x ∂t ∂x2 ∂x∂t ∂t2
as equações diferenciais para p e q satisfazem, conforme (5.28)

∂p ∂p
dp = dx + dt = rdx + sdt
∂x ∂t
188 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

e
∂q ∂q
dq = dx + dt = sdx + ydt.
∂x ∂t
Usando (5.29) e eliminando e e y com a ajuda de (5.27) podemos dizer que ao longo das
direções caracterı́sticas, as diferenciais dp e dq estão relacionadas pela equação:
dq dx dp dx
c +a −e = 0,
dt dt dt dt
que pode ser reescrita na forma:
dx
c dq + adp − edx = 0. (5.30)
dt
Vamos supor que a equação (5.27) seja hiperbólica, assim as raı́zes da equação (5.29) são
reais e distintas. Sejam elas:
dx dx
=f e = g. (5.31)
dt dt
A discretização agora é feita sem maiores dificuldades. Escolhe-se um espaçamento sobre
a curva de condições iniciais, por exemplo para os pontos P , Q, W , etc. A partir desses
pontos e seguindo as curvas caraterı́sticas dadas por (5.31), a solução numérica vai sendo
construı́da.
Consideremos então Γ uma curva não caracterı́stica, sobre a qual os valores para u, p
e q são conhecidos. Sejam P e Q pontos sobre Γ e seja f a caracterı́stica através de P
interceptando a caracterı́stica g através de Q no ponto R(xR , tR ), figura 5.33.

T S
Γ
t R
W
g
Q
P

Figura 5.33: Caracterı́sticas para a equação de segunda ordem

Como uma primeira aproximação podemos considerar os arcos P R e QR como sendo


linhas retas com inclinações fP e gQ respectivamente. Então as equações (5.31) podem ser
aproximadas por:

xR − xP = fP (tR − tP ) (5.32)
5.1. INTRODUÇÃO 189

e
xR − xQ = gQ (tR − tQ ), (5.33)
ou seja, obtivemos duas equações para duas incógnitas xR e tR .
Pela equação (5.30) as relações diferenciais ao longo das caracterı́sticas são:

cf dq + adp − edx = 0

e
cgdq + adp − edx = 0.
A primeira pode ser aproximada ao longo de P R pela equação:

cP fP (qR − qP ) + aP (pR − pP ) − eP (xR − xP ) = 0 (5.34)


e a segunda ao longo de QR pela equação:

cQ gQ (qR − qQ ) + aQ (pR − pQ ) − eQ (xR − xQ ) = 0. (5.35)


Obtivemos agora 2 equações para as incógnitas pR e qR .
O valor de u em R pode ser obtido de:
∂u ∂u
du = dx + dt = pdx + qdt,
∂x ∂t
substituindo os valores de p e q ao longo de P R pelos seus valores médios e aproximando a
última equação por:
1 1
uR − uP = (pP + pR )(xR − xP ) + (qP + qR )(tR − tP ). (5.36)
2 2
Esta primeira aproximação para uR pode agora ser melhorada substituindo os valores
dos vários coeficientes pela média dos valores em pontos vizinhos. As equações (5.32) e
(5.33) para melhorar os valores de xR e tR se tornam, então:
1
xR − xP = (fP + fR )(tR − tP )
2
e
1
xR − xQ = (gQ + gR )(tR − tQ )
2
e as equações (5.34) e (5.35) para melhorar os valores de pR e qR se tornam:
1 1 1 1
(cP + cR ) (fP + fR )(qR − qP ) + (aP + aR )(pR − pP ) − (eP + eR )(xR − xP ) = 0
2 2 2 2
e
1 1 1 1
(cQ + cR ) (gQ + gR )(qR − qQ ) + (aQ + aR )(pR − pQ ) − (eQ + eR )(xR − xQ ) = 0.
2 2 2 2
Um valor melhor para uR pode então ser calculado da equação (5.36).
190 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

A repetição deste último ciclo de operações produzirá um valor mais preciso para uR .
Computacionalmente o número de iterações necessárias para obtermos a precisão desejada
deve ser pequeno e isto é garantido pelo refinamento da discretização inicial.
Da mesma maneira calcula-se a solução em S, usando Q e W . É possı́vel então avançar
com o cálculo da solução no ponto T pelo mesmo processo, mas usando R e S no lugar de
P e Q.
Uma das desvantagens práticas desse método é que, além dele poder ser aplicado apenas
para problemas simples, os valores da solução são obtidos numa malha irregular. É possı́vel
contornar a situação de malha irregular construindo-se um método hı́brido conhecido como
método de Hartree, para o qual faz-se a discretização do domı́nio como se fosse para diferenças
finitas. A partir de cada ponto da malha, cuja posição já é conhecida, calcula-se por in-
terpolação os valores da solução retrocedendo ao longo da caracterı́stica até a intersecção
desta com uma linha horizontal da malha, conforme figura 5.34. Note que os parâmetros de
malha devem ser tais que a condição CFL seja satisfeita, ou seja o espaçamento é escolhido
de forma que uma caracterı́stica não intercepta uma linha vertical da malha.

h
x

Figura 5.34: Ilustração do método de Hartree

5.2 Diferenças Finitas para a Equação de Advecção


Vamos iniciar o estudo dos métodos numéricos de diferenças finitas, considerando a
equação modelo:

ut + aux = 0 (a > 0, constante), t > 0, x ∈ IR, (5.37)


juntamente com a condição inicial

u(x, 0), x ∈ IR.

Vamos considerar, também, a região

t ≥ 0, −∞ < x < ∞,
5.2. DIFERENÇAS FINITAS PARA A EQUAÇÃO DE ADVECÇÃO 191

coberta por uma malha retangular com linhas paralelas aos eixos x e t e espaçamento dado
respectivamente por h e k,

t
P

h
U(x) x

Figura 5.35: Domı́nio discretizado

Um ponto genérico pode ser dado pelas coordenadas ih em x e jk em t. Por exemplo,


P pode ser dado por x = ih e t = (j + 1)k, ou seja, P = (ih, (j + 1)k). Para a dedução das
fórmulas vamos usar pontos genéricos P, Q por exemplo, mas ao final elas serão reescritas
em função de ı́ndices i, j.

Fórmulas de Diferenças Finitas Explı́citas


Nesta seção apresentaremos fórmulas explı́citas de primeira e de segunda ordem. Al-
gumas observações sobre estabilização e convergência acompanham os métodos aqui con-
struı́dos.
Antes, porém, vamos introduzir a condição de Courant-Friedrichs-Lewy (CFL) [9], que
se aplica a esquemas de diferenças para equações hiperbólicas e é uma condição essencial
para a convergência e estabilidade do método.

Condição CFL
A condição CFL estabelece um critério mı́nimo e simples a ser exigido de um método
convergente. A motivação para a condição CFL pode ser desenvolvida como segue.
Todos os pontos que contribuem para a solução exata em um ponto P (veja figura
5.36), devem influenciar a solução numérica, sob pena de no limite h, k → 0, obtermos uma
aproximação que não representa a solução exata. Em outras palavras, todos os pontos da
malha que estão contidos na região de dependência devem estar envolvidos no cálculo da
solução aproximada em P . É suficiente portanto, que os pontos envolvidos no cálculo de
Ui,j+1 contenham a região de dependência para u(ih, (j + 1)k).
Essa é a condição mı́nima, considerada análoga à zero–estabilidade, exigida para a con-
vergência de um método.
Uma maneira prática de saber se um método satisfaz a condição CFL é observar sua
molécula de cálculo de Ui,j+1 , pois por meio dela sabemos a região de dependência numérica
192 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

do método, que é dada pelo “cone” dos pontos que influenciam o cálculo de Ui,j+1 . Esta
região deve conter as caracterı́sticas passando por P .
Por exemplo, no caso de um método explı́cito que utilize 3 pontos no nı́vel j, isto é
ui−1,j , ui,j e ui+1,j para construir Ui,j+1 (como na figura 5.40) essa condição exige que uma
caracterı́stica passando por P = (ih, (j + 1)k) (figura 5.35) corte a linha t = jk, entre os
pontos ((i−1)h, jk) e ((i+1)h, jk). Em outras palavras, o intervalo de dependência numérica
deve conter o intervalo de dependência da solução analı́tica. As ilustrações da figura 5.36
indicam as situações em que o método de Lax–Wendroff satisfaz a condição CFL e a outra
em que esta é violada.
Claramente um método implı́cito satisfaz a condição CFL.
Se a condição CFL não for satisfeita, não há convergência do método, quando h → 0,
com ν = hk , ν constante. Isso significa que a relação hk é essencial para que haja convergência
do esquema considerado.

t t
P P

k k

h h
U(x) x U(x) x
(a) (b)
k a) satisfaz CFL,
Figura 5.36: Relação para a qual Lax–Wendroff:
h b) não satisfaz CFL

Método de Euler Explı́cito


A maneira mais intuitiva de resolvermos a equação (5.37) seria usarmos diferenças pro-
gressivas no tempo e central no espaço, ou seja,

νa
Ui,j+1 − Ui,j = − (Ui+1,j − Ui−1,j ). (5.38)
2
Apesar de um método simples, este constitui-se em um método inadequado por ser incondi-
cionalmente instável, veja exercı́cio (5.19).

Método de Lax–Friedrichs
A simples substituição de Ui,j em (5.38) pela média (Ui+1,j +Ui−1,j )/2, leva a um método
estável conhecido como método de Lax-Friedrichs, a saber

1 νa
Ui,j+1 = (Ui+1,j + Ui−1,j ) − (Ui+1,j − Ui−1,j ). (5.39)
2 2
5.2. DIFERENÇAS FINITAS PARA A EQUAÇÃO DE ADVECÇÃO 193

Esquema Explı́cito de Primeira Ordem


Nesse método, vamos considerar os seguintes pontos:

P = (ih, (j + 1)k), Q = ((i − 1)h, jk) e S = (ih, jk),

que representam a molécula da figura 5.37.

Q S

Figura 5.37: Molécula do método explı́cito

Suponhamos que a solução, ou uma aproximação para a solução, do problema é conhecida


nos pontos Q e S e que determinaremos uma aproximação para a solução no ponto P .
Desenvolvendo a solução u do problema, no ponto P , em série de Taylor, temos:

∂ k2 ∂ 2 k3 ∂ 3
uP = uS + k uS + 2
uS + uS + · · ·
∂t 2! ∂t 3! ∂t3
  

uP = exp k uS
∂t
 
∂ ∂ ∂
uP = exp −ka uS , pois = −a .
∂x ∂t ∂x
Consideremos, agora, as aproximações de primeira ordem:
∂ ∂ 1
uP ≃ uS − ak uS e uS ≃ (uS − uQ ).
∂x ∂x h
Assim,
k
uP ≃ uS − a (uS − uQ ).
h
Obtivemos, portanto, a fórmula de diferenças

UP = (1 − νa)US + νaUQ , (5.40)


onde ν = k/h. Essa fórmula corresponde a

Ui,j+1 = (1 − νa)Ui,j + νaUi−1,j ,


194 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

Para determinarmos o erro de truncamento local, utilizaremos as séries de Taylor:

∂ k2 ∂ 2
uP = uS + k uS + uS + · · ·
∂t 2! ∂t2
∂ k2 ∂ 2
uQ = uS − h uS + uS − · · ·
∂x 2! ∂x2
Substituindo essas expressões na equação (5.40), obtemos:

k2 ∂ 2 h2 ∂ 2
 
∂ k k ∂
uS + k uS + u S + · · · = u S − au S + a u S − h u S + u S − · · · .
∂t 2! ∂t2 h h ∂x 2! ∂x2
O erro de truncamento local é dado, portanto, por:

k2 ∂ 2 k ∂2
 
us − a 2 us + · · ·
2! ∂t2 h ∂x
Seja R o ponto onde a caracterı́stica passando por P intercepta o nı́vel da malha sobre
o qual estão os pontos Q e S. Para que a condição CFL seja satisfeita devemos ter, nesse
esquema, o ponto R situado entre os pontos Q e S, veja figura 5.38.

R d S
Q
h

Figura 5.38: Representação de uma caracterı́stica passando pelo ponto P .

No caso da equação (5.37), a caracterı́stica é a reta x + at = constante, cuja inclinação,


em função de x é dada por tan θ = a1 . Podemos deduzir pela figura 5.38 que a inclinação
de uma reta passando por P e R, será dada por tan θ = kd , onde k é o espaçamento e d é a
distância entre R e S. Logo d = ka,
A condição CFL exige que 0 ≤ d ≤ h, ou 0 ≤ ka ≤ h, ou melhor ainda,
k
0≤ a = νa ≤ 1 (h 6= 0).
h
Note que este método é mais apropriado no caso em que os valores de fronteira são fixados
à esquerda do domı́nio.

Método Upwind
No método anterior, uma condição essencial para garantir a condição CFL é a > 0.
Evidentemente, se a < 0, devemos usar diferença progressiva para aproximação da derivada
5.2. DIFERENÇAS FINITAS PARA A EQUAÇÃO DE ADVECÇÃO 195

espacial. O método upwind, também conhecido como método de Courant–Isaacson–Rees,


incorpora as duas condições em um único método, de maneira a ser geral o suficiente para
resolver problemas onde a ≡ a(x, t, u). O método upwind tem a seguinte expressão:

Ui,j − νa(Ui,j − Ui−1,j ), se a > 0
Ui,j+1 =
Ui,j − νa(Ui+1,j − Ui,j ), se a < 0.

t t

ão
di


reç

ag
a<0

ão

op
a>0

de

pr
de
pr
op

ão
ag

reç
x x

di
ão

Figura 5.39: Direções de Propagação do Método Upwind.

Com um pouco de álgebra podemos reescrever esse método como:


νa |a|ν
Ui,j+1 − Ui,j + (Ui+1,j − Ui−1,j ) = (Ui+1,j − 2Ui,j + Ui−1,j ). (5.41)
2 2
Comparando esse método com o de Euler, suas expressões diferem apenas no termo
do lado direito da igualdade que é uma aproximação para uxx , representando portanto a
resolução numérica do problema parabolizado. Esse termo de segunda ordem, estabiliza
o método de Euler mas introduz suavização na solução numérica, que é uma propriedade
marcante dos métodos do tipo upwind.
O método upwind é portanto a composição de dois métodos assimétricos que serão usados
alternativamente conforme a variação do valor de a(x, t, u).

Esquema de Lax-Wendroff
Os pontos envolvidos nesse esquema são:

P = (ih, (j + 1)k), Q = ((i + 1)h, jk), S = (ih, jk) e T = ((i + 1)h, jk),
com a correspondente molécula dada pela figura 5.40.
Expandindo uP em série de Taylor, temos:

∂ k2 ∂ 2
uS +
uP = uS + k uS + · · ·
∂t 2 ∂t2
∂ ∂

Eliminando os termos com derivadas em t ∂t = −a ∂x , obtém-se
196 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

Q S T

Figura 5.40: Molécula do esquema de Lax-Wendroff

∂ k2 ∂2
uP = uS − ka u S + a2 2 u S − · · ·
∂x 2 ∂x
Truncando a expressão acima, de maneira a manter os termos de até segunda ordem, e
então usando diferença central para a segunda derivada na variável x, vamos obter o método
conhecido como esquema de Lax-Wendroff:
ka k 2 a2
UP = US − (UT − UQ ) + (UQ − 2US + UT )
2h 2h2
ou
νa ν 2 a2
Ui,j+1 = Ui,j − (Ui+1,j − Ui−1,j ) + (Ui+1,j − 2Ui,j + Ui−1,j ). (5.42)
2 2
Portanto, a fórmula de segunda ordem, é dada por:
νa νa
UP = (1 − ν 2 a2 )US − (1 − νa)UT + (1 + νa)UQ ,
2 2
ou genericamente
νa νa
Ui,j+1 = (1 − ν 2 a2 )Ui,j − (1 − νa)Ui+1,j + (1 + νa)Ui−1,j .
2 2
O erro de truncamento para a aproximação de Lax-Wendroff é da O(h2 + k 2 ).
Para que a condição CFL seja satisfeita, nesse esquema, devemos ter o ponto R entre os
pontos Q e T . A condição CFL exige que 0 ≤ d ≤ h, ou seja, 0 ≤ |νa| ≤ 1, (h 6= 0).
Note que esse método pode ser aplicado também para a < 0, sendo em qualquer caso,
apropriado quando as condições de fronteira são fixadas em ambos os lados do domı́nio.
Vamos agora examinar a estabilidade da fórmula de Lax-Wendroff. Usando o método
de Neumann, pode ser mostrado que o fator de amplificação ζ (ver subseção Dissipação e
Dispersão) é dado por:

τ 2 Iβh τ
ζ = (1 − τ 2 ) + (e + e−Iβh ) − (eIβh + e−Iβh )
2 2
βh
ζ = (1 − 2τ 2 sen2 ) − Iτ senβh,
2
5.2. DIFERENÇAS FINITAS PARA A EQUAÇÃO DE ADVECÇÃO 197

onde τ = νa.
Assim,
βh 1/2
|ζ| = [1 − 4τ 2 (1 − τ 2 ) sen4 ] .
2
De onde segue que:

|ζ| ≤ 1, se 0 < τ ≤ 1.

A condição de estabilidade para o método de Lax-Wendroff, coincide, portanto, com a


condição CFL. Esse método é portanto explı́cito e estável se a condição CFL for satisfeita.
Em resumo, o esquema de Lax-Wendroff (5.42) é obtido inserindo-se um pequeno termo
difusivo positivo no lado direito da equação modelo, isto é, o método resultante é a dis-
cretização da equação :
1
ut = −aux + a2 kuxx .
2
A adição do termo 12 a2 kuxx estabiliza uma aproximação instável. Por outro lado causa
uma excessiva suavização na solução pois corresponde à resolução do problema original
parabolizado.
Uma outra questão prática importante diz respeito à necessidade de especificar, artifi-
cialmente, pontos na fronteira, por exigência do método numérico.
Suponhamos que desejamos resolver o problema

ut + aux = 0, a > 0, t > 0, 0 ≤ x ≤ 1

com condições auxiliares

u(x, 0) = u0 (x), 0 ≤ x ≤ 1
u(0, t) = g(t), t > 0.

Se usarmos o método de Lax–Wendroff da esquerda para a direita, aproximações da solução


podem ser calculadas para todos os pontos 0 ≤ xi < 1 exceto para x = 1, pois a molécula
computacional desse método (veja a figura 5.40), envolve pontos à direita e à esquerda
do ponto a ser calculado. Nesse caso podemos optar entre utilizar um outro método com
molécula assimétrica para o cálculo da solução em x = 1, ou então introduzir artificial-
mente uma condição de fronteira em x = 1, que é conhecida como condição de fronteira
numérica. Dois aspectos, no entanto, devem ser considerados quando utilizamos cada uma
das opções acima. No primeiro caso, devemos tomar cuidado se optarmos pela utilização
de um método de ordem mais baixa pois este pode diminuir a ordem da aproximação final
e eventualmente produzir instabilidades. No segundo caso, especialmente em se tratando
da solução de sistemas de equações, a condição de fronteira numérica comporta-se como
um refletor das ondas que se propagam de dentro do domı́nio, gerando reflexões espúrias
na solução, contaminando-a (vide [41]). Um método dissipativo amortece os efeitos dessas
soluções parası́ticas diminuindo seus efeitos na solução numérica. Mais acerca desse assunto,
na discussão sobre dissipação e dipersão.
198 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

Esquema Leap Frog


Esse esquema envolve três nı́veis de tempo e tem precisão de segunda ordem. O método
de Leap Frog envolve quatro pontos da malha:

P = (ih, (j + 1)k), W = (ih, (j − 1)k), Q = ((i − 1)h, jk) e T = ((i + 1)h, jk),

com molécula dada pela figura 5.41.

Q
T

W
Figura 5.41: Molécula do esquema Leap Frog

O esquema utiliza diferença central em x e t sendo dado por:

UP = UW − νa(UT − UQ )

ou genericamente por

Ui,j+1 = Ui,j−1 − νa (Ui+1,j − Ui−1,j ) .

Esse método é estável para 0 < νa ≤ 1, que coincide com a condição CFL.
É um esquema de dois passos e necessita, portanto, de mais um nı́vel de tempo no inı́cio
do processo (j = 1), que geralmente é calculado por algum outro método de passo 1.

Método de Beam–Warming
Para obter-se um método com melhor precisão podemos lançar mão do uso de um número
maior de pontos na molécula computacional desse método, por exemplo como no caso do
método de Lax-Wendroff que é de ordem 2 e usa 3 pontos. O método de Beam–Warming é
assimétrico e utiliza 3 pontos sendo dado por:

νa ν 2 a2
Ui,j+1 = Ui,j − (3Ui,j − 4Ui−1,j + Ui−2,j ) + (Ui,j − 2Ui−1,j + Ui−2,j ) .
2 2

Método de MacCormack
Uma maneira alternativa de construção de um método de ordem superior é através
da introdução de um passo intermediário imitando um previsor–corretor. O método de
5.2. DIFERENÇAS FINITAS PARA A EQUAÇÃO DE ADVECÇÃO 199

MacCormack foi construı́do inicialmente para problemas gerais na forma conservativa, no


entanto para o caso particular da equação de advecção esse esquema reduz-se a:
Ui,j+ 21 = Ui,j − νa (Ui+1,j − Ui,j )
1  νa  
Ui,j+1 = Ui,j − Ui,j+ 12 − Ui,j+ 12 − Ui−1,j+ 21 .
2 2

Fórmulas de Diferenças Finitas Implı́citas


Apresentaremos agora fórmulas de diferenças finitas implı́citas. Tais fórmulas só podem
ser aplicadas para problemas de valor de fronteira.
Um tı́pico problema dessa classe, para a equação hiperbólica de primeira ordem, é
fornecido por (5.37), com a condição inicial:

u(x, 0), 0 < x < ∞,


mais a condição de fronteira:

u(0, t), 0 ≤ t < ∞.


Nesta seção apresentaremos dois métodos: um implı́cito de primeira ordem e o método
de implı́cito de Wendroff.

Esquema Implı́cito de Primeira Ordem


O mais simples método implı́cito envolve os pontos:

P = (ih, (j + 1)k), V = ((i − 1)h, (j + 1)k) e S = (ih, jk).


A molécula associada é aquela da figura (5.42).

P
V

Figura 5.42: Molécula do método implı́cito

Usando o desenvolvimento de uS em série de Taylor e a relação das derivadas, propiciada


pela equação temos:

∂ k2 ∂ 2
uS = uP − k uP + uP − · · ·
∂t 2! ∂t2
∂ a2 k 2 ∂ 2
uS = uP + ak uP + uP + · · · .
∂x 2! ∂x2
200 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

Considerando apenas o termo de primeira ordem na expansão e utilizando a aproximação


∂ 1
uP ≃ (uP − uV ),
∂x h
teremos
US = UP + νa(UP − UV )
US = (1 + νa)UP − νaUV .
ou genericamente
Ui,j = (1 + νa)Ui,j+1 − νaUi−1,j+1 .
Este método é incondicionalmente estável.
Note que no caso da presença de uma fronteira à esquerda podemos calcular Ui,j+1
explicitamente se caminharmos sempre da esquerda para a direita. Caso a fronteira seja
fixada à direita, seria preciso deduzir um método onde V estaria à direita de P e então
caminharı́amos da direita para a esquerda.

Esquema Implı́cito de Wendroff


Uma outra fórmula implı́cita é atribuida a Wendroff, a qual é também conhecida como
método box. Essa fórmula envolve os seguintes pontos:
P = (ih, (j + 1)k), W = ((i + 1)h, (j + 1)k), S = (ih, jk) e T = ((i + 1)h, jk),
com molécula da forma mostrada na figura (5.43).

P
W

T
S

Figura 5.43: Molécula do esquema implı́cito de Wendroff

O método é obtido da seguinte maneira:

∆x uS = uT − uS (por definição).
Assim,

uT = (1 + ∆x )uS .
Mas,
h2 ∂ 2
   
∂ ∂
uT = uS + h uS + uS + · · · = exp h uS .
∂x 2! ∂x2 ∂x
5.2. DIFERENÇAS FINITAS PARA A EQUAÇÃO DE ADVECÇÃO 201

Logo,
 

1 + ∆x = exp h ,
∂x
ou
∂ 1
= log(1 + ∆x ).
∂x h
De maneira análoga:
∂ 1
= log(1 + ∆t ).
∂t k
Substituindo essa expressão na equação (5.37), obtemos:

log(1 + ∆t )uS = −νa log(1 + ∆x )uS


ou

uP = (1 + ∆x )−νa uS . (5.43)
−νa
Note que o operador (1 + ∆x ) não possui uma expressão óbvia e simples em termos
de potências inteiras de (1 + ∆x ), o que permitiria sua aplicação na malha retangular em
questão. Para solucionar esse problema propomos que o operador em (5.43) seja aproximado
como na expressão abaixo:
uP = (1 + α∆x )−1 (1 + β∆x )uS , (5.44)
onde α e β são constantes arbitrárias a serem convenientemente determinadas.
Expandindo os lados direitos das equações (5.43) e (5.44) e igualando os coeficientes de
∆x e ∆2x , encontramos:
1 1
α= (1 + νa), β = (1 − νa).
2 2
Logo,
1 1
[1 + (1 + νa)∆x ]uP = [1 + (1 − νa)∆x ]uS .
2 2
Esta fórmula é novamente incondicionalmente estável e pode ser explicitada na forma:
1 − νa
UW = US + (UT − UP ),
1 + νa
ou genericamente
1 − νa
Ui+1,j+1 = Ui,j + (Ui+1,j − Ui,j+1 ),
1 + νa
a qual juntamente com as condições iniciais e de fronteira à esquerda do domı́nio permite o
cálculo de aproximações (explı́citas) para todos os pontos da malha.
Note que se a fronteira estiver à direita também é possı́vel a determinação explı́cita a
partir de UP .
202 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

Observação 5.2.1 Evidentemente outros esquemas numéricos podem ser construidos con-
siderando-se diferentes moléculas computacionais, porém as técnicas são semelhantes. O
leitor é estimulado a experimentar com outros métodos de criação própria. O leitor é também
fortemente encorajado, para não dizer obrigado, a considerar a adaptação dos métodos aqui
apresentados para o caso em que a ≡ a(x, t, u). Nos exercı́cios apresentamos um roteiro
para essa tarefa!

Dissipação e Dispersão
Para uma noção intuitiva dos conceitos de dissipação e dispersão consideremos uma
função periódica u(t) de perı́odo T e uma aproximação genérica U (t) de u(t). A função u(t)
pode ser pensada como o deslocamento de uma partı́cula no tempo, e nesse caso o gráfico
de u(t) é dado pela figura 5.44.

u(t)

Figura 5.44: Posição da partı́cula no tempo t

Por outro lado, essa mesma função u(t) pode ser considerada como a trajetória da
partı́cula no espaço de fase, que é parametrizada pela função t → (u(t), u′ (t)). Nesse caso o
gráfico é a curva fechada apresentada na figura 5.45.

u’(t) x

t=0

u(t)

Figura 5.45: Trajetória da partı́cula no tempo t

Vamos imaginar que o inı́cio seja em t = 0 e que após um tempo t0 a partı́cula tenha
percorrido a trajetória até o ponto assinalado com x na figura ??. A aproximação U (t) pode
5.2. DIFERENÇAS FINITAS PARA A EQUAÇÃO DE ADVECÇÃO 203

desviar da solução correta u(t) de 3 maneiras distintas. A primeira situação é caracterizada


pelo crescimento do erro na solução aproximada e o conseguente desvio da trajetória da
partı́cula como ilustrado pelas figuras 5.46. Dizemos neste caso que a solução aproximada
U (t) é instável.
x

u(t) U(t)
u’(t) x

t=0
t

u(t)

Figura 5.46: Instabilidade da solução aproximada

A segunda situação é caracterizada pelo oposto da primeira, isto é, a trajetória da


partı́cula desvia-se para o interior da curva, nesse caso temos um amortecimento da solução
e dizemos que a solução aproximada é dissipativa, conforme ilustrado nas figuras 5.47

u(t)
u’(t) x
x
t=0
t U(t)

u(t)

Figura 5.47: Dissipação da solução aproximada

A última possibilidade é caracterizada quando a solução aproximada percorre a mesma


trajetória da solução exata mas com velocidade diferente como ilustrado na figura 5.48.
Temos nesse caso o fenômeno de dispersão.
Vemos que nos dois primeiros casos a solução é “amplificada” por um fator de ampli-
ficação maior ou menor do que um e no terceiro a dispersão está relacionada com a velocidade
com que a solução aproximada percorre a trajetória.
Em geral, na prática, acontece uma combinação desses fenômenos.
Discutiremos em seguida de forma mais técnica a dissipação e dispersão no contexto de
diferenças finitas, para equação hiperbólica escalar:

ut + aux = 0 (a > 0), (5.45)


no semiplano {t > 0, −∞ < x < ∞}.
Se o dado inicial é desenvolvido em uma série de Fourier
204 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

u(t)
u’(t) x
x
t=0
t

u(t)

Figura 5.48: Dispersão da solução aproximada


X
u(x, 0) = Aj eIβj x
j=0

então, pela linearidade do problema, as propriedades da solução podem ser avaliadas pela
propagação de um único modo de Fourier eIβx . Considerando então u(x, 0) = eIβx , a solução
em (5.45) é dada por:

u(x, t) = eIβ(x−at) (5.46)


e assim cada “modo” é transportado com amplitude unitária e velocidade constante a inde-
pendente da frequência β.
Investigaremos agora as correspondentes propriedades de diferenças finitas substituı́das
em (5.45). O passo inicial na análise segue do método de Von Neumann para estabilidade,
onde assumimos que as aproximações finitas Um,n podem ser expressas como

Um,n = ζ n eIβxm . (5.47)


A substituição dessa expressão na equação de diferença apropriada produz uma expressão
para o fator de ampliação ζ. É conveniente escrever ζ = |ζ|e−Iβαk , assim (5.47) se torna

Um,n = |ζ|n eIβ(xm −αtn ) , (tn = nk), (5.48)


que permite uma comparação mais direta com a solução exata (5.46).
Se o fator de ampliação ζ tem módulo maior que um, o método é instável e se

|ζ| ≤ 1 − σ(βh)2s , (|βh| ≤ π), (5.49)


para alguma constante positiva σ e algum inteiro positivo s, o correspondente método de
diferença finita é dissipativo de ordem 2s.
Exemplo 5.2.1 O método de Lax-Wendroff é dissipativo de ordem 4.
O fator de ampliação ζ é:
 1/2
2 2 4 βh
|ζ| = 1 − 4τ (1 − τ ) sen , (τ = νa).
2
5.2. DIFERENÇAS FINITAS PARA A EQUAÇÃO DE ADVECÇÃO 205

Para τ 2 ≤ 1 esta expressão tem decaimento monótono de valor |ζ| = 1 em βh = 0 e


|ζ| = |1 − 2τ 2 | em βh = π. Para pequenos valores de βh, encontramos, pela série de Taylor,
que

τ2
|ζ| ≃ 1 − (1 − τ 2 )(βh)4
2
e a ordem de dissipação não pode, desta forma ser menor que 4. A desigualdade (5.49) é
2
satisfeita para σ = τ2 (1 − τ 2 )π 4 , por exemplo.

Exemplo 5.2.2 O método de Leap Frog não é dissipativo, pois |ζ| = 1.

As soluções de esquemas dissipativos decaem para zero quando n → ∞ e assim eles


podem não ser apropriados para integrar equações hiperbólicas sobre longos intervalos de
tempo. O decaimento de modos de alta frequência é muito maior que os de baixa frequência;
isto significa que, para dados iniciais gerais, a solução numérica será suavizada, bem como
amortecida quando ela avança no tempo.
As propriedades de dispersão das aproximações de diferença relacionam-se com a ve-
locidade de propagação da solução numérica. Referente à representação (5.48) da solução
numérica, o método é dito ser dispersivo se a velocidade de propagação α depende da
frequência β.
Novamente usando o método da Lax-Wendroff, para efeito de ilustração, o fator de
amplificação ζ pode ser expresso na forma |ζ| = e−Iβαk , desde que α seja escolhido de modo
a satisfazer
τ senβh
tan(αβk) = . (5.50)
1 − 2τ 2 sen2 12 βh
Claramente α depende da frequência β e o método é desta forma dispersivo, de fato
para βh ≃ π, vemos que estão próximas de ser estacionárias. Para ondas de frequência
baixa, βh é pequeno e podemos usar expansão em série de Taylor para estimar α. Usando
as aproximações:

(βh)3
senβh = βh − e (1 − x)−1 ≃ 1 + x,
6
segue de (5.50) que

(βh)2
tan(αβk) ≃ τ βh(1 + (3τ 2 − 1)).
6
Agora, desde que:

x3
tan−1 x ≃ x − ,
3
obtemos:
206 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

(βh)2
αβk ≃ τ βh(1 − (1 − τ 2 ))
6
que leva a

(βh)2
α ≃ a(1 − (1 − τ 2 )).
6
Isto mostra que α < a para modos de baixa frequência, e a solução numérica, desta forma,
fica atrás da solução verdadeira, isto é, existe um erro da fase. A magnitude do erro da fase
aumenta com a frequência e resulta em uma perda de precisão que é particularmente evidente
quando o dado inicial está na forma de um sinal bem definido (por exemplo, uma função
escada). Efeitos dispersivos são usualmente menos evidentes em esquemas dissipativos, já
que os modos com maior erro de fase são aqueles que são excessivamente amortecidos. Por
esta razão, frequentemente, é benéfico introduzir mecanismos dissipativos em esquemas de
diferença dispersivos. Mais detalhes podem ser obtidos em [TRE86].

5.3 Diferenças Finitas para a Equação da Onda


Consideremos, agora, a equação da onda

utt − a2 uxx = 0,
u(x, 0) = f (x), 0 ≤ x ≤ 1
ut (x, 0) = g(x), 0 ≤ x ≤ 1
u(0, t) = h1 (x), t > 0
u(1, t) = h2 (x), t > 0.

Praticamente todas as técnicas anteriores se aplicam aqui, com as devidas adaptações.


Assim, optamos por uma abordagem mais genérica, usando diferenças centrais e fazendo
uma média ponderada de valores dos estágios j − 1, j e j + 1. Temos então:

Ui+1,j − 2Ui,j + Ui−1,j a2


= {η (Ui+1,j+1 − 2Ui+1,j + Ui+1,j−1 )
k2 h2
+ (1 − 2η) (Ui,j+1 − 2Ui,j + Ui,j−1 ) (5.51)
+ η (Ui−1,j+1 − 2Ui−1,j + Ui−1,j−1 )} ,
k
cujo erro de truncamento, para ν = h é:
 
1
a2 h 2 k 2 (1 − ν 2 ) + ην 2 utttt + · · · .
12

A análise da estabilidade, por von Neumann, leva a:


5.3. DIFERENÇAS FINITAS PARA A EQUAÇÃO DA ONDA 207

!
2λ 2ν 2 sen βk
e −2 1− 2
eλ + 1 = 0.
1 + 4ην 2 sen βk
2

Com um pouco de álgebra é possı́vel demonstrar que teremos métodos:

1
incondicionalmente estável se η ≥ e ν<∞
4
1 1
e condicionalmente estável se 0 < η< e 0<ν< .
4 1 − 4η

Observação 5.3.1 É importante chamar a atenção para o fato de que o método (5.51) é
um esquema de dois passos e portanto é necessário o conhecimento da solução em dois nı́veis
iniciais de tempo, da mesma forma que o método Leap Frog.
A análise da estabilidade pelo método da matriz (veja a seção (3.2)), para o método
2 2
obtido tomando η = 1/2 em (5.51), pode ser feita, para N h = 1 e σ = kha2 , como segue.
Na notação do capı́tulo 3, a forma matricial da equação de diferenças (5.51) para η = 12
é:
AUj+1 = 2Uj − AUj−1 − cj
onde o vetor cj contém informações das condições de fronteira,

1+σ − σ2 0 ... 0
 
 − σ2 1+σ − σ2 ... 0 

A= .. .. 
. .

 
 0 ... − σ2 1+σ − σ2 
0 ... 0 − σ2 1+σ

e Uj é o vetor Uj = (U1,j , U2,j , · · · , UN −1,j )T .


Podemos então considerar o vetor erro ej que satisfaz:

ej+1 = 2A−1 ej − ej−1 . (5.52)

Uma maneira de continuarmos a análise do comportamento desse erro, dá-se pela ob-
servação de que (5.52) pode ser reescrita na forma:
    
ej+1 2A−1 −I ej
=
ej I Θ ej−1

ou seja,
Ej+1 = PEj .
208 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

O crescimento do erro depende então dos autovalores de P, que são obtidos da equação

2λ−1
 
j −λ 1
det =0
1 −λ

onde λj é autovalor da matriz A. Os autovalores de A são conhecidos, pois essa matriz tem
uma estrutura que permite calculá-los explicitamente,
 

λj = 1 + σ(1 − cos ), j = 1, 2, . . . , N − 1.
N
Logo, calculando o determinante, é imediato verificar que todos os autovalores λ de P
satisfazem |λ| < 1 e concluı́mos que esse método é incondicionalmente estável.
Em relação a condição CFL, devemos notar que para a equação da onda o domı́nio de
dependência numérica deve conter ambas as caracterı́sticas passando por um ponto P da
malha. Um exemplo concreto da necessidade da condição CFL para a convergência de um
método de diferenças finitas para a equação da onda foi apresentado por Isaacson ( [IK66]
página 488).
Suponhamos que queremos resolver a equação da onda,

utt − a2 uxx = 0, a > 0


u(x, 0) = f (x), ∀x,
ut (x, 0) = g(x), ∀x,
que assumimos ter u(x, t) como solução .
Seja agora o mesmo problema com as condições iniciais
u(x, 0) = f (x), ∀x,

0 x≤c
ut (x, 0) = g ∗ (x) = g(x) + (5.53)
4a(x − c) x ≥ c

onde c é um número fixo e arbitrário.


Pode ser demonstrado (ver exercı́cio (5.28)) que a solução da equação da onda com as
condições iniciais (5.53), é:

0 x + at ≤ c
(

u (x, t) = u(x, t) + (x + at − c)2 x + at ≥ c ≥ x − at . (5.54)
4at(x − c) x − at ≥ c

As inclinações das caracterı́sticas são ± a1 e as “inclinações ” dos pontos da malha


(domı́nio de dependência numérica) são ± hk . A condição CFL impõe hk ≤ a1 .
Consideremos um método de diferenças finitas e uma discretização do eixo x que tenha c
como um dos pontos dessa discretização, qualquer que seja o refinamento da mesma, ou seja,
para cada h → 0 existe um ı́ndice m tal que xm = c. Se U e U ∗ são as as soluções numéricas
dos dois problemas acima com as diferentes condições iniciais, que são coincidentes para
x ≤ c, haveremos de ter U ∗ (xi , tj ) = U (xi , tj ) para xi + hk tj ≤ c.
5.3. DIFERENÇAS FINITAS PARA A EQUAÇÃO DA ONDA 209

Se a malha é tal que a condição CFL é violada teremos pontos (xi , tj ) que satisfazem
simultaneamente as seguintes condições :
h
xi + tj ≤ c e xi + atj ≥ c ≥ xi − atj . (5.55)
k
Na figura (5.49) as caracterı́sticas correspondem às linhas cheias enquanto que as in-
clinações numéricas correspondem às linhas tracejadas. A região hachurada entre essas
linhas inclue os pontos da condição (5.55) e demarca os pontos onde as soluções numéricas
U e U ∗ coincidem, mas as soluções exatas não. Por outro lado a região hachurada abaixo da
caracterı́stica demarca os pontos onde as soluções exatas coincidem, assim como as soluções
numéricas. O argumento de que o método não pode ser convergente é consequência da ob-
servação de que, na região hachurada entre a caracterı́stica e a inclinação numérica, sendo
as soluções numéricas coincidentes, temos U = U ∗ → u(6= u∗ ) e portanto não podemos ter
U ∗ → u∗ , ou seja, fazendo h → 0 e k → 0 com hk fixo, tal que para qualquer refinamento
existe i com xi = c, não haverá convergência de U ∗ (x, t) para u∗ (x, t) e portanto a condição
CFL é essencial para a convergência do método.
01
10
0000000000000
1111111111111
x+(h/k)t=c
1010 1010
0000000000
1111111111
000000000
111111111
0000000000
1111111111
000000000
111111111
0000000000000
1111111111111
0000000000
1111111111
0000000000
1111111111
0000000000000
1111111111111
0000000000
1111111111
000000000
111111111
000000000
111111111
000000000
111111111
x+at=c 0
1
0000000000
1111111111
0000000000000
1111111111111
0000000000
1111111111
0
1
0000000000
1111111111 0
1
0
1
000000000
111111111
000000000
111111111
000000000
111111111
0000000000000
1111111111111
0000000000
1111111111
0000000000000
1111111111111
0
1 0
1
000000000
111111111
111111111111111111111111111
000000000000000000000000000
0000000000
1111111111
0000000000000
1111111111111
0000000000
1111111111
000000000
111111111
000000000
111111111
0000000000000
1111111111111
0
1
0000000000
1111111111
0000000000000
1111111111111
0000000000
1111111111
0000000000000
1111111111111 0
1 000000000
111111111
000000000
111111111
0
1
0000000000
1111111111
0000000000000
1111111111111
0000000000
1111111111
0000000000000
1111111111111 0
1 000000000
111111111
000000000
111111111
0
1
0000000000
1111111111
0000000000000
1111111111111 0
1 000000000
111111111
000000000
111111111
111111111111111111111111111
000000000000000000000000000
0000000000
1111111111
0000000000000
1111111111111
0
1
0000000000
1111111111
0
1 000000000
111111111
0000000000000
1111111111111
0000000000
1111111111
0000000000000
1111111111111
0
1
0000000000
1111111111
0
1
000000000
111111111
000000000
111111111
0000000000000
1111111111111
0000000000
1111111111
0000000000000
1111111111111
0
1
0000000000
1111111111
0000000000000
1111111111111
0000000000
1111111111 0
1
000000000
111111111
000000000
111111111
000000000
111111111
0000000000000
1111111111111
0
1
0000000000
1111111111
0000000000000
1111111111111
0000000000
1111111111
0000000000000
1111111111111 0
1 000000000
111111111
000000000
111111111
1010 1010
0000000000
1111111111
0000000000
1111111111
000000000
111111111
000000000
111111111
0000
1111
c x
0000Soluções Numéricas Coincidentes
1111
0000
1111
0000
1111
0000Soluções Exatas Coincidentes
1111
Figura 5.49: Ilustração das regiões onde as soluções
numéricas coincidem mas as exatas não

Métodos para a Sistemas de Segunda Ordem


Como vimos, a equação da onda pode ser colocada na forma de um sistema de equações
de primeira ordem. Assim é possı́vel utilizar praticamente todos os métodos estudados
(para a equação de advecção ), devidamente adaptados, para a equação da onda na forma
de sistema. A dificuldade mais presente na solução de sistemas está associada à prescrição de
uma fronteira numérica a exemplo dos métodos de Lax–Wendroff e Leap Frog. Teoricamente
é possı́vel prescrever esses valores de maneira adequada, mas para isso seria necessário
transformar o sistema na sua forma canônica via o cálculo dos seus autovalores, o que
não é viável na prática. Para superar o problema de prescrever uma fronteira numérica,
210 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

técnicas baseadas em heurı́sticas foram propostas por vários autores, como por exemplo a
utilização da direção das caracterı́sticas para orientar a imposição da quantidade e a seleção
das variáveis sob as quais devemos impor condições. O número de condições de fronteira
deve sempre ser compatı́vel com o número de caracterı́sticas partindo da curva onde essa
condição será imposta. Outra maneira de superar o problema da fronteira numérica é fazer
UN,j+1 = UN,j , ou seja, utilizar na fronteira o valor nos pontos adjacentes e interior ao
domı́nio.
Um método bastante adequado para solução da equação da onda na forma de sistema
(lembre-se que nesse caso a solução da equação da onda é um vetor (u, v)T , veja (5.25))
é o método Leap Frog em sua versão compacta (equações em (5.56)), que usa uma malha
diferenciada (staggered grid), onde os valores da variável u são localizados nos nós da malha
e os valores de v são localizados nos centros das células da malha (conforme figura (5.49)).
Na prática isso corresponde a utilizarmos uma malha duas vezes mais fina que aquela da
notação .
O método Leap Frog aplicado então ao sistema (5.25) produz o sistema de equações de
diferenças;
 
Ui,j+1 − Ui,j + aν Vi+ 21 ,j+ 21 − Vi− 21 ,j+ 21 = 0, i = 1, 2, . . . , N − 1
Vi+ 21 ,j+ 23 − Vi+ 12 ,j+ 21 + aν (Ui+1,j+1 − Ui,j+1 ) = 0, i = 0, 1, . . . N − 1. (5.56)

U
+V
+ + +
j

Figura 5.50: Aplicação do método Leap Frog para a


equação da onda na forma de sistema

Observa-se facilmente que se valores para u forem especificados em cada lado do domı́nio
o método não exigirá valores extras para a fronteira numérica. Por outro lado, aplicação do
método Leap Frog em uma malha co-localizada (unstaggered) exige a espeficação de u e v
em cada fronteira, sendo um deles portanto considerado fronteira numérica.

Métodos para Equações Hiperbólicas em Duas Dimensões Espaciais


Alguns modelos simples de uma equação hiperbólica de dimensão 2 para u = u(x, y, t)
são:
equação de advecção ut + aux + buy = 0
equação da onda utt − a2 uxx − b2 uyy = 0
equação de Burgers ut + uux + uuy = 0
sistemas conservativos ut + (f (u))x + (g(u))y = 0.
5.4. MÉTODOS NUMÉRICOS PARA LEIS DE CONSERVAÇÃO 211

Vamos nessa seção apenas enfatizar que é possı́vel estender os métodos até aqui estudados
para equações de dimensão maior ou igual a 2, principalmente os métodos clássicos, sem
significativa dificuldade. Devemos entretanto estar conscientes de que existe deficiência na
própria teoria que trata das equações hiperbólicas multidimensionais.
Não apenas os métodos precisam ser adaptados, mas também as análises de estabilidade,
incluindo a condição CFL. As técnicas entretanto são bastante semelhantes.
Muito do que foi feito para as equações parabólicas multidimensionais pode ser adaptado
para as equações hiperbólicas como por exemplo métodos do tipo ADI, LOD e hopscotch.
O tratamento dos métodos numéricos para equações com dimensão 2, com abrangência
bastante razoável pode ser encontrado em [32]. Para uma discussão interessante sobre a
equação de Burgers ver [FLE91]. Métodos TVD para equações hiperbólicas em dimensão 2
podem ser encontrados em [LG85]. Para uma discussão mais especı́fica e abrangente sobre
métodos para sistemas conservativos multidimensionais citamos [23], [39] e [33].
Os métodos até aqui estudados não foram construı́dos especificamente para o tratamento
de descontinuidades e são comumente denominados métodos clássicos na literatura. Na
próxima seção estudaremos métodos especı́ficos para o tratamento desses problemas.

5.4 Métodos Numéricos para Leis de Conservação


As equações hiperbólicas na forma de conservação estão sempre intimamente ligadas à
presença de soluções com descontinuidades de contacto e choques. Problemas mais com-
plexos, como é o caso das equações de Euler para a dinâmica dos gases (ver [23]), impõem
dificuldades extremas em relação ao uso de caracterı́sticas. Isto incentivou a pesquisa
de métodos de diferenças finitas. Infelizmente, os métodos clássicos utilizando diferenças
centrais não produziram resultados satisfatórios. Observações mais minuciosas levaram à
criação dos métodos upwind que consistem na utilização de diferenças assimétricas de acordo
com a direção de propagação da solução. Mais informações sobre métodos upwind podem
ser obtidas nas referências [Harteen 1983], [van Leer 1985] e [Osher 1982].
As tentativas de construção de métodos de ordem superior a um esbarram na presença
de fortes oscilações nas vizinhanças das descontinuidades, uma vez que há contaminação
da malha provocada pelas aproximações por diferenças. Muita energia e esforço foram
necessários para a construção de métodos de ordem mais alta que não geram oscilações e
que são generalizáveis para problemas mais complexos, por exemplo sistemas de equações
e problemas multidimensionais. Todas as melhorias e aperfeiçoamento dos métodos, jun-
tamente com a base teórica necessária, foram desenvolvidos para problemas escalares e
posteriormente estendidos a problemas mais complexos.
Os caminhos naturais de tratamento de descontinuidades tiveram ao longo do tempo
pelo menos três vertentes principais, além do método de amostragem uniforme; foram elas,
shock fitting, front tracking e shock capturing. Inicialmente, procurou-se via a utilização
de informações sobre as caracterı́sticas, a construção de métodos que seguissem as de-
scontinuidades (shock fitting) por meio da combinação das caracterı́sticas e também das
condições de Rankine–Hugoniot. Esses métodos impõem sérias dificuldades de programação
pois envolvem o ajuste automático do choque, sendo de difı́cil generalização para sistemas
de equações. Para uma introdução simples sobre esse assunto consultar [9] e para uma apre-
sentação mais completa veja [10]. Uma outra opção, também de difı́cil programação, consiste
na construção de métodos cujo objetivo primeiro é acompanhar o desenvolvimento das de-
212 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

scontinuidades e suas interações domı́nio adentro (front tracking). Nesse método procura-se
maior precisão na localização das descontinuidades. Para um detalhamento desse assunto
sugerimos a leitura de [11]. A vertente que mais teve sucesso foi aquela relacionada com
a construção de métodos de diferenças finitas com propriedades adequadas para evitar as
oscilações e que não envolvem qualquer tratamento especial da descontinuidade (shock cap-
turing), cuja propriedade essencial deles exigida é conhecida como variação total amortecida
(Total Variation Diminishing) ou TVD.
Seguindo a filosofia de trabalho até aqui adotada, apresentaremos esses métodos para o
caso escalar. Isso possibilita o estudo das idéias conceituais e básicas com a devida atenção
e clareza, as generalizações são relativamente simples, e o leitor encorajado a pesquisá-las.
Para a construção de uma classe de métodos conservativos convergentes para a solução
entrópica, utilizando conceitos mais sofisticados veja [AIS97].
Uma observação relevante é que sempre podemos resolver uma dada equação sem antes
colocá-la na forma conservativa. A esse respeito, um exemplo dado em [23], que utiliza a
equação de Burgers é bastante importante pois mostra que para condições iniciais descon-
tinuas, pode haver convergência para uma outra solução .
Exemplo 5.4.1 Dada a equação de Burgers
ut + uux = 0

1 x<0
u(x, 0) =
0 x≥0
podemos resolvê-la pelo método
Ui,j+1 − Ui,j + νUi,j (Ui,j − Ui−1,j ) = 0.
Tomando uma discretização em que x = 0 é um ponto da malha, podemos supor que

1 i<0
Ui,0 =
0 i ≥ 0.
Por substituição na fórmula acima, obtemos Ui,1 = Ui,0 , ∀i e portanto Ui,j = Ui,0 , ∀i.
Fazendo h, k → 0 e mantendo x = 0 como um ponto da malha, temos que a solução
numérica converge para: 
1 x<0 t>0
u(x, t) =
0 x≥0 t>0
que como sabemos não representa a real posição do choque, ou seja, a solução numérica está
convergindo para uma outra solução . Isto ocorre porque o método usado não é conservativo.
Entretanto, é preciso chamar a atenção para o fato de ser possı́vel construir métodos não
conservativos que convergem para a solução de equações na forma conservativa (vide por
exemplo [TW90]).
Uma forma mais adequada para o método numérico desse exemplo seria
ν 2 2

Ui,j+1 − Ui,j + Ui,j − Ui−1,j =0
2
que utiliza a função fluxo f (v) = 12 v 2 pela qual a equação de Burgers fica na forma conser-
vativa.
5.4. MÉTODOS NUMÉRICOS PARA LEIS DE CONSERVAÇÃO 213

Método Conservativo
Dizemos que um método de diferenças finitas para aproximar a equação (5.14) está em
forma consevativa (ou forma de conservação ou, ainda, forma de “fluxo”) quando ele pode
ser escrito da seguinte forma

Ui,j+1 = Ui,j − ν (φ(Ui,j , Ui+1,j ) − φ(Ui−1,j , Ui,j ))


 
= Ui,j − ν φi+ 21 ,j − φi− 12 ,j (5.57)

em que ν = k/h e φ é chamada função transportadora de fluxo ou fluxo numérico. A função


fluxo numérico deve ser tal que represente uma média da função fluxo da equação na malha,
ou seja:
1 tj+1
Z
φ(Ui,j , Ui+1,j ) = f (u(xi+ 21 , t))dt
k tj
Uma condição a ser exigida da função de fluxo numérico é que esta seja consistente com
a função de fluxo da equação . Isso significa que φ deve satisfazer
φ(u, u) = f (u).

De maneira geral podemos considerar as definições:


Definição 5.1 Um esquema de discretização explı́cito

Ui,j+1 = w(Ui−p−1,j , . . . , Ui+q,j ) (5.58)

onde w : IRp+q+2 → IR é uma função contı́nua, pode ser posto na forma conservativa se
existe uma função de fluxo numérico φ : IRp+q+1 → IR tal que
 
Ui,j+1 = Ui,j − ν φi+ 12 ,j − φi− 21 ,j , (5.59)

onde φi+ 12 ,j = φ(Ui−p,j , . . . , Ui+q,j ) e ν = k/h.

Esta definição implica que um esquema conservativo satisfaz


+∞
X +∞
X
Ui,j+1 = Ui,j ,
i=−∞ i=−∞

ou seja, o total da quantidade U não varia do tempo tj para o tempo tj+1 . De fato, todo
esquema na forma (5.59) é conservativo, pois
+∞
X +∞
X +∞ 
X 
Ui,j+1 = Ui,j − ν φi+ 12 ,j − φi− 21 ,j
i=−∞ i=−∞ i=−∞
+∞
X   +∞
X
= Ui,j − ν . . . + φ− 23 ,j + φ 21 ,j + . . . − φ− 23 ,j − φ 12 ,j − . . . = Ui,j .
i=−∞ i=−∞
214 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

A primeira propriedade básica que um esquema (5.59) deve satisfazer é a de consistência


com a lei de conservação (5.14). Observe que (Ui,j+1 − Ui,j )/k é uma apromaximação de ut
no ponto (xi , tj ) da malha. Assim impomos que

(φ(Ui−p,j , . . . , Ui+q,j ) − φ(Ui−p−1,j , . . . , Ui+q−1,j )) /h

seja uma aproximação de f (u)x no mesmo ponto da malha. Isto leva à seguinte definição:

Definição 5.2 Um esquema de diferenças (5.59) é consistente com a equação (5.14) se

φ(u, . . . , u) = f (u), ∀u ∈ IR

a menos de uma constante aditiva.

Praticamente todos os métodos estudados podem ser colocados na forma conservativa.


Por exemplo, a aplicação do método de Lax–Friedrichs para a equação escalar de conservação
fornece
1 ν
Ui,j+1 = (Ui+1,j + Ui−1,j ) − (f (Ui+1,j ) − f (Ui−1,j )).
2 2
Esse método é claramente conservativo, pois pode ser colocado na forma (5.57), com

1 1
φ(Ui,j , Ui+1,j ) = (f (Ui,j ) + f (Ui+1,j )) − (Ui+1,j − Ui,j ) .
2 2ν

Já o método de Lax-Wendroff aplicado à mesma equação fornece:


ν
Ui,j+1 − Ui,j = − (f (Ui+1,j ) − f (Ui−1,j )) +
2
ν2 h i
+ Ai+ 21 (f (Ui+1,j ) − f (Ui,j )) − Ai− 21 (f (Ui,j ) − f (Ui−1,j )) .
2

onde Ai± 21 é a matriz Jacobiana f ′ (u) avaliada no ponto 12 (Ui,j + Ui±1,j ).


Claramente este método é computacionalmente oneroso, pois exige sucessivas avaliações
da matriz Jacobiana. Duas versões conservativas desse método, que evitam a avaliação da
matriz Jacobiana, foram desenvolvidas. Essas versões utilizam um passo intermediário para
manter a ordem do método, que é 2, e são dadas por:

Método de Richmyer ou Método de Lax–Wendroff de Dois Passos

1 ν
Ui+ 12 ,j+ 21 = (Ui,j − Ui+1,j ) − (f (Ui+1,j ) − f (Ui,j ))
2 2
Ui,j+1 = Ui,j − ν(f (Ui+ 21 ,j+ 21 ) − f (Ui+ 21 ,j− 21 )).
5.4. MÉTODOS NUMÉRICOS PARA LEIS DE CONSERVAÇÃO 215

Método de MacCormack na Forma de Conservação

Ui,j+ 21 = Ui,j − ν(f (Ui+1,j ) − f (Ui,j ))


1 ν
Ui,j+1 = (Ui,j + Ui,j+ 21 ) − (f (Ui,j+ 21 ) − f (Ui−1,j+ 21 )).
2 2
Observação 5.4.1 Como no caso da malha diferenciada, trabalha-se na prática com uma
malha duas vezes mais fina do que aquela utilizada na notação .
Podemos dizer que os métodos na forma conservativa irão seguir corretamente o choque,
mas em geral, os métodos até aqui estudados causarão forte amortecimento no choque ou in-
troduzirão oscilações que prejudicam a solução obtida. Outros métodos foram desenvolvidos
com o propósito de resolver esses problemas. No que segue apresentamos uma introdução
rápida que inclue o método da amostragem uniforme, o método de Godunov e os métodos
TVD.

Método da Amostragem Uniforme


O método random choice foi elaborado por Chorin [34] a partir de uma demonstração de
existência de solução para o modelo de dinâmica dos gases na forma de leis de conservação,
dada por Glymm [35]. Esse método ao longo do tempo sofreu várias modificações na ten-
tativa de melhorar sua eficiência. O leitor interessado nos detalhes dessa evolução histórica
terá uma boa referência em Sod [36].
O objetivo deste método é seguir a evolução das descontinuidades e está baseado na
solução de uma sequência de problemas de Riemann. A condição CFL precisa estar garan-
tida para, como veremos, um problema de Riemann não se sobrepor aos outros, ou em
outras palavras, que a descontinuidade (onda) de cada problema de Riemann não tenha
interação com a dos demais problemas. O método não apenas discretiza a condição inicial,
mas a transforma em uma função constante por partes, criando inclusive possı́veis descon-
tinuidades.
Seja o problema de valor inicial
ut + (f (u))x = 0
u(x, 0) = u0 (x), a ≤ x ≤ b, t > 0. (5.60)

Consideremos o intervalo [a, b] discretizado de tal maneira que xi = a + (i − 21 )h, i =


1, 2, . . . , n onde h = (b − a)/n, ou seja os pontos xi estão situados no centro de cada
subintervalo.
| | | |
x1 x ... b
a a+h 2 a+2h
Figura 5.51: Malha para o método da amostragem uniforme

A estratégia para construção da solução numérica, consiste em supor que esta seja con-
stante por partes em um determinado nı́vel de tempo j, ou seja, Ui,j = u(x, tj ), para
|x − xi | < h2 , observe a figura (5.52).
216 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

U1j
Unj
U2j ...

| | | |
a a+h a+2h b

Figura 5.52: Valores da solução no nı́vel tj

Quando j = 0, a condição inicial é também considerada constante por partes isto é


Ui,0 = u0 (xi ) no intervalo |x − xi | < h2 . Para avançar do tempo tj para o tempo tj+1
resolve-se n problemas de Riemann. O i-ésimo problema considera como condição inicial,
em todo eixo x, a função: (vide figura (5.54))

Ui,j se x ≤ a + ih
u0i (x) = (5.61)
Ui+1,j se x > a + ih.

Toma-se a restrição dessa solução ao intervalo [a + ih, a + (i + 1)h] como candidata à


aproximação da solução para o tempo tj+1 . Ocorre que a solução do problema de Riemann
resulta numa função que pode ser não constante no intervalo em questão. Para continuar
a aplicação do método, um valor constante dessa função deve ser escolhido de forma a
representá-la no intervalo.
2
Por exemplo, no caso em que f (u) = u2 a solução do problema de Riemann será um
choque ou uma rarefação, casos em que a solução será constante por partes (descontı́nua)
ou linear por partes (derivada descontı́nua). No primeiro caso devemos escolher um entre
os dois valores ue e ud , e no segundo na região de rarefação o comportamento é linear e
portanto temos infinitas escolhas. Veja a figura (5.53). Essa escolha se processa da seguinte
maneira.
a + ih + ζ j h

u(x, t j+1) U i+1,j+1

t j+1
U i+1,j
U i,j
tj
x i+1 x
xi a+ih

Figura 5.53: Escolha da solução no método da amostragem uniforme

Para cada nı́vel de tempo j + 1, escolhemos um número aleatório uniformente distribuı́do


5.4. MÉTODOS NUMÉRICOS PARA LEIS DE CONSERVAÇÃO 217

ζj no intervalo [-0.5,0.5], em seguida, para i = 1, 2, . . . N − 1 define-se Ui+1,j+1 = u(a +


ih + ζj h, tj+1 ), onde u(x, t) é a solução do i-ésimo problema de Riemann. Note que se
uma fronteira for fixada em x = a, podemos usar a mesma técnica estendendo a condição
artificialmente à esquerda; nesse caso i deve ser iniciado em zero. Não tendo sido especificado
uma fronteira podemos heuristicamente tomar U1,j+1 = U1,j .
A condição CFL para a equação (5.60) é dada por
k
max |f ′ (u)| ≤ 1
h
e nos garante que a caracterı́stica partindo de a + ih deve estar entre xi e xi+1 no instante
tj+1 . As vezes é preciso considerar a versão discreta da condição CFL, que é dada por
k
max |ai+ 12 ,j | ≤ 1,
h
onde
f (Ui+1,j −f (Ui,j )

se Ui+1,j − Ui,j 6= 0
ai+ 12 ,j = Ui+1,j −Ui,j
f ′ (Ui,j ) se Ui+1,j = Ui,j .
Uma variante com 2 passos que usa tj+ 12 pode ser encontrada em [36] página 230, (vide
exercı́cio (5.30)).
Pode ser provado [34] que, mesmo introduzindo muitas descontinuidades nos dados, o
método da amostragem uniforme converge para a solução fraca do problema. Muitos prob-
lemas práticos foram resolvidos por este método e observou-se que ele produz uma solução
que tem boa definição e posição do choque. Esse método significou um grande avanço na
aproximação de choques sem as oscilações ou suavização presentes nos outros métodos até
então utilizados.

Método de Godunov
Similarmente ao procedimento da amostragem uniforme este método evolue a solução no
tempo através da resolução de uma sequência de problemas de Riemann:
ut + (f (u))x = 0
Ui,j , x < xi+ 21 (5.62)
u(x, tj ) =
Ui+1,j , x ≥ xi+ 21 .

onde tj é um nı́vel de tempo genérico.


Deve-se sempre cuidar para que a condição CFL seja satisfeita por uma razão análoga
àquela utilizada no método da amostragem uniforme. Na prática, procura-se trabalhar com
passo variável em relação a t, ou seja, k é função de j, de maneira a minimizar o esforço
computacional resultante da necessidade momentânea de utilização de um passo pequeno
devido ao aparecimento de uma descontinuidade.
A solução no instante tj+1 é construı́da como a média:
1 xi+ 21 ∗
Z
Ui,j+1 = u (x, tj+1 )dx
h x 1
i−
2
218 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

Ui,j

Ui+1,j

| | | | |
xi xi+1/2 xi+1

Figura 5.54: Condições iniciais para (5.62) no método de Godunov

onde u∗ representa as soluções dos problemas de Riemann. A idéia inovadora presente no


método de Godunov é a utilização da equação na forma de conservação que garante o posi-
cionamento correto do choque e produz um esquema numérico também conservativo. Como
visto, por um esquema numérico conservativo entendemos qualquer método que envolva uma
função de fluxo similar à função f de fluxo da equação original, ou seja na forma:
Ui,j+1 = Ui,j − ν(φi+ 21 ,j − φi− 21 ,j )

onde φi+ 21 ,j = φ(Ui,j , Ui+1,j ) e φ é a função de fluxo numérico satisfazendo φ(u, u) = f (u).
No caso, por exemplo, da equação de Burgers o método acima pode ser simplificado.
Como u∗ deve satisfazer a equação (??) para t ∈ [tj , tj+1 ] podemos integrá-la em t para
obter
1 1 tj+1 ∗
Z
u∗t + (u∗ )2x = 0 ⇒ u∗ (x, tj+1 ) = u∗ (x, tj ) − (u (x, t))2x dt.
2 2 tj
Daı́, ( )
xi+ 1 tj+1
1 1
Z Z
2
u∗ (x, tj ) − (u∗ (x, t))x
2
Ui,j+1 = dt dx
h xi− 1 2 tj
2

e trocando a ordem de integração


tj+1 xi+ 1
1
Z Z
2
(u∗ (x, t))x dxdt
2
Ui,j+1 = Ui,j −
2h tj xi− 1
2
tj+1 2  2
1
Z 
= Ui,j − u∗ (xi+ 12 , t) − u∗ (xi− 12 , t) dt.
2h tj

Como a condição CFL deve ser satisfeita, não há interferência de choques distintos no
interior de uma célula da malha, e portanto, em (xi+ 21 , tj+1 ) a solução exata assume um
dos valores Ui,j ou Ui+1,j , conforme a solução exata do respectivo problema de Riemann.
Denotando por χi+ 21 ,j esta solução teremos
 
1 2 1
Ui,j+1 = Ui,j − ν χi+ 1 ,j − χ2i− 1 ,j ,
2 2 2 2

que equivale ao método up-wind.


5.4. MÉTODOS NUMÉRICOS PARA LEIS DE CONSERVAÇÃO 219

No caso do método de Godunov a função de fluxo numérico é:

1 tj+1
Z
φi+ 21 ,j = f (u∗ (xi+ 21 , t))dt.
k tj

Pode ser demonstrado que esse método não possue oscilações e satisfaz a condição de en-
tropia, vide [36] e [23].
É possı́vel demonstrar que ( [23], página 145)

min{f (u) | Ui,j ≤ u ≤ Ui+1,j } se Ui,j ≤ Ui+1,j
φi+ 12 ,j =
max{f (u) | Ui+1,j ≤ u ≤ Ui,j } se Ui,j > Ui+1,j .
Note que para problemas lineares o método de Godunov transforma-se num método upwind.
Observação 5.4.2 A aplicação do método de Godunov exige a solução de uma sequência
de problemas de Riemann a cada passo no tempo. Esse é um processo computacionalmente
caro quando a solução desses problemas de Riemann não são triviais, como por exemplo
quando exigem o cálculo de autovalores. Por essa razão outras técnicas foram desenvolvidas
que substituem a equação original por outra dela derivada, cujos problemas de Riemann
sejam mais fáceis de serem resolvidos. Esse métodos são chamados de Riemann Solvers.
Apresentamos a seguir o mais simples deles, chamado de método de Murman–Roe (veja
[39]), apenas a tı́tulo de ilustração da técnica, que na verdade representa uma linearização
local do problema.
O procedimento numérico segue aquele do método de Godunov, mas substituindo a equação
diferencial pela seguinte aproximação :

ut + a(Ui,j , Ui+1,j )ux = 0


Ui,j x < xi+ 21

u(x, 0) =
Ui+1,j x > xi+ 12

onde
f ′ (w) se w = v

a(w, v) = f (w)−f (v)
w−v 6 v.
se w =
Pode ser mostrado que para o método (5.59) a função de fluxo numérico é dada por:

f (w) se a(w, v) > 0
φi+ 21 (w, v) =
f (v) se a(w, v) < 0.

Este método pode, entretanto, produzir, ao inveś de uma rarefação, um choque não
entrópico ( [39], página 118).
Um outro método que evita soluções violando a condição de entropia é o esquema de
Engquist–Osher. Este método é dado por
(Z )
Ui+1,j Z Ui,j
ν ν
Ui,j+1 = Ui,j − {f (Ui+1,j ) − f (Ui−1,j )} + |a(ξ)|dξ − |a(ξ)|dξ
2 2 Ui,j Ui−1,j
220 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

que pode ser colocado na forma conservativa com função de fluxo dada por
( Z Ui+1,j )
1
φi+ 21 j = φ(Ui,j , Ui+1,j ) = f (Ui+1,j ) − f (Ui,j ) − |a(ξ)|dξ
2 Ui,j
Z Ui+1,j
= f (Ui,j ) + a− (ξ)dξ
Ui,j
Z Ui+1,j
= f (Ui+1,j ) − a+ (ξ)dξ
Ui,j

onde a(u) = f ′ (u), u+ = max{u, 0}, u− = min{u, 0}, u = u+ + u− e |u| = u+ − u− .


Para a equação de Burger é possı́vel mostrar que

φi+ 21 ,j = (max{Ui,j , 0})2 + (min{Ui+1,j , 0})2 .

Monotonicidade e Métodos de Alta Resolução TVD


Embora métodos de alta ordem têm, teoricamente, taxa de convergência rápida quando
a malha é reduzida, eles possuem uma propriedade que pode afetar de maneira adversa a
obtenção da solução. Esta propriedade é conhecida como não-monotonicidade. Por exemplo,
o processo de advecção transporta simplesmente um perfil (ou onda) sem modificar sua
forma, não criando, portanto, novos máximos e/ou mı́nimos, ou modificando aqueles já
existentes. Um esquema numérico possuindo esta propriedade é conhecido como monotônico.
A solução de certos problemas fı́sicos requer que algumas variáveis permaneçam sem-
pre positivas. Por exemplo, nas equações de Euler a massa especı́fica nunca deve assumir
valores negativos. Mesmo nos casos da solução de uma equação não possuir tal restrição, um
método numérico que não seja monotônico pode ser instável se ele permitir o apareciemtno
de novos máximos ou mı́nimos. Gudonov [?] propôs um resultado, conhecido como teorema
de Gudunov, que afirma a não existência de um esquema linear que seja monotônico e de
ordem de precisão superior a um. O problema essecial, se esquemas lineares forem usados,
é que alta ordem de precisão e soluções fisicamente corretas são, no caso geral, propriedades
mutuamente exclusivas.
Nas últimas décadas, esquemas de advecção monotônicos têm recebido extensiva
atenção de pesquisadores, principalmente no caso de problemas de escoamentos de flui-
dos em altas velocidasdes com choques (caso compressı́vel). E um número considerável de
esquemas têm sido desenvolvido, no sentido de combinar alta ordem de precisão e soluções
fisicamente permissı́veis, incluindo os métodos Total Variation Diminishing (TVD) [Harteen
1983a], Flux-Corrected Transport (FCT) [Zalesack], Essentially Non-Oscillatory (ENO) [?]
e Weighted Average Flux (WAF) [?]. Apresentaremos na seqüência apenas as noções fun-
damentais de esquemas TVD e as idéias principais por trás de limitadores de fluxo.
A principal motivação para o estudo de métodos TVD é a necessidade de estratégias
de altam ordem que evitam o aparecimento de novos extremos (máximos e/ou mı́nimos)
na solução numérica a cada passo dado no tempo. Associado aos métodos (ou esquemas)
TVD está o conceito muito importante de limitadores de fluxo, os quais estão intimamente
relacionados a técnica FCT. O propósito dos limitadores é, fundamentalmente, transformar
5.4. MÉTODOS NUMÉRICOS PARA LEIS DE CONSERVAÇÃO 221

esquemas de alta resolução em esquemas que evitam oscilações (ou ondulações ou novos
extremos) na solução numérica. A literatura é bastante ampla no tratamento desse tipo
de método. Seguiremos uma apresentação simplificada conforme Davis [DAV86] tratando
apenas alguns aspectos básicos e considerando o modelo escalar mais simples possı́vel (isto
é, a equação unidimensional de advecção ou convecção)

φt + aφx = 0, a = constante,

cuja solução é aproximada pelo seguinte esquema numérico na forma conservativa

φi,j+1 = φi,j − ν (φi+1/2,j − φi−1/2,j ) (5.63)


∆t
em que ν = a ∆x é o número de Courant.
A variação total (do inglês Total Variation (TV)) da solução discreta no tempo tj é
definida por X
T V (φj ) = |φi+1,j − φi,j |,
i

e um método de diferenças finitas é chamado TVD se

T V (φj+1 ) ≤ T V (φj ).

Observe por esta definição que a TV não pode exceder a TV das condições iniciais, e clara-
mente o esquema é estável (ou, usualmente, TV-estável). A propriedade TVD é desejável
porque ela significa que oscilações não fı́sicas não podem aparecer na solução numérica;
em outras palavras, um esquema de diferenças finitas é monotônico (ou preserva mono-
tonicidade) se dado que φi,j ≥ φi+1,j , para todo i, segue que φi,j+1 ≥ φi+1,j+1 , o que
significa ausência de oscilações. Entretanto, existem limitações na precisão de um esquema
monotônico; esquemas monotônicos são, em sua maioria, de primeira ordem de precisão
(ver [Harteen 1983a], [?]), isto significa que ordem de precisão 1 é o melhor que se pode
esperar de esquemas TVD lineares. Entretanto, esquemas não lineares que preservam mono-
tonicidade e são TVD possuem segunda ordem de precisão (ver [Harteen 1983a], [?]).
Apresentamos a seguir um critério bastante útil, conhecido como lema de Hateen [Harteen
1983a], o qual assegura a propriedade TVD para um esquema numérico. Em resumo, o
critério é como segue. Coloca-se o método na forma

φi,j+1 = φi,j + Di+1/2 (φi+1,j − φi,j ) − Di−1/2 (φi,j − φi−1,j )

= φi,j − Ci−1/2 ∆φi−1/2 + Di+1/2 ∆φi+1/2 , (5.64)

em que ∆φi+1/2 = φi+1,j − φi,j e os coeficientes Di+ 21 e Ci− 21 são funções dos φi,j envolvidos
e em geral a escolha desses coeficientes não é única. Se os coeficientes C e D em (5.64)
satisfazem as seguintes desigualdades para todo i

Ci+1/2 ≥ 0,
Di+1/2 ≥ 0,
0 ≤ Ci+1/2 + Di+1/2 ≤ 1,
222 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

então o esquema é TVD. A verificação desse critério é como segue. Observe que

φi+1,j+1 − φi,j+1 = φi+1,j + Ci+3/2 (φi+2,j − φi+1,j ) − Di+1/2 (φi+1,j − φi,j)


−φi,j − Ci+1/2 (φi+1,j − φi,j ) + Di−1/2 (φi,j − φi−1,j )
= Ci+3/2 (φi+2,j − φi+1,j )+(1 − Ci+1/2 − Di+1/2 )(φi+1,j − φi,j )
+Di−1/2 (φi,j − φi−1,j ).
(5.65)

Por hipótese todos os coeficiêntes em (5.65) são positivos. Assim,

|φi+1,j+1 − φi,j+1 | ≤ Ci+3/2 |φi+2,j − φi+1,j | + (1 − Ci+1/2 − Di+1/2 )|φi+1,j − φi,j |

+Di−1/2 |φi,j − φi−1,j |.


Somando essas desigualdades para todo i e rearranjando a soma em termos de |φi+1,j − φi,j |,
obtemos
X X
T V (φj+1 ) = |φi+1,j+1 − φi,j+1 | ≤ |φi+1,j − φi,j | = T V (φj ).
i i

Observe que a principal exigência de um esquema TVD é que, além de ser conservativo,
a limitação da variação impede a formação de ondulações na solução. A construção de
métodos TVD se deu de várias formas e por diversos autores (ver [Harteen 1983a], [Osher
1984], [Sewby 1984] e [1] para uma descrição detalhada). Uma maneira simples de construir
um método TVD é adicionar um termo de correção ao método Lax–Wendroff. Essa correção
visa eliminar as oscilações que aparecem no entorno das descontinuidades. Isso é obtido
transformando-se esse método em um do tipo TVD. Na verdade o que está por trás dessa
correção é a noção de que um método de primeira ordem não gera oscilações, porque o
termo difusivo (ou de viscosidade artificial) presente neste método é grande o suficiente para
suavizar (amortecer ou atenuar) significativamente a solução (neste caso é comum dizer que
a solução numérica é equivalente à solução do problema parabolizado).
Como um método clássico de segunda ordem funciona bem nas regiões de solução regular
(ou suave) e introduz oscilações no entorno das descontinuidades a idéia inicial é a de se
usar uma “média ponderada” de um método conservativo de primeira ordem com outro
conservativo de segunda ordem, de maneira que próximo às descontinuidades o peso maior
é dado para o método de ordem 1 (portanto para o fluxo de baixa ordem φ1 ), e em regiões
de solução suave o peso é maior para o método de ordem 2 (fluxo de alta ordem φ2 ). Assim
o fluxo médio ficaria φ = φ1 + ψ(r)φ2 ou φ = φ2 + (1 − ψ(r))φ1 , onde 0 ≤ ψ(r) ≤ 1.
Como se pode ver a seguir, um método de ordem 2 pode ser visto como um método de
ordem 1 ao qual adiciona-se um termo de correção de fluxo (antidifusivo). Procura-se então,
em analogia à média ponderada, multiplicar o termo corretivo do fluxo por uma função de
restrição de fluxo (ou limitador de fluxo). A ação do limitador de fluxo tem o papel de
diminuir a importância do termo antidifusivo próximo à descontinuidade. Claramente essa
função deve “reconhecer” a localização da descontinuidade. Isso pode ser feito analisando-se
os gradientes da solução em pontos consecutivos da malha. Em resumo, a idéia por trás
de esquemas TVD é limitar a magnitude da função limitador de fluxo de maneira que a
variação total não aumenta no tempo.
5.4. MÉTODOS NUMÉRICOS PARA LEIS DE CONSERVAÇÃO 223

Para ilustrar as idéias discutidas anteriormente e apresentar a construção de limitadores


de fluxo, retornamos à equação linear de advecção (5.63) e assumimos que a velocidade de
convecção seja positiva, isto é, a > 0. Definindo-se a razão incremental como ∆φi+1/2 =
φi+1,j −φi,j , a solução numérica da equação de advecção pode ser obtida usando-se o esquema
upwind de primeira ordem ou o esquema de Lax-Wendroff como
• upwind de 1a. ordem

φi,j+1 = φi,j − ν(φi,j − φi−1,j ) = φi,j − ν∆φi−1/2 (5.66)

• Lax-Wendroff

ν ν2
φi,j+1 = φi,j − (φi+1,j − φi−1,j ) + (φi+1,j − 2φi,j + φi−1,j ) (5.67)
2 2
1
= φi,j − ν (φi,j − φi−1,j ) − ν(1 − ν)(φi+1,j − 2φi,j + φi−1,j ) (5.68)
2
1
= φi,j − ν ∆φi−1/2 − ν(1 − ν)(∆φi+1/2 − ∆φi−1/2 ). (5.69)
2

Note que o termo 21 ν(1 − ν)(∆φi+1/2 − ∆φi−1/2 ) na equação (5.69) pode ser interpretado
como um termo antidifusivo adicionado ao esquema upwind de primeira ordem (5.66). No
contexto de fluxo na face de uma célula computacional, pode-se dizer que o fluxo numérico
para o esquema de Lax-Wendroff é o fluxo numérico do esquema upwind mais um termo
adicional, isto é,

1
φi+1/2,j = φi,j + ν(1 − ν)∆φi+1/2 (5.70)
2
É claro que, devido às oscilações não fı́sicas produzidas próximo a descontinuidades, o es-
quema de Lax-Wendroff não é TVD (ver figura 5.55). Sweby [Sewby 1984] sugeriu então
que o fluxo adicional em (5.70) deveria ser limitado por alguma funçao ϕj , que depende
localmente da solução, tal que o esquema resultante

1
φi,j+1 = φi,j − ν ∆φi−1/2 − ν(1 − ν)(ϕj ∆φi+1/2 − ϕj−1 ∆φi−1/2 ) (5.71)
2
tem a propriedade TVD desejada. O esquema (5.71) pode ser reescrito na forma incremental
como

h 1  ∆φ i
i+1/2
φi,j+1 = φi,j − ν + ν(1 − ν) ϕj − ϕj−1 ∆φi−1/2 , (5.72)
2 ∆φi−1/2
e uma variável apropriada para a função limitador de fluxo ϕ é a razão de gradientes con-
secutivos
224 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

0.8

0.6

φ(x)
0.4

0.2

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2


x

Figura 5.55: Método de Lax-Wendroff aplicado a equação da onda com condições


iniciais particulares, mostrando a geração de oscilações nas vizinhanças de des-
continuidades

∆φi−1/2
rj = . (5.73)
∆φi+1/2
Combinando as equações (5.72) e (5.73), obtém-se as expressões para os coeficientes
1 ϕ
j

Ci−1/2 = ν + ν(1 − ν) − ϕj−1 e Di+1/2 = 0. (5.74)
2 rj
Do lema de Harten, condições suficientes para que o esquema (5.72) seja TVD (ver [Sewby
1984]) são
ϕ
j
ν≤1 e − ϕj−1 ≤ 2.

rj
Exigências adicionais no limitador de fluxo ϕ são a não negatividade, ϕ ≥ 0, para
preservar o sinal do termo de fluxo adicional, e a condição ϕ = 0 para r ≤ 0, desde que
r < 0 próximo a volores extremos. Usando um método de alta ordem nesses pontos acentua o
valor da solução e, geralmente, causará a variação total da solução aumentar (ver [?]), então
é necessário reverter ao esquema upwind de primeira ordem. Combinando essas exigências,
obtém-se as restrições TVD de Sweby
ϕ(r)
0≤ ≤2 e 0 ≤ ϕ(r) ≤ 2. (5.75)
r
O resultado da análise de Sweby (5.75) pode ser ilustrado graficamente no plano ϕ − r,
como mostra a figura 5.56.
5.4. MÉTODOS NUMÉRICOS PARA LEIS DE CONSERVAÇÃO 225

ϕ= r
ϕ = 2r
ϕ( r )

ϕ= 1
1

Figura 5.56: Região TVD, mostrando os esquemas de Lax-Wendroff (ϕ = 1) e de


Beam-Warming (ϕ = r)

ϕ= r
ϕ = 2r
ϕ( r )

ϕ= 1
1

Figura 5.57: Região TVD reduzida para esquemas de segunda ordem

Note que impondo ϕ = 1 em (5.71) obtém-se o método de Lax-Wendroff e, de maneira


similar, impondo ϕ(r) = r deriva-se o método de Beam-Warming. Observe, como mostrado
na Figura 5.56, que nem o esquema de Lax-Wendroff nem de Beam-Warming estão inteira-
mente contidos na região TVD, e como esperado há a possibilidade do aparecimento de
ondulações próximo a gradientes elevados (ver Figura 5.55). É interessante observar que
226 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

pode-se alcançar segunda ordem de precisão exigindo-se que o limitador de fluxo ϕ(r) passe
suavemente pelo ponto em que ϕ(1) = 1. E para que um esquema de diferenças finitas TVD
com limitador de fluxo seja de segunda ordem, ele deve ser uma combinação convexa dos
métodos Lax-Wendroff e Beam-Warming (ϕ(1) = 1 e ϕ(r) = r), isto é,
ϕ(r) = (1 − α)1 + αr, com 0 ≤ α ≤ 1, (5.76)
e deve estar interiramente contido na região TVD. Isto leva à região TVD reduzida para
esquemas de segunda ordem, como está ilustrado na figura 5.57.
Desde os anos 70, um número considerável de limitadores de fluxo tem aparecido na
literatura, sendo que os mais populares em aplicações de engenharia são os esquemas da
classe MUSCL, isto é, Minmod
ϕ(r) = min{r, 1},
e Superbee
ϕ(r) = M ax{0, M in{1, 2r}, min{0, 2}},
desenvolvidos por Roe [?], e Van-Lear []
r + |r|
ϕ(r) = .
1 + |r|
Hirsch [?] e Yee [?] fornecem uma ampla variedade de limitadores e respectivos esquemas
monotônicos TVD.
A tı́tulo de ilustração, nas Figuras 5.58, 5.59, 5.60, 5.61 e 5.62 estão apresentadas a
solução “exata” (obtida com o esquema upwind de primeira ordem usando uma malha ex-
tremamente fina) e soluções numéricas, para as equações de Euler (5.14). Estas últimas obti-
das, respectivamente, usando os limitadores Minmod, Superbee e Van-Leer, e os esquemas de
Lax-Wendroff e upwind de primeira ordem em uma malha 20 x 20 células comp[utacionais.
Como pode-se observar a partir da Figura 5.61, o esquema de Lax-Wendroff gera oscilações
na solução. E essas oscilações são completamente removidas quando se utiliza os esquemas
com os limitadores de fluxo Minmod, Superbee e VanLeer, ou o esquema de primeira ordem
upwind. Note também que a solução numérica obtida com o esquema upwind é bastante
suavisada, e que a solução obtida usando os esquemas de alta resolução Minmod, Superbee
e VanLeer reduzem os pontos de máximo nas curvas, perdendo precisão. Essa perda de
precisão é uma conseqüência inevitável do uso de esquemas com limitadores de fluxo.

Métodos de Alta Resolução em Variáveis Normalizadas e o Critério CBC


Como visto anteriormente os métodos TVD são bastante atrativos, pois removem os-
cilações próximo às descontinuidades e geram soluções convergentes. Entretanto, tais esque-
mas são, usualmente, de segunda ordem de precisão.
Nos últimos anos, uma nova geração de esquemas de convecção de alta resolução (or-
dem ≥ 2) tem aparecido na literatura, principalmente para a simulação de problemas de
escoamentos de fluidos em baixas velocidades (caso incompressı́vel). O objetivo central
dessa metodologia é derivar esquemas de alta ordem capazes de resolver gradientes eleva-
dos e, ao mesmo tempo, manter estabilidade nas soluções numéricas. Também, é possı́vel
derivar nesse contexto métodos de alta ordem que são TVD. Para alcançar esses objetivos,
Leonard [?] e Gaskell e Lau [?] propuseram o conceito de variáveis normalizadas e o critério
5.4. MÉTODOS NUMÉRICOS PARA LEIS DE CONSERVAÇÃO 227

Figura 5.58: Comparação do esquema MINMOD com solução analı́tica

Figura 5.59: Comparação do esquema SUPERBEE com solução analı́tica


228 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

Figura 5.60: Comparação do esquema VanLeer com solução analı́tica

Figura 5.61: Comparação do esquema Lax-Wendroff com solução analı́tica


5.4. MÉTODOS NUMÉRICOS PARA LEIS DE CONSERVAÇÃO 229

Figura 5.62: Comparação do esquema upwind com solução analı́tica

de limitação CBC (Convection Boundedness Criterion), os quais, diferentemente do trata-


mento TVD, não garantem, em geral, convergência, mas tratam o problema de estabilidade
de uma maneira mais adequada. Fundamentealmente, o papel de variáveis normalizadas é
simplificar a análise e o do critério CBC é manter a solução numérica dentro de regioões
estáveis.
Com o objetivo de compreender as idéias principais dessa metologia, consideremos nova-
mente a equação de advecção (5.63). O fluxo numérico numa dada face, digamos f , de uma
célula computacional é determinado identificando-se o sinal da velocidade de convecção a
na face f e definindo-se as posições à jusante D, à montante U e o mais à montante R, com
respeito ao referencial f . O fluxo numérico nesta face (ou o esquema upwind de alta ordem)
é então calculado por uma relação funcional do tipo

φf = φf (φD , φU , φR , ν). (5.77)

Fisicamente, a relação (5.77) fornece a variação da variável convectada φ dentro de uma


célula computacional, em função dos valores φD , φU , φR . A disposição dos valores φf ,
φD , φU and φR é ilustrada na figura 5.63, para ambos os casos a > 0 e a < 0.
Para simplificar a definição da relação funcional (5.77), a variável normalizada de Leonard
[?], a qual forma a base sobre a qual esquemas upwind de alta resolução são construı́dos, é
frequentemente utilizada. Esta variável é definida como

φ − φR
φ̂ = . (5.78)
φD − φR
230 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

φ φ
D R
a) b)

φ φ φ
U f U
φ φ
R D
φ
f
a a

R U f D D f U R

Figura 5.63: Localização dos pontos φD , φU , φR e φf para o cáculo do fluxo


numérico na face f

Note que com esta normalização, φˆR = 0, φˆD = 1, e o problema de interpolação para φˆf ,
equação (5.77), fica
φ̂f = φ̂f (φ̂U ). (5.79)
Observe que o uso de variáveis normalizadas simplifica a definição da relação funcional de
esquemas de alta resolução (5.77) e facilita a derivação de condições que esta relação deve
satisfazer para se obter soluções limitadas e estáveis numericamente. O esquema QUICK
(Quadratic Upstream Interpolation for Convection Kinematic) [?], por exemplo, é dado por

1 1 3 3 1
φf = φf (φD , φU , φR ) = (φU + φR ) − (φR − 2φU + φD ) = φR + φU − φD ) (5.80)
2 8 8 4 8
Usando-se (5.78) para normalizar as variáveis na equação (5.80), obtém-se
3 3
φ̂f = φ̂f (φ̂U ) = + φ̂U . (5.81)
8 4
Note que o esquema QUICK depende linearmente φ̂U e essa dependência é mostrada
diagramaticamente na figura 5.65. Vários esquemas bem conhecidos usando a formulação
variáveis normalizadas são apresentados na tabela 5.1.
A relação funcional (5.79) pode ser lançada em um diagrama de variáveis normalizadas,
isto é plotando φ̂f versus φ̂U (ver figura 5.64). A figura 5.65 mostra este mesmo diagrama
mais alguns esquemas não limitados da tabela 5.1, e a figura 5.66 mostra os esquemas
limitados CENTRAL LIMITADO e SMART.
O diagrama de variáveis normalizadas é uma ferramenta bastante útil para se ter uma
idéia geral da precisão e da difusividade do esquema de alta resolução. Por exemplo,
Leonard [?] mostrou que qualquer esquema que tem a relação funcional (5.79) passando
pelo ponto Q = (0.5, 0.75) possui ao menos segunda ordem de precisão, e se, ainda mais,
a inclinação dessa relação neste mesmo ponto é 0.75, então o esquema é de terceira or-
dem (QUICK por exemplo). Também, esquemas que têm relação funcional no diagrama de
5.4. MÉTODOS NUMÉRICOS PARA LEIS DE CONSERVAÇÃO 231

Esquema φf φ̂f

UPWIND φU φ̂U
1 3
CENTRAL 2 (φD + φU ) 4 + 21 (φ̂U − 12 )
3
SOU 2 φU − 21 φR 3
2 φ̂U

1 3 3
QUICK 8 (3φD + 6φU − φR ) 4 φ̂U + 8

φ , φ̂ if φ̂U 6∈ [0, 1],

 U  U
 

3φU − 2φR , 3φ̂U if φ̂U ∈ [0, 1/6),
SMART 1
 8 (3φD + 6φU − φR ),
3 3
  4 φ̂U +
 8 if ≤ φ̂U ∈ [1/6, 5/6),
φD . 
1 if φ̂U ∈ [5/6, 1).

φU , φ̂U if φ̂U 6∈ [0, 1],

 

 10φU − 9φR ,  10φ̂U if φ̂U ∈ [0, 3/74),

 

1
8 (3φD + 6φU − φR ),
VONOS 3
8 (1 + 2φ̂U ) if φ̂U ∈ [3/74, 1/2),
 1, 5φU − 0.5φR ,
 
 5φ̂U
1, if φ̂U ∈ [1/2, 2/3),

 

φD . 
1 if φ̂U ∈ [2/3, 1].
 
φU φ̂U if φ̂U 6∈ [0, 1],
HLPA
φU + (φD − φU )φ̂U . (2 − φ̂U )φ̂U if φ̂U ∈ [0, 1].

[φ̂U (1−φ̂U )3 ]1/2 −φ̂2U



 if φ̂U ∈ [0, 0.35] ∪ [0.65, 1],
p  1−2φ̂U
A± (φD − A)(φR − A)

3 3

SHARP φD φR −φ2U 4 φ̂U + 8 if φ̂U ∈ [0.35, 0.65] ∪ (−∞, −1] ∪ [1.5, +∞),
where A = φ −2φ +φ 3
8 φ̂U if φ̂U ∈ [−1, 0],

D U R 


φ̂U if φ̂U ∈ [1, 1.5].

Tabela 5.1: Vários esquemas em variáveis normalizadas φ̂f e não normalizadas φf


232 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

variáveis normalizadas próxima ao esquema upwind de primeira ordem tendem ser altamente
difusivos, enquanto esquemas que têm relação funcional próxima ao downwind de primeira
ordem (φ̂f = 1) tendem ser altamente não difusivos (compressivos).
De maneira similar como nos esquemas TVD, esquemas upwind de alta resolução são
geralmente derivados forçando-se o critério de limitação CBC. Este procedimento tranforma
um esquema linear não limitado de alta ordem em um esquema limitado não linear (ou linear
por partes). A não linearidade (ou linearidade por partes) aparece da dependência desse
critério em função da solução local.
Formalmente, o critério de limitação CBC afirma que se a relação funcional (5.79) é cres-
cente e contı́nua (ou crescente e contı́nua por partes), então uma aproximação por diferenças
finitas para φ̂f é limitada (boundedness property) se, e somente se, satisfaz as seguintes
condições:
• φf (φ̂U ) ≤ 1, φf (φ̂U ) ≥ φ̂U , φf (0) = 0 e φf (1) = 1, se φ̂U ∈ [0, 1],
• φf (φ̂U ) = φ̂U , se φ̂U 6∈ [0, 1].

Essas condições são ilustradas na figura 5.64.

CBC

f

Q
3/4

1/2 1 ^
φ
U

Figura 5.64: Região CBC

Neste ponto, é interessante discutir a derivação de esquemas upwind de alta resolução


em variáveis normalizadas que obedecem as restrições TVD (5.75). Para tanto, note que a
razão de gradientes consecutivos
φU − φR
φD − φU
5.4. MÉTODOS NUMÉRICOS PARA LEIS DE CONSERVAÇÃO 233


f

Q
3/4

CENTRAL

QUICK

1/2 1 ^φ
U
UPWIND

Figura 5.65: Alguns esquemas não limitados

CENTRAL LIMITADO
^
φ
f

Q
3/4

SMART

1/2 1 ^φ
U

Figura 5.66: Esquemas CENTRAL e SMART limitados na região CBC

pode ser escrita em variáveis normalizadas como


φ̂U
rf = .
1 − φ̂U
234 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

Usando essa relação e as restrições TVD (5.75), a relação funcional (5.79) torna-se TVD se

φ̂f ≤ 1, φ̂f ≤ 2φ̂U , φ̂f ≥ φ̂U para 0 < φ̂U < 1


φ̂f = φ̂U para φ̂U ≤ 0 ou φ̂U ≥ 1. (5.82)
Em resumo, para que um esquema em variáveis normalizadas seja TVD o fluxo numérico
na face f , φ̂f , deve estar inteiramente contido na região hachurada da figura 5.67 no intervalo
monotônico 0 < φ̂U < 1 e sobre a linha φ̂f = φ̂U fora do intervalo monotônico. Alguns

^φ = 2 ^φ
f U

Figura 5.67: Região TVD em variáveis normalizadas

esquemas, como por exemplo o limitador simétrico de Sweby, empregam limitadores de


fluxo que obedecem a relação (conhecida como condição de simetria)
ϕ(r) = rϕ(1/r)
a qual assegura que gradientes avançados e atrasados sejam tratados da mesma maneira.
Uma variedade de esquemas upwind de alta resolução em variáveis normalizadas pode
ser encontrada na literatura. Citamos como exemplos o esquema HLPA de Zhu (??), o
esquema WACED de Song et al. (??) e o esquema CUBISTA de Alves et al. (??), entre
muitos outros.

5.5 Exercı́cios
5.5. EXERCÍCIOS 235

5.1 Fazer um programa em MATLAB para resolver os problemas dos exemplos (5.1.1-5.1.2)
pelo método das caracterı́sticas usando k = 0.1, 0.05, 0.01 e comparar os valores obtidos
em t = 1 com a solução exata.
5.2 Faça um programa MATLAB para resolver, pelo método das caracterı́sticas, o prob-
lema:
ut + tux = 3
6 x<8
(
u(x, 0) = x − 2 8 ≤ x < 12
22 − x x ≥ 12.
Faça os gráficos em separado das caracterı́sticas, dos perfı́s da solução para alguns valores
de t e da superfı́cie da solução .
5.3 Verifique que se f é convexa então a expressão do critério 2 coincide com aquela do
critério 1.
5.4 Considere a equação de Burgers
u2
ut + ( )x = 0, x ∈ [a, b], t>0
2
satisfazendo u(a, t) = u(b, t). Mostre que qualquer que seja a condição inicial u(0, t), existe
um tempo T , a partir do qual há choque.
5.5 Faça um diagrama das caracterı́sticas e possı́veis choques para a equação de Burgers
não viscosa com a seguinte função escada como condição inicial,
2 x<0
(
u(x, 0) = 1 0≤x<2
0 x ≥ 2.
5.6 Mostre que
u x < sm t

 e

um sm t ≤ x ≤ u m t
u(x, t) = x
um t <≤ ud t
 t

ud x > ud t
representa uma solução fraca da equação de Burgers, onde ue < um < ud e
ue + um
sm =
2

5.7 Mostre que uma possı́vel solução para a equação de Burgers com a seguinte condição
inicial 
ue x < 0
u(x, 0) =
ud x ≥ 0
com ue < ud é dada pela figura (5.68). Dizemos que essa solução não satisfaz o princı́pio
entrópico porque pequenas variações nos dados geram sérias mudanças na solução. Verifique!
236 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

Figura 5.68: Exemplo de choque que não satisfaz a condição de entropia

5.8 Utilizando a regularização

1, x ≤ −ǫ
(
ǫ
u (x, 0) = −x/ǫ, −ǫ < x ≤ 0
0, x>0

e seguindo os mesmos passos utilizados no texto para obter a figura (5.18), represente grafi-
camente as soluções dos problemas regularizados.

5.9 Mostre que a equação de Burgers viscosa

ut + uux =ǫuxx
ue , x ≤ st
uǫ (x, 0) =
ud , x > st

onde s = (ue +ud )/2 é a velocidade do choque, tem uma solução da forma uǫ (x, t) = w(x−st)
e w é a solução de uma equação diferencial ordinária. Mostre que
1
w(y) = ud + (ue − ud )[1 − tanh((ue − ud )y/(4ǫ))].
2
Note que w(y) → ue quando y → −∞ e w(y) → ud quando y → +∞. Faça a gráfico do
limite quando ǫ → 0. ( [23] página 29).
5.5. EXERCÍCIOS 237

5.10 Resolver numericamente o problema dado pela equação (5.10) traçando gráficos para
alguns valores de ǫ → 0.
5.11 Usando o teorema de Green deduza a expressão (5.13) a partir de (5.12).
5.12 Considere a equação que modela o fluxo de trânsito, cuja solução representa a densi-
dade de carros em uma estrada:
ρ
ρt + (f (ρ))x = 0, onde f (ρ) = ρumax (1 − ).
ρmax
Observe que f (ρ) é côncava. Quando a estrada está vazia (ρ = 0) a velocidade u deve ser
máxima (= umax ) e quando a densidade é máxima (= ρmax ) a velocidade deve ser nula, ou
seja, a velocidade como função da densidade deve ter a forma:
ρ
u(ρ) = umax (1 − ).
ρmax
a. Calcule a posição do choque que se forma quando a condição inicial é:

ρe = 21 ρmax , x < 0
ρ(x, 0) =
ρd = ρmax , x ≥ 0.

b. Compare com a solução obtida para a equação de Burgers com a mesma condição
inicial.

5.13 Traçar as caracterı́sticas para a equação de Buckley–Leverett (5.21).


5.14 Verifique que o problema de Buckley-Leverett, com 0 ≤ ud < ue ≤ 1, poderá ter 3
tipos diferentes de soluções, dependendo dos valores de ue e ud .
5.15 Usando as mesmas idéias do exercı́cio (5.14), verifique que a condição inicial 0 ≤
ue < ud ≤ 1 também pode gerar 3 tipos diferentes de solução. Note que agora deverá ser
usada a envoltória côncava para a determinação de u∗ .
5.16 Determine as caracterı́sticas da equação hiperbólica:
uxx = exp(x + t)utt
e descreva como elas podem ser utilizadas para econtrar uma solução numérica para essa
equação. Uma solução numérica deve ser calculada na região {(x, t), t > 0, 0 < x < 1}
com condições iniciais e de fronteira dadas por:
u(x, 0) = (x + 1)2 , ut (x, 0) = 0 0 < x < 1
u(0, t) = exp(−t), u(1, t) = 4 t > 0.
Explique em detalhes como uma tal solução pode ser calculada num ponto (x0 , t0 ) em termos
de informações conhecidas para t < t0 , considerando especialmente o caso em que x0 é
pequeno. Descreva detalhadamente um método de diferenças finitas para a solução desse
mesmo problema e explique porque é esperado que a solução numérica seja de pior qualidade.
238 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

5.17 Estudar os métodos apresentados para a equação de advecção no caso mais geral
ut + a(x, t)ux = d(x, t).
Se a ≡ a(u) ou d ≡ d(u) teremos dificuldades adicionais?
5.18 Estabeleça as moléculas computacionais dos métodos de Euler (5.38), Lax–Friedrichs
(5.39) e upwind (5.41), bem como o termo principal do erro de truncamento local para cada
um deles. Sob quais hipóteses as condições CFL e de estabilidade estarão satisfeitas?
5.19 Usando o critério de von Neumann mostre que o método de Euler explı́cito (5.38) é
incondicionalmente instável. Deduza sob que condições a modificação desse método para a
obtenção do método de Lax-Friedrichs o estabiliza.
5.20 Um método com molécula como o da figura (5.69) e com malha e caracterı́stica como
no diagrama b) da figura (5.36) satisfaz CFL?

i,j

Figura 5.69:

5.21 Calcule o termo principal do erro de truncamento local do método de Lax–Wendroff.


5.22 Calcule o termo principal do erro de truncamento local dos métodos Leap Frog, Wen-
droff e implı́cito de primeira ordem. Usando a técnica de von Neumann estude a estabilidade
desses métodos. O que podemos afirmar sobre a condição CFL para métodos implı́citos?
5.23 Deduza um método para a equação de advecção, com a mesma molécula computacional
do método de Crank–Nicolson. Quais são suas propriedades?
5.24 Considere as equações de advecção e da onda. Dada uma condição inicial contı́nua e
linear por partes verificar como as descontinuidades das derivadas se propagam na solução
numérica por um método explı́cito e por um implı́cito. Como os pontos na vizinhança da
caracterı́stica, sobre a qual uma discontinuidade se propaga, são afetados domı́nio adentro,
no caso explı́cito e implı́cito?
5.25 Faça um programa MATLAB que implemente os métodos de Godunov, amostragem
uniforme e métodos TVD de primeira ordem (dado no exercı́cio (5.45)) e de segunda ordem
(tipo upwind com ultrabee e método de Davis) para resolver a equação de Burgers ut +uux = 0
com as condições iniciais:
a. 
0, x < 0
u(x, 0) =
x, x ≥ 0,
5.5. EXERCÍCIOS 239

b. 
0, x < 0
u(x, 0) =
1, x ≥ 0,
c. 
x, x < 0
u(x, 0) =
0, x ≥ 0,

d. 
1, x < 0
u(x, 0) =
0, x ≥ 0,
e.
1, x<0
(
u(x, 0) = 1 − x, 0≤x<1
0, x ≥ 1,

5.26 Discuta se o método Box faz uso de fronteira numérica. E o método de Lax–Friedrichs?

5.27 Calcular o fator de amplificação dos métodos clássicos. Verificar as condições de


dissipação e dispersão de cada um deles.

5.28 Mostre que a solução da equação da onda com a condição inicial dada por (5.53) é
como em (5.54).

5.29 Estabeleça a relação entre k e h para que o método de Godunov satisfaça a condição
CFL. Faça um programa MATLAB para resolver a equação de Burgers pelo método de Go-
dunov. Utilize duas condições iniciais com um ponto de descontinuidade cada uma gerando,
respectivamente, um choque e uma rarefação .

5.30 Construa um método de amostragem uniforme de dois passos, ( [36], página 230).
Esse método resolve dois problemas de Riemann; sendo o primeiro intermediário, para t =
tj+ 21 , com condição inicial constante por partes e possı́vel descontinuidade em a + ih, isto
é, como em (5.61), cuja solução é, para t = tj+ 12

Ui+ 12 ,j+ 21 (x) = u(a + ih + ζj h, tj+ 12 ), xi < x < xi+1 .

O segundo problema fornece a solução no nı́vel t = tj+1

h
Ui,j+1 (x) = v(xi + ζj+ 12 h, tj+1 ), |x − xi | <
2
onde v é solução do problema de Riemann com condições iniciais Ui− 12 ,j+ 21 e Ui+ 21 ,j+ 21 , com
possı́vel descontinuidade em xi . A figura (5.70) ilustra a sequência construtiva do método
descrito neste exercı́cio.

5.31 Estabecer as funções de fluxo numérico dos métodos Lax–Wendroff, MacCormack e


Beam–Warming.
240 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

Ui,j+1

t j+1
Ui-1/2,j+1/2 Ui+1/2,j+1/2
t j+1/2
Ui,j Ui+1,j
tj
a+(i-1)h xi a+ih x i+1 a+(i+1)h

Figura 5.70: Construção dos problemas de Riemann no


método da amostragem uniforme de 2 passos

5.32 Deduza o método de Hartree para a equação da onda e o implemente em MATLAB.


Faça alguns experimentos numéricos usando condições iniciais com diferentes comportamen-
tos, por exemplo, considere f (x): periódica, linear por partes, descontı́nua.

5.33 Considere a equação da onda na forma de sistema. Se forem especificados valores,


apenas para a variável v (lembrando que v = ut ), em ambas as fronteiras é possı́vel aplicar
o método Leap Frog? E se de um lado prescrevermos u e do outro v ainda é possı́vel aplicar
Leap Frog? Diga qual especificação está de acordo com a teoria e não causará incompatibil-
idades.

5.34 Considere o método


k
Ui,j = (1 − νa)Ui,j+1 + νaUi+1,j+1 , ν =
h
para o problema

ut + aux = 0, u(x, 0) = f (x), u(0, t) = g(t), f (0) = g(0) e a constante.

Use as relações entre as caracterı́sticas e as regiões de definição da solução para mostrar que
esse método é instável a menos que νa ≤ 1. Confirme essa conclusão utilizando o método
de von Neumann.
Porque é desejável que um método de diferenças finitas para a equação deste exercı́cio
tenha fator de amplificação igual a 1? Mostre que isso acontece para o esquema:
νa νa
Ui,j+1 + (Ui+1,j+1 − Ui−1,j+1 ) = Ui,j − (Ui+1,j − Ui−1,j )
4 4
e discuta quais as condições de fronteira são requeridas por esse método.

5.35 Seja a equação

uxx = u2 utt , u(x, 0) = 1 + x2 , ut (x, 0) = 0.


5.5. EXERCÍCIOS 241

Construa um método usando diferenças centrais. É possı́vel analisar a sua estabilidade pelo
critério de von Neumann? Utilize o método das caracterı́sticas para resolver o problema
acima.

5.36 Considere a equação de Burgers com condições iniciais

u(x, 0) = x, 0 ≤ x ≤ 1 u(0, t) = 0, t > 0,

cuja solução é u(x, t) = x(1+t). O método Leap frog para a equação linearizada ut +αux = 0,
α = max{|u|} é estável para να < 1.
Faça experimentos numéricos para k → 0 observando a solução em um valor fixo de t.

5.37 Os métodos de diferenças finitas para a equação da onda exigem o conhecimento de 2


nı́veis de tempo para o inı́cio do processo. Uma das possibilidades é obter a solução numérica
no nı́vel j = 1 usando a condição inicial ut (x, 0) fazendo:

u(x, 0 + k) = u(x, 0) + kut (x, 0) = f (x) + kg(x).

Mostre que se f é duas vezes diferenciável é possı́vel obter uma melhor aproximação fazendo:

k 2 a2 ′′
u(x, 0 + k) = f (x) + kg(x) f (x) + O(k 3 ).
2
Observando que uttt (x, 0) = a2 uxxt (x, 0) podemos obter um resultado de ordem mais alta
ainda. Como?

5.38 Resolver a equação :

ut + a(x, t)ux = 0, x ≥ 0, t ≥ 0

onde
1 + x2
a(x, t) =
1 + 2xt + 2x2 + x4
com a condição inicial:
a.

1 0.2 ≤ x ≤ 0.4
u(x, 0) =
0 caso contrário
u(0, t) = 0
t
cuja solução exata é u(x, t) = u(x − 1+x2 , 0).

b. u(x, 0) =exp(−10(4x − 1)2 ) e u(0, t) = 0.


Usar malhas com h = 0.02 e h = 0.01. Compare os perfis das solucções, em t = 0, t = 0.1,
t = 0.5 e t = 1, obtidas pelos métodos upwind, Lax–Wendroff, método Box e esquema
implı́cito de primeira ordem.
242 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

5.39 Resolver a equação de Burgers com as condições iniciais do problema anterior e


mesmos valores para as malhas e comparação dos perfis. Use os métodos Leap Frog e Box.

5.40 Derive um esquema explı́cito, usando diferenças centrais, para resolver

uxx − (1 − 4x)2 utt = 0, 0 < x < 1, t > 0

com
u(x, 0) = x2 , ut (x, 0) = 0, ux (0, t) = 0, u(1, t) = 1.
Mostre que as condições de fronteira estão incluı́das no método numérico. Estabeleça as
condições CFL para esse método.

5.41 Resolver a equação da onda

utt = uxx , 0 < x < 1, t > 0

com condições iniciais e de fronteira dadas por:

u(x, 0) = 100x2 , ut (x, 0) = 200x, ux (0, t) = 200t, u(1, t) = 100(1 + t)2

cuja solução exata é u(x, t) = 100(x + t)2 .


a. usando diferenças centrais. Verifique que para k = h = 1/2, Ui,j = 100(xi + tj )2
b. usando o método Box
c. usando Leap frog com malha diferenciada

5.42 Considere a equação da onda amortecida

utt = a2 uxx − 2cut , 0 < x < 1, t > 0

com condições iniciais e de fronteira dadas por:

u(x, 0) = f (x), ut (x, 0) = g(x), u(0, t) = u(1, t) = 0

onde a e c são constantes positivas.


Mostre que o método

Ui,j+1 − 2Ui,j + Ui,j−1 = ν 2 (Ui+1,j − 2Ui,j + Ui−1,j ) − kc(Ui,j+1 − Ui,j−1 )

é estável se 0 < ν ≤ 1.

5.43 Coloque os métodos upwind e Lax–Wendroff na forma (??) e mostre que o primeiro
é TVD mas o segundo não.

5.44 Faa̧ experimentos numéricos com o método de Murman-Roe para verificar se choques
e rarefações são seguidos com boa resolução .
5.5. EXERCÍCIOS 243

5.45 Mostre que, para a equação escalar de conservação, o esquema de primeira ordem
abaixo é TVD
Ui,j+1 = Ui,j − ν(f (Ui+1,j ) − f (Ui,j )) αi+ 21 < 0
Ui,j+1 = Ui,j − ν(f (Ui,j ) − f (Ui−1,j )) αi+ 21 > 0
onde
Ui,j para Ui+1,j = Ui,j

αi+ 21 = f (Ui+1,j )−f (Ui,j )
Ui+1,j −Ui,j caso contrário.
Implemente este método em MATLAB e faça experimentos numéricos para verificar se
choques e rarefações são seguidos com boa resolução .

5.46 Considere o método


ν
Ui,j+1 = Ui,j − (f (Ui+1,j ) − f (Ui,j )) + σδx2 Ui,j
2
onde σ é um coeficiente pequeno, do termo da viscosidade artificial do método. Como a
qualidade da resolução de choques impõe σ bem pequeno, amalhadeveser bastantefina, au-
mentando muito o esforo̧ computacional. Um método que procura minorar a situação é o
método hopscotch (vide [Ames 1992] para outras versões).
ν 
Ui,j+1 + θi,j+1 ((f (Ui+1,j+1 ) − f (Ui,j+1 )) − σδx2 Ui,j+1
2 
nu 
= Ui,j − θi,j (f (Ui+1,j ) − f (Ui,j )) − σδx2 Ui,j (5.83)
2
onde 
1 se i+j é ı́mpar
θi,j =
0 se i+j é par
Para tornar o método interiamente explı́cito deve-se estabelecer a estratégia computa-
cional do esquema hopscotch (vide método hopscotch para equações parabólicas).
Implemente em MATLAB, para f (u) = u, uma versão mais eficiente de (5.83) que toma
a forma:
ν 
Ui,j+1 + θi,j+1 ((f (Ui+1,j+1 ) − f (Ui,j+1 )) − σδx2 Ui,j+1
2 
ν 
= Ui,j − θi,j (f (Ui+1,j ) − f (Ui,j )) − σδx2 Ui,j
2

ν 
Ui,j+2 + θi,j+2 ((f (Ui+1,j+2 ) − f (Ui,j+2 )) − σδx2 Ui,j+2
2 ν 
= Ui,j+1 − θi,j+1 (f (Ui+1,j+1 ) − f (Ui,j+1 )) − σδx2 Ui,j+1
2
5.47 Resolver a equação do exercı́cio (5.38) pelo método hopscotch e comentar sua perfor-
mance.
244 CAPÍTULO 5. EQUAÇÕES HIPERBÓLICAS

5.48 Implemente o método hopscotch para resolver a equação de Burgers e faça experi-
mentos numéricos para capturar choques e rarefações comparando sua performance com os
métodos especialmente desenvolvidos para leis de conservação .

5.49 Construa um algoritmo hopscotch para:


a. A equação da onda

utt = uxx , u(x, 0) = f (x), ut (x, 0) = g(x)

b. A equação
utt = ux uxx , u(x, 0) = f (x), ut (x, 0) = g(x).

Fazer experimentos numéricos para os problemas acima.


Referências Bibliográficas

[AIS97] H. AISO, A general class of difference approximation for scalar conservation law
converging to the entropy solution and including high resolution ones, Lecture
Notes in Physics, vol 480, Springer Verlag, 1997, pp. 57–62.
[AKT86] A.W. AL-KHAFAJI and J.R. TODLEY, Numerical methods in engineering,
Hartcourt Publishing, 1986.
[AME72] W.F. AMES, Nonlinear partial differential equations in engineering, Academic
Press, New York, 1972.
[AME92] W.F. AMES, Numerical methods for partial differential equations, Academic
Press, New York, 1992.
[BB79] J.P. BORIS and D.L. BOOK, Flux corrected transport iii: Minimal error fct
algorithm, J. Comp. Phys. 30 (1979), 397–432.
[BER50] D.L. BERNSTEIN, Existence theorems in partial differential equations, Prince-
ton University Press, New Jersey, 1950.
[BF86] R.C. BASSANEZI and W.C. FERREIRA, Equações diferenciais com aplicações,
Editora Harbra, São Paulo, 1986.
[CH62] R. COURANT and D. HILBERT, Methods of mathematical physics, Inter-
science, New York, 1962.
[CHO76] A.J. CHORIN, Randon choice solution of hyperbolic systems, J. Comp. Phys.
22 (1976), no. 4, 517–533.
[CL55] E.A. CODDINGTON and N. LEVINSON, Theory of ordinary differential equa-
tions, McGraw-Hill Book Company, New York, 1955.
[CRY83] C.W. CRYER, Numerical functional analysis, Oxford Science Publ., London,
1983.
[CUN93] C. CUNHA, Métodos numéricos para as engenharias e ciências aplicadas, Edi-
tora da UNICAMP, Campinas, 1993.
[CW84] P. COLLELA and P.R. WOODWARD, The piecewise parabolic method (ppm)
for gas dynamical simulations, J. Comp. Phys. 54 (1984), 174–201.

245
246 REFERÊNCIAS BIBLIOGRÁFICAS

[DAV86] S.F. DAVIS, Shock capturing, Numerical Methods for Partial Differential Equa-
tions, Pitman, 1986, pp. 175–198.

[DM96] L. DEBNATH and P. MIKUSIŃSKI, Introduction to hilbert spaces with applica-


tions, Academic Press, New York, 1996.
[DR56] J. DOUGLAS and H.H. RACHFORD, On the numerical solution of heat con-
duction problems in two and three space variables, Trans. Amer. Math. Soc. 82
(1956), 421–439.
[D’Y63] Ye G. D’YAKONOV, On the application of disintegrating difference operators,
Z. Vycisl. Mat. i Mat. Fiz. 3 (1963), 385–388.
[DZ86] P. DUCHATEAU and D.W. ZACHMANN, Theory and problems of partial dif-
ferential equations, McGrawhill, New York, 1986.
[FLE91] C.A.J. FLETCHER, Computational techniques for fluid dynamics - volume 1,
Springer Verlag, New York, 1991.
[FRI64] A. FRIEDMAN, Partial differential equations of parabolic tipe, Prentice Hall
Inc., New Jersey, 1964.
[GLY65] J. GLYMM, Solutions in the large for nonlinear hyperbolic systems of conserva-
tion laws, Comm. Pure Appl. Math 18 (1965), 697–715.
[GOR65] P. GORDON, Nonsymmetric difference equations, SIAM J. Appl. Math. 13
(1965), no. 3, 667–673.
[GR91] E. GODLEWSKI and P.A. RAVIART, Hyperbolic systems of conservation laws,
SMAI Ellipses, New Jersey, 1991.
[GVL89] G.H. GOLUB and C.F. VAN LOAN, Matrix computations, John Hopkins, 1989.
[HAR83] A. HARTEN, High resolution schemes for hyperbolic conservation laws, J. Comp.
Phys. 49 (1983), 357–393.
[HH83] A. HARTEN and J.M. HYMAN, Selfadjusting grid methods for one dimensional
hyperbolic conservation laws, J. Comp. Phys. 50 (1983), 235–269.
[HLvL83] A. HARTEN, P.D. LAX, and B. van LEER, On upstream differencing and
godunov-type schemes for hyperbolic conservation laws, SIAM Rev. 25 (1983),
35–61.
[HOEC86] A. HARTEN, S. OSHER, D. ENGQUIST, and S. R. CHAKRAVARTHY, Some
results on uniformly high order accurate essentially non-oscillatory schemes,
Appl. Num. Maths 2 (1986), 347–377.
[IK66] E. ISAACSON and H.B. KELLER, Analysis of numerical methods, John Wiley
& Sons, New York, 1966.
[JEF76] A. JEFFREY, Quasilinear hyperbolic systems and waves, Pitman, 1976.
REFERÊNCIAS BIBLIOGRÁFICAS 247

[KEL68] H.B. KELLER, Numerical methods for two point boundary value problems, Ginn-
Blaisdell, Massachusetts, 1968.
[KEL71] H.B. KELLER, A new difference scheme for parabolic problems, Numerical Solu-
tions of Partial Differential Equations, Academic Press, New York, 1971, pp. 36–
50.
[LAM73] J. LAMBERT, Computational methods in ordinary differential equations, John
Wiley, 1973.
[LEE66] M. LEES, A linear three-level difference scheme for quasi-linear parabolic equa-
tions, Math. Comp. 20 (1966), 516–522.
[LEV90] R.J. LEVEQUE, Numerical methods for conservation laws, Birkhäuser, 1990.
[LG85] R.J. LEVEQUE and J.B. GOODMAN, Tvd schemes in one and two space
dimensions, Lecture in Applied Mathematics, vol 22, Springer-Verlag, 1985,
pp. 51–62.
[LP82] L. LAPIDUS and G.F. PINDER, Numerical solution of partial differential equa-
tions in science and engineering, Wiley, 1982.
[LUE84] D.G. LUENBERGER, Linear and nonlinear programming, Addison-Wesley,
1984.
[MABB94] M. MENEGUETTE, E.X.L. ANDRADE, M. BOAVENTURA, and C.F. BRAC-
CIALI, Solução numérica de equações diferenciais parciais, FCT/UNESP- Pres-
idente Prudente, Presidente Prudente, 1994, Leituras e Notas 94/4.
[MCB85] O.A. MCBRYAN, Computational methods for discontinuities in fluids, Lectures
in Applied Maths. 22 (1985), 63–79.
[MF64] A.R. MITCHELL and G. FAIRWEATHER, Improved forms of the alternating
direction methods of douglas, peaceman and rachford for solving parabolic and
eliptic equations, Numer. Math. 6 (1964), 285–292.
[MG85] A.R. MITCHELL and D.F. GRIFFITHS, The finite difference method in partial
differential equations, John Wiley & Sons, New York, 1985.
[OC84] S. OSHER and S. CHAKRAVARTHY, Very high order accurate tvd schemes,
Tech. Report 84/44, ICASE, 1984.
[OHLM99] J. OCKENDON, S. HOWISON, A. LACEY, and A. MOVCHAN, Applied partial
differential equations, Oxford University Press, Oxford, 1999.
[OLE57] O. OLEINIK, Discontinuous solutions of nonlinear differential equations, Amer.
Math. Soc. Transl. Ser. 2 (1957), 26–95.
[OS82] S. OSHER and F. SALOMON, Upwind difference schemes for hyperbolic systems
of conservation laws, Math. Comp. 38 (1982), 339–377.
248 REFERÊNCIAS BIBLIOGRÁFICAS

[OS87] S. OSHER and P.K. SWEBY, Recent developments in the numerical solution of
nonlinear conservation laws, The State of Art in Numerical Analysis, Clarendon
Press, 1987, pp. 681–701.
[PL81] P.J.S. PAES LEME, Sistemas hiperbólicos de conservação: Uma análise
numérica de ondas de choque, Congresso Nacional de Matemática Aplicada e
Computacional - SBMAC, Rio de Janeiro, 1981.
[PR55] D.W. PEACEMAN and H.H. RACHFORD, The numerical solution of parabolic
and eliptic equations, J. Soc. Indust. App. Math. 3 (1955), 28–41.
[QV97] A. QUARTERONI and A. VALLI, Numerical approximation of partial differen-
tial equations, Springer, 1997.
[RIV69] T.J. RIVLIN, An introduction to the approximation of functions, Dover, 1969.
[RM67] R.D. RICHTMYER and K.M. MORTON, Difference methods for initial value
problems, John Wiley & Sons, New York, 1967.
[SAU64] V.K. SAUL’YEV, Integration of equations of parabolic type by the method of
nets, Pergamon Press, New York, 1964.
[SCH91] W.E. SCHIESSER, The numerical method of lines: Integration of partial differ-
ential equations, Academic Press, 1991.
[SHE94] J.R SHEWCHUK, An introduction to the conjugate gradiente method without
agonizing pain, Notas de Aula de Carnegie Mellon University, 1994.
[SMI78] G.D. SMITH, Numerical solution of partial differential equations: Finite differ-
ence methods, Clarendon Press, Oxford, 1978.
[SOD89] G.A. SOD, Numerical methods in fluid dynamics: Initial and initial boundary-
values problems, Cambridge University Press, Cambridge, 1989.
[SRS73] H.R. SCHWARZ, H. RUTISHAUSER, and E. STIEFEL, Numerical analysis of
symmetric matrices, Prentice Hall, New Jersey, 1973.
[SWE84] P.K. SWEBY, High resolution schemes using flux limiters for hyperbolic conser-
vation laws, SIAM J. Num. Anal. 21 (1984), 995–1011.
[TAY96] M.E. TAYLOR, Partial differential equations iii: Non linear equations, Springer
Verlag, New York, 1996.
[THO95] J.W. THOMAS, Numerical partial differential equations - finite difference meth-
ods, Springer, New York, 1995.
[THO99] J.W. THOMAS, Numerical partial differential equations - conservation laws and
eliptic equations, Springer, New York, 1999.
[TOM93] M.F TOME, Gensmac: A multiple free surface fluid flow solver, Ph.D. thesis,
Strathclyde University, 1993.
REFERÊNCIAS BIBLIOGRÁFICAS 249

[TRE85] N. TREFETHEN, Stability of hyperbolic finite difference models with one or


two boundaries, Lecture in Applied Mathematics, vol 22, Springer-Verlag, 1985,
pp. 311–326.
[TRE86] N. TREFETHEN, Dispersion, dissipation and stability, Numerical Analysis, Pit-
man, 1986, pp. 100–237.
[TW90] H. TVEITO and R. WINTHER, Convergence of a non conservative finite dif-
ference scheme for a system of hiperbolic conservation laws, Differential and
Integral Equations 5 (1990), no. 3, 979–1000.
[TWM85] J.F. THOMPSON, Z.U.A. WARSI, and C.W. MASTIN, Numerical grid gener-
ation – foundations and applications, Elsevier, 1985.
[VAR62] R.S. VARGA, Matrix iterative analysis, Prentice Hall International, 1962.
[vL79] B. van LEER, Towards the ultimate finite difference scheme v: A second order
scheme to godunov’s method, J. Comp. Phys. 32 (1979), 101–136.
[vL83] B. van LEER, Computational methods for ideal compressible flow, Tech. Report
83/88, ICASE, 1983.
[vL85] B. van LEER, Upwind–difference methods for aerodynamic problems governed
by the euler equation, Lectures in Applied Maths 22 (1985), 327–336.
[WIL80] W.E. WILLIAMS, Partial differential equations, Clarendon Press, New York,
1980.
[ZAL79] S.T. ZALESACK, Fully multidimensional flux corrected transport algorithms for
fluids, J. Comp. Phys. 31 (1979), 335–362.
250 REFERÊNCIAS BIBLIOGRÁFICAS
Referências Bibliográficas

[Oleinik 1957] OLEINIK, O. – Discontinuous solutions of nonlinear differential equations –


Amer. Math. Soc. Transl. Ser. 2, pp. 26-95, 1957.
[Leme 1981] PAES LEME, P. J. S. – Sistemas hiperbólicos de conservação: Uma análise
numérica de ondas de choque.– Minicurso 40 Congresso Nacional de Matemática Apli-
cada e Computacional – SBMAC, Rio de Janeiro, pp. 43-101, 1981.
[Boris 1979] BORIS, J. P., BOOK, D. L. – Flux corrected transport III: Minimal error FCT
algorithm - J. Comp. Phys. 30 pp. 397-431, 1979.
[Zalesack] ZALESACK, S. T. - Fully multidimensional flux corrected transport algorithms
for fluids - J. Comp. Phys. 31 pp. 335-362, 1979.
[van Leer 1979] van LEER, B. - Towards the ultimate finite difference scheme V: A second
order scheme to Godunov’s method- J. Comp. Phys. 32 pp. 101-136, 1979.
[Collela 1984] COLLELA, P., WOODWARD, P. R. - The piecewise parabolic method
(PPM) for gas dynamical simulations - J. Comp. Phys. 54 pp. 174-201, 1984
[Harteen 1986] HARTEN, A., OSHER, S., ENGQUIST, D., CHAKRAVARTHY, S. R. -
Some results on uniformly high order accurate essentially non-oscillatory schemes -
Appl. Num. Maths2 pp. 347-377, 1986.
[Harteen 1983] HARTEN, A., LAX, P. D., van LEER B - On upstream differencing and
Godunov-type schemes for hyperbolic conservation laws - SIAM Rev. 25 pp. 35-61,
1983.
[Harteen 1983a] HARTEN, A. - High resolution schemes for hyperbolic conservation laws -
J. Comp. Phys. 49 pp. 357-393, 1983.
[Osher 1984] OSHER, S. CHAKRAVARTHY, S. - Very high order accurate TVD schemes
- ICASE report no. 84/44, 1984.
[Sewby 1984] SWEBY, P. K. - High resolution schemes using flux limiters for hyperbolic
conservation laws - SIAM J. Num. Anal. 21 pp. 995-1011, 1984
[1] van LEER, B. - Computational methods for ideal compressible flow - ICASE Report
no. 83/88, 1983.-1]

251
252 REFERÊNCIAS BIBLIOGRÁFICAS

[van Leer 1985] van LEER, B. - Upwind–difference methods for aerodynamic problems gov-
erned by the Euler equations - Lectures in Applied Maths, 22 pp. 327-336, 1985.
[Osher 1982] OSHER, S., SALOMON, F. - Upwind difference schemes for hyperbolic sys-
tems of conservation laws - Math. Comp. 38 pp. 339-377, 1982.
[Shewchuck 1994] SHEWCHUK, J. R; An Introduction to the Conjugate Gradiente
Method Without Agonizing Pain, Notas de Aula, Carnegie Mellon Univer-
sity, Pittsburgh, (Cópias desse trabalho podem ser obtidas por FTP anônimo
para WARP.CS.CMU.EDU (IP 128.2.209.103) no arquivo “quake-papers/painless-
conjugate-gradient.ps”, 1994
[Davies 1986] DAVIES, S. F. - Shock capturing - em Numerical Methods for Partial Dif-
ferential Equations, Editado por Hariharan, S.I., Moulden, T. H. - Pitman Research
Notes in Mathematics Series, 145, pp. 175-198, 1986.
[Quarteroni 1997] QUARTERONI, A., VALLI, A. Numerical Approximation of Partial Dif-
ferential Equations Springer, 1997
[Enquist 1985] ENGQUIST, B. E., OSHER, S. SOMERVILLE, R. C. J. Large–scale Com-
putations in Fluid Mechanics Lecture Notes in Applied Maths 22, AMS, volumes 1 e
2, 1985.
[Osher 1987] OSHER, S., SWEBY, P. K. - Recent developments in the numerical solution
of nonlinear conservation laws - em The State of Art in Numerical Analysis Editado
por IRSELES, A., POWELL, M. J. D., Clarendon Press, 1987.
[Coddington 1955] CODDINGTON, E.A., LEVINSON, N. Theory of Ordinary Differential
Equations, McGraw-Hill Book Company, New York, 1955.

[Debnath 1990] DEBNATH, L., MIKUSIŃSKI, P. Introduction to Hilbert Spaces with Ap-
plications, Academic Press New York, 1990.
[Taylor 1996] TAYLOR, M. E. Partial Differential Equations III: Non Linear Equations
Springer Verlag, New York, 1996.
[Ames 1992] AMES, W.F. Numerical Methods for Partial Differential Equations., Academic
Press, New York, 3ed., 1992.
[Ames 1972] AMES, W.F. Nonlinear Partial Differential Equations in Engineering., Aca-
demic Press, New York, vol.I (1965), vol.II (1972).
[Bernstein 1950] BERNSTEIN, D.L. Existence Theorems in Partial Differential Equations.,
Princeton University Press, Princeton, New Jersey, 1950.
[Courant 1962] COURANT, R., HILBERT, D. Methods of Mathematical Physics., Inter-
science, New York, 1962.
[Cryer 1983] CRYER, C.W. Numerical Functional Analysis., Oxford Science Publ., Londres,
1983.
REFERÊNCIAS BIBLIOGRÁFICAS 253

[Douglas 1956] DOUGLAS, J., RACHFORD, H.H. On the numerical solution of heat con-
duction problems in two and three space variables. Trans. Amer. Math. Soc., 82,
421-439, 1956.
[D’yakonov 1963] D’YAKONOV, Ye G. - On the application of disintegrating difference
operators, Z. Vycisl. Mat. i Mat. Fiz., 3, 385-388, 1963.
[2] FRIEDMAN, A. Partial Differential Equations of Parabolic Tipe. Prentice-Hall Inc,
Englewood Cliffs, New Jersey, 1964.
[3] GORDON, P. SIAM J. Appl. Math. v.13, p.667, 1965.
[4] KELLER, H. B. Numerical Methods for Two Point Boundary Value Problems, Ginn-
Blaisdell, Massachusetts, 1968.
[5] KELLER, H.B. A new difference scheme for parabolic problems, in Numerical Solu-
tions of Partial Differential Equations, v.2 (ed. B. Hubbard), Academic Press, New
York, pp. 36-50, 1971.
[6] MITCHELL, A.R., GRIFFITHS, D.F. The Finite Difference Method in Partial Dif-
ferential Equations., John Wiley & Sons, New York, 1985.
[7] MITCHELL, A.R., FAIRWEATHER, G. Improved forms of the alternating direction
methods of Douglas, Peaceman and Rachford for solving parabolic and eliptic equa-
tions. Numer. Math. 6, 285-292, 1964.
[8] PEACEMAN, D.W., RACHFORD, H.H. The numerical solution of parabolic and
eliptic equations. J. Soc. Indust. App. Math. 3, 28-41. 1955.
[9] RICHTMYER, R.D., MORTON, K.M. Difference Methods for Initial Value Problems.,
John Wiley & Sons (Intercience), New York, 1967.
[10] HARTEN, A., HYMAN, J. M. - Selfadjusting grid methods for one dimensional hy-
perbolic conservation laws - J. Comp. Phys. 50 pp. 235-269, 1983.
[11] MCBRYAN, O. A. - Computational methods for discontinuities in fluids - Lectures in
Applied Maths. 22 pp. 63-79, 1985.
[12] SAUL’YEV V.K. Integration of Equations of Parabolic Type by the Method of Nets.,
Pergamon Press, New York, 1964.
[13] SMITH, G.D. Numerical Solution of Partial Differential Equations: Finite Difference
Methods., Clarendon Press, Oxford, 3ed, 1985.
[14] WILLIAMS, W.E. Partial Differential Equations Clarendon Press, 1980
[15] OCKENDON, J.; HOWISON, S.; LACEY, A.; MOVCHAN, A. Applied Partial Dif-
ferential Equations, OUP, 1999.
[16] DUCHATEAU,P.; ZACHMANN, D.W. Theory and Problems of Partial Differential
Equations, McGrawhill, 1986.
254 REFERÊNCIAS BIBLIOGRÁFICAS

[17] AL-KHAFAJI, A.W.; TODLEY, J.R. Numerical Methods in Engineering, Hartcourt


Publishing, 1986.
[18] BASSANEZI, R.C.; FERREIRA, W.C. Equações Diferenciais com Aplicações Editora
Harbra, 1988
[19] CUNHA, C. Métodos Numéricos para as Engenharias e Ciências Aplicadas, Editora
da UNICAMP, 1993.
[20] LAMBERT, J. Computational Methods in Ordinary Differential Equations, John Wi-
ley 1973
[21] LEES, M. A Linear Three-level Difference Scheme for Quasi-linear Parabolic Equations
Math. Comp. 20, 516-522, 1966.
[22] VARGA, R.S.; Matrix Iterative Analysis, Prentice Hall International, 1962.
[23] LEVEQUE, R.J.; Numerical Methods for Conservation Laws, Birkhäuser, 1990.
[24] SCHIESSER, W.E.; The Numerical Method of Lines: Integration of Partial Differen-
tial Equations, Academic Press, 1991.
[25] LUENBERGER, D.G.; Linear and Nonlinear Programming Second Edition, Addison-
Wesley, 1984.
[26] GOLUB, G.H.; VAN LOAN, C.F.; Matrix Computations Second Edition, John Hop-
kins, 1989.
[27] SMITH,G.D.; Numerical Solution of Partial Differential Equations: Finite Difference
Methods, OUP, 1978.
[28] MENEGUETTE, M; ANDRADE, E.X.L.; BOAVENTURA, M.;BRACCIALI,C.F.
Solução Numérica de Equações Diferenciais Parciais, Leituras e Notas 94/4 FCT-
UNESP-Presidente Prudente. 1994.
[29] TOME, M.F GENSMAC: A Multiple Free Surface Fluid Flow Solver, PhD Thesis,
Strathclyde University, Scotland, 1993.
[30] RIVLIN, T.J. An Introduction to the Approximation of Functions, Dover, 1969.
[31] LAPIDUS, L.; PINDER, G. F. Numerical Solution of Partial Differential Equations
in Science and Engineering, Wiley, 1982.
[32] THOMAS, J. W. Numerical Partial Differential Equations - Finite Difference Methods
Texts in Applied Mathematics 22, Springer, 1995
[33] THOMAS, J. W. Numerical Partial Differential Equations - Conservation Laws and
Eliptic Equations Texts in Applied Mathematics 33, Springer, 1999
[34] CHORIN, A. J. Randon choice solution of hyperbolic systems J. Comp. Phys. 22,
p.517, 1976.
REFERÊNCIAS BIBLIOGRÁFICAS 255

[35] GLYMM, J. Solutions in the large for nonlinear hyperbolic systems of conservation
laws, Cmm. Pure Appl. Math, 18, p.697, 1965
[36] SOD, G. A. Numerical Methods in Fluid Dynamics: Initial and Initial Boundary-
Values Problems, CUP, 1989.
[37] SCHWARZ, H. R.; RUTISHAUSER, H.; STIEFEL, E.; Numerical Analysis of Sym-
metric Matrices, Prentice-Hall, 1973.
[38] JEFFREY, A. Quasilinear Hyperbolic Systems and Waves, Pitman, 1976.
[39] GODLEWSKI, E.; RAVIART, P. A. Hyperbolic Systems of Conservation Laws, SMAI,
Ellipses, 1991.
[40] THOMPSON, J. F.; WARSI, Z. U. A.; MASTIN, C. W.; Numerical Grid Generation
– Foundations and Applications Elsevier, 1985.
[41] TREFETHEN, N. Dispersion, dissipation and stability - em Numerical Analysis ed-
itado por Griffits, D. F.; Watson, G. A., Pittman Research Notes in Maths. Series,
140, pp. 200–237, 1986.
Índice Remissivo

A erro, 10
Direções A–conjugadas, 147
ADI
Discretização
método de Douglas e Rachford, 102
equação do calor, 52
método de Mitchell e Fairweather, 102
Domı́nios de dependência e influência, 164
método de Peaceman e Rachford, 101
Domı́nios genéricos, 123
métodos de D’Yakonov, 102
equação de Poisson
Algoritmo de máxima descida
aproximação numérica, 123
convergência, 146
Domı́nios gerais
ilustração da convergência, 146
mudança de coordenadas, 54
C
E
Consistência, 22
EDO
ordem, 22
alta ordem, 15
Convergência
método dos trapézios, 20 condição de Lipschitz, 16
existência e unicidade
teorema de Picard, 16
D
sistemas, 15
Diferenças centrais EDP
derivada de segunda ordem, 11 classificação, 47
erro, 11 curvas caracterı́sticas, 50
ordem, 11 equação da onda, 51
Diferenças finitas equação de Laplace, 51
diferença central, 10 equação de segunda ordem
fórmula progressiva, 9 classificação, 48
fórmula regressiva, 10 equação do calor, 51
fórmulas em duas dimensões, 14 equações lineares canônicas, 51
central, 14 exemplo
progressiva, 14 problema bem posto, 46
regressiva, 14 problema bem posto, 46
fórmula de alta ordem, 11 problemas de autovalores, 47
erro, 11 problemas de equilı́brio, 47
operadores, 12 problemas de propagação, 47
relações, 12 sistema de primeira ordem
outras fórmulas, 12 classificação, 49
Diferenças finitas sistema de segunda ordem

256
ÍNDICE REMISSIVO 257

classificação, 49 método de diferenças finitas


sistemas na forma de conservação, 50 equação de advecção , 187
sistemas na forma divergente, 50 método de Godunov, 210
EDP não–linear, 46 método de Lax–Wendroff, 192, 199
EDP quase–linear, 46 método de Leap–Frog, 194
EDP semi–linear, 46 método de Leap–frog, 199
EDPs de segunda ordem, 45 método de primeira ordem
Equação da onda, 157 erro de truncamento local, 190
solução clássica, 157 método implı́cito de Wendroff, 196
Equação de Burgers, 171 método incondicionalmete estável, 196
Equação de diferenças vetorial, 78 métodos para leis de conservação, 205
Equação de Poisson, 114 métodos TVD, 212
coordenadas polares, 130 problema de Riemann, 174, 177
discretização, 116 regularização, 165
domı́nio geral solução fraca, 165
exemplo completo, 124 Equações parabólicas, 69
exemplo completo, 117 aproximações assimétricas, 93
fronteira genérica diferenças finitas, 70
condição de Neumann, 128 discretização, 70
sistema linear resultante, 116 erro de truncamento local
Equação do calor, 69 método de Crank–Nicolson, 85
Equação escalar de advecção, 157 método explı́cito, 73
Equação hiperbólica método implı́cito, 83
singularidades, 158 erro global, 74, 83
Equações diferenciais ordinárias (EDO), estabilidade, 75, 77
15 critério da matriz, 77
Equações diferenciais parciais (EDP), 45 critério de von Neumann, 75
Equações elı́pticas, 113 exemplo completo, 71
métodos de diferenças finitas, 114 exemplo de malha, 70
Equações hiperbólicas, 157 existência e unicidade, 69
caracterı́sticas, 158 fronteiras com derivadas, 86
condição de entropia, 175 método box, 94
condição de Rankine–Hugoniot, 173, método das linhas, 95
174 método de Crank–Nicolson, 84
diferenças finitas molécula computacional, 84
método de primeira ordem, 189 método de Du Fort–Frankel, 80
método explı́cito, 188 método de hopscotch, 91
método implı́cito, 195 método explı́cito, 70
dissipação e dispersão, 198 molécula computacional, 71
equação da onda, 178 método implı́cito, 81
curvas caracterı́sticas, 179 molécula computacional, 81
método das caracterı́sticas, 183 melhorando a ordem, 79
métodos numéricos, 201 Equações parabólicas em duas dimensões,
equação de Buckley–Leverett, 177 97
formação de choques, 167 método expı́cito, 98
método da amostragem uniforme, 208 estabilidade, 99
método das caracterı́sticas, 162 Equações parabólicas não lineares, 88
258 ÍNDICE REMISSIVO

método em três nı́veis, 90 equação de Poisson


Equação da Onda estimativa, 122
fronteira numérica, 203 equações parabólicas, 74
sistemas, 203 Estabilidade, 24
Equação da onda equações parabólicas, 75, 77
análise da estabilidade Euler explı́cito, 26
critério da matriz, 201 Euler implı́cito, 26
condição CFL, 202 fórmula geral, 26
domı́nio de dependência e influência, método de Crank–Nicolson, 85
179 método implı́cito, 83
ilustração da condicao CFL, 202 ponto médio, 26
equação hiperbólica trapézio, 26
condição de fronteira numérica, 194 Exemplo
Equações hiperbólicas consistência, 27
condição CFL, 188 discretização da equação de difusão,
domı́nio de dependência numérica, 188 52
esquema implı́cito de primeira ordem, estabilidade, 27
196 Euler explı́cito e implı́cito, 18
método conservativo, 207 limitante para o erro global, 22
método de Euler explı́cito, 189 solução numérica de um PVI, 17
método de Lax–Friedrichs, 189 zero–estabilidade, 27
método upwind, 191 Exercı́cios do capı́tulo 1, 37
métodos clássicos, 205 Exercı́cios do capı́tulo 2, 62
sistemas lineares, 181 Exercı́cios do capı́tulo 3, 104
Equações parabólicas Exercı́cios do capı́tulo 4, 149
método Beam–Warming, 195 Exercı́cios do capı́tulo 5, 216
método MacCormack, 195
Equivalência de Lax, 24 F
Erro Fill-in, 131
de arredondamento, 13 Forma quadrática, 144
de truncamento local, 22 Função de fluxo numérico, 207
de tuncamento local
Euler explı́cito, 23 G
diferenças centrais
derivada de segunda ordem, 11 Gradientes conjugados, 143
diferenças finitas, 10
fórmula de diferenças I
central, 11 Iteração linear, 132
global, 19
Erro de truncamento local L
equação de Poisson, 118
equações elı́pticas, 118 Leis de conservação, 172
equações parabólicas
M
método de Crank–Nicolson, 85
método explı́cito, 73 Método de Euler ou Runge-Kutta, 162
método implı́cito, 83 Método de Gauss–Seidel, 135, 136
Erro global taxa de convergência, 141
ÍNDICE REMISSIVO 259

Método de Jacobi, 134 SOR, 137


convergência, 140 Matriz hermitiana, 138
taxa de convergência, 141 Metodos numéricos para EDP
Método de MacCormack na Forma de Con- Consistência, 53
servação , 208 Convergência, 53
Método de Richmyer ou Método de Lax– Estabilidade, 53
Wendroff de Dois Passos, 208
Método dos gradientes conjugados, 148 N
convergência, 148 Norma espectral, 138
Método implı́cito Norma euclidiana, 137
exemplo completo, 82
Método iterativo:erro global, 132 O
Método localmente unidimensional, 102 2
Método SOR, 136 Operador δ , 11
parâmetro ótimo, 142 Operador ∆δ , 116
taxa de convergência, 141 Ordem
Métodos de direções alternadas implı́citos diferenças centrais, 11
(ADI), 100 outros métodos para equações parabólicas,
Métodos iterativos, 131 91
comparação de resultados, 139 P
convergência, 137
número de iterações para convergência, Prefácio, 5
139 Princı́pio da superposição, 75
taxa de convergência, 139 Problema de Dirichlet, 114
teorema geral de convergência, 138 Problema de Neumann, 114
Métodos numéricos, 17 Problema de Robbins ou misto, 114
convergência, 19 Problema de valor de fronteira (PVF), 29
EDO, 17 Problema de valor inicial (PVI), 15
método de Euler explı́cito, 17 PVF
método de Euler implı́cito, 17 condição de fronteira de Neumann, 35
método dos trapézios, 18 consistência e convergência, 31
Métodos TVD erro de truncamento local, 32
função de restrição de fluxo, 215 ordem, 33
total variation diminishing, 206 erro global
Malha estimativa, 33
de discretização ordem, 34
equação elı́ptica, 115 existência e unicidade, 29
definição, 9 método de Numerov, 37
duas dimensões, 52 métodos de diferenças finitas, 30
Malhas não retângulares, 54 métodos upwind, 36
Matriz melhorando a ordem, 36
definida positiva, 144 problema mal condicionado, 29
diagonalmente dominante, 32 problema mal posto, 29
propriedade A, 141 transformação em sistema linear, 31
Matriz de iteração
R
de Gauss–Seidel, 135
de Jacobi, 134 Raio espectral, 138
260 ÍNDICE REMISSIVO

S
Série de Taylor, 9
erro, 9
Sistemas de EDPs, 45
Sistemas de equações
duas dimensões, 204
Sumário, 6

T
Taxa de convergência
relação entre Jacobi e Gauss-Seidel,
141
Teoremas de Gerschgorin, 78
Transformação de coordenadas
oblı́quas, 57
triangulares, 60
transformação de coordenadas
polares, 55

Z
Zero-estabilidade, 24

Você também pode gostar