Você está na página 1de 157

Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018

l g
UA
T-
FC
1. Precisão Finita

l g
UA
T-
• Como são originados os erros?

• Quais os efeitos que possuem sobre a solução numérica?


FC

• Que técnicas podem ser utilizadas para controlar esses efeitos?

1.1 Erros e suas origens


Os diferentes erros que afectam as aproximações que são obtidas pela apli-
cação de um método numérico são, genericamente, os seguintes:

• Erros inerentes à formulação matemática do fenómeno físico: os


sistemas que se utilizam para representar a realidade (modelos) são,
geralmente, aproximações.

1
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 2

• Erros nos dados: resultam da incerteza associada às medições das


grandezas físicas. Devem-se, muitas vezes, às precisões finitas e limi-
tadas dos instrumentos que se utilizam para realizar as medições. São
estudados no âmbito das Probabilidades e da Estatística.

• Erros de método: resultam da substituição do modelo matemático

g
adoptado por um processo de tratamento numérico aproximado.

• Erros de arredondamento/truncatura: surgem pelas limitações dos


instrumentos de cálculo utilizados na realização das operações numé-

l
ricas elementares, os quais operam com um número limitado de alga-
rismos.
UA
1.1.1 Erro e erro absoluto
Definição 1.

Seja xa uma aproximação para o valor exacto x. Designa-se por erro


da aproximação xa à quantidade e (xa ) tal que

e (xa ) = x − xa .
T-
À quantidade
|e (xa )| = |x − xa |

dá-se a designação de erro absoluto da aproximação xa .


FC

Note-se que, em geral, o valor exacto é desconhecido não sendo possível,


portanto, calcular o erro. Uma estimativa de quão grande pode ser o erro,
em particular o erro absoluto, contemplando assim quer as aproximações
por defeito quer as por excesso, é, na maioria dos casos, o máximo que se
pode conhecer. Relembramos então a definição de majorante, aplicada ao
erro absoluto:

Capítulo 1
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 3

Definição 2.

Um majorante do erro absoluto da aproximação xa é um valor, δxa ,


tal que
|e (xa )| = |x − xa | ≤ δxa .

g
1.1.2 Erro relativo e erro relativo absoluto

l
O erro absoluto fornece apenas uma medida da distância a que se encontra
a aproximação do valor exacto, o que pode não ser muito elucidativo da

UA
qualidade da aproximação. Por exemplo, para x = 100, xa = 99, temos
e(xa ) = 1. Mas obtemos omesmo erro se y = 10 e ya = 9. Todavia “algo”
nos diz que xa é melhor aproximação de x do que ya o é de y. A noção de
erro relativo ajuda-nos a compreender a diferença.

Definição 3.

Se xa é um valor aproximado de x ̸= 0, o erro relativo da aproxima-


ção xa , eR (xa ), é
T-
x − xa e (xa )
eR (xa ) = = .
x x
A quantidade
x − xa |e (xa )|

|eR (xa )| = =
x |x|
FC

é designada por erro relativo absoluto da aproximação xa .

Definição 4.

Ao produto
100 |eR (xa )| ,

dá-se o nome de percentagem de erro na aproximação de x por xa .

Capítulo 1
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 4

Exemplo 1. Considerando x = 3.141592 e xa = 3.14, calculemos os valores do


erro, do erro absoluto, do erro relativo e do erro relativo absoluto que afectam
a aproximação xa .
Decorre directamente das definiçoes que

e (xa ) = x − xa = 3.141592 − 3.14 = 0.001592 = |e (xa )|

g
e
x − xa e (xa ) 0.001592
eR (xa ) = = = = 0.000507 = |eR (xa )| .
x x 3.141592

l
Neste caso, os resultados não evidenciam diferenças significativas entre o
erro absoluto e o erro relativo absoluto. △

UA
Exemplo 2. Para x = 106 e xa = 999995, calculemos as mesmas quantidades
referidas no Exemplo 1:

e (xa ) = x − xa = 1000000 − 999995 = 5 = |e (xa )|

e
x − xa e (xa ) 5
eR (xa ) = = = = 0.000005 = |eR (xa )| .
x x 1000000
T-
Como o valor exacto possui grande magnitude, apesar do erro absoluto ser
elevado, a aproximação é considerada boa. △

Exemplo 3. Se x = 0.45 × 10−5 e xa = 0.9 × 10−5 , então

e (xa ) = x − xa = 0.0000045 − 0.000009 = −0.45 × 10−5


FC

o que implica que


|e (xa )| = 0.45 × 10−5 .

Quanto ao erro relativo absoluto tem-se que



x − xa |e (xa )| 0.45 × 10−5 0.45

|eR (xa )| = = = = = 1.0,
x |x| 0.45 × 10 −5 0.45

o que fornece uma percentagem de erro igual a 100%!!! △

Capítulo 1
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 5

Observação.

• O erro relativo é uma grandeza sem dimensões;

• O que normalmente interessa é obter uma estimativa do erro


relativo absoluto. Como em geral, o valor exacto, x, não é co-
nhecido, substitui-se este valor pelo valor aproximado xa na

g
definição de erro relativo, isto é se δxa for um majorante para
o erro absoluto, então,

l
δx a
|eR (xa )| ≤ .
|xa |

UA
1.1.3 Relações entre os majorantes dos erros

Vejamos agora como se pode determinar um majorante para o erro relativo


absoluto conhecido um majorante para o erro absoluto, e reciprocamente.

CASO 1: Conhecido um majorante para o erro absoluto, encon-


trar um majorante para o erro relativo absoluto.
T-
Partindo da definição de erro relativo absoluto tem-se que

x − xa |e (xa )|
|eR (xa )| = = .
x |x|
Portanto, a majoração do erro relativo absoluto obtém-se
FC

majorando o erro absoluto (numerador), |e (xa )| ≤ δxa , e


minorando |x| (denominador), |xa | − δxa ≤ |x|.
Deste modo,
δxa
|eR (xa )| ≤ εxa = .
|xa | − δxa
Supondo que |xa | ≫ δxa , podemos escrever
δx a
εxa ≈ ,
|xa |
corroborando o que foi dito anteriormente.

Capítulo 1
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 6

CASO 2: Conhecido um majorante para o erro relativo abso-


luto, encontrar um majorante para o erro absoluto.
Da definição de erro relativo absoluto pode escrever-se

|e (xa )| = |eR (xa )| |x| .

g
Como se conhece um majorante para o erro relativo abso-
luto, então |eR (xa )| ≤ εxa . Por outro lado, |x| ≤ |xa | +
|eR (xa )|, o que significa que

l
|e (xa )| ≤ εxa (|xa | + |eR (xa )|)

UA donde se deduz, admitindo que εxa < 1, que

1.2 Algarismos significativos


δxa =
εxa
1 − εxa
|xa | .
T-
Definição 5.
FC

Exemplo 4. Sabendo que xa = 456.87 com |e (xa )| = 0.05, quantos algaris-


mos significativos possui a aproximação xa ?
Por aplicação da definição tem-se que:

Capítulo 1
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 7

4 5 6 . 8 7
|e (xa )| ≤ 0 . 0 5

o que permite concluir que

|e (xa )| = 0.05 ≤ 0.5 × 10−1

g
e, consequentemente, xa possui 4 algarismos significativos. △

Exemplo 5. Sabendo que xa = 0.02064 com |e (xa )| = 0.00008, quantos


algarismos significativos possui a aproximação xa ?

l
Neste caso,

UA |e (xa )| ≤

o que permite concluir que


0
0
.
.
0
0
2
0

|e (xa )| = 0.00008 ≤ 0.5 × 10−3


0
0
6
5
4

e, portanto, xa possui 2 algarismos significativos. △


T-
FC

Teorema 1.

Se
x − xa

|eR (xa )| = ≤ 5 × 10−(m+1) = 0.5 × 10−m
x
então, a aproximação xa possui pelo menos m algarismos significa-
tivos.

Capítulo 1
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 8

1.3 Representação de números


A representação de números reais em ponto flutuante, também desig-
nada por notação científica normalizada de base b é definida da seguinte
forma: Cada

x ∈ R \ {0} é representado na forma ± 0.d1 d2 d3 . . . × bm

g
com di ∈ {0, 1, . . . , b − 1}, d1 ̸= 0 e m ∈ Z, onde:

• b representa a base do sistema de numeração;

l
• d1 d2 d3 . . . representa a mantissa e consiste numa sequência de dígitos,

UA
possivelmente infinita;

• m, número inteiro, é o expoente.

Observação.

ë na representação normalizada, d1 ̸= 0 garante a unicidade


da representação;

ë o zero não possui representação normalizada.


T-
1.3.1 Representação de números reais num computador

Sob o ponto de vista do utilizador e não da representação interna pode dizer-


FC

se que:

• A representação dos números reais não é exacta (o número de dígitos


da mantissa determina o grau de precisão utilizado);

• A grandeza dos números reais é limitada (o número de dígitos do ex-


poente determina a grandeza máxima);

• A variação dos números reais representados é discreta e não contínua


(a densidade de valores representados decresce exponencialmente com
a grandeza dos números).

Capítulo 1
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 9

Deste modo, em vez de se utilizar R somos obrigados a utilizar um seu


subconjunto finito, que se denota por F (conjunto dos números float) e para
cada

x ∈ R \ {0} corresponde um número float f l(x) ∈ F.

A notação científica normalizada dos elementos de F na base b é definida

g
da seguinte forma:

f l(x) ∈ F (b, k, q1 , q2 ) ⇄ (−1)s × 0.d1 d2 d3 . . . dk × bm

l
com s ∈ {0, 1}, di ∈ {0, 1, . . . , b − 1}, d1 ̸= 0, q1 < 0 < q2 e m ∈ (q1 , q2 ),

UA
onde:

• b representa a base do sistema de numeração;

• s representa o sinal, s ∈ {0, 1};

• d1 d2 d3 . . . representa a mantissa e consiste numa sequência finita de


k dígitos;

• m é o expoente, com m ∈ (q1 , q2 ) e q1 < 0 < q2 finitos.


T-
Os valores dos parâmetros de uma representação dependem do proces-
sador aritmético e da linguagem de programação utilizados. Temos então
que para cada x ∈ R\{0} corresponde uma aproximação, f l(x) ∈ F, no com-
putador. Como é produzida esta aproximação? De uma das duas maneiras
FC

seguintes:

• Por Truncatura:

Se f l(x) é obtido por truncatura então

f l(x) = ±0.d1 d2 d3 . . . dk × bm

• Por Arredondamento:

Se f l(x) é obtido por arredondamento então

Capítulo 1
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 10

– se dk+1 < b/2,

f l(x) = ±0.d1 d2 . . . dk−1 dk × bm

– se dk+1 ≥ b/2,

f l(x) = ±0.d1 d2 . . . dk−1 d ′k × bm ,

g
com d ′k = dk + 1.

Assim, f l(x), obtido por arredondamento ao k-ésimo dígito, possui k

l
algarismos significativos.

Seja
UA
1.3.2 Erro da aproximação f l(x) ∈ F (b, k, q1 , q2 )

f l(x) = (−1)s × 0.d1 d2 d3 . . . dk × bm ∈ F (b, k, q1 , q2 )

a aproximação de x = (−1)s × 0.d1 d2 d3 . . . dk dk+1 . . . × bm ∈ R \ {0},


Assumindo que o erro afecta apenas a representação da mantissa, então
o erro absoluto cometido por truncatura, ou seja, no caso em que
T-
f l(x) = (−1)s × 0.d1 d2 d3 . . . dk × bm ,

é tal que

|e (f l(x))| = |x − f l(x)| = 0.00 . . . 0dk+1 . . . × bm


FC

= 0.dk+1 . . . × bm−k
≤ bm−k .

Quanto ao erro absoluto cometido por arredondamento simétrico, a


seguinte estimativa é válida:

|e (f l(x))| = |x − f l(x)| ≤ 0. 00 . . . 0} 5 × bm
| {z
k posições

≤ 0.5 × bm−k .

Capítulo 1
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 11

O erro relativo absoluto cometido por truncatura será então dado por:

|x − f l(x)| bm−k bm−k


|eR (f l(x))| = ≤ =
|x| |x| 0.d1 d2 . . . × bm
bm−k
≤ = b1−k
0.1 × bm

g
No que repeita ao erro relativo absoluto cometido por arredondamento
simétrico tem-se que:

|x − f l(x)| 0.5 × bm−k 0.5 × bm−k


|eR (f l(x))| = ≤

l
=
|x| |x| 0.d1 d2 . . . × bm
0.5 × bm−k
UA
Observação.

0.1 × bm
= 0.5 × b1−k .
T-
1.3.3 Zero da máquina

Considerando uma máquina F (b, k, q1 , q2 ), o erro que se comete na aproxi-


FC

mação f l(x) ≈ x é pequeno, sendo o erro absoluto da ordem de δ, ou seja,



x − f l(x)
≈ δ,
x

onde δ representa o zero da máquina (ou machine epsilon) que é definido


como sendo menor número f loat tal que

f l (1 + δ) > 1.

Capítulo 1
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 12

Observação.

• No caso de truncatura, δ = b1−k .

• No caso de arredondamento, δ = 0.5b1−k .

• Quanto menor for o zero de uma máquina, mais precisa esta

g
será.

• Para calcular o valor aproximado de δ em qualquer máquina,


pode-se implementar, em precisão simples ou dupla, o seguinte

l
algoritmo:

UA 1

4
Output: Valor aproximado de εM
s ← 1.0
for k = 1, 2, . . . , 100 do
s ← 0.5s
t ← s + 1.0
5 if t ≤ 1.0 then
6 s ← 2.0s
7 return k − 1, s
T-
8 STOP
9 end
10 end
FC

1.4 Propagação de erros

1.4.1 Erros de método ou de truncatura

Os erros de truncatura são cometidos quando se usam:

- Métodos de discretização: aproximação de um problema de natureza


contínua por outro de natureza discreta (por exemplo, a substituição
de derivadas por razões incrementais, a substituição de integrais por

Capítulo 1
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 13

somatórios, ou a substituição de séries por somas de um número finito


de termos);

- Métodos iterativos: a partir de uma aproximação inicial, a solução é


obtida (teoricamente) ao fim de um número infinito de operações (na
prática os processos iterativos são terminados ao fim de um número

g
finito de operações).

1.4.2 Teorema de Taylor

l
Para estudar a propagação de erros relembra-se o teorema de Taylor:

UA
Teorema 2 (de Taylor).

Se f é uma função contínua com derivadas contínuas, pelo menos,


até à ordem (n + 1) num intervalo que contém os valores a e x, então
o valor de f em x é dado por

f ′′ (a)
f (x) = f (a) + f ′ (a)(x − a) + (x − a)2 +
2!
f ′′′ (a) f (n) (a)
(x − a)3 + · · · + (x − a)n + Rn
T-
3! n!
sendo o resto de ordem n (na forma de Lagrange)
∫ x
(x − t)n (n+1)
Rn = f (t) dt.
a n!
FC

Corolário 1.

O resto Rn pode ser escrito (por aplicação do teorema do valor médio


para integrais) na forma

f (n+1) (ξ)
Rn = (x − a)n+1 , ξ ∈ (a, x).
(n + 1)!

Capítulo 1
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 14

1.4.3 Propagação de erros absolutos

Pretende-se aqui estudar como controlar o erro que ocorre quando se calcula
o valor de uma função, f em pontos aproximados. Considere-se, em primeiro
lugar, o caso em que a função depende de uma variável real: f = f (x). Para
alémdo facto de se ter disponível apenas uma aproximação xa de x, acresce

g
o facto de, em geral, a própria função f também ser aproximada: fa ≈ f .
Assim, após os cálculos, temos um erro f (x) − fa (xa ). Mesmo que se
possa calcular o valor da função de forma exacta, qualquer perturbação no
valor de x irá originar um erro afectará sempre o valor de f , dando origem

l
ao chamado erro propagado, f (x) − f (xa ).

UA
Por outro lado, mesmo que o valor da variável independente seja exacto,
se for utilizada uma aproximação fa para f , teremos o que se designa por
erro gerado, f (x) − fa (x).
Como

f (x) − fa (xa ) = [f (x) − f (xa )] + [f (xa ) − fa (xa )] ,

concluímos que o erro final é a soma do erro propagado com o erro gerado.
Aqui interessamo-nos em controlar o erro propagado : e(f (xa )) = f (x) −
T-
f (xa ).
Admitindo que xa é um valor próximo de x e que a função f é contínua
e diferenciável em xa , pode-se escrever a série de Taylor em torno do ponto
xa , ou seja,
f ′′ (xa )
f (x) = f (xa ) + f ′ (xa )(x − xa ) + (x − xa )2 + · · · .
FC

2!
Considerando a aproximação de primeira ordem conclui-se que

f (x) ≈ f (xa ) + f ′ (xa )(x − xa ) ⇔ f (x) − f (xa ) ≈ f ′ (xa )(x − xa )

e obtemos a Fórmula da Propagação do Erro:

e (f (xa )) ≈ f ′ (xa )e (xa )

ou ainda, para o erro absoluto,



|e (f (xa ))| ≈ f ′ (xa ) |e (xa )| .

Capítulo 1
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 15

No caso em que a função depende de duas variáveis, admitindo que xa e


ya são aproximações para x e para y, respetivamente, a partir do desenvol-
vimento em série de Taylor em torno do ponto (xa , ya ), tem-se
∂f ∂f
f (x, y) = f (xa , ya ) + (xa , ya ) (x − xa ) + (xa , ya ) (y − ya ) +
∂x ∂y
[ 2
1 ∂ f

g
(xa , ya ) (x − xa )2
2! ∂x2
∂2f
+2 (xa , ya ) (x − xa ) (y − ya )
∂x∂y
]

l
∂2f
+ 2 (xa , ya ) (y − ya )2 + · · · .
∂y

UA
Considerando, novamente, a aproximação de primeira ordem tem-se que

f (x, y) ≈ f (xa , ya ) +

o que equivale a escrever


∂f
∂x

∂f
(xa , ya ) (x − xa ) +
∂f
∂y

∂f
(xa , ya ) (y − ya )

f (x, y) − f (xa , ya ) ≈ (xa , ya ) (x − xa ) + (xa , ya ) (y − ya )


∂x ∂y
e, aplicando módulos em ambos os lados da relação,
T-

∂f ∂f

|e (f (xa , ya ))| ≤
(xa , ya ) |e (xa )| + (xa , ya ) |e (ya )| .
∂x ∂y
Finalmente, no caso geral em que f depende de n variáveis, x1 , x2 , . . . , xn .
Se xia forem aproximações para xi , i = 1, 2, . . . , n, então, procedendo de
forma análoga ao que foi feito nos casos anteriores, pode concluir-se que:
FC

n

∂f
|e (f (x1a , . . . , xna ))| ≤ (x , . . . , x ) |e (xia )| .
∂xi 1 a na
i=1

1.4.4 Propagação de erros relativos absolutos

Da fórmula da propagação do erro é possível deduzir como se propaga o


erro relativo absoluto que afecta a aproximação para o valor da função f
em xa :
x f ′ (xa )

|eR (f (xa ))| ≈ |eR (xa )|
f (x)

Capítulo 1
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 16

Definição 6.

Dá-se o nome de número de condição da função f no ponto x à


quantidade
x f ′ (x)
Kf (x) = .
f (x)

g
Dado que, em geral, x não é conhecido, a relação que é utilizada computa-
cionalmente é

l
|eR (f (xa ))| ≈ Kf (xa ) |eR (xa )| .

UA
O valor de Kf (xa ) representa um indicador do efeito da propagação do
erro relativo na aproximação xa , o qual nos permite avaliar em que condi-
ções a função é bem (número de condição ”pequeno”) ou mal condicionada
(número decondição ”grande”).
No que diz respeito à propagação dos erros relativos absolutos, no caso
geral, pode facilmente deduzir-se que

∂f

∑n
xia ∂xi (x1a , . . . , xna )
|eR (f (x1a , . . . , xna ))| ≤
f (x1 , . . . , xn ) |eR (xia )| .
T-
i=1 a a

1.4.5 Propagação de erros nas operações aritméticas

Nas deduções que se seguem, admita-se que xa e ya são aproximações para


FC

x e y, respectivamente, ambos com o mesmo sinal e desprezem-se os erros


gerados.
Nos casos da adição e da subtracção, para o erro absoluto tem-se que:

|e (xa ± ya )| = |(x ± y) − (xa ± ya )|


= |(x − xa ) ± (y − ya )|
≤ |x − xa | + |y − ya | = |e (xa )| + |e (ya )| .

O que significa que o erro absoluto da soma e da subtracção de dois números


é limitado pela soma dos erros absolutos que afectam cada uma das duas
aproximações, xa e ya .

Capítulo 1
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 17

No que diz respeito ao erro relativo absoluto conclui-se que:



e (xa ± ya ) |e (xa ± ya )|
|eR (xa ± ya )| = =
x±y |x ± y |
|e (xa )| + |e (ya )|

|x ± y |
|x| |y |
= |eR (xa )| + |eR (ya )|

g
|x ± y | |x ± y |
≤ max {|eR (xa )| , |eR (ya )|} .

O que significa que o erro relativo absoluto da soma e da subtracção de dois

l
números é limitado pelo maior dos erros relativos absolutos individuais.

UA
A dedução para as restantes operações aritméticas (multiplicação e divi-
são) ficam como exercício.

1.5 Cancelamento subtractivo


No final da secção anterior estabelecemos então que
|x| |y |
|eR (xa ± ya )| ≤ |eR (xa )| + |eR (ya )| .
|x ± y | |x ± y |
T-
FC

Exemplo 6. Pretende-se calcular o valor de

e−100 = 3.7200759760208359630 × 10−44

através do desenvolvimento em série



+∞ k
x x2 x3 xn
x
e = =1+x+ + + ··· + + ··· .
k! 2! 3! n!
k=0

Capítulo 1
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 18

Somando os 238 primeiros termos da série, o que equivale a uma tole-


rância de 10−50 , obtém-se e−100 ≈ −2.913755646891533 × 1025 . Resultado
que nada tem a ver com o pretendido. Como a série é alternada verifica-se,
a partir de certa ordem, a ocorrência de sucessivos cancelamentos subtrac-
tivos.

g
Podemos resolver o problema tendo em atenção que
1
e−x =
ex

l
e utilizando esta fórmula em vez da anterior.

UA
Obtém-se então que e−100 ≈ 3.720075976020839 × 10−44 .

Exemplo 7. Calcular, em precisão finita, o valor da expressão

para valores grandes de x.


√ √
x+1− x

Uma transformação da fórmula de cálculo que evitará o cancelamento


subtractivo é dada por
T-
(√ √ ) (√ √ )
√ √ x+1− x x+1+ x 1
x+1− x= √ √ =√ √ .
x+1+ x x+1+ x


FC

1.6 Condicionamento e estabilidade

1.6.1 Condicionamento de um problema

Na resolução de um problema P existem dados de entrada (input data),


que podem ser agrupados sob a forma de vector x. Por outro lado, se o vector
y designar os resultados (output data), podemos escrever

y = P (x) .

Capítulo 1
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 19

Definição 7.

Um problema diz-se bem condicionado (ou matematicamente es-


tável), se pequenos erros relativos nos dados produzem pequenos
erros relativos nos resultados. Caso contrário, dir-se-á mal condici-
onado (ou matematicamente instável).

g
Exemplo 8. Resolução da equação

l
x 1
x2 − + =0
3 36

UA
em aritmética exacta e com uma aritmética finita de 5 algarismos significativos.
Recorrendo à fórmula resolvente, em aritmética exacta, obtém-se

x1 =
1
6
= x2 .

No entanto, admitindo que esta equação é construída a partir de aproxima-


ções, por arredondamento, para os coeficientes de x e do termo indepen-
dente com a aritmética indicada, a equação a resolver será então
T-
x2 − 0.33333x + 0.027778 = 0,

a qual não possui qualquer raiz real! △

Este exemplo apresenta um problema em que pequenas variações nos


dados de entrada provocaram grandes alterações nos resultados obtidos, ou
FC

seja, o problema é mal condicionado.

1.6.2 Estabilidade de um método

Na resolução de um problema P , através da utilização de um algoritmo A,


para além dos erros que afectam os dados devem ser igualmente considera-
dos os erros de arredondamento que se propagam ao longo da execução
do algoritmo. Assim, considerando os dados de entrada x e os resultados y,
tem-se
y = A (x) .

Capítulo 1
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 20

Definição 8.

Um método numérico (ou algoritmo) diz-se computacionalmente


estável (ou numericamente estável), se a acumulação e propagação
dos erros de arredondamento provoca um erro relativo do resultado
significativemente pequeno. Caso contrário, o método numérico dir-

g
se-á computacionalmente instável (ou numericamente instável).

l
Nenhum algoritmo, quando aplicado a um problema mal condicionado,
poderá ser numericamente estável!

UA
1.7 Exercícios
1. Sejam:
{ {
x = 0.6921471806 x = 0.000068
(a) ; (c) ;
xa = 0.69315 xa = 0.00006
{ {
x = 98.350 x = 0.3543
T-
(b) ; (d) .
xa = 98.000 xa = 0.3541

Determine o erro relativo absoluto e conclua quanto ao número de


algarismos significativos de cada uma das aproximações xa . Estabeleça
uma comparação com os resultados que se obtêm a partir da definição
FC

de algarismos significativos.

2. O raio de uma circunferência, arredondado, mede 9.8cm. Qual o erro


absoluto máximo que se comete no cálculo do valor do perímetro da
circunferência? Considere π = 3.141592.

3. Seja f uma função e


1
Kf (x) =
|x − 1|
o seu número de condição. Se xa = 1.05, obtido por arredondamento,
quantos algarismos significativos pode garantir para f (xa )?

Capítulo 1
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 21

4. Considere o seguinte algoritmo

Output: Valor de y
1 x ← 102
2 x ← 10 × x
3 y ←x+1

g

4 y← y

5 y←y− x
6 y ← 105 × y

l
Verifique que, com a utilização de uma aritmética de quatro algarismos

UA
significativos, o valor que se obtém é y = 2000. No entanto, o resultado
devia ser igual a 1581. Explique esta discrepância nos resultados e
calcule este último valor.

5. Resolva a equação x2 −40x+1 = 0 numa aritmética de cinco algarismos


significativoscom maior precisão possível.
T-
FC

Capítulo 1
2. Equações Não Lineares

l g
2.1 Introdução

UA
Consideremos a equação
f (x) = 0

em que f é uma função real de variável real. Se f for uma função linear,
isto é, se for da forma f (x) = mx + p, m ̸= 0, então sabemos que a solução
da equação, α, é α = −p/m. Se não for este o caso, diremos que f é não
linear e a equação f (x) = 0 é também chamada não linear. Como exemplo
de equações não lineares temos
T-
2 +1
x + 2 − ex = 0,
x − ln(x) = 0,
(3x + 1)2 − 5 cos(πx) = 0,

que são equações transcendentes, isto é, equações que, para além das ope-
FC

rações aritméticas básicas, envolvem outras funções pré-definidas, como por


exemplo, funções trigonométricas, exponenciais, logarítmicas, hiperbólicas,
etc.. Na maior parte dos casos, as soluções das equações transcendentes
apenas se podem obter com recurso a métodos numéricos.
O objectivo deste capítulo é então: aproximar numericamente a solução,
ou raíz, da equação f (x) = 0, em que f é uma função não linear.

22
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 23

2.2 Raízes, zeros e multiplicidade


Resolver a equação f (x) = 0 equivale a determinar o ponto de intersecção
do gráfico de f com o eixo das abcissas. Relembramos a

Definição 1.

g
Dada a equação
f (x) = 0,

se existir um valor α, tal que f (α) = 0, então α diz-se uma raiz da

l
equação ou então um zero da função f .

UA
Por isso, sem distinção, diremos resolver a equação f (x) = 0, ou determi-
nar o(s) zero(s) de f .

Teorema 1.

Se α é um zero da função f e se f é m vezes diferenciável em α,


então a multiplicidade de α é igual a m se e somente se
T-
f (α) = f ′ (α) = f ′′ (α) = . . . = f (m−1) (α) = 0,

com f (m) (α) ̸= 0.


FC

ë Se m = 1, o zero diz-se simples: f (α) = 0;

ë Se m = 2, o zero diz-se duplo: f (α) = f ′ (α) = 0;

ë Se m = 3, o zero diz-se triplo: f (α) = f ′ (α) = f ′′ (α) = 0.

Exemplo 1.
Para a função f (x) = sen(x) tem-se que f (0) = 0 mas f ′ (0) ̸= 0, o que
implica m = 1; o zero é simples. △

Capítulo 2
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 24

Exemplo 2.
Para a função f (x) = 1 − cos(x) tem-se que f (0) = 0 e f ′ (0) = 0 mas
f ′′ (0) ̸= 0, o que implica m = 2, o zero é duplo. △

Exemplo 3.
Para a função f (x) = (x−1)3 tem-se que f (1) = 0, f ′ (1) = 0, f ′′ (1) = 0

g
mas f ′′′ (1) = 6 ̸= 0, o que implica m = 3, o zero é triplo. △

2.3 Métodos iterativos, convergência e erro

l
Os métodos iterativos utilizam xk−1 , xk−2 , . . . , xk−ℓ , ℓ ≥ 1, valores aproxi-
UA
mados do zero α de f , para, através de uma expressão iterativa, obter uma
nova aproximação xk ,

xk = g (xk−ℓ , . . . , xk−2 , xk−1 ) , k = ℓ, ℓ + 1, . . . ,

onde, eventualmente, g pode também depender de k. A cada passo que,


partindo das ℓ anteriores aproximações, conduz à determinação de xk dá-se
o nome de iteração. Por abuso de linguagem também se costuma chamar
T-
iteração ao valor de xk . Este processo iterativo produz uma sucessão de
aproximações xk , cada uma com um erro

e (xk ) = ek = α − xk .

O método iterativo é convergente se


FC

lim xk = α ⇔ lim ek = 0.
k k

Capítulo 2
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 25

Definição 2 (Ordem de Convergência).

Seja {xk }k∈N uma sucessão convergente para α. Se existirem duas


constantes reais positivas p e C, com C finita, tais que

|α − xk+1 | ≤ C |α − xk |p ,

g
então diz-se que a sucessão é convergente para α com ordem de
convergência p. À constante C dá-se o nome de constante de con-
vergência assimptótica e, para p = 1, exige-se C < 1.

l
UA
ë Se p = 1, a convergência diz-se de primeira ordem ou linear.

ë Se 1 < p < 2, a convergência diz-se supralinear.

ë Se p = 2, a convergência diz-se de segunda ordem ou quadrática.

De forma geral, quanto maior for a ordem de convergência de um mé-


todo iterativo, menor será o número de iterações necessárias para atingir
uma aproximação com uma determinada precisão. No entanto, a rapidez
T-
depende também do esforço computacional requerido em cada iteração.
Independentemente do método utilizado, muitas vezes é possível obter
um majorante para o erro que afeta cada aproximação.
FC

2.4 Localização e separação das raízes


A aplicação de um determinado método numérico na resolução da equação
não linear
f (x) = 0

pressupõe a localização das possíveis raízes da equação e a sua separação


em intervalos tão pequenos quanto possível. Um método simples que se pode
utilizar para localizar e separar as soluções de uma equação baseia-se na
representação gráfica da função f . Por exemplo, se f (x) = g (x) − h (x),

Capítulo 2
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 26

então, de
f (x) = 0 ⇔ g (x) − h (x) = 0 ⇔ g (x) = h (x)

conclui-se que as raízes da equação a resolver correspondem às abcissas dos


pontos de intersecção dos gráficos das funções g e h.
Note-se que a representação gráfica pode não ser suficiente para concluir

g
da existência e unicidade das raízes pelo que, depois de localizadas e separa-
das as raízes da equação a resolver, deve provar-se analiticamente a exis-
tência e a unicidade das mesmas nos intervalos encontrados. Usualmente a
demonstração da existência baseia-se no seguinte corolaŕio do teorema de

l
Bolzano

UA
Corolário 1 (do teorema de Bolzano).

Seja f uma função real de variável real contínua no intervalo [a, b].
Se
f (a) × f (b) < 0,

então existe pelo menos um ponto x = α, pertencente ao intervalo


]a, b[, tal que
f (α) = 0.
T-
A unicidade decorre de um dos corolários do teorema de Lagrange (ou
dos acréscimos finitos).
FC

Teorema 2 (de Lagrange ou dos acréscimos finitos).

Se f é uma função real de variável real contínua no intervalo [a, b] e


diferenciável em ]a, b[, então existe um ponto c ∈]a, b[, tal que

f (b) − f (a)
f ′ (c) = .
b−a

e um dos seus corolários

Capítulo 2
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 27

Corolário 2.

Se f é uma função com derivada positiva em todos os pontos do


intervalo ]a, b[, então f é estritamente crescente nesse intervalo.

g
Corolário 3.

Se f é uma função com derivada negativa em todos os pontos do


intervalo ]a, b[, então f é estritamente decrescente nesse intervalo.

l
UA
dá-nos a unicidade.
A conjugação da existência (corolário do teorema de Bolzano) com a
unicidade (garantida pela aplicação de um dos dois corolários do teorema de
Lagrange), permite verificar se a localização e separação feitas pelo método
gráfico foram bem realizadas.

Exemplo 4. Dada a equação


T-
f (x) = 0 ⇔ x2 − ex = 0.

determinemos um intervalo de amplitude igual à unidade ao qual pertença a


solução da equação, comprovando a existência e a unicidade da solução no
intervalo indicado.
FC

Sejam g e h as funções definidas por g(x) = x2 e h(x) = ex , respectiva-


mente. Então
f (x) = 0 ⇔ x2 − ex = 0 ⇔ x2 = ex .

Representando graficamente as funções g e h será fácil localizar as raízes da


equação que se pretende resolver.

Capítulo 2
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 28

y
h(x) = ex
7

g
4 g(x) = x2

l
2

UA -2 -1
1

1 2 x

Da representação gráfica conclui-se que existe um ponto x = α no inter-


valo ] − 1, 0[, tal que g(α) = h(α), ou seja, que f (α) = 0, o que carece de
T-
prova analítica.
Como f é uma função contínua no intervalo [−1, 0] e diferenciável no
intervalo ] − 1, 0[, o que equivale a dizer que f ∈ C 1 (]−1, 0[), podem apli-
car-se os corolários dos teoremas de Bolzano e de Lagrange.
Como
FC

1
f (−1) = 1 − > 0 e f (0) = −1 < 0,
e
então, por aplicação do teorema de Bolzano, pode concluir-se que existe pelo
menos um ponto x = α ∈] − 1, 0[, tal que f (α) = 0. Por outro lado, como
f ′ (x) = 2x − ex < 0, ∀x ∈] − 1, 0[, pode concluir-se, com a aplicação do
corolário do teorema de Lagrange, que a função é estritamente decrescente
no intervalo ] − 1, 0[.
A conjugação dos dois resultados anteriormente provados permite con-
cluir que existe uma única raiz da equação no intervalo ] − 1, 0[. △

Capítulo 2
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 29

2.5 O método da Bissecção


A ideia do método da Bissecção é a seguinte: partindo de um intervalo ]a, b[,
que contém uma única raiz da equação, construir uma sucessão de subin-
tervalos, garantindo que cada um deles é o semi-intervalo do anterior onde
se encontra a raiz. Graficamente,

g
y
ITERAÇÃO 1

l
1
+
bb
a0 = a = −1
a0 x1 b0
b0 = b = 0
a0 + b0
UA -1

+

bb

-1

1
bb −
x x1 =

f (x) = x2 − ex
2

ITERAÇÃO 2
a1 = a = −1
= −0.5

bb

a1 +
bb b1 b1 = x1 = −0.5
a1 + b1
-1
x2 bb x x2 = = −0.75
− 2
T-
-1

y
ITERAÇÃO 3
1
a2 = x2 = −0.75
FC

+
bb b2 b2 = −0.5
a2 + b2
-1
a2 bb x x3 = = −0.625
− 2
-1

O algoritmo do método da Bissecção pode, portanto, ser dado por:

Capítulo 2
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 30

Input: a, b, ε
Output: Aproximação para a raiz da equação f (x) = 0 pertencente ao intervalo ]a, b[
1 if sign (f (a)) = sign (f (b)) then
2 STOP
3 end
4 k←1
5 while (b − a) ≥ ε do
xk ← (a + b) /2

g
6
7 if sign (f (a)) ̸= sign (f (xk )) then
8 b ← xk
9 else
10 a ← xk

l
11 end
12 return xk
k ←k+1

UA13

14 end

Em relação ao algoritmo da Bissecção note-se que:

• só é necessário calcular o valor de f uma única vez por iteração;

• não é necessário efectuar qualquer multiplicação para escolher a


parte do intervalo que contém o zero da função;
T-
• em aritmética finita é improvável obter o valor exacto da raiz da equa-
ção, pelo que muitas vezes na implementação se omite essa possibili-
dade;

• a sequência de intervalos {]ak , bk [}k∈N0 é normalmente denotada pe-


los sucessivos valores das variáveis a e b.
FC

Note-se também que, para um erro absoluto máximo (tolerância para


o erro), ε, fornecido pelo utilizador, utiliza-se o teste

|bk − ak | ≤ ε, k = 0, 1, . . .

de modo a que o processo iterativo apenas cesse quando o erro absoluto


que se comete for inferior à amplitude do intervalo que se utiliza nessa
iteração.

Capítulo 2
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 31

2.5.1 Convergência

Sejam α a raiz da equação que se pretende aproximar e xk , k = 1, 2, 3, . . . os


valores obtidos na k-ésima iteração, os quais correspondem a pontos médios
de um dos (sub)intervalos considerados na iteração k. Então,

b0 − a0 b−a
|e (x1 )| = |α − x1 | ≤ b1 − a1 =

g
=
2 2
b1 − a1 b−a
|e (x2 )| = |α − x2 | ≤ b2 − a2 = =
2 22
b2 − a2 b−a
|e (x3 )| = |α − x3 | ≤ b3 − a3 =

l
=
2 23
..
.
UA
|e (xk )| = |α − xk | ≤ bk − ak =
bk−1 − ak−1
2
b−a
= k ,
2
k = 1, 2, 3, . . . .

O que prova que e (xk ) tende para zero e o método da Bissecção é sempre
convergente.
A fórmula deduzida para o majorante do erro absoluto que se comete
na aproximação xk , k = 1, 2, 3, . . . permite estimar o número de iterações
a realizar para que seja possível garantir uma aproximação para a raiz da
T-
equação com um erro absoluto máximo inferior ou igual a ε, ou seja, de

b−a
|e (xk )| = |α − xk | ≤ ≤ε
2k
conclui-se que
⌈ ln(b − a) − ln(ε) ⌉
k≥ ,
FC

ln(2)
onde ⌈x⌉ representa o menor inteiro maior que x.

Capítulo 2
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 32

Vantagens e desvantagens do método da Bissecção

VANTAGENS
• De todos os métodos numéricos existentes para a resolução numé-
rica de equações não lineares é o que exige menos condições de apli-
cabilidade; basta garantir que f ∈ C 0 (]a, b[) e que existe uma única raíz

g
no intervalo ]a, b[.

• Possibilidade de prever o número de iterações necessárias para atingir


uma aproximação com uma precisão previamente estipulada.

l
• Iterações com baixo custo computacional (um cálculo de função por

UA
iteração).

DESVANTAGENS
• Convergência muito lenta, o que exige a realização de um número ite-
rações muito maior, quando comparado com outros métodos.

• Não se generaliza a dimensões superiores a 1.


T-
Verifica-se que o método da bissecção possui ordem de convergência linear,
p = 1, com constante de convergência, C, igual a 1/2.

2.6 O método de Newton


FC

No método de Newton substitui-se o modelo não linear por um modelo linear,


na vizinhança de um ponto dado. A solução deste último modelo é tomado
como aproximação do primeiro procedendo-se de igual modo na vizinhança
desta aproximação. E assim sucessivamente.

Capítulo 2
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 33

2.6.1 Dedução geométrica

b
f (x0 )

g
b
b
b

b b
b
f (x1 ) x
x2
-1 x1
x0

l
UA -1

f (x) = x2 − ex

Em (x0 , f (x0 )) o gráfico de f é substituído pela recta tangente

y = f ′ (x0 ) (x − x0 ) + f (x0 ) .

e o valor de x1 corresponde à abcissa do ponto de intersecção desta recta


T-
tangente com o eixo-x, ou seja,

0 = f ′ (x0 ) (x1 − x0 ) + f (x0 ) .

Resolvendo em ordem a x1 ,
FC

f (x0 )
x1 = x0 −
f ′ (x0 )

Em (x1 , f (x1 )) a substituição faz-se com a recta tangente

y = f ′ (x1 ) (x − x1 ) + f (x1 )

e x2 corresponde à abcissa do ponto de intersecção desta recta com o eixo-x,


isto é,
f (x1 )
x2 = x1 − ′
f (x1 )
Continuando sucessivamente obtemos a fórmula iterativa

Capítulo 2
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 34

f (xk )
xk+1 = xk − , k = 0, 1, 2, . . . .
f ′ (xk )
Assim, a partir de uma aproximação inicial x0 , a fórmula iterativa gera
uma sucessão {xk }k∈N0 , que, sob determinadas condições, convergirá para
o zero da função que se pretende aproximar numericamente.

g
2.6.2 Dedução analítica

Neste caso a dedução faz-se a partir do desenvolvimento em série de Taylor.

l
Admitamos que f ∈ C 2 ([a, b]) (tem duas derivadas contínuas em [a, b]) e
que o método de Newton é convergente. Seja α o único zero de f em [a, b],
UA
e xk uma aproximação de α tal que α = xk + h. O desenvolvimento em série
de Taylor em torno de xk é dado por

f (xk + h) =

∑ f (k) (xk )
k=0
k!
hk .

Notando que α − xk = ek e pode escrever-se

f ′′ (ξk ) 2
f (α) = f (xk ) + f ′ (xk ) ek + ek
T-
2
com ξk entre α e xk . Como ek = α − xk e f (α) = 0, então

f (xk ) f ′′ (ξk ) 2
α = xk − − e ,
f ′ (xk ) 2f ′ (xk ) k

e aproximamos α pela soma das duas primeiras parcelas do lado direito da


FC

equação precedente:
f (xk )
xk+1 = xk − ′ .
f (xk )

2.6.3 Convergência

Seja f ∈ C 2 ([a, b]). Retomando o desenvolvimento em série de Taylor, agora


em torno de xk , temos

f (k) (xk ) hk
f (xk + h) = f (xk ) + f ′ (xk ) h + . . . + + ...
k!

Capítulo 2
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 35

Como h = α − xk ,
f ′′ (ξk )
f (α) = f (xk ) + f ′ (xk ) (α − xk ) + (α − xk )2
2
com ξk entre α e xk . Então,

f ′′ (ξk )

g
α − xk+1 = − (α − xk )2
2f ′ (xk )
Aplicando módulos em ambos os membros da igualdade tem-se
′′
f (ξk )

l

|α − xk+1 | = ′ |α − xk |2
2f (xk )

UA
Sejam M2 o máximo para a derivada de segunda ordem e m1 o mí-
nimo para a derivada de primeira ordem, no intervalo onde se provou a
existência e unicidade do zero da função f , ou seja,
′′
f (x) ≤ M2 , ∀x ∈ [a, b]

e

f (x) ≥ m1 > 0, ∀x ∈ [a, b].
M2
T-
Então, com M = , tem-se que
2m1
′′
f (ξk )

2f ′ (xk ) ≤ M

e
FC

|α − xk+1 | ≤ M |α − xk |2 .

Logo, pela definição de ordem de convergência, se houver convergência,


esta é quadrática.
Multiplicando a última desigualdade por M temos

M |α − xk+1 | ≤ (M |α − xk |)2 ,

o que permite concluir, por indução matemática, que


k
M |α − xk | ≤ (M |α − x0 |)2 , k ≥ 0,

Capítulo 2
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 36

isto é,
1 k
|α − xk | ≤ (M |α − x0 |)2 .
M
Assim, se
M |α − x0 | < 1,

então

g
lim |α − xk | = 0.
k→∞

Demonstrámos assim o seguinte resultado:

l
Teorema 3.

UA
Sejam f ∈ C 2 ([a, b]) e α o único zero de f no intervalo [a, b], com
f ′ (α) ̸= 0. Então, escolhendo x0 suficientemente próximo de α, a
sucessão {xk }k∈N0 , gerada pelo método de Newton, converge para α
com ordem de convergência p = 2.

1
• “suficientemente próximo” ⇔ M |α − x0 | < 1 ⇔ |α − x0 | <
M
T-
• Se o zero da funçao f não for simples a ordem de convergência do
método degrada-se. Nos casos em que o zero possui multiplicidade 2
é possível provar que a convergência da sucessão gerada pelo método
de Newton é apenas linear.
FC

2.6.4 Critérios para a escolha da aproximação inicial

Uma primeiro critério é


1
|α − x0 | < .
M
Então, de
|α − x1 | ≤ M |α − x0 |2 ,

deduz-se que,
M |α − x1 | < (M |α − x0 |)2 < 1,

Capítulo 2
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 37

o que significa que, se x0 está suficientemente próximo de α, então o mesmo


acontece com x1 . E, portanto, com todos os xk .
Assim, por um lado x0 deve ser escolhido por forma a que seja garantida
a condição
1
|α − x0 | < ,
M
mas, por outro lado, como x0 , α ∈ [a, b], então

g
|α − x0 | ≤ b − a.

Por isso, se garantirmos que

l
1
b−a< .

UA M
podemos escolher, para x0 , um valor qualquer de [a, b].
Se M for muito grande, a condição significa que a distância de x0 a α
deve ser inferior a 1/M . Ora, se amplitude do intervalo que se está a utilizar
for superior a 1/M não há garantia de que qualquer ponto do mesmo seja
uma boa escolha para x0 . Neste caso, numa fase preliminar, deve-se, por
exemplo, utilizando o método da Bissecção, encontrar um intervalo mais
pequeno que contenha α e para o qual a condição seja verdadeira.
T-
Um outro critério para escolher a aproximação inicial é o que resulta do
teorema seguinte.
Teorema 4.

Se f ∈ C 2 ([a, b]), com f ′ (x) ̸= 0 e f ′′ (x) ̸= 0, para todo o x ∈ [a, b],


então x0 pode ser qualquer ponto de [a, b] desde que satisfaça
FC

f (x0 ) · f ′′ (x0 ) > 0.

Neste caso, a sucessão {xk }k∈N0 , gerada pelo método de Newton, é


convergente (estritamente monótona).

Exemplo 5. Caso em que f ′ (x) > 0 e f ′′ (x) < 0.


Qualquer ponto do semi-eixo negativo das abcissas pode ser escolhido
para iniciar o método. Graficamente,

Capítulo 2
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 38

f (x)
x0
b
x1 b
x

g
bb
f (x0 )

l
UA
As condições referidas, que garantem a convergência quadrática do mé-

todo de Newton ou mesmo a sua aplicabilidade, são apenas condições sufi-


cientes. Quanto às que garantem a convergência, elas podem ser relaxadas
e o método pode ser aplicado e convergir sob condições menos restritivas.
T-
Todavia, é preciso ter algum cuidado quanto ao comportamento da derivada
da função no intervalo que contém o zero. Como já foi indicado, se o zero
for duplo a ordem de convergência degrada-se, passando a ser linear. Outras
situações podem acontecer, como mostra o exemplo seguinte.
FC

Exemplo 6. A derivada anula-se em algum ponto do intervalo.


Considerando a função f tal que f (x) = x3 −2x+2, se se escolher x0 = 0,
o método gerará a seguinte sucessão de aproximações:

x1 = 1
x2 = 0
..
.

1, se k é ímpar
xk =
0, se k é par

Capítulo 2
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 39

Graficamente,
y

f (x) = x3 − 2x + 2

bb

g
b
b

b b
xk+1 x
xk

l
UA
A utilização de um intervalo de localização da raiz que contém um ponto
de inflexão para o gráfico da função poderá gerar aproximações que se afas-

tarão da raiz, podendo mesmo tornar impossível a obtenção da aproximação


com a precisão desejada.
T-
2.6.5 Estimativa para o erro absoluto

Admitindo que f ∈ C 1 ([a, b]) e que o método de Newton é convergente,


pelo teorema de Lagrange sabe-se que existe um ponto ξk entre α e xk , de
tal forma que
FC

f (α) − f (xk )
f ′ (ξk ) = .
α − xk
Sob a hipótese de se ter f ′ (x) ̸= 0 para todos os pontos entre α e xk , tem-se

f (xk )
α − xk = − .
f ′ (ξk )

Por outro lado, da expressão iterativa do método retira-se que

f (xk )
xk+1 − xk = − .
f ′ (xk )

Capítulo 2
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 40

Então, supondo f ′ (ξk ) ≈ f ′ (xk ), ter-se-á, para k suficientemente grande,

α − xk ≈ xk+1 − xk .

Assim, em termos computacionais, para o erro, utilizamos

e(xk ) ≈ xk+1 − xk ;

g
para o erro relativo
xk+1 − xk
eR (xk ) ≈ .
xk+1

l
2.6.6 Critério de paragem

Como critério de paragem, dada uma tolerância ϵ, usamos

ou
UA
|xk+1 − xk | ≤ ϵ,


xk+1 − xk

xk+1 ≤ ϵ.

Vantagens e desvantagens do método de Newton

VANTAGENS
T-
• Quando converge, o método de Newton possui conver-
gência quadrática, no caso de se estar a aproximar um
zero simples da função.

• Necessita apenas de um ponto para estimativa inicial.


FC

DESVANTAGENS
• Exige uma boa aproximação inicial

• Exige o cálculo da derivada em cada iteração.

• Exige, em geral, uma derivada não nula. Mas, mesmo


para valores da derivada diferentes, mas próximos, de
zero, a intersecção da recta tangente com o eixo-x pode
resultar num ponto muito afastado da raiz que se pre-
tende aproximar.

Capítulo 2
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 41

O algoritmo do método de Newton pode ser descrito por:


Input: x0 , maxiter, ε, f (x), f ′ (x)
Output: Aproximação para a raiz da equação f (x) = 0 pertencente ao intervalo ]a, b[
1 k←0
2 while k ≤ maxiter do
f (xk )
3 xk+1 ← xk − ′
f (xk )
xk+1 − xk

g
4 eRk ←

xk+1
5 return xk , eRk
6 if eRk < ε then
7 STOP

l
8 end
9 k ←k+1
end
10

UA
2.7 O método da Secante
O método da Secante é uma alternativa ao método de Newton nos casos em
que se torna necessário utilizar uma aproximação para a função derivada,
por exemplo, se não existe expressão analítica para esta função. No caso
do método da Secante, o modelo linear define-se, geometricamente, através
da recta secante ao gráfico de f em vez da recta tangente, como no método
T-
de Newton. O método da Secante necessita, por isso, de duas aproximações
iniciais, x0 e x1 , para a raiz que se pretende aproximar, obtendo-se uma
nova aproximação, x2 , como sendo a abcissa da interseção da recta secante
ao gráfico da função f nos pontos (x0 , f (x0 )) e (x1 , f (x1 )) com o eixo-x.
FC

Note-se então que a recta secante ao gráfico da função f nos pontos


(x0 , f (x0 )) e (x1 , f (x1 )) é dada por
y − f (x1 ) f (x1 ) − f (x0 )
= .
x − x1 x1 − x0
Como na intersecção com o eixo-x se tem y = 0, então
x1 − x0
x2 = x1 − f (x1 )
f (x1 ) − f (x0 )
Após a obtenção da aproximação x2 , repete-se o processo com os pontos
(x1 , f (x1 )) e (x2 , f (x2 )) para obter x3 , e assim sucessivamente até que se

Capítulo 2
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 42

obtenha uma aproximação com a precisão desejada. Em termos gerais, a


fórmula iterativa é dada por

xk − xk−1
xk+1 = xk − f (xk ) , k = 1, 2, 3, . . . .
f (xk ) − f (xk−1 )

g
y

b
b
f (x0 )

l
UA x0

-1
x3
b
x2
x1

f (x2 )
x

-1 bb f (x1 )

f (x) = x2 − ex
T-
O algoritmo pode então ser escrito na seguinte forma:

Input: x0 , x1 , maxiter, ε, f (x)


Output: Aproximação para a raiz da equação f (x) = 0 pertencente ao intervalo ]a, b[
1 k←1
2 while k ≤ maxiter do
xk − xk−1
FC

3 xk+1 ← xk − f (xk )
f (xk ) − f (xk−1 )
xk+1 − xk
4 eRk ←
x
k+1
5 return xk , eRk
6 if eRk < ε then
7 STOP
8 end
9 k ←k+1
10 end

Capítulo 2
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 43

2.7.1 Convergência

Teorema 5.

Seja f ∈ C 2 ([a, b]) com f ′ (x) ̸= 0, ∀x ∈ [a, b]. Então, se as apro-


ximações iniciais x0 e x1 estiverem suficientemente próximas de α,
raiz da equação que se pretende aproximar, a sucessão, {xk }k∈N0 ,

g
gerada pelo método da Secante converge para α, com ordem de con-
vergência igual a

l
1+ 5
p= ≈ 1.618. (convergência supralinear)
2

UA
2.8 Exercícios
1. Suponha que quer utilizar o método de Newton para aproximar π, uti-
lizando a função sen (x). Verifique a aplicabilidade dos dois critérios
de escolha de x0 nos intervalos [1.58, 4.71] e [2.36, 3.92].
T-
2. A função dada por

f (x) = 5x3 − 38x2 + 92x − 70

tem um único zero, α, no intervalo [2, 3]. Pretende-se aproximar α.

(a) No intervalo [2, 3] o ponto x0 = 3 não é aceitável para iniciar o


FC

método de Newton. Justifique esta afirmação.


(b) Verifique que α está no intervalo [2.6, 3];
(c) Justifique a escolha x0 = 2.6 e calcule, com toda precisão que a
máquina de calcular que está a utilizar possui, duas iterações pelo
método de Newton;
(d) Quantos algarismos significativos tem x1 ?
(e) Quantas iterações precisaria, a partir do intervalo [2.6, 3], para ob-
ter, com o método da Bissecção, uma aproximação com a mesma
precisão de x1 ?

Capítulo 2
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 44

3. A tabela seguinte mostra as iterações e os valores do erro absoluto que


se obtiveram através do método de Newton:

Iterações Erro absoluto


x0 2 0.901820331
x1 1.098179669 0.545497436

g
x2 0.552682233 0.014256628
x3 0.566938860 0.000204391
x4 0.567143251 0.394782 × 10−7

l
x5 0.567143290

(a) Através dos valores da tabela, determine, aproximadamente, a


UA ordem de convergência do método. Justifique a resposta dada;
(b) Quantos algarismos significativos tem garantidos para a aproxi-
mação x3 ? Justifique;

4. Seja P , de coordenadas (xP , yP ), o ponto de intersecção dos gráficos


das funções

y = f (x) = ex − 2 e y = g (x) = ln (x + 2) .
T-
(a) Determine qual das expressões se deve usar para obter yP , conhe-
cido xP , e qual a precisão que deve ter xP para que o erro de yP
seja inferior a 0.5 × 10−4
(b) Usando o método de Newton, determina xP com a precisão exi-
FC

gida e calcule yP .

Capítulo 2
3. Sistemas de Equações

g
Lineares

l
UA
Neste capítulo vamos tratar da resolução numérica de sistemas de n equações
lineares a n incógnitas, n ≥ 2. Teremos assim necessidade de medir vectores
e matrizes. Essa medição faz-se através das normas vectoriais e matriciais,
introduzidas na secção seguinte.

3.1 Normas vectoriais e matriciais


T-
FC

Definição 1.

Chama-se norma vectorial a uma aplicação ∥ · ∥ : Rn → R+


0 que
verifica as seguintes propriedades:

i) ∥x∥ ≥ 0, ∀x ∈ Rn ; ∥x∥ = 0 ⇔ x = 0;

ii) ∥α x∥ = |α| ∥x∥, ∀x ∈ Rn , ∀α ∈ R;

iii) ∥x + y∥ ≤ ∥x∥ + ∥y∥, ∀x, y ∈ Rn .

45
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 46

g
As normas vectoriais mais utilizadas são as seguintes:

(i) A norma infinito

l
∥x∥∞ = max |xi | = max {|x1 | , |x2 | , . . . , |xn |} .

UA
(ii) A norma-1
i=1,...,n

∥x∥1 =

n

i=1
|xi | = |x1 | + |x2 | + · · · + |xn | .

(iii) A norma-2 ou norma euclidiana


v
u n √
u∑
∥x∥2 = t |xi |2 = |x1 |2 + |x2 |2 + · · · + |xn |2 .
T-
i=1

Estas normas são casos particulares das normas-p (com p ≥ 1):


v ( n )1/p
u n
u∑ ∑
∥x∥p = tp p
|xi | = |xi |p
.
FC

i=1 i=1

Embora, dependendo do problema a resolver, possa haver preferência por


uma ou outra norma, elas são todas equivalentes.

Definição 2.

Duas normas ∥ · ∥ e ∥ · ∥∗ dizem-se equivalentes, se existirem cons-


tantes positivas C1 e C2 tais que, para todo x ∈ Rn ,

C1 ∥x∥ ≤ ∥x∥∗ ≤ C2 ∥x∥.

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 47

A equivalência entre as normas-p pode ser observada, graficamente, no


exemplo seguinte.

Exemplo 1. Equivalência de normas através da representação gráfica do con-


{ }
junto x ∈ R2 : ∥x∥ = 1 .

• Norma-1: Considere-se x = (x1 , x2 ) ∈ R2 . Então o conjunto

g
{x : |x1 | + |x2 | = 1}

l
possui a seguinte representação gráfica
x2

UA −1
1

1
x1

−1

• Norma-2: O conjunto
{ √ }
T-
2 2
x : x1 + x2 = 1

tem a representação gráfica


x2
1
FC

−1 1
x1

−1

• Norma-∞: O conjunto

{x : max {|x1 | , |x2 |} = 1}

é representado graficamente por

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 48

x2
1

−1 1
x1

g
−1

• Juntando as três representações no mesmo gráfico tem-se

x2

l
1

UA −1

−1
1
x1

A definição de norma matricial engloba uma quarta proriedade que tem


T-
em consideração a multiplicação de matrizes.

Definição 3.

Chama-se norma matricial a uma aplicação ∥ · ∥ : Mm,n (R) → R+


0
FC

que verifica as seguintes propriedades:

i) ∥A∥ ≥ 0, ∀A ∈ Mm,n (R); ∥A∥ = 0 ⇔ A = 0;

ii) ∥αA∥ = |α| ∥A∥, ∀A ∈ Mm,n (R) , ∀α ∈ R;

iii) ∥A + B∥ ≤ ∥A∥ + ∥B∥, ∀A, B ∈ Mm,n (R);

iv) ∥AB∥ ≤ ∥A∥∥B∥, ∀A, B ∈ Mm,n (R).

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 49

Dada uma norma vectorial podemos sempre construir uma norma matri-
cial, através da aplicação do seguinte teorema.

Teorema 1.

Seja ∥ · ∥ uma norma vectorial em Rn e A ∈ Mm,n (R). Então

g
∥Ax∥
∥A∥ = sup .
x̸=0 ∥x∥

é uma norma matricial, que se designa por norma matricial natural,

l
induzida pela norma vectorial.

UA
Note-se, todavia, que a expressão que define a norma induzida não é
passível de ser utilizada para efectuar cálculos. Isso deve-se ao facto de o
conjunto de teste (x ̸= 0) ser infinito. É possível mostrar que, para as normas
1, 2 e infinito se tem:

m
• ∥A∥1 = max |aij |, que corresponde ao valor máximo das somas
j=1,...,n
i=1
T-
dos valores absolutos dos elementos, por colunas;
√ ( )
• ∥A∥2 = ρ (AT A), onde ρ AT A denota o maior dos valores próprios
da matriz AT A;

n
• ∥A∥∞ = max |aij |, que corresponde ao valor máximo das somas
FC

i=1,...,m
j=1
dos valores absolutos dos elementos, por linhas;

e são estas as expressões que se utilizam para o cálculo destas normas.

Exemplo 2.
Seja [ ]
6 −2
A= .
−6 −9

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 50

Então ∥A∥1 = max{6 + 6, 2 + 9} = 12 e ∥A∥∞ = max{6 + 2, 6 + 9} = 15.


Como o maior dos dois valores próprios de AT A é 121, tem-se então que
∥A∥2 = 11.

Definição 4.

g
A norma de Frobenius de uma matriz A ∈ Mm,n (R) é definida por
 1/2
∑m ∑
n
∥A∥F =  |aij |2  .

l
i=1 j=1

UA
A definição de normas equivalentes permanece válida se, em vez de vecto-
res, considerarmos matrizes. E todas as normas matriciais são equivalentes,
em virtude do seguinte teorema:
Teorema 2.

Todas as normas definidas num espaço vectorial de dimensão finita


T-
são equivalentes.

Utilizaremos ainda a noção de compatibilidade entre normas vectoriais e


matriciais.
FC

Definição 5.

Uma norma matricial ∥·∥∗ e uma norma vectorial ∥·∥ são compatíveis
se
∥Ax∥ ≤ ∥A∥∗ ∥x∥.

Pela própria definição, a norma-p matricial é compatível com a norma-p


vectorial, para qualquer p ≥ 1. Prova-se que a norma de Frobenius é compa-
tível com a norma-2 vectorial (exercício).

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 51

Definição 6.

O erro relativo de um vector não nulo x, eR (x) é dado por

∥e(x)∥
eR (x) = .
∥x∥

g
3.2 Resolução de sistemas de equações lineares

l
3.2.1 Introdução

UA
Pretende-se obter a solução para um sistema de equações lineares, cuja
forma geral é 








a11 x1 + a12 x2 + · · · + a1n xn = b1
 a21 x1 + a22 x2 + · · · + a2n xn = b2
..



 .




am1 x1 + am2 x2 + · · · + amn xn = bm
T-
onde

xj , j = 1, . . . , n são as incógnitas,
aij , i = 1, . . . , m, j = 1, . . . , n são os coeficientes e
bi , i = 1, . . . , m são os segundos membros do sistema de equações.
FC

O sistema pode igualmente ser escrito na forma matricial

Ax = b

onde,
     
 a11 a12 · · · a1n   x1   b1 
     
     
 a21 a22 · · · a2n   x2   b2 
A=
 .. ..
,
..  x= 
 ..  e b= 
 ..  .
 . ..
 . . . 

 . 
 
 . 
 
     
am1 am2 · · · amn xn bm

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 52

Os métodos de resolução de sistemas de equações lineares dividem-se em


dois grupos:

• MÉTODOS DIRECTOS

ë Permitem a obtenção da solução exacta depois de um número


finito de passos.

g
ë Em precisão finita, permitem apenas a obtenção de uma aproxi-
mação para a solução.

l
• MÉTODOS ITERATIVOS

UA ë A solução é definida como um limite de uma sucessão de vectores.

ë Na prática, calcula-se apenas um número finito de vectores da


sucessão, ou seja, calcula-se um número finito de iterações.

3.2.2 O método de eliminação de Gauss


T-
Supomos agora que m = n e que os sistemas de equações lineares são
determinados, isto é, têm uma única solução que, como sabemos, é dada por
x = A−1 b em que A−1 é a inversa de A.
O método de eliminação de Gauss elimina, sucessivamente, a incógnita
xk das últimas n − k equações, k = 1, · · · , n − 1. Ao fazê-lo, transforma
FC

o sistema de equações lineares original Ax = b, num sistema equivalente,


e = b,
Ax e onde A
e é uma matriz triangular.

Este procedimento consiste numa sequência de operações elementares.


São operações elementares:

• a permutação de duas linhas da matriz;

• a multiplicação de uma linha por um escalar não nulo;

• a soma de uma linha com o produto de outra linha por um escalar não
nulo.

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 53

A cada sistema de equações lineares Ax = b pode associar-se a sua matriz


ampliada  
 a11 a12 · · · a1n b1 
 
 
 a 21 a 22 · · · a2n b 2
′ 
A = . 
 .. .. .. .. .. 
 . . . .

g
 
an1 an2 · · · ann bn

A matriz que se obtém da matriz ampliada do sistema de equações line-

l
ares Ax = b, por aplicação das operações elementares, é a matriz ampliada
de um sistema de equações lineares equivalente ao sistema original.

UA
O objectivo do método de eliminação de Gauss é obter uma matriz
(ampliada), a partir da matriz ampliada do sistema Ax = b:
[ ]
OPERAÇÕES ELEMENTARES
A | b −−−−−−−−−−−−−−−−→ A

e é triangular superior.
[
e
e|b
]

em que A
Como exemplo, resolvamos então o sistema de equações lineares


T-

 x1 + 2x2 − x3 = 3


 2x1 + x2 − 2x3 = 3



−3x + x + x = −6
1 2 3

com o método de eliminação de Gauss.


FC

Na notação matricial tem-se

Ax = b

onde,      
 1 2 −1 x1  3
     
A=
 2 1 −2,
 x= 
x2  e b= 
 3 .
     
−3 1 1 x3 −6

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 54

Sendo a matriz ampliada associada dada por


   
a a a
 11 12 13 1   b 1 2 −1 3 
   
A =
′  
a21 a22 a23 b2   2 1 −2 3 
= 
   
a31 a32 a33 b3 −3 1 1 −6

l g
UA
T-
.

O pivot será então a11 = 1 e os multiplicadores serão:


FC

a21
m21 = = 2,
a11
a31
m31 = = −3.
a11
A realização das operações elementares:

L2 ← L2 − m21 L1 = L2 − 2L1 ,
L3 ← L3 − m31 L1 = L3 + 3L1 ,

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 55

permite obter,
[ ]
[A | b] = A | b
(0) (0)

   
 1 2 −1 3   1 2 −1 3 
   
=  −
− −−−− −−→ 
 2 1 −2 3  L2 ←L2 −2L1 0 −3 0 −3

  L3 ←L3 +3L1  

g
−3 1 1 −6 0 7 −2 3
[ ]
= A(1) | b(1)

l
ETAPA 2: Agora o pivot está na posição (2, 2) (segundo elemento da
diagonal principal). Admitindo que é diferente de zero, determina-se o

UA
multiplicador que permita anular a entrada abaixo da posição (2, 2) na co-
luna 2.
(1)
O pivot é então a22 = −3 e o multiplicador é

m32 =
(1)
a32
(1)
a22
7
=− .
3

A realização da operação elementar:


7
L3 ← L3 − m32 L2 = L3 + L2 ,
T-
3
permite obter
   
1 2 −1 3 1 2 −1 3
[ ] 






A |b
(1) (1)
= 0 −3 0 −3 −−−−−−−−→ 0 −3 0 −3
  

  L3 ←L3 + 73 L2  
FC

0 7 −2 3 0 0 −2 −4
[ ]
= A(2) | b(2)

Obteve-se assim um sistema de equações lineares equivalente ao sistema


original, mas onde a matriz do sistema é triangular superior:
    
 1 2 −1  x1   3 
    
0 −3 0  x  = −3 .
   2  
    
0 0 −2 x3 −4

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 56

A resolução do sistema é feita por substituição ascendente, ou seja, deter-


minando primeiro x3 = 2, depois x2 = 1 e finalmente x1 = 3.
De uma forma geral, pode descrever-se a etapa k, k = 1, 2, ..., n − 1 do
método de eliminação de Gauss no processo de resolução do sistema Ax = b:
[ ] [ ] [ ]
(0) ETAPA 1
A|b = A |b (0)
−−−−−→ A | b
(1) (1)

→ ···

g
[ ] [ ]
(k−1) ETAPA k
··· → A (k−1)
|b −−−−−→ A | b
(k) (k)

− ···
[ ] [ ]
· · · → A(n−1) | b(n−1) = A e
e|b

l
da seguinte forma.
UA
ETAPA k: O elemento pivot é o que está na posição (k, k), admitindo que
é diferente de zero. Determina-se os multiplicadores que permitam anular
(k−1)
as entradas abaixo da posição (k, k) na coluna k. O pivot é então akk (̸= 0)
e os multiplicadores:
(k−1)
aik
mik = (k−1)
, i = k + 1, . . . , n.
akk
T-
A realização das operações elementares:
(k) (k−1) (k−1)
Li ← Li − mik Lk , i = k + 1, . . . , n,

sobre
 
FC

(0) (0) (0) (0) (0) (0) (0)


··· ···
a11 a12 a1,k−1 a1k a1,k+1 a1n b1

 
 0
(1)
a22 ···
(1)
a2,k−1
(1)
a2k
(1)
a2,k+1 ···
(1)
a2n
(1)
b2 
 
 .. .. .. .. .. .. .. .. .. 
 . . . . . . . . . 
 
 
 ···
(k−2) (k−2) (k−2)
···
(k−2) (k−2) 
 0 0 ak−1,k−1 ak−1,k ak−1,k+1 ak−1,n bk−1 
 
 ···
(k−1) (k−1) (k−1)
···
(k−1) (k−1) 
 0 0 0 akk akk ak,k+1 akn bk 
 
 ···
(k−1) (k−1)
···
(k−1) (k−1) 
 0 0 0 ak+1,k ak+1,k+1 ak+1,n bk+1 
 .. 
 .. .. .. .. .. .. .. .. 
 . . . . . . . . . 
 
(k−1) (k−1) (k−1) (k−1)
0 0 ··· 0 ank an,k+1 ··· ann bn

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 57

permite obter:
 
(0) (0) (0) (0) (0) (0) (0)
a11 a12 · · · a1,k−1 a1k a1,k+1 ··· a1n b1 
 
 (1) 
 0 a(1) · · · a(1) (1)
a2k
(1)
a2,k+1 ···
(1)
a2n b2 
 22 2,k−1 
 
 .. .. .. .. .. .. .. .. .. 
 . . . . . . . . . 
 

g
 
 (k−2) 
 0 (k−2) (k−2) (k−2)
0 · · · ak−1,k−1 ak−1,k ak−1,k+1
(k−2)
· · · ak−1,n bk−1 
 
 
 (k−1) 
 0 0 ··· 0
(k−1)
akk
(k−1)
ak,k+1 · · · akn
(k−1)
bk 
 

l
 
 (k) (k) (k) 
 0 0 ··· 0 0 ak+1,k+1 · · · ak+1,n bk+1 
 
UA
 .
 .
 .


0
..
.
..

0 ···
.

0
..
.
..

0
.
(k)
..
.

an,k+1
..

···
.

Existem casos, no entanto, que merecem um cuidado suplementar.


..
.
(k)
ann bn
.. 
. 
(k)


ë O elemento pivot é nulo: neste caso deve efectuar-se uma troca de


linhas (a linha do pivot com uma linha em posição inferior na matriz),
T-
por forma a obter um elemento pivot diferente de zero.

ë Em precisão finita, o pivot é muito pequeno (próximo ou inferior à


precisão da máquina): neste caso os multiplicadores
(k−1)
aik
mik = , i = k + 1, . . . , n,
FC

(k−1)
akk

são muito grandes e, consequentemente, também os elementos da ma-


triz actualizados, tornando o método instável.

3.2.3 A eliminação de Gauss, com pivotação (parcial)


Definição 7.

• A eliminação de Gauss, sem pivotação, não é estável.

• A eliminação de Gauss, com pivotação, é estável.

3.2.4 A decomposição LU

A decomposição A = LU da matriz A é obtida com base nas etapas descritas


no método de eliminação de Gauss.

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 59

(i) A matriz U é triangular superior e resulta da aplicação das operações


elementares sobre as linhas da matriz A;

(ii) a matriz L é triangular inferior com elementos diagonais iguais a 1


(ℓkk = 1, k = 1, 2, . . . , n) e tal que ℓkj = mkj , k > j, os multiplicado-
res de Gauss.

g
As etapas da eliminação podem ser descritas por multiplicação de ma-
trizes elementares à esquerda da matriz A. No que se segue utilizar-se-á
a notação Ekj para fazer referência à matriz elementar que difere apenas da

l
matriz identidade na entrada (k, j), a qual é igual a −mkj , com k > j, ou
seja,
UA 



1
0
.
 ..

0 ···

1 ···
.. . .
. .
0

0
..
.
··· 0 ···

··· 0 ···
. . .. . .
. . .
0

0
.. 
.





 
 
0 0 ··· 1 ··· 0 ··· 0
Ekj =
 .. .. . . .. .. 

. . . .. . .
 . . . . . . . 
T-
 
 
0 0 · · · −mkj ··· 1 ··· 0
 
 .. .. . . .. . . .. . . .. 
. . . . . . . .
 
 
0 0 ··· 0 ··· 0 ··· 1
FC

Verificamos então que o resultado da multiplicação Ekj A equivale a dizer


que se multiplicou a linha j (da matriz A) por mkj e se subtraiu o resultado
à linha k. Todas as etapas da eliminação podem portanto ser descritas por
multiplicação à esquerda da matriz A por matrizes elementares Ekj , k > j.
Para a primeira etapa são necessárias n−1 matrizes Ekj e é fácil de verifi-
car que a etapa completa, que requer n − 1 matrizes elementares Ekj , k > j,
se traduz pela multiplicação, à esquerda, da matriz A, pela matriz

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 60

 
 1 0 0 ··· 0
 
 −m 1 0 ··· 0
 21 
 
 
E1 = En1 · · · E31 E21 =  −m31 0 1 ··· 0 .
 
 . .. .. . . 
.. 
 .. . . . .

g
 
−mn1 0 0 ··· 1

Isto é,

l
A(1) = E1 A(0) = E1 A.

UA
Procedendo da mesma forma para as etapas 2, 3, . . . , n − 1 tem-se que:

U = A(n−1) = En−1 · · · E2 E1 A(0) = En−1 · · · E2 E1 A.

Deste modo,

A = E−1 −1 −1
1 E2 · · · En−1 U

= (En1 · · · E21 )−1 (En2 · · · E32 )−1 · · · E−1


n,n−1 U
( )
= E−1 −1 −1 −1 −1
21 · · · En1 E32 · · · En2 · · · En,n−1 U.
T-
Notando que
 
1 0 ··· 0 · · · 0 · · · 0
 
 
0 1 ··· 0 · · · 0 · · · 0
 
FC

. .. . . .. . . .. . . .. 
 .. . . . . . . .
 
 
 
0 0 ··· 1 · · · 0 · · · 0
E−1 =
 ..
 , k > j,
kj
. .. . . .. . . .. . . .. 
 . . . . . . .

 
 
0 0 · · · mkj · · · 1 · · · 0
 
 .. .. . . .. . . .. . . .. 
. . . . . . . .
 
 
0 0 ··· 0 ··· 0 ··· 1

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 61

tem-se que
 
 1 0 0 · · · 0
 
m 1 0 · · · 0
 21 
 
 
E−1 −1 −1 −1
1 = E21 E31 · · · En1 =  m31 0 1 · · · 0 ,
 
 . .. .. . . .. 

g
 .. . . . .
 
 
mn1 0 0 ··· 1

l
e  
 1 0 0 ··· 0 0
UA E−1 −1 −1
1 E2 · · · En−1

m
 21



 .
 ..


1
= L =  m31 m32
.
..
0

1
..
.

mn1 mn2 mn3


···

···
..
.

· · · mn,n−1
0

0
..
.
0

0

1
.





.. 


.

Conclui-se assim que


  
T-
 1 0 0 ··· 0 0 a(0) a(0) a(0) ···
(0)
a1,n−1
(0)
a1n 
  11 12 13
 

 m21 0  (1) 
··· a2n 
(1) (1) (1)
 1 0 0   0 a22 a23 ··· a2,n−1 
  
 
 m (2) 
 m32 1 ··· 0 0  0
(2)
0 a33 ···
(2)
a3,n−1 a3n 
 
31
A=
 .   ≡ LU.
 .. . .. .. .. ..   .. .. .. .. .. .. 

.. . . . . . . . . . . 
  
  
FC

 
 0 (n−2) (n−2) 
mn−1,1 mn−1,2 mn−1,3 ··· 1 0  0 0 · · · an−1,n−1 an−1,n 
  
  (n−1)

mn1 mn2 mn3 · · · mn,n−1 1 0 0 0 ··· 0 ann

Obtida a decomposição LU da matriz A, a resolução de um sistema de


equações lineares Ax = b resume-se à resolução de dois sistemas triangula-
res. Como
A = LU,

então
Ax = b ⇔ LUx = b.

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 62

A realização da mudança de variável y = Ux, permite então que a resolu-


ção do sistema se processe através da resolução de dois sistemas triangulares,



 Ly = b, (no sentido descendente)


 Ux = y, (no sentido ascendente).

g
Observação.

Na decomposição LU não há trocas de linhas.

l
UA
3.3 Condicionamento de sistemas de equações linea-
res
Para perceber melhor o que se pretende com o estudo do condicionamento
e estabilidade de um sistema de equações lineares, considere-se o sistema
{
x1 − 2x2 = −19
0.54x1 − x2 = −9
T-
cuja solução é
x = (x1 , x2 ) = (12.5, 15.75).
Introduzindo uma pequena perturbação nas entradas da matriz do sis-
tema, {
x1 − 2x2 = −19
FC

0.56x1 − x2 = −9
obter-se-á uma solução muito diferente,

x = (x1 , x2 ) = (8.333(3), 13.666(6)).

A situação aqui referida é uma consequência do mau condicionamento


do sistema.
Deve notar-se que, devido à introdução de erros de arredondamento no
processo de resolução, regra geral, o sistema a resolver não é exactamente
Ax = b, mas sim um sistema ligeiramente diferente ou perturbado.

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 63

Definição 8.

O número de condição de uma matriz A, K (A), para a resolução de


sistemas lineares, é


 ∥A∥∥A−1 ∥, se A−1 existe,
K (A) =

g

 ∞, se A−1 não existe.

l
• Matrizes com um número de condição elevado dizem-se mal condi-
cionadas;
UA
• Matrizes com um número de condição pequeno dizem-se bem con-
dicionadas.

3.3.1 Perturbações no segundo membro de Ax = b

O teorema que segue estabelece uma relação que permite relacionar o erro
propagado na resolução numérica de sistemas lineares.
T-
Teorema 3.

Sejam A invertível, b ̸= 0 e A (x + δx) = b + δb. Então

∥δx∥ ∥δb∥
≤ K (A) .
∥x∥ ∥b∥
FC

Vemos então que:

• O efeito de propagação dos erros do segundo membro é determi-


nado pela matriz do sistema;

• Quanto maior for o valor do número de condição da matriz A, K (A),


mais sensível é o sistema a perturbações do segundo membro.

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 64

Vejamos como demosntrar o resultado expresso no teorema. Considere-


mos então um sistema de equações lineares, o qual sofreu uma perturbação
no segundo membro b. Como

A (x + δx) = b + δb,

e Ax = b, então

g
Aδx = δb.

Como se assume que o sistema de equações é determinado, A é invertí-

l
vel, o que permite concluir que

δx = A−1 δb
UA
e, aplicando normas a ambos os membros da relação,

∥δx∥ = ∥A−1 δb∥ ≤ ∥A−1 ∥∥δb∥.

Desta forma, da relação obtida anteriormente, tem-se


∥δx∥ ∥δb∥
≤ ∥A−1 ∥ .
∥x∥ ∥x∥
T-
Por outro lado, aplicando normas a Ax = b, verifica-se que

∥b∥ = ∥Ax∥ ≤ ∥A∥∥x∥,

o que permite concluir que


∥b∥ ∥A∥
FC

1
≤ ∥x∥ ⇔ ≤ .
∥A∥ ∥x∥ ∥b∥
Consequentemente,
∥δx∥ ∥δb∥ ∥δb∥
≤ ∥A−1 ∥ ≤ ∥A∥∥A−1 ∥ .
∥x∥ ∥x∥ ∥b∥

3.4 Decomposição de Cholesky


Vamos ver como se resolve, numericamente, um sistema Ax = b quando a
matriz do sistema é simétrica e definida positiva.

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 65

Definição 9.

Uma matriz A ∈ Mn (R) diz-se definida positiva se

xT Ax > 0,

para todo o vector não nulo x ∈ Rn .

g
Exemplo 3. A matriz  

l
 2 1 
A= 

UA
é definida positiva.
1 3

Com efeito xT Ax = 2x21 + 2x1 x2 + 3x22 ≥ 0. Como xT Ax = 0 implica


x1 = 0 e x2 = 0, A é definida positiva. △

Exemplo 4. A matriz  
 2 1 
A= 
1 −3
T-
não é definida positiva.
Tem-se xT Ax = 2x21 + 2x1 x2 − 3x22 < 0 para, por exemplo, x1 = 0 e
x2 = 1. △
FC

Exemplo 5.
Se f = f (x1 , x2 ) tem um mínimo em (a, b) então a matriz Hessiana de
f , em (a, b), é definida positiva. △

Teorema 4.

A matriz simétrica A é definida positiva se e só se A pode ser de-


composta na forma A = LLT , onde L é uma matriz triangular infe-
rior com todas as entradas diagonais positivas.

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 66

A decomposição A = LLT tem o nome de decomposição de Cholesky.


Vejamos, com um exemplo, como determinar a decomposição de Cho-
lesky de uma matriz A simétrica e definida positiva, vejamos, no caso de
uma matriz 3 × 3.

Exemplo 6. A decomposição de Cholesky da matriz definida positiva

g
 
4 −1 1 
 
A= −1 4.25 2.75 .

 

l
1 2.75 3.5

UA
Para obter a decomposição considere-se uma matriz L, triangular inferior,
com a mesma dimensão da matriz A

L=

ℓ11 0

0




ℓ11 ℓ21 ℓ31 




ℓ21 ℓ22 0  ⇒ L =  0 ℓ22 ℓ32 
T
   
ℓ31 ℓ32 ℓ33 0 0 ℓ33
T-
Desta forma,
 
ℓ 2 ℓ ℓ ℓ ℓ
 11 21 11 31 11 
 
LL = 
T
ℓ21 ℓ11
2
ℓ21 + ℓ222 ℓ31 ℓ21 + ℓ32 ℓ22 

 
FC

2 2
ℓ31 ℓ11 ℓ31 ℓ21 + ℓ32 ℓ22 ℓ31 + ℓ32 + ℓ332

 
 4 −1 1 
 
= A = −1 4.25 2.75

.
 
1 2.75 3.5

Notando que A é uma matriz simétrica, assim como LLT , então basta
resolver as equações que resultam da igualdade entre as entradas que se en-
contram na diagonal principal e aquelas que se encontram abaixo (ou acima)

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 67

da mesma. Deste modo,


 
  √

 ℓ211 = a11 
 ℓ11 = + a11

 


 


 
 a21

 ℓ21 ℓ11 = a21 
 ℓ21 =

 


 
 ℓ11

 


 
 a31
 ℓ31 ℓ11  ℓ31 =

g
= a31
⇔ ℓ11

 
 √

 ℓ221 + ℓ222 = a22 
 ℓ = + a22 − ℓ221

 

22

 


 
 a32 − ℓ31 ℓ21
 

l

 ℓ31 ℓ21 + ℓ32 ℓ22 = a32 
 ℓ32 =

 
 ℓ22

 


 
 √
UA ℓ2 + ℓ2 + ℓ2 = a
31

Desta forma,
32


33


33

ℓ11 = + a11 = 4 = 2,

ℓ21 =
a21
=
−1
= −0.5,
 ℓ
33= + a − ℓ2 − ℓ233 31 32

ℓ11 2
a31 1
ℓ31 = = = 0.5,
ℓ11 2
√ √ √
T-
ℓ22 = + a22 − ℓ221 = 4.25 − (−0.5)2 = 4 = 2,
a32 − ℓ31 ℓ21 2.75 − 0.5 × (−0.5)
ℓ32 = = = 1.5,
ℓ 2
√ 22 √
ℓ33 = + a33 − ℓ231 − ℓ232 = + 3.5 − 0.52 − 1.52 = 1,
FC

o que permite concluir que


   
ℓ11 0 0  2 0 0
   
L=  
ℓ21 ℓ22 0  = −0.5 2 0 .

   
ℓ31 ℓ32 ℓ33 0.5 1.5 1

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 68

É possível deduzir as fórmulas gerais do algoritmo,


 √

 ∑ 2
k−1

 ℓ = + a − ℓkj


kk kk

 j=1

, k = 1, 2, . . . , n; i = k + 1, . . . , n.

 ∑
k−1

 a − ℓ ℓ


ik ij kj

 ℓik =
j=1

g
ℓkk

Obtida a decomposição de Cholesky LLT para a matriz A, a resolução do

l
sistema de equações Ax = b é feita através da resolução de um sistema de
equações triangular inferior Ly = b e de outro triangular superior LT x = y.
UA
3.5 Contagem de operações
Um dos critérios que influi fortemente na escolha de um algoritmo é a sua
complexidade. Nesta disciplina limitar-nos-emos a contar as operações ne-
cessárias para a realização de um dado algoritmo. Quanto às operações con-
sideramos apenas as multiplicações e as adições, sendo que as divisões são
contabilizadas como multiplicações e as subtracções como adições. Vamos
T-
analisar então o custo computacional (número de operações) inerente à re-
solução do sistema Ax = b através dos métodos estudados: eliminação de
Gauss (ou utilização da decomposição LU ) e utilização da decomposição de
Cholesky.
FC

Para a contagem das operações iremos precisar das fórmulas seguintes:

Teorema 5.


m
m(m + 1)
i= ,
2
i=1
e

m
m(m + 1)(2m + 1)
i2 = .
6
i=1

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 69

3.5.1 O método de eliminação de Gauss

A aplicação do método de eliminação de Gauss à resolução de um sistema


de equações lineares, cuja matriz é de ordem n, pode ser dividido em dois
procedimentos: o da eliminação e o da resolução do sistema triangular
superior.

g
Comecemos pela eliminação. Para determinar o número total de ope-
rações realizadas, deve-se analisar o que se passa em cada uma das n − 1
etapas.

l
Na etapa 1 são necessários n − 1 multiplicadores:

UA mi1 =

Temos (n − 1) multiplicações.
(0)
ai1
(0)
a11
, i = 2, 3, . . . , n.

(1) (0) (0)


aij = aij − mi1 a1j , i, j = 2, · · · , n.
T-
e os elementos de b através de
(1) (0) (0)
bi = bi − mi1 b1 , i = 2, · · · , n.
FC
bk − uk,k+1 xk+1 − · · · − ukn xn
xk = , k = n, n − 1, . . . , 2, 1,
ukk
o que implica a realização de n − k + 1 multiplicações e n − k adições.
O que permite concluir que, no procedimento referente à resolução do
sistema triangular superior se tenha:

NÚMERO TOTAL DE MULTIPLICAÇÕES

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 72


n ∑
n−1 ∑
n−1 ∑
n ( )
n2 + n n2
1+ (n − k) = n + i= i= =O
2 2
k=1 k=1 i=1 i=1

NÚMERO TOTAL DE ADIÇÕES


n−1 ∑
n−1 ( )
n2 − n n2
(n − k) = i= =O

g
2 2
k=1 i=1

No conjunto dos dois procedimentos, eliminação e resolução do sis-


tema triangular superior tem-se então que:

l
NÚMERO TOTAL DE MULTIPLICAÇÕES
( )
UA 2n3 + 3n2 − 5n n2 + n
6
+

n3 − n n2 − n
+
2
=
2n3 + 6n2 − 2n
6
=O

NÚMERO TOTAL DE ADIÇÕES

=
2n3 + 3n2 − 5n
=O
(
n3
)
n3
3

3 2 6 3
T-
.

3.5.2 A decomposição LU
FC

O processo de obtenção da decomposição LU é, essencialmente, o mesmo


que o da eliminação de Gauss e requer um número de operações da ordem
de n3 /3.

3.5.3 A decomposição de Cholesky

Para fazermos a contagem de multiplicações e adições necessárias para se


obter a decomposição de Cholesky, A = LLT , de uma matriz simétrica e

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 73

definida positiva, relembremos as fórmulas que nos dão os elementos de L:


 √

 ∑ 2
k−1

 ℓ = + a − ℓkj


kk kk

 j=1

, k = 1, 2, . . . , n, i = k + 1, . . . , n.

 ∑
k−1

 aik − ℓij ℓkj



 ℓik =
j=1

g
ℓkk
Assim, para cada elemento fora da diagonal de L, precisamos de k multipli-
cações e k − 1 de adições. Fazendo a soma obtemos

l
TOTAL DE MULTIPLICAÇÕES:

n ∑
n ∑
n

UA k=1 i=k+1
k=

=O
k=1
k(n − k)

n2 (n
+ 1) n(n + 1)(2n + 1)
( 23 )
n
6

6

e de modo análogo para as adições.


Quanto aos elementos da diagonal, precisamos, para cada um deles, de
T-
k−1 multiplicações e de k−1 adições. O total é da ordem de n2 /2 (exercício).
FC

3.6 Método do resíduo (ou refinamento iterativo)


O método do resíduo, ou refinamento iterativo, é um procedimento para me-
lhorar uma solução aproximada do sistema Ax = b. Não se trata, portanto,

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 74

de um método para resolver o sistema, como os métodos anteriormente es-


tudados.
Seja então b
x ∈ Rn uma solução aproximada da solução de Ax = b, obtida
através de um dos métodos das secções anteriores. Seja

e = x−b
x

g
o erro em bx.
A relação anterior também pode ser escrita na forma x = b
x+e, o que mos-
tra que se, porventura, pudéssemos determinar o erro e, bastaria adicioná-lo

l
abx para obtermos a solução do sistema.
O método do resíduo consiste então em determinar uma aproximação
UA
para e e adicicioná-la a b
x, assim obtendo uma melhor aproximação:

w≈b

Comecemos então pela definição:


x + e.

Definição 10.

Chama-se resíduo associado a b


x, solução aproximada de Ax = b, ao
T-
vector
r = b − Abx.

A aproximação do erro, b
e, pode então ser obtida através do seguinte
FC

teorema:
Teorema 6.

Seja A ∈ Mn (R), não singular. Se r é o resíduo associado à solução


aproximada b
x, então
Ae = r.

O teorema prova-se de forma muito simples. Se e = x − b


x, então

Ae = A (x − b
x) = Ax − Ab
x = b − Ab
x = r.

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 75

Obtida a aproximação (melhorada) w, esta pode também ser melhorada


através do mesmo procedimento. Concluímos assim que se x(0) for a primeira
aproximação que se obtém para a solução (aproximação inicial), numa arit-
mética finita de m algarismos, e se

r(0) = b − Ax(0)

g
for o resíduo correspondente, então pode-se calcular uma sequência de vec-
tores melhorados x(k) , k = 1, 2, . . ., aplicando o seguinte algoritmo:

l
Input: A, b, Tolerância ε, maxiter e aproximação inicial x(0) .
Output: Aproximação x(ℓ) ≈ x, tal que ∥r(ℓ) ∥ ≤ ε.

1
2
3
4
5
6
7
UA
for k ← 1 to maxiter do
Calcular r(k) = b − Ax(k)
if ∥r(k) ∥ ≤ ε then

end
STOP
(em precisão dupla)

Resolver o sistema Ae(k) = r(k) ,


Obter x(k+1) = x(k) + e(k)
(em precisão simples)
(em precisão simples)
8 end

ou, em alternativa,
T-
Input: A, b, Tolerância ε, maxiter e aproximação inicial x(0) .
∥x(ℓ) − x(ℓ−1) ∥
Output: Aproximação x(ℓ) ≈ x, tal que ≤ ε.
∥x(ℓ) ∥

1 for k ← 1 to maxiter do
2 Calcular r(k) = b − Ax(k) (em precisão dupla)
3 Resolver o sistema Ae(k) = r(k) , (em precisão simples)
FC

4 Obter x(k+1) = x(k) + e(k) (em precisão simples)


∥e(k) ∥
5 if ≤ ε then
∥x(k+1) ∥
6 STOP
7 end
8 end

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 76

Observação.

(i) Todos os sistemas de equações lineares envolvidos devem ser


resolvidos com o mesmo método.

(ii) Devido à forte possibilidade de ocorrência de cancelamento


subtractivo, o refinamento iterativo melhora a solução quando

g
os resíduos são calculados numa aritmética com maior pre-
cisão do que aquela que é aplicada aos restantes cálculos. Por
isso, calculam-se os resíduos em precisão dupla.

l
(iii) Se

UA K (A)
∥r∥
∥b∥
for muito grande, o melhoramento pode não acontecer.

3.7 Sistemas sobredeterminados


Até aqui temos considerado sistemas de equações lineares possíveis e deter-
T-
minados, isto é, sistemas que têm uma única solução. Nesta secção ocupar-
nos-emos de sistemas de equações lineares em que o número de condições
(as equações) que ligam as incógnitas é superior ao número de incógnitas.
Portanto, na forma matricial temos Ax = b, em que A ∈ Mm,n (R), m > n e
b ∈ Rm , ou seja, a matriz do sistema tem mais linhas do que colunas. Tais
FC

sistemas dizem-se sobredeterminados e, em geral, não têm solução.

Exemplo 7. Determinar uma recta que passa por três pontos.


Sejam dados os pontos (x1 , y1 ), (x2 , y2 ) e (x3 , y3 ) e consideremos a equa-
ção da recta, y = mx+p. Temos então três condições (a recta passa por cada
um dos três pontos) e duas incógnitas: o declive m e a ordenada na origem
p. Na forma matricial o sistema é o seguinte:

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 77

   
 
x1 1 y1 
  m  
x 1   = y  .
 2   2
  p  
x3 1 y3

g
É claro que se os pontos forem não colineares (caso geral) o problema
não tem solução. Neste caso podemos procurar uma recta y = mx b + pb que
minimize a distância entre a recta e os pontos. Diremos, num sentido a
b pb]T é “solução” de Ax = b.
precisar, que [m △

l
UA
3.8 A solução de Ax = b no sentido dos mínimos qua-
drados
Seja r(x) = b−Ax o resíduo de x. Consideremos então a “solução” de Ax = b
dada pela seguinte definição:

Definição 11.

A solução de Ax = b, no sentido dos mínimos quadrados é o vector


T-
b
x que minimiza o resíduo na norma-2, isto é,

∥r(b
x)∥2 = min ∥r(x)∥2 .
x
FC

Nas duas secções seguintes veremos como podemos determinar b


x.

3.8.1 As equações Normais

Consideremos o sistema Ax = b, com A uma matriz com m linhas e n colunas,


m > n. O vector incógnita é x = [x1 · · · xn ]T e b = [b1 · · · bm ]T . Quanto ao
resíduo r, é um vector com m componentes. Para determinar a solução no
sentido dos mínimos quadrados consideramos a função

f (x1 , x2 , · · · , xn ) = ∥r(x)∥2 .

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 78

Um ponto minimizante de f estará entre os pontos críticos de f , isto é, entre


as soluções do sistema
∂f
= 0, j = 1, 2, · · · , n.
∂xj
Calculando as derivadas obtemos:
( m )1/2

g
∂f ∂ ∑
= ri2
∂xj ∂xj
i=1
( m )−1/2 m
1 ∑ 2 ∑ ∂ri

l
= ri 2 ri
2 ∂xj
i=1 i=1

UA
e como

temos então que

∂f
= 0, ⇔
∑ m
ri aij =
∂ri
∂xj

∑ m
= −aij ,

aTji ri = 0, j = 1, 2, · · · , n.
∂xj
i=1 i=1

Assim b
x deve ser solução das equações Normais:
T-
AT A b
x = AT b.

Nos sistemas sobredeterminados supomos que a matriz do sistema, A,


tem característica completa, isto é, car(A) = n. Tem-se então o seguinte
teorema:
FC

Teorema 7.

Se A é tal que car(A) = n, então AT A é definida positiva.

Decorre deste resultado e do facto que, por construção, AT A é simétrica, que


as equações Normais devem ser resolvidas com a decomposição de Cholesky:

L y = AT b,
LT b
x = y.

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 79

3.8.2 A decomposição QR

Processo de ortonormalização de Gram-Schmidt

O algoritmo conhecido como processo de ortonormalização de Gram-Schmidt


trasforma um conjunto de vectores linearmente independentes num conjunto
de vectores que são ortogonais e com norma igual a 1. Trata-se assim de obter

g
uma base para um subespaço vectorial (gerado pelos vectores linearmente
independentes dados). Comecemos por lembrar as definições de vectores
ortogonais, de vectores ortonormados (na norma-2) assim como a definição

l
de matriz ortogonal.

UA
Definição 12.

Dois vectores u1 e u2 dizem-se ortogonais se

Se ainda se verificar que


uT1 u2 = 0;

∥ui ∥2 = 1, i = 1, 2,
T-
os vectores u1 e u2 dizem-se ortonormados.

Definição 13.

Uma matriz Q ∈ Mm,n (R) diz-se ortogonal se


FC

QT Q = QQT = I.

Uma matriz é ortogonal se, e somente se, tanto as suas colunas como as suas
linhas são vectores ortonormados.
 
 cos(θ) sen(θ)
Exemplo 8. A matriz Q =  .
− sen(θ) cos(θ)

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 80

É fácil de verificar que QT Q = QQT = I. Esta matriz roda um vector de


um ângulo θ, no sentido dos ponteiros do relógio. Por isso dá-se-lhe, assim
como, em geral, a uma qualquer matriz ortogonal, o nome de matriz de
rotação. △
A norma-2 de um vector é invariante quando se lhe aplica uma trans-
formação (matriz) ortogonal. Resultado idêntico é verificado para o ângulo

g
entre dois vectores.
Teorema 8.

l
Se Q ∈ Mm,n (R) é uma matriz ortogonal e x e y são dois vectores
em Rn . Então:

UAi) ∥Qx∥2 = ∥x∥2 ;

ii) (Qx)T Qy = xT y.

Sejam a1 , a2 , · · · , an vectores linearmente independentes e determine-


mos os vectores q1 , q2 , · · · , qn , pondo
T-
• v1 = a1 ,
v1
• q1 = , r11 = ∥v1 ∥2 ,
∥v1 ∥2
• v2 = a2 − r12 q1 , r12 = qT1 a2 ,
v2
• q2 = , r22 = ∥v2 ∥2 ,
∥v2 ∥2
FC

• v3 = a3 − r13 q1 − r23 q2 , r13 = qT1 a3 , r23 = qT2 a3 ,


v3
• q3 = , r33 = ∥v3 ∥2 ,
∥v3 ∥2
..
.
• vk = ak − r1k q1 − r2k q2 − · · · − rk−1,k qk−1 ,
vk
• qk = , rkk = ∥vk ∥2 ,
∥vk ∥2
rjk = qTj ak , j = 1, · · · , k − 1,
..
.

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 81

Tem-se então que

ak = r1k q1 + r2k q2 + · · · + rk−1,k qk−1 + rkk qk , k = 1, 2, · · · , n,

isto é, no final do processo obtém-se a decomposição QR da matriz A, matriz


cuja coluna k é o vector ak :

g
 
 q11 q12 · · · q1n   
 
 
 q21 q22 · · · q2n  r11 r12 · · · r1n 

l
  
 . . . 
 .. .
.
. . . .
.   0 r22 · · · r2n  
  
UA A=

 ..
 .


.
.. . .. .

qm1 qm2 · · · qmn


 .
 .
 qn1 qn2 · · · qnn   .
 

..  0


.
.
.

0
.

·
.

·
.

· r
.
. 
.

nn


A decomposição A = QR é então a decomposição de uma matriz no produto


de uma matriz ortogonal, Q, por uma matriz triangular superior, R, tendo
esta elementos na diagonal estritamente positivos.
T-
A decomposição A = QR pode ser também usada para resolver o sistema
sobredeterminado Ax = b, no sentido dos mínimos quadrados. Com efeito

AT A b
x = AT b =⇒ RT QT QRb
x = RT QT b

e portanto
FC

Rb
x = QT b.

Prova-se que

K2 (AT A) = K2 (A)2 ;
K2 (R) = K2 (A).

Assim, se a matriz A for bem condicionada é indiferente encontrar a solução,


no sentido dos mínimos quadrados, através das equações Normais ou através
da decomposição A = QR; se A for mal condicionada, então deve-se usar a
decomposição A = QR.

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 82

3.9 O método de Gauss-Jacobi


Os métodos iterativos revelam-se eficientes (tempo de execução e espaço de
memória), em particular, quando aplicados à resolução numérica de sistemas
de grandes dimensões envolvendo matrizes esparsas (matrizes com muitas
entradas nulas).

g
Na resolução de um sistema de equações lineares, os métodos iterativos
partem de uma aproximação inicial, x(0) , e constroem uma sucessão de apro-
ximações, x(1) , x(2) , . . . que, desejavelmente, converge para a solução exacta

l
do sistema, x. O primeiro método será o de Gauss-Jacobi. Consideremos
primeiro a definição de matriz diagonal dominante.

UA
Definição 14.

Uma matriz A ∈ Mn (R) diz-se estritamente diagonal dominante


por linhas, se


n
|aii | > |aij | , i = 1, 2, . . . , n.
j=1
j̸=i
T-
Seja agora o sistema de equações lineares Ax = b,




 a11 x1 + a12 x2 + · · · + a1n xn = b1


FC



 a21 x1 + a22 x2 + · · · + a2n xn = b2

 ..

 .




an1 x1 + an2 x2 + · · · + ann xn = bn

Assumindo que aii ̸= 0, i = 1, 2, . . . , n, comecemos por resolver formal-

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 83

mente a i-ésima equação, i = 1, · · · , n, em ordem a xi :




 1

 x1 = (b1 − a12 x2 − · · · − a1n xn )

 a


11



 1

x2 = a (b2 − a21 x1 − a23 x3 − · · · − a2n xn )
22

g

 ..

 .







 1
xn = (bn − an1 x1 − · · · − an,n−1 xn−1 )
ann

l
Dada uma aproximação inicial x(0) , o método de Gauss-Jacobi calcula

UA
x(1) , . . . , x(k) , . . ., através da recorrência



x1










 2x
(k+1)

(k+1)
=

=
1 (
a11
1 (
a22
b2 − a 21 x
(k)
b1 − a12 x2 − · · · − a1n xn

(k)
1 − a 23 x
(k)
3 − ·
(k)

· ·
)

− a 2n x
(k)
n
)


 ..

 .







 1 ( )
T-

xn
(k+1)
=
(k)
bn − an1 x1 − · · · − an,n−1 xn−1
(k)
ann

ou, de forma mais compacta,


 
1  ∑
n
(k) 
(k+1) bi − aij xj 
FC

xi =   , i = 1, 2, . . . , n, k = 0, 1, 2, . . . .
aii
j=1
j̸=i

Teorema 9.

Se A é uma matriz estritamente diagonal dominante por linhas, então


o método de Gauss-Jacobi produz uma sucessão de vectores x(k) , k =
1, 2, . . ., convergente para a única solução do sistema de equações
Ax = b, qualquer que seja a aproximação inicial x(0) .

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 84

De facto,
 
1  ∑
n
(k) 
|ei
(k+1)
| ≤  |aij | |xj − xj |
|aii |  
j=1
j̸=i
 

g
1  ∑
n

≤  |a | ∥x − x(k)
∥ 
|aii |  
ij ∞
j=1
j̸=i
 

l
1  ∑
n

= ∥e(k) ∥∞  |aij |
|aii |  .

UA
nante por linhas, ou seja,

n
|aij |
j=1
j̸=i

Mas, por hipótese, a matriz A é uma matriz estritamente diagonal domi-


n j=1
j̸=i
|aii | > |aij | ⇔ 1 > , i = 1, 2, . . . , n.
|aii |
j=1
j̸=i
T-
O que permite concluir que, com

n
|aij |
j=1
j̸=i
C = max < 1,
|aii |
FC

i=1,...,n

então,
∥e(k) ∥∞ ≤ C k ∥e(0) ∥∞

e o método de Gauss-Jacobi é convergente.

Como critério de paragem, usa-se: ∥x(k+1) − x(k) ∥ ≤ ϵ, em que ϵ é uma


tolerância dada.

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 85

3.10 O método de Gauss-Seidel


O método de Gauss-Seidel pode ser visto como um melhoramento a partir
do método de Gauss-Jacobi. No método de Gauss-Jacobi, em cada iteração,
utilizam-se apenas valores da iteração anterior; no método de Gauss-Seidel,
em cada iteração, todos os valores obtidos previamente são utilizados. Con-

g
sequentemente,


 (k+1) 1 ( (k) (k)
)

 1x = b − a x − · · · − a xn

 a11
1 12 2 1n

l



 (k+1) 1 ( (k+1) (k) (k)
)

 2x = b2 − a 21 x1 − a 23 x 3 − · · · − a 2n xn
a22
UA 












xn
(k+1)
..
.

=
1 (
ann
bn − an1 x1
(k+1)
− · · · − an,n−1 xn−1
(k+1)

ou, de forma mais compacta, para i = 1, 2, . . . , n, k = 0, 1, 2, . . .,


)

 
1  ∑
i−1 ∑n
aij xj  .
(k+1) (k+1) (k)
xi = bi − aij xj −
aii
T-
j=1 j=i+1

Teorema 10.

Se A é uma matriz estritamente diagonal dominante por linhas, então


o método de Gauss-Seidel produz uma sucessão de vectores x(k) , k =
FC

1, 2, . . ., convergente para a única solução do sistema de equações


Ax = b, qualquer que seja a aproximação inicial x(0) .

Critério de paragem: ∥x(k+1) − x(k) ∥ ≤ ϵ, em que ϵ é uma tolerância


dada.

Capítulo 3
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 86

3.11 Exercícios
1. Defina algoritmo estável para a resolução de sistemas de equações li-
neares, em precisão finita.

2. Sejam    
10−6  −1 

g
 1 
A=  e b= .
1 −1 2

a) Resolva o sistema Ax = b, numa aritmética de 4 algarismos sig-

l
nificativos, pela eliminação de Gauss, sem pivotação. Denote a
solução obtida por y;
UA
b) Mostre que se (A + E) y = b + f , então não se pode ter em simul-
tâneo E ≈ 0 e f ≈ 0;
c) Resolva o sistema Ax = b, numa aritmética de 7 algarismos sig-
nificativos, pela eliminação de Gauss, com pivotação. Denote a
solução obtida por z;
d) Determine E ≈ 0 e f ≈ 0 tais que (A + E) z = b + f.
 
[ ]T
 6.43 2.56 
T-
3. Seja A =   e b = 2.01 1.45 .
2.56 8.08

a) Mostre, pela definição, que A é definida positiva;


b) Resolva Ax = b e calcule r(0) , o resíduo da solução obtida, x(0) ;
FC

c) Com o método do resíduo, melhore a solução uma vez, obtendo


x(1) ;
d) Dê exemplo de um critério de paragem, na norma um, que justifi-
que o que fez na alínea c).

4. a) Dado um sistema sobredeterminado Ax = b, defina solução (do


sistema) no sentido dos mínimos quadrados;
b) Utilize as equações Normais para determinar, em aritmética exacta,
a parábola, dada por y = x2 +bx+c, que melhor aproxima, no sen-
tido dos mínimos quadrados, os pontos (−1, 2), (1, −1) e (2, 1).

Capítulo 3
4. Interpolação Polinomial

l g
4.1 Introdução

UA
O problema de interpolação polinomial consiste em obter um polinómio
que, em pontos distintos tome valores previamente estabelecidos. Nome-
adamente, dados
(x0 , y0 ) , (x1 , y1 ) , . . . , (xn , yn )

com xi ̸= xj , i, j = 0, 1, 2, . . . , n, i ̸= j, procura-se um polinómio, ou uma


função polinomial, p, tal que

p (xi ) = yi , i = 0, 1, 2, . . . , n.
T-
Exemplo 1. Polinómio interpolador e função polinomial.

xi −1 0 1 2

yi 4 2 6 1
FC

y
7
6 b
b

5
b
b
4
3
2 b
b

1 b
b

x
-1 -1 1 2

87
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 88

y
7
6 b
b

5
b
b
4
3
2 b
b

1 b
b

g
x
-1 -1 1 2

l
O problema de interpolação a resolver é então o seguinte: dados n + 1
UA
pontos distintos, xi , e n + 1 valores yi , determinar um polinómio de grau
menor ou igual a n, pn (x) = a0 + a1 x + a2 x2 + · · · + an xn , tal que

Definição 1.
pn (xi ) = yi , i = 0, 1, 2, . . . , n.

(i) Os pontos x0 , x1 , x2 , . . . , xn são designados por pontos de in-


terpolação.
T-
(ii) Os y0 , y1 , y2 , . . . , yn são os valores (de interpolação).

(iii) A função p, que verifica p (xi ) = yi , i = 0, 1, 2, . . . , n, é o poli-


nómio de interpolação, ou polinómio que interpola os valores
yi nos pontos xi .
FC

O exigir que os pontos de interpolação sejam distintos garante que o polinó-


mio interpolador existe e é único, como decorre do teorema seguinte.

Capítulo 4
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 89

Teorema 1 (Existência e Unicidade).

Dados n + 1 pontos distintos, xi , e n + 1 valores yi , i = 0, 1, 2, . . . , n,


existe um único polinómio pn , de grau menor ou igual a n, isto é,

pn (x) = a0 + a1 x + a2 x2 + · · · + an xn ,

g
tal que
pn (xi ) = yi , i = 0, 1, 2, . . . , n.

l
As condições
UA 








pn (xi ) = yi , i = 0, 1, 2, . . . , n

traduzem-se no sistema de equações lineares

a0 + a1 x0 + · · · + an xn0 = y0


 a0 + a1 x1 + · · · + an xn1 = y1

 ..

 .


T-




 a + a x + · · · + a xn = yn
0 1 n n n

que se escreve, na forma matricial,


    
1 x0 x0 · · · x0   a0   y0 
2 n
FC

    
    
1 x1 x1 · · · x1   a1   y1 
2 n
   =  .
 .. .. . . .   ..   .. 
. . .
. . . . 
.    
  .   . 
    
1 xn x2n · · · xnn an yn

A matriz do sistema tem a designação de matriz de Vandermonde e


denota-se por V (x0 , x1 , x2 , . . . , xn ).
O sistema tem uma única solução se e só se a matriz de Vandermonde
tem determinante diferente de zero. Por outro lado, prova-se, por indução

Capítulo 4
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 90

sobre o valor de n, que o determinante de V é dado por


n ∏
n
det V (x0 , x1 , x2 , . . . , xn ) = (xi − xj ) ,
i=0 j=i+1

o qual é diferente de zero desde que xi ̸= xj , para todo o i, j = 0, 1, . . . , n,


com i ̸= j. Como é neste contexto que se coloca o problema de interpolação,

g
concluímos pela existência e unicidade da solução do polinómio interpola-
dor.

l
Observação.

É pouco recomendável a resolução computacional de um problema


UA
de interpolação polinomial, através da resolução do sistema com a
matriz de Vendermonde, dado que:

(i) A matriz de Vandermonde possui um número de condição


muito grande, que aumenta proporcionalmente à dimensão do
sistema, pelo que se trata de um problema mal condicionado.

(ii) O número de operações envolvido na resolução do sistema de


T-
equações é elevado.

4.2 A forma de Lagrange


FC

Em virtude do que foi expresso na Observação da secção anterior vamos


procurar uma outra forma do polinómio interpolador. Comecemos pelo
caso particular de termos apenas duas condições, em dois pontos distintos:
p(x0 ) = y0 e p(x1 ) = y1 . Se y0 = 1 e y1 = 0, pelo teorema da secção anterior,
existe um único polinómio, ℓ0 , que resolve o problema:
x − x1
ℓ0 (x) = .
x0 − x1

Capítulo 4
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 91

Por outro lado, se y0 = 0 e y1 = 1 também concluímos que a solução é o


polinómio
x − x0
ℓ1 (x) = .
x1 − x0
Concluímos então, no caso geral de os valores y0 e y1 serem quaisquer,
que p1 , o polinómio que os interpola em x0 e x1 , é dado por

g
p1 (x) = ℓ0 (x)y0 + ℓ1 (x)y1 .

De facto,
p1 (x0 ) = ℓ0 (x0 ) y0 + ℓ1 (x0 ) y1 = y0 ,

l
e

UA p1 (x1 ) = ℓ0 (x1 ) y0 + ℓ1 (x1 ) y1 = y1 .


A base da construção do polinómio interpolador, de grau ≤ n, que in-
terpola os valores yi nos pontos xi , i = 0, 1, . . . , n, na forma de Lagrange,
reside na construção das funções ℓk (x), k = 0, 1, 2, . . . , n, tais que

ℓk (xi ) = 0, i = 0, 1, . . . , n, i ̸= k

e
ℓk (xk ) = 1, k = 0, 1, . . . , n.
T-
Para garantir que ℓk (xi ) = 0, para cada i ̸= k, basta por

ℓk (x) = C (x − x0 ) · · · (x − xk−1 ) (x − xk+1 ) · · · (x − xn ) .

Por outro lado, se ℓk (xk ) = 1,


FC

C (xk − x0 ) · · · (xk − xk−1 ) (xk − xk+1 ) · · · (xk − xn ) = 1.

Desta forma, resolvendo em ordem a C, tem-se que


(x − x0 ) · · · (x − xk−1 ) (x − xk+1 ) · · · (x − xn )
ℓk (x) =
(xk − x0 ) · · · (xk − xk−1 ) (xk − xk+1 ) · · · (xk − xn )
∏n
x − xi
= , k = 0, 1, . . . , n.
xk − xi
i=0
i̸=k

Os polinómios ℓk , k = 0, 1, . . . , n, são designados por polinómios de


Lagrange.

Capítulo 4
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 92

Teorema 2 (Forma de Lagrange).

Se x0 , x1 , . . . , xn são n + 1 pontos distintos, então o polinómio, pn ,


de grau menor ou igual a n, que interpola os valores y0 , y1 , . . . , yn
naqueles pontos é dado por


n

g
pn (x) = y0 ℓ0 (x) + y1 ℓ1 (x) + · · · + yn ℓn (x) = yk ℓk (x),
k=0

sendo

n
x − xi

l
ℓk (x) = ,
xk − xi
i=0

UA
para k = 0, 1, . . . , n.
i̸=k

Pela forma como foram definidos, os polinómios de Lagrange verificam a


seguinte condição:

1, se i = k
ℓk (xi ) = , k = 0, 1, . . . , n.
0, se i ̸= k
T-
Logo,

n ∑
n
pn (xi ) = yk ℓk (xi ) = yk = yi , i = 0, 1, . . . , n.
k=0 k=0
FC

Conclui-se então que este polinómio, cujo grau é evidentemente menor


ou igual a n, interpola os valores dados nos pontos xi . Por outro lado, por
aplicação do teorema de existência e unicidade, conclui-se também que é o
único polinómio, de grau menor ou igual a n, nestas condições.

Capítulo 4
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 93

Observação.

A forma de Lagrange pode não ser a representação mais conveniente


do polinómio interpolador, o que se deve fundamentalmente a duas
razões:

• É possível obter este polinómio através de um procedimento

g
mais eficiente, ou seja, com menos operações aritméticas do
que as que são requeridas.

l
• Os polinómios de Lagrange estão associados a um conjunto de
pontos previamente fixado o que faz com que, havendo a ne-

UA cessidade de alteração desse conjunto, seja necessário refazer


todo o procedimento.

Exemplo 2. O polinómio que interpola 4 e 1 nos pontos 2 e 5.


Como são dados dois pontos, x0 = 2 e x1 = 5, e dois valores y0 = 4 e
y1 = 1, o polinómio interpolador terá grau ≤ 1.
Os dois polinómios de Lagrange são então definidos por:
T-
x − x1 x−5 1
ℓ0 (x) = = = − (x − 5)
x0 − x1 2−5 3
e
x − x0 x−2 1
ℓ1 (x) = = = (x − 2).
x1 − x0 5−2 3
FC

4 1
Deste modo p1 (x) = y0 ℓ0 (x) + y1 ℓ1 (x) = − (x − 5) + (x − 2).
3 3
O gráfico de p1 é dado por

Capítulo 4
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 94

y
4 b
b

g
1 b
b

x
1 2 3 4 5

l

2.
UA
O caso da interpolação polinomial linear é o mais simples. Vejamos agora
o que se passa quando o número de pontos de interpolação é maior do que

Exemplo 3. O polinómio interpolador, na forma de Lagrange, da função

f (x) =
1
x
nos pontos x0 = 2, x1 = 3 e x2 = 4.
No que diz respeito aos polinómios de Lagrange tem-se que:
T-

n
x − xi (x − 3)(x − 4) 1
ℓ0 (x) = = = (x − 3)(x − 4),
x0 − xi (2 − 3)(2 − 4) 2
i=0
i̸=0
∏ n
x − xi (x − 2)(x − 4)
ℓ1 (x) = = = −(x − 2)(x − 4),
x1 − xi (3 − 2)(3 − 4)
FC

i=0
i̸=1
∏ n
x − xi (x − 2)(x − 3) 1
ℓ2 (x) = = = (x − 2)(x − 3).
x2 − xi (4 − 2)(4 − 3) 2
i=0
i̸=2

Como,
1
f (x0 ) = f (2) = = y0 ,
2
1
f (x1 ) = f (3) = = y1 ,
3
1
f (x2 ) = f (4) = = y2 ,
4

Capítulo 4
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 95

então

2
p2 (x) = yk ℓk (x)
k=0
1 1 1
= (x − 3)(x − 4) − (x − 2)(x − 4) + (x − 2)(x − 3)
4 3 8

g
4.2.1 O erro de interpolação

l
Teorema 3.

UA
Sejam pn o polinómio interpolador de f nos (n + 1) pontos distintos
xi , i = 0, 1, . . . , n, pertencentes ao intervalo [a, b] e f ∈ C n+1 ([a, b]).
Então, para qualquer x

f (b
x) = pn (b
x) +
b ∈ [a, b], existe um valor ξ ∈ [a, b], dependente
b e de f , tal que
de x0 , x1 , . . . , xn , x

f (n+1) (ξ)
x − x0 ) (b
(b x − x1 ) · · · (b
x − xn ) ,
(n + 1)!
T-
o que equivale a dizer que

E (pn (b x) − pn (b
x)) = f (b x)
f (n+1) (ξ)
= x − x0 ) (b
(b x − x1 ) · · · (b
x − xn ) .
(n + 1)!
FC

Se xb é igual a qualquer um dos pontos de interpolação, x b = xi ,


i = 0, 1, . . . , n, o erro é igual a zero e, portanto, o resultado é verdadeiro.
b ̸= xi , i = 0, 1, . . . , n, considere-se
Para analisar o que se passa quando x
o produto

n
wn (x) = (x − x0 ) (x − x1 ) · · · (x − xn ) = (x − xi )
i=0

e a função auxiliar
wn (x)
F (x) = f (x) − pn (x) − x) − pn (b
(f (b x)) .
wn (b
x)

Capítulo 4
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 96

Definida desta forma, a função F possui pelo menos n + 2 zeros no in-


b.
tervalo [a, b], mais propriamente, x0 , x1 , . . ., xn e x
A demonstração recorre ao teorema de Rolle e seus corolários.

Corolário 1 (do teorema de Rolle).

g
Seja f é uma função contínua no intervalo [a, b] (a, b ∈ R, a < b) e
diferenciável em ]a, b[. Se f (a) = f (b), então existe c ∈]a, b[, tal que
f ′ (c) = 0.

l
UA
Aplicando este resultado, pode-se concluir que:

F possui, pelo menos, n + 2 zeros no intervalo [a, b]



F possui, pelo menos, n + 1 zeros no intervalo [a, b]

′′
F possui, pelo menos, n zeros no intervalo [a, b]

..
.
T-

F (n+1) possui, pelo menos, 1 zero no intervalo [a, b].

Sendo ξ ∈ [a, b] o zero de F (n+1) , então

F (n+1) (ξ) = 0.
FC

Atendendo a que
wn (x)
F (x) = f (x) − pn (x) − x) − pn (b
(f (b x))
wn (b
x)
deduz-se que
(n+1)
wn (x)
F (n+1)
(x) = f (n+1)
(x) − p(n+1)
n (x) − x) − pn (b
(f (b x))
wn (b
x)
Mas,
p(n+1)
n (x) = 0,

Capítulo 4
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 97

porque pn é um polinómio com grau ≤ n, e

wn(n+1) (x) = (n + 1)!

porque wn é um polinómio com grau n + 1.


Logo,

g
(n + 1)!
F (n+1) (x) = f (n+1) (x) − x) − pn (b
(f (b x)) .
wn (b
x)
Notando então que existe pelo menos um ponto ξ ∈ ]a, b[, tal que

l
F (n+1) (ξ) = 0,

UA
tem-se então que

isto é,
0 = f (n+1) (ξ) −

x) − pn (b
f (b x) =
(n + 1)!
wn (b
x)
x) − pn (b
(f (b

f (n+1) (ξ)
(n + 1)!
wn (b
x)) ,

x) .

4.2.2 Interpolação linear em valores aproximados


T-
A utilização de valores aproximados de uma função num problema de inter-
polação pode ocorrer por várias razões, em particular quando a interpolação
é feita com base em valores tabelados. É, por isso, expectável que o erro de
interpolação aumente, o que veremos através de uma estimativa para o erro
no caso da interpolação linear. Sejam então f (x0 ), f (x1 ) valores de uma
FC

função f e f0 , f1 seus valores aproximados. Seja ei = f (xi ) − fi o erro na


aproximação fi , com |ei | ≤ ϵ. Considere-se o polinómio que interpola os
valores fi nos pontos x0 e x1 :

pb1 (x) = f0 ℓ0 (x) + f1 ℓ1 (x).

Então

f (x) − pb1 (x) = f (x) − [(f (x0 )ℓ0 (x) + f (x1 )ℓ1 (x)) − (e0 ℓ0 (x) + e1 ℓ1 (x))]
= [f (x) − (f (x0 )ℓ0 (x) + f (x1 )ℓ1 (x))] + (e0 ℓ0 (x) + e1 ℓ1 (x))
≡ E(x) + R(x)

Capítulo 4
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 98

em que R é o polinómio que interpola e0 e e1 , em x0 e x1 .


Da relação anterior, concluímos que o erro de interpolação, quando se
utilizam valores aproximados,

E(x) = f (x) − pb1 (x)

verifica a estimativa

g
|E(x)| ≤ |E(x)| + |R(x)|.

Note-se que E representa o erro de interpolação com valores exactos e que

l
R é o polinómio (linear) que interpola e0 e e1 nos pontos x0 e x1 . Então

(x1 − x0 )2
|E(x)| ≤ M
UA
em que M é o máximo de f ′′ em [x0 , x1 ].
8

4.2.3 Interpolação linear em pontos equidistantes


+ ϵ,

Sejam x0 , x1 , · · · , xn pontos equidistantes, isto é, tais que


xn − x0
xj = x0 + jh, h = .
n
T-
Por vezes é preferível, em vez de construir um polinómio interpolador na to-
talidade dos pontos, fazer interpolação linear em cada dois pontos consecuti-
vos, xi e xi+1 . Neste caso obtém-se uma função polinomial (seccionalmente
linear) e não um polinómio.
No caso de se utilizarem valores exactos obtém-se a estimativa
FC

h2
|E (x) | ≤ M ,
8
em que M é o máximo de f ′′ em [x0 , xn ].

4.3 A forma de Newton

A forma de Lagrange utiliza uma base de polinómios, {ℓk }k=0,··· ,n , para cons-
truir o polinómio interpolador, de grau menor ou igual a n, nos pontos
xi , i = 0, 1, . . . , n.

Capítulo 4
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 99

O custo computacional associado à obtenção do polinómio interpolador


na forma de Lagrange, em particular quando tem a necessidade de conside-
rar um novo ponto de interpolação, faz com que se procurem formas alterna-
tivas mais eficientes. Uma alternativa é a forma de Newton, com diferenças
divididas.

g
Definição 2.

A diferença dividida de ordem k, da função f , relativamente aos


pontos x0 , x1 , . . . , xk , é dada por

l
f [x1 x2 ... xk ] − f [x0 x1 ... xk−1 ]
f [x0 x1 ... xk ] = .
UA
com
xk − x0

f [xi ] = f (xi ) , i = 0, 1, . . . , n.

O valor da diferença dividida f [x0 x1 ..., xk ] é independente da ordem em


que aparecem os pontos x0 , x1 , . . . , xk .
As diferenças divididas de f relativamente aos pontos x0 , x0 x1 , x0 x1 x2 ,
T-
. . ., x0 x1 ... xn são utilizadas para construir o polinómio interpolador, de grau
menor ou igual a n, na forma de Newton. O polinómio é construído, por
recorrência, como é indicado a seguir:

• seja p0 o polinómio, de grau zero, que interpola f , em x0 :


FC

p0 (x) = f (x0 ) ≡ f [x0 ]

• seja p1 o polinómio, de grau um, que interpola f , em x0 e em x1 : po-


nhamos p1 (x) = p0 (x) + a1 (x − x0 ). Dado que p1 (x1 ) = f (x1 ), concluí-
mos que
a1 = f [x0 x1 ].

Isto é:
p1 (x) = f (x0 ) + f [x0 x1 ](x − x0 )

Capítulo 4
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 100

• seja p2 o polinómio, de grau dois, que interpola f , em x0 , x1 e x2 :


ponhamos p2 (x) = p1 (x) + a2 (x − x0 )(x − x1 ). Como p2 (x2 ) = f (x2 )
deduz-se, como anteriormente, que

a2 = f [x0 x1 x2 ].

g
Continuando o procedimento obtém-se

pn (x) = a0 +a1 (x−x0 )+a2 (x − x0 ) (x−x1 )+· · ·+an (x−x0 ) · · · (x−xn−1 ) ,

l
onde
f [x1 . . . xk−1 xk ] − f [x0 x1 . . . xk−1 ]
UAak = f [x0 x1 . . . xk−1 xk ] =

para k = 0, 1, . . . , n.
xk − x0

A obtenção das diferenças divididas pode ser facilmente implementada


construindo uma tabela. A construção da tabela, que a seguir se exemplifica
para n = 3, tem a designação de algoritmo de Newton.
,

ALGORITMO DE NEWTON
T-
diferença dividida diferença dividida diferença dividida
xi f (xi ) de primeira ordem de segunda ordem de terceira ordem
x0 f (x0 )
f [x0 x1 ]
x1 f (x1 ) f [x0 x1 x2 ]
FC

f [x1 x2 ] f [x0 x1 x2 x3 ]
x2 f (x2 ) f [x1 x2 x3 ]
f [x2 x3 ]
x3 f (x3 )
O teorema seguinte é útil para estimar o erro de interpolação nos casos
em que não se conhece a expressão analítica da função que se está a inter-
polar.

Capítulo 4
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 101

Teorema 4.

Sejam f ∈ C n ([a, b]) e x0 , x1 , ..., xn pontos distintos pertencentes


intervalo [a, b]. Então existe ξ ∈ ]a, b[, tal que

f (n) (ξ)
f [x0 x1 . . . xn ] = .
n!

g
4.4 Interpolação de Hermite

l
UA
A interpolação dos valores de uma função, f , pode ser estendida à interpo-
lação conjunta dos valores de f e da sua derivada, f ′ . É o que se entende
por interpolação de Hermite sendo que a interpolação apenas dos valores da
função é denominada de interpolação de Lagrange.
Temos então de resolver o seguinte problema de interpolação: dados n
pontos distintos, xi , determinar um polinómio, H2n−1 , de grau menor ou
igual a 2n − 1, tal que

H2n−1 (xi ) = f (xi ) , i = 1, . . . , n;


T-
e
H ′2n−1 (xi ) = f ′ (xi ) , i = 1, . . . , n.

O problema consiste em 2n condições e, à semelhança da interpolação


de Lagrange, tem uma única solução.
FC

4.4.1 O polinómio de Hermite na forma de Newton

Para construirmos o polinómio interpolador de Hermite precisamos de ter


em conta a informação proveniente das derivadas de f . Fá-lo-emos através
das diferenças divididas com a seguinte definição

Capítulo 4
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 102

Definição 3.

f (a + ϵ) − f (a)
f [a a] = lim f [a a + ϵ] = lim = f ′ (a).
ϵ→0 ϵ→0 ϵ

g
Com esta definição, o polinómio interpolador de Hermite na forma de
Newton com diferenças divididas é:

H2n−1 (x) = f [x1 ] + f [x1 x1 ] (x − x1 )

l
+ f [x1 x1 x2 ] (x − x1 )2
+ f [x1 x1 x2 x2 ] (x − x1 )2 (x − x2 ) · · ·
UA + f [x1 x1 x2 , . . . , x2n , x2n ] (x − x1 )2 (x − x2 )2 · · · (x − x2n )

A construção da tabela das diferenças divididas é análoga à da tabela na


interpolação de Lagrange. A única alteração prende-se com a inclusão das
derivadas de primeira ordem, como se exemplifica na tabela parcial seguinte
(algoritmo de Newton).
diferenças divididas diferenças divididas
xi f (xi ) de primeira ordem de segunda ordem
T-
x1 f (x1 )
f [x1 x1 ] = f ′ (x1 )
x1 f (x1 ) f [x1 x1 x2 ]
f [x1 x2 ]
x2 f (x2 ) f [x1 x2 x2 ]
FC

f [x2 x2 ] = f ′ (x2 )
x2 f (x2 ) f [x2 x2 x3 ]
f [x2 x3 ]
x3 f (x3 ) f [x2 x3 x3 ]
f [x3 x3 ] = f ′ (x3 )
x3 f (x3 )
Em relação ao erro que se comete na interpolação de Hermite, o teo-
rema geral do erro da interpolação polinomial apresentado anteriormente
continua válido, podendo ser adaptado como mostra o teorema seguinte.

Capítulo 4
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 103

Teorema 5.

Se f ∈ C 2n ([a, b]), para qualquer x


b ∈ [a, b], existe um valor ξ ∈ ]a, b[,
tal que

E (H2n−1 (b x) − H2n−1 (b
x)) = f (b x)

g
f (2n) (ξ)
= x − x1 )2 (b
(b x − x2 )2 · · · (b
x − xn )2 .
(2n)!

l
4.5 Exercícios
UA
1. É necessário construir uma tabela de valores para a função f definida
por f (x) = cos (x) tal que a interpolação linear efectuada para qual-
quer valor de x ∈ [0, π] tenha um erro inferior a 0.5 × 10−6 . Sabendo
que os valores tabelados são igualmente espaçados, qual deverá ser o
número mínimo de entradas necessárias da tabela?

2. a) Obtenha o polinómio interpolador de Hermite da função


T-
f (x) = ln(x)

utilizando os pontos x0 = 1 e x1 = 2.
b) Utilize o polinómio obtido para aproximar o valor da função em
x = 1.5 indicando o número de algarismos significativos que pos-
FC

sui a aproximação obtida.


c) Utilizando a fórmula para o erro, estime um majorante para o erro
que se comete e compare-o com o resultado obtido na alínea b).

Capítulo 4
5. Integração Numérica

l g
5.1 Introdução

UA
Existem, pelo menos, duas razões que justificam recorrer-se a métodos nu-
méricos para aproximar o integral de uma função real f , de variável real,

I (f ) =

a
b

(i) a expressão analítica de f não é conhecida;


f (x) dx,

(ii) a expressão analítica da função é conhecida, mas a primitiva não existe


ou é difícil de calcular.
T-
Neste capítulo iremos estudar alguns métodos numéricos para aproximar o
referido integral os quais, em Integração Numérica, são chamados regras de
integração ou regras de quadratura. Por vezes iremos utilizar a interpretação
geométrica do integral,entre a e b, de uma função positiva f : o valor do
FC

integral dá-nos a área limitada pelo gráfico de y = f (x), pelo eixo dos xx e
as rectas x = a e x = b:
y

f (x)

a b x

A construção de uma regra de integração consiste em determinar uma


função g que aproxime a função integranda f , e cujo valor do integral seja

104
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 105

fácil de obter. Se ∫ b ∑
n
g(x) dx = ωk f (xk )
a k=0
então uma regra de integração é uma relação do tipo
∫ b ∑
n
f (x) dx ≈ ωk f (xk ).

g
a k=0

Aos ωk dá-se o nome de pesos de integraçãoe os xk são chamados pontos


de integração.

l
5.2 As regras de Newton-Cotes
UA
As regras de integração de Newton-Cotes são aquelas que se obtêm quando
se aproxima a função f por um polinómio que a interpola nos pontos de
integração.
Assim, se pn (x) =

n
ℓk (x)f (xk ) é o polinómio, na forma de Lagrange,
k=0
que interpola os valores yk = f (xk ), k = 0, 1, . . . , n, nos n+1 pontos distintos
xk , k = 0, 1, . . . , n, então
T-
∫ b ∫ b ∑
n ∫ b
f (x) dx ≈ pn (x) dx = f (xk ) ℓk (x) dx.
a a k=0 a

As regras de Newton-Cotes podem classificar-se em abertas e fechadas.


Nas regras fechadas os limites de integração são utilizados na construção da
FC

regra. As regras abertas são aquelas em que os limites de integração não são
pontos de integração.

5.2.1 A regra do Trapézio

A regra do Trapézio é construída quando se substitui a função f , a integrar no


intervalo [a, b], pelo polinómio, de grau menor ou igual a um, que a interpola
nos pontos x0 = a e x1 = b:
∫ b ∫ b
f (x) dx ≈ p1 (x) dx.
a a

Capítulo 5
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 106

Se escrevermos p1 na forma de Lagrange, então

x−b x−a
p1 (x) = f (a) + f (b)
a−b b−a
e como
∫ b[ ]
x−b x−a f (a) + f (b)
dx = (b − a)

g
f (a) + f (b) ,
a a−b b−a 2

temos então, a regra do Trapézio,


l
b
b−a
f (x) dx ≈ [f (a) + f (b)] .
a 2

UA
Geometricamente, a área a que corresponde o integral é aproximada pela
área de um trapézio, definido pelas rectas verticais x = a e x = b, pelo eixo
das abcissas e pelo gráfico do polinómio p1 , como mostra a seguinte figura:

y
b
b

b
b

f (x)
T-
a b x

5.2.2 Estudo do erro para a regra do Trapézio


FC

Sendo a regra do Trapézio obtida através do integral de um polinómio in-


terpolador, é expectável que o erro de integração seja obtido através da in-
tegração do erro de interpolação. Relembremos que o erro na interpolação,
em n + 1 pontos distintos, é dado por

f (n+1) (ξ)
f (x) − pn (x) = (x − x0 ) · · · (x − xn ),
(n + 1)!

No caso da regra do Trapézio temos n = 1 e, portanto,

f ′′ (ξ)
f (x) − p1 (x) = (x − a)(x − b).
2

Capítulo 5
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 107

Assim, o erro de integração, E(f ), é dado por


∫ b ∫ b
E (f ) = f (x) dx − p1 (x) dx
a a
∫ b
= (f (x) − p1 (x)) dx
a

g
ou seja,
∫ b
f ′′ (ξ)
E (f ) = (x − a)(x − b) dx.
a 2
Utilizando o teorema do valor médio para integrais, tem-se

l
(b − a)3 ′′
UA
com η ∈ ]a, b[.
E (f ) = −
12
f (η) ,

A expressão do erro de integraçãomostra que a regra do Trapézio é exacta


para poliómios de grau menor ou igual a um. Temos a seguinte definição de
grau de precisão de uma regra de integração.

Definição 1.
T-
Uma regra de integração tem grau de precisão igual a m se ela exacta
para todos os polinómios de grau menor ou igual a m e se existe
umpolinómios de grau m + 1 para o qual ela não é exacta.
FC

5.2.3 A regra de Simpson

A regra de Simpson decorre da aproximação da função f pelo polinómio, de


grau dois, que a interpola nos pontos x0 = a, no ponto médio do intervalo
de integração. Tem-se então:
∫ b ∫ b
f (x) dx ≈ p2 (x) dx
a a

com
p2 (x) = ℓ0 (x)f (x0 ) + ℓ1 (x)f (x1 ) + ℓ2 (x)f (x2 ) .

Capítulo 5
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 108

A integração de p2 (x) resulta em


[ ( ) ]
b−a a+b
f (a) + 4f + f (b)
6 2
e, com h = (b − a)/2, podemos escrever a regra de Simpson:
∫ b
h
f (x) dx ≈

g
[f (x0 ) + 4f (x1 ) + f (x2 )] .
a 3

Procedendo de forma análoga ao que se fez para a regra do Trapézio,


pode mostrar-se que o erro de integração é dado por

l
h5 (iv)
E (f ) = − f (η) ,
UA
com η ∈ ]a, b[.
90

Desta forma, a regra de Simpson é mais precisa que a regra do Trapézio,


sendo mesmo mais precisa do que aquilo que seria suposto, ou seja, a regra
de Simpson, apesar de ser construída a partir do polinómio interpolador de
grau 2, é exacta para todos os polinómios até ao terceiro grau. A figura
seguinte, que mostra a área que aproxima a área correspondente ao integral,
procura ilustrar também esta precisão acrescida da regra de Simpson.
T-
y

b
b

b
b f (x)
FC

p2 (x)

b
b

a x1 b x
x0 x2

Capítulo 5
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 109

5.2.4 A regra do Trapézio Composta

Se observarmos as expressões dos erros de integração, quer para a regra


do Trapézio, quer para a de Simpson, verificamos que eles dependem da
amplitude do intervalo de integração, na regra do Trapézio, assim como da
distância que separa cada dois pontos consecutivos, na regra de Simpson.

g
Conclui-se assim que um procedimento que permita melhorar os resulta-
dos destas regras de integração poderá ser a divisão do intervalo de integra-
ção em subintervalos e aplicando-se estas regras nos subintervalos obtidos.

l
Vamos então usar este procedimento em relação à regra do Trapézio. O
resultado será a obtenção de uma regra de integração, chamada regra do

UA
Trapézio Composta. Comece-se por definir uma partição do intervalo de
integração [a, b] em N subintervalos de integração de igual amplitude, mais
propriamente [xk , xk+1 ], com xk+1 − xk = h, k = 0, 1, . . . , N − 1, x0 = a
e xN = b. Definindo a partição desta forma, tem-se que xk = x0 + kh =
a + kh, k = 0, 1, . . . , N , com
b−a
h= .
N
T-
Neste caso, h pode ser visto como a amplitude de cada subintervalo de inte-
gração ou como a distância entre quaisquer dois pontos a utilizar na regra
do trapézio composta.
Procedendo desta forma tem-se que
∫ b
FC

I (f ) = f (x) dx
∫a
x1 ∫ x2 ∫ xN
= f (x) dx + f (x) dx + · · · + f (x) dx
x0 x1 xN −1


N −1 ∫ xk+1
= f (x) dx.
k=0 xk

Aplicando a regra do trapézio simples a cada um destes integrais,


∫ xk+1
h
f (x) dx ≈ [f (xk ) + f (xk+1 )] , k = 0, 1, . . . , N − 1,
xk 2

Capítulo 5
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 110

o que permite concluir que


N −1
h
I (f ) ≈ [f (xk ) + f (xk+1 )] =
2
k=0
h h
= [f (x0 ) + f (x1 )] + [f (x1 ) + f (x2 )]
2 2

g
h
+ · · · + [f (xN −1 ) + f (xN )]
2
ou, de forma equivalente,

l
∫ b
h
f (x) dx ≈ [f0 + 2f1 + 2f2 + · · · + 2fN −1 + fN ] ,
2
UA a

onde fk ≡ f (xk ) , k = 0, 1, . . . , N . É a regra do Trapézio Composta.


No que diz respeito ao erro cometido ao aproximar o valor do integral
pela regra do Trapézio composta, este resulta da soma dos erros que se co-
metem nas aproximações em cada um dos subintervalos onde foi aplicada a
regra do trapézio simples. Tem-se então o teorema que se segue.

Teorema 1.
T-
Sejam f ∈ C 2 ([a, b]) e xk = a + kh, k = 0, 1, . . . , N , em que
b−a
h= . Então o erro na regra do Trapézio Composta é dado por
N
b − a 2 ′′
E (f ) = − h f (η) ,
12
FC

com η ∈ ]a, b[.

Capítulo 5
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 111

5.2.5 A regra de Simpson Composta


y

b
b

b
b

b
b

b
b

b
b
b
b f (x)

g
b
b

l
a x1 x2 x3 x4 x5 b x

UA x0 x6

Para descrever o processo gráfico apresentado anteriormente e corres-


pondente ao caso da aplicação múltipla da regra de Simpson defina-se uma
T-
partição do intervalo de integração [a, b] do seguinte modo: dado n par,
n ≥ 2, sejam

b−a
h=
n
e xj = x0 + jh, j = 0, 1, . . . , n. A partição apresentada é construída por
FC

forma a que seja incluído o ponto médio de cada subintervalo, uma vez que
este ponto é necessário para construir o polinómio interpolador de grau ≤ 2
em cada subintervalo.
Procedendo desta forma tem-se que
∫ b
I (f ) = f (x) dx

a
x2 ∫ x4 ∫ xn
= f (x) dx + f (x) dx + · · · + f (x) dx
x0 x2 xn−2

Capítulo 5
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 112

Aplicando a regra de Simpson a cada um destes integrais


∫ x2j
h n
f (x) dx ≈ [f (x2j−2 ) + 4f (x2j−1 ) + f (x2j )] , j = 1, 2, . . . , ,
x2j−2 3 2

o que permite concluir que


n/2

g
h
I (f ) ≈ [f (x2j−2 ) + 4f (x2j−1 ) + f (x2j )] =
3
j=1
h
= [f (x0 ) + 4f (x1 ) + f (x2 )]

l
3
h
+ [f (x2 ) + 4f (x3 ) + f (x4 )]

UA
isto é,
∫ b
f (x) dx ≈
h
3
h
+ · · · + [f (xn−2 ) + 4f (xn−1 ) + f (xn )]
3

[f0 + 4f1 + 2f2 + 4f3 + 2f4 + · · · + 2fn−2 + 4fn−1 + fn ] ,


a 3

onde fj ≡ f (xj ) , j = 0, 1, . . . , n. Esta regra é chamada regra de Simpson


T-
Composta.
Para o erro de integração temos o seguinte teorema.

Teorema 2.

Considere-se uma função f ∈ C 4 ([a, b]) e um conjunto de pontos


b−a
FC

xj = a + jh, k = 0, 1, 2, . . . , n, onde n é par e h = . Então


n

b − a 4 (iv)
E (f ) = − h f (η) ,
180

com η ∈ ]a, b[.

Capítulo 5
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 113

5.2.6 A regra do Ponto Médio


Teorema 3.

a+b
Sejam f ∈ C 2 ([a, b]), h = b − a e c = o ponto médio do
2
intervalo de integração. Então

g
∫ b
h3 ′′
f (x) dx = h f (c) + f (η) .
a 24

l
UA
Ao contrário das regras já estudadas, trata-se de uma regra aberta.

5.2.7 A regra do Ponto Médio Composta

Procedendo do mesmo modo que se procedeu para as regras (fechadas) do


Trapézio e de Simpson, obtém-se a regra do Ponto Médio Composta:

∫ ∑
N
b
b − a 2 ′′
f (x) dx = h f (ck ) + h f (η) .
a 24
T-
k=1
y

b
b

b
b

b
b

f (x)
FC

b
b

a c1 x1 c2 x2 c3 x3 c4 b x
x0 x4

Capítulo 5
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 114

(i) Uma vantagem em relação à regra do Trapézio, a regra de Newton-


Cotes fechada que tem a mesma ordem, é o menor número de (cálculo
de) valores da função a utilizar na aplicação da regra, apenas se ne-
cessita do valor da função no ponto médio de cada subintervalo de
integração.

g
(ii) Outra vantagem em relação à regra do Trapézio é que o erro é, essen-
cialmente, metade do erro que se comete com a aplicação da regra do
Trapézio.

l
5.3 As regras de Gauss
UA
5.3.1 A regra de Gauss-Legendre

Normalmente são também designadas por regras de quadratura de Gauss


com polinómios de Legendre.
Cada regra de integração da família Newton-Cotes é dada por
∫ b ∑
n
f (x) dx ≈ ωi f (xi )
a k=0
T-
e tem por base a interpolação polinomial da função integranda em n + 1
pontos equidistantes e previamente fixos, xi , i = 0, 1, . . . , n, pertencentes ao
intervalo de integração. Os n + 1 coeficientes ωi , i = 0, 1, . . . , n são deter-
minados por forma a que a integração seja exacta para polinómios de grau
FC

menor ou igual a n.
No que diz respeito às regras de quadratura de Gauss, os n + 1 pontos
xi , i = 0, 1, . . . , n e os n + 1 coeficientes ωi , i = 0, 1, . . . , n formam um con-
junto de 2n + 2 parâmetros, que são determinados por forma a garantir que
a integração é exacta para polinómios de grau menor ou igual a 2n + 1.
Assim sendo, pelo menos do ponto de vista do grau de precisão, as regras
de Gauss representam métodos mais potentes e sofisticados de integração
numérica, permitindo obter regras com grau de precisão igual a 2n+1 apenas
com a utilização de n + 1 pontos, que não são equidistantes.

Capítulo 5
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 115

No entanto, para perceber o mecanismo associado às regras de Gauss é


necessário realizar uma breve introdução ao conceito de funções ortogonais
e aos polinómios de Legendre.

Definição 2.

O conjunto de funções não-nulas {p0 , p1 , . . . , pm } definidas no inter-

g
valo [a, b] diz-se ortogonal em [a, b], se

∫ b = 0, k ̸= j
, ∀k, j = 1, 2, . . . , m.

l
pk (x)pj (x) dx
a ̸= 0, k = j

UA
Teorema 4.

Se {p0 , p1 , . . . , pm } é um conjunto ortogonal de polinómios no inter-


valo [a, b], tal que

grau (pk ) = k, k = 0, 1, . . . , m,

então {p0 , p1 , . . . , pm } é uma base para o espaço vectorial dos poli-


T-
nómios de grau não superior a m, em [a, b].

Teorema 5.
FC

Se {p0 , p1 , . . . , pm } é um conjunto ortogonal de polinómios no inter-


valo [a, b], com grau (pk ) = k, k = 0, 1, . . . , m, então o polinómio pk
possui k zeros distintos no intervalo ]a, b[.

Para as regras de quadratura de Gauss é necessário garantir a ortogonali-


dade em espaços de dimensão infinita, como é o caso do espaço vectorial de
todos os polinómios dependentes de uma única variável. Embora o conjunto
{ }
1, x, x2 , . . . seja uma base para este espaço, ela não é ortogonal. Por isso,

Capítulo 5
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 116

no intervalo [−1, 1], a escolha mais adequada são os polinómios de Legendre,


definidos através da relação
1 dk [( 2 )k ]
pk (x) = x − 1 , k = 0, 1, . . . , m,
2k k! dxk
já que são ortogonais em [−1, 1].
Para construir a regra de integração de Gauss-Legendre, substitui-se a

g
função a integrar pelo polinómio que a interpola nos zeros dos polinómios de
Legendre, isto é, fixado m, xk = αk , k = 1, 2, . . . , m, os zeros do polinómio
de Legendre pm , que existem em [−1, 1], como se viu no teorema 5, serão os

l
pontos de integração. Seja então

com
UA ℓk (x) =
q(x) =

m

k=1
ℓk (x)f (xk ) ,

(x − α1 ) · · · (x − αk−1 ) (x − αk ) · · · (x − αm )
(xk − α1 ) · · · (xk − αk−1 ) (xk − αk ) · · · (xk − αm )
para k = 1, 2, . . . , m.
,

Como
f (x) ≈ q(x), x ∈ [−1, 1] ,
T-
então, integrando ambos os membros obtém-se
∫ 1 ∫ 1 (∑
m
)

m
f (x) dx ≈ ℓk (x)f (xk ) dx = ωk f (xk ) ,
−1 −1 k=1 k=1

onde ∫ 1
FC

ωk = ℓk (x) dx,
−1
para k = 1, 2, . . . , m.

Exemplo 1. Polinómios de Legendre de grau zero, um, dois, três e quatro. Pesos
e pontos de integração
Polinómio de Legendre de grau 0: p0 (x) = 1
Polinómio de Legendre de grau 1: p1 (x) = x
Polinómio de Legendre de grau 2:
√ √
1 3 3
p2 (x) = x − ⇒ p2 (x) = 0 ⇔ α1 = −
2
∨ α2 =
3 3 3

Capítulo 5
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 117

m Zeros do polinómio de Legendre (αk ) Pesos (ωk )


2 α1 = −0.57735026918963 ω1 = 1.00000000000000
α2 = 0.57735026918963 ω2 = 1.00000000000000

Polinómio de Legendre de grau 3:


√ √

g
3 3 3
p3 (x) = x3 − x ⇒ p3 (x) = 0 ⇔ α1 = − ∨ α2 = 0 ∨ α3 =
5 5 5

m Zeros do polinómio de Legendre (αk ) Pesos (ωk )

l
3 α1 = −0.77459666924148 ω1 = 0.55555555555556
α2 = 0 = 0.00000000000000 ω2 = 0.88888888888889

UA α3 = 0.77459666924148

Polinómio de Legendre de grau 4:


6
p4 (x) = x4 − x2 +
7
3
35
ω3 = 0.55555555555556

m Zeros do polinómio de Legendre (αk ) Pesos (ωk )


4 α1 = −0.86113631159405 ω1 = 0.34785484513745
T-
α2 = −0.33998104358486 ω2 = 0.6521451515486255
α3 = 0.33998104358486 ω3 = 0.6521451515486255
α4 = 0.86113631159405 ω4 = 0.34785484513745


FC

Teorema 6.

Uma regra de quadratura de Gauss construída a partir da utilização


de um polinómio de Legendre de grau m no intervalo [−1, 1] possui
um grau de precisão igual a 2m − 1.

De seguida apresenta-se a dedução da regra de Gauss-Legendre para o


caso em que se consideram 2 pontos de integração. O que equivale a consi-
derar o polinómio de Legendre de grau dois.

Capítulo 5
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 118

Este caso corresponde à construção de um polinómio interpolador de


grau n ≤ 1, com x0 = α1 e x1 = α2 , sendo a expressão geral da regra dada
por ∫ 1
f (x) dx ≈ ω0 f (x0 ) + ω1 f (x1 )
−1
onde ω0 , ω1 , x0 , x1 são 2n + 2 = 4 incógnitas a determinar.

g
As incógnitas são determinadas por forma a que a integração seja exacta
para polinómios de grau ≤ 2n + 1 = 3.
A base do espaço vectorial dos polinómios de grau inferior ou igual a 3,
{ }

l
P3 , é 1, x, x2 , x3 . Como o operador integração é linear, a integração deve
ser exacta para as funções que constituem a base do espaço P3 .
UA
Deste modo:

Para f (x) = 1,

Para f (x) = x,
ω0 + ω1 =

ω0 x0 + ω1 x1 =

−1
∫ 1

−1
1
dx = 2,

x dx = 0,
∫ 1
2
Para f (x) = x2 , ω0 x20 + ω1 x21 = x2 dx = ,
−1 3
∫ 1
T-
Para f (x) = x3 , ω0 x30 + ω1 x31 = x3 dx = 0.
−1

Tem-se assim um sistema (não linear) de 4 equações a 4 incógnitas, cuja


solução é
√ √
3 3
ω0 = 1, ω1 = 1, x0 = − = α1 , x1 = = α2 .
FC

3 3
Conclui-se assim que a fórmula de Gauss-Legendre, para dois pontos,
consiste apenas na soma dos valores da função nos dois zeros do polinómio
de Legendre p2 ,
∫ 1 ( √ ) (√ )
3 3
f (x) dx ≈ f − +f
−1 3 3

e calcula uma aproximação para o valor da integral com grau de precisão


igual a 3. Geometricamente o valor da aproximação corresponde à área de
um trapézio, como mostra o gráfico seguinte.

Capítulo 5
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 119

y y

f (x) f (x)
b
b

b
b

b
b b
b

g
√ √
−1 1 x −1 3 3 1 x

3 3

l
Quanto ao erro de integração tem-se o seguinte resultado:

UA
Teorema 7.

Se f ∈ C 4 ([−1, 1]), o erro da regra de Gauss-Legendre com dois


pontos verifica

E(f ) =
f (iv) (η)
135
,

com η ∈ ]−1, 1[.


T-
Observação.

A regra de Gauss-Legendre num intervalo arbitrário [a, b] pode ser


FC

obtida através da mudança de variável


1
t= [(b − a) x + (a + b)] .
2

A definição de funções ortogonais pode ser generalizada do seguinte


modo:

Capítulo 5
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 120

Definição 3.

O conjunto de funções não-nulas {p0 , p1 , . . . , pm } definidas no inter-


valo [a, b] diz-se ortogonal relativamente à função peso ω, se

∫ b = 0, k ̸= j
ω(x)pk (x)pj (x) dx , ∀k, j = 1, 2, . . . , m.
̸= 0, k = j

g
a

l
As regras de Gauss-Legendre correspondem à função peso ω(x) ≡ 1. Para
diferentes funções peso obtêm-se diferentes regras de Gauss.

UA
Exemplo 2. Outras funções peso.


ω
1
1 − x2
e−x
Intervalo
[−1, 1]
[0, +∞[
Nome da regra de Gauss
Gauss-Chebyshev
Gauss-Laguerre
e−x
2
] − ∞, +∞[ Gauss-Hermite


T-
5.4 Exercícios
∫2
1. a) Calcule, com a regra de Simpson, o integral 1 ln(x) dx;
FC

b) Divida o intervalo em dois e, com a regra composta, calcule nova-


mente o integral;
c) Sabendo que uma primitiva de ln(x) é x(ln(x)−1), calcule os erros
de integração Ea e Eb , relativamente aos resultados obtidos em
a) e b);
d) Determine p tal que Eb ≈ Ea hp , com h = 0.5.

2. a) Através do polinómio que interpola f em x0 = −1, x1 = 0 e


x2 = 2/3, construa uma regra de integração para calcular o inte-
∫1
gral −1 f (x) dx;

Capítulo 5
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 121

b) Determine o grau de precisão da regra obtida na alínea anterior.

3. Determine para que polinómios é exacta a regra de integração


∫ b
f (x) dx = (b − a) [f (b) − f (c) + f (a)]
a

g
em que c é o ponto médio entre a e b.

l
UA
T-
FC

Capítulo 5
6. Resolução numérica de

g
Equações Diferenciais

l
Ordinárias
UA
6.1 Introdução
Neste capítulo iremos estudar a resolução numérica do seguinte problema
diferencial de primeira ordem: Determinar uma função y ∈ C 1 (I) que sa-
tisfaz 
 y ′ = f (t, y(t)) , t ∈ I,
T-
(P)
 y (t ) = y ,
0 0

com I = [t0 , t0 + T ] ⊂ R, 0 < T < ∞, e f (t, y) uma função real definida em


S = I ×]−∞, +∞[, contínua em relação a ambas as variáveis. Designa-se por
problema de Cauchy ou problema de valor inicial (PVI). Se f não depende
FC

explicitamente de t, ou seja, se depende de t apenas por intermédio de y,


então a equação diferencial diz-se autónoma.
A definição que se segue é importante para estabelecer as condições de
existência e unicidade de solução.

122
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 123

Definição 4.

Se existe uma constante L > 0, independente de t, tal que

|f (t, y1 ) − f (t, y2 )| ≤ L |y1 − y2 | ,

para todo o t ∈ I e quaisquer y1 e y2 , então diz-se que a função f (t, y)

g
satisfaz uma condição de Lipschitz com respeito a y.

l
O teorema que segue estabelece a existência e unicidade de solução para o
problema (P).
UA
Teorema 8.

Se

(i) f (t, y) é contínua relativamente a t;

(ii) f (t, y) satisfaz uma condição de Lipschitz com respeito a y,

então, para t ∈ I, o problema de Cauchy,


T-

 y ′ = f (t, y(t)) , t∈I
 y (t ) = y .
0 0

possui uma única solução.


FC

É assim importante verificar que a função f satisfaz uma condição de Lips-


chitz. Uma maneira de o fazer é determinar um limite superior para a de-
rivada de f , em relação a y, como mostram a definição e o teorema que
seguem.

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 124

Definição 5.

Um conjunto S diz-se convexo se, para quaisquer (t1 , y1 ) , (t2 , y2 ) ∈ S,


se garante que

((1 − λ) t1 + λt2 , (1 − λ) y1 + λy2 ) ∈ S,

g
para todo 0 ≤ λ ≤ 1.

l
Teorema 9.

Seja f (t, y) uma função definida num conjunto convexo S ⊆ R2 . Se


UA
existir uma constante L > 0, da tal forma que

∂f




∂y (t, y) ≤ L, ∀ (t, y) ∈ S,

então f satisfaz uma condição de Lipschitz em S com respeito a y


com constante de Lipschitz L.
T-
A função f e a condição inicial, y0 , são os dados do problema. Nas aplica-
ções, ou na implementação de um método numérico, é possível que os dados
sejam aproximações. Nestas condições, iremos resolver o seguinte problema
perturbado: 
 z ′ (t) = f (t, z(t)) + δ (t) , t ∈ I
FC

 z (t ) = y + δ
0 0 0

onde δ0 ∈ R e δ é uma função contínua em I.


É então importante poder responder à questão: Até que ponto é que a
solução do problema de condição inicial é sensível às perturbações intro-
duzidas? Esta questão leva-nos ao conceito de estabilidade da solução do
problema de Cauchy. Temos então a seguinte definição:

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 125

Definição 6.

Seja I um conjunto limitado. O problema (P) é estável em I, se, para


toda a perturbação (δ0 , δ (t)) satisfazendo
{
|δ0 | < ε
|δ (t)| < ε, ∀t ∈ I,

g
com ε > 0 suficientemente pequeno, então

∃C > 0, independente de ε : |y (t) − z (t)| < Cε, ∀t ∈ I.

l
UA
Se I não é limitado superiormente diz-se que o problema de Cauchy é
assimptoticamente estável se, além de ser estável em todo o subintervalo
limitado de I, também se verifica que

lim |y (t) − z (t)| = 0.


t→+∞

6.2 Métodos numéricos para resolver (P)


T-
Fixemos primeiro algumas notações. Consideraremos 0 < T < ∞, de forma
que o intervalo de integração será I = [t0 , t0 + T ]. Dado N > 0, fazemos
uma discretização uniforme do intervalo de integração através de h = T /N
e tn = t0 + nh, n = 0, 1, · · · , N . A h chamamos passo da discretização.
FC

Desigamos por y(tn ) o valor da solução de (P) em tn e por yn uma sua apro-
ximação, em geral obtida através de um método numérico. Assim a solução
aproximada, obtida através de um método numérico, é um conjunto discreto
de valores yn . Finalmente fn denota a aproximação que se obtém para o va-
lor de f no par (tn , yn ), ou seja, fn ≡ f (tn , yn ).

6.2.1 O método de Euler explícito

Seja então a equação diferencial y ′ = f (t, y (t)), com t0 ≤ t ≤ t0 + T , com a


condição inicial y (t0 ) = y0 .

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 126

Relembre-se que, para uma função y com derivadas contínuas até à se-
gunda ordem, a fórmula de Taylor, em torno de t, permite escrever que:

h2 ′′
y (t + h) = y (t) + hy ′ (t) + y (ξ) ,
2
com ξ ∈ ]t, t + h[, isto é,

g
y (t + h) − y (t) h
= y ′ (t) + y ′′ (ξ) .
h 2
Obtém-se então que
y (t + h) − y (t)

l
h

UA
é uma aproximação para a derivada. É uma diferença finita progressiva.
Por outro lado, as hipóteses de continuidade sobre f implicam que

y ′ (tn ) = f (tn , y (tn )) ≈ f (tn , yn ) , n = 1, 2, . . . , N.

Assim sendo, tomando a aproximação de primeira ordem para a derivada


em t = tn , temos que

y (tn+1 ) ≈ y (tn ) + hf (tn , yn ) .


T-
ou ainda
yn+1 = yn + hfn , n = 0, 1, 2, . . . , N − 1,

onde fn ≡ f (tn , yn ).
A fórmula anterior representa a recorrência do método de Euler explícito.
FC

Definição 7.

Chama-se erro de truncatura local à quantidade

h ′′
τn (h) = y (ξn ) ,
2

com ξn ∈ ]tn , tn+1 [.

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 127

Note-se que o erro de truncatura local, que afecta a aproximação para


a derivada de y em tn , dá-nos a indicação de quão bom é o método dado
que, essencialmente, tudo se resume à aproximação da derivada. Verifica-se
assim que, supondo limitada a segunda derivada de y, o erro de truncatura
local é da ordem de h (hp , com p = 1!). Isto significa que o método de Euler
explícito é de primeira ordem (p = 1).

g
A dedução do método de Euler pode igualmente ser feita a partir de inte-
gração numérica. Integrando a equação diferencial, entre t e t + h, obtemos
sucessivamente

l
∫ t+h ∫ t+h

y (t) dt = f (s, y (s)) ds

UA t

y (t + h) − y (t) =
t
∫ t+h

y (t + h) = y (t) +
f (s, y (s)) ds
∫ t+h

t
f (s, y (s)) ds

Considerando a regra de integração do rectângulo à esquerda, dada por


∫ b
h2 ′
f (x) dx = hf (a) + f (η)
2
T-
a

com η ∈ [a, b] e h = b − a, concluímos que, com t = tn ,

y (tn+1 ) ≈ y (tn ) + hf (tn , y (tn )) ,

de onde se deduz a fórmula de recorrência do método de Euler Explícito,


FC

yn+1 = yn + hfn , n = 0, 1, 2, . . . , N − 1.

Exemplo 3. Resolução numérica, com o método de Euler explícito, do problema



 y ′ = y (t) , t ∈ [0, 1]
 y (0) = 1.

utilizando os passos h = 0.25 e h = 0.1.

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 128

Considerando então h = 0.25, a discretização correspondente a este


passo de discretização é dada por:

t0 = 0, t1 = t0 + h = 0.25,
t2 = t0 + 2h = 0.5, t3 = t0 + 3h = 0.75,
t4 = t0 + 4h = tN = 1.

g
Por outro lado, o método de Euler explícito implica que

yn+1 = yn + hfn = yn + hyn = (1 + h) yn = 1.25 yn ,

l
com n = 0, 1, 2, 3 e considerando a condição inicial y (0) = 1, tem-se que:
UA y0 = 1
y1 = (1 + h) × y0 = 1.25
y2 = (1 + h) × y1 = 1.25 × 1.25 = 1.5625
y3 = (1 + h) × y2 = 1.25 × 1.5625 = 1.95313
y4 = (1 + h) × y3 = 1.25 × 1.95313 = 2.44141

A comparação dos valores obtidos através da aplicação do método de


T-
Euler explícito com os valores da solução da equação diferencial, y(t) = et ,
revela a pouca precisão das aproximações numéricas:

tn yn y (tn )
0.00 1.00000 1.00000
FC

0.25 1.25000 1.28403


0.50 1.56250 1.64872
0.75 1.95313 2.11700
1.00 2.44141 2.71828

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 129
y

yn ≈ y(tn )
y(t) = et b
b

b
b

b
b

b
b

b
b
b
b

bbb
b

g
b
b

l
0 t1 t2 t3 t4 = 1 x
Ainda que as aproximações continuem a não ser boas, com h = 0.1 são

UA
ligeiramente melhores:
tn
0.00
0.10
..
.
0.80
1.00000
1.10000
..
.
2.14359
yn y (tn )
1.00000
1.10517
..
.
2.22554
0.90 2.35795 2.45960
1.00 2.59374 2.71828
y
T-
yn ≈ y(tn )
y(t) = et b
b

b
b

b
b

b
b

b
b
b
b

b
b
b
b

b
b
b
b

bbb
b
FC

bbb
b

bb
bb

b
bb

b
b

b
b

0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 x

Exemplo 4. Resolução numérica, com o método de Euler explícito, do problema



 y ′ = t − y + 1, t ∈ [0, 1]
 y (0) = 1.

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 130

utilizando o passo h = 0.1.


A solução da equação diferencial é y(t) = e−t + t. Com o passo h = 0.1
a discretização é:

t0 = 0, t1 = 0.1, t2 = 0.2,
t3 = 0.3, t4 = 0.4, t5 = 0.5,

g
t6 = 0.6, t7 = 0.7, t8 = 0.8,
t9 = 0.9, t10 = 1.0.

l
Por outro lado, o método de Euler explícito é dado por

UA
yn+1 = yn + hfn = yn + h (tn − yn + 1) = (1 − h) yn + h (tn + 1)

com n = 0, 1, . . . , N − 1 = 9. Obtendo-se então os seguintes resultados:

0.00
tn yn
1.00000
y (tn )
1.00000
0.10 1.00000 1.00484
0.20 1.01000 1.01873
0.30 1.02900 1.04082
T-
0.40 1.05610 1.07032
0.50 1.09049 1.10653
0.60 1.13144 1.14881
0.70 1.17830 1.19659
FC

0.80 1.23047 1.24933


0.90 1.28742 1.30657
1.00 1.34868 1.36788

A maior vantagem do método de Euler explícito é a sua simplicidade. No


entanto, os resultados obtidos possuem fraca precisão, a menos que se utilize
um passo muito pequeno, o que torna o processo demasiado lento.

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 131

6.2.2 Análise do erro no método de Euler explícito

Vamos agora obter uma estimativa para o erro que se comete na aproximação
obtida pelo método de Euler explícito. Comecemos por enunciar dois lemas
que são úteis na demonstração da estimativa.
Lema 1.

g
0 ≤ (1 + x)m ≤ emx , para todo o x ≥ −1 e para todo o valor positivo
m.

l
Lema 2.

UA
Sejam s e t números reais positivos e {uk }k=0,1,...,n uma sucessão tal
que u0 ≥ −t/s e uk+1 ≤ (1 + s)uk + t, k = 0, 1, 2, . . . , k − 1. Então

uk+1 ≤ e (k+1)s
(
u0 +
s
t
)
− .
s
t

Estamos agora em condições de demonstrar a seguinte estimativa para o erro


T-
no método de Euler explícito.
Teorema 10.

Seja f uma função contínua satisfazendo uma condição de Lipschitz,


com constante L, no conjunto S = I ×R. Sejam y a solução de (P) tal
que |y ′′ (t)| ≤ M2 , ∀t ∈ I e y1 , y2 , . . . , yN a sucessão de aproximações
FC

obtidas pelo método de Euler explícito. Então

hM2 [ L(tn −t0 ) ]


|y (tn ) − yn | ≤ e −1 ,
2L

com n = 1, . . . , N .

Seja n ≥ 1. Relembre-se que o método de Euler explícito dado por

yn = yn−1 + hf (tn−1 , yn−1 ) ,

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 132

é deduzido a partir de

h2 ′′
y (tn ) = y (tn−1 ) + hf (tn−1 , y (tn−1 )) + y (ηn )
2
com ηn ∈ ]tn−1 , tn [.
Por subtracção das duas relações anteriores obtém-se:

g
h2 ′′
y (tn )−yn = y (tn−1 )−yn−1 +hf (tn−1 , y (tn−1 ))−hf (tn−1 , yn−1 )+ y (ηn ) .
2
Logo,

l
|y (tn ) − yn | ≤ |y (tn−1 ) − yn−1 | + h |f (tn−1 , y (tn−1 )) − f (tn−1 , yn−1 )|

UA +
h2 ′′
2

y (ηn )

Como f satisfaz uma condição de Lipschitz relativamente a y e a segunda


derivada de y é limitada, a relação do erro pode ser escrita da seguinte forma:

h2 M2
|y (tn ) − yn | ≤ (1 + hL) |y (tn−1 ) − yn−1 | +
2
A aplicação do lema 2 permite escrever
T-
( )
h2 M2 h2 M2
|y (tn ) − yn | ≤ e nhL
|y (t0 ) − y0 | + − .
2hL 2hL

Como que y (t0 ) = y0 e que tn = t0 + nh, conclui-se que

h2 M2 h2 M2
|y (tn ) − yn | ≤ e(tn −t0 )L −
FC

.
2hL 2hL
ou seja,
hM2 ( (tn −t0 )L )
|y (tn ) − yn | ≤ e −1 ,
2L
para n = 1, 2, . . . , N . △
A estimativa obtida é do tipo exponencial, o que implica que, para gran-
des intervalos de integração, a janela do erro seja muito grande. Temos,
porém, o seguinte resultado:

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 133

Teorema 11.

∂f
Se f é decrescente em y, isto é, se ≤ 0, então, supondo y(t0 ) = y0 ,
∂y

hM2 (tn − t0 )
|y (tn ) − yn | ≤ ,
2

g
com n = 1, . . . , N .

l
Observação.

UA ∗
yn+1 = yn∗ + hf (tn , yn∗ ) + ρn ,

sendo ρn o erro de arredondamento local. Se ρh = max0≤n≤N |ρn |,


então tem-se que
( )
h δM1
T-
|y (tn ) − yn∗ | ≤ C M2 +
2 h

onde M1 e M2 são os máximos, no intervalo [t0 , t0 + T ], de y e y ′′ ,


respectivamente, e δ ≈ ρ(h)/M1 .
FC

6.2.3 O método de Euler implícito

Se desenvolvermos, em série de Taylor, a função y (t − h) em torno de t até


à primeira ordem obtemos:

h2 ′′
y (t − h) = y (t) − hy ′ (t) + y (ξ) ,
2

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 134

com ξ ∈ ]t − h, t[. Ou, de outra forma,

h2 ′′
y (t − h) − y (t) = −hy ′ (t) + y (ξ) ⇔
2
y (t) − y (t − h) h
= y ′ (t) − y ′′ (ξ) .
h 2
O que quer dizer que a diferença finita regressiva

g
y (t) − y (t − h)
.
h

l
é uma aproximação, de primeira ordem, para a derivada y ′ (t).
Assim se consideramos t = tn+1 teremos

UA y (tn+1 ) ≈ y (tn ) + hf (tn+1 , yn+1 ) ,

isto é, com f (tn+1 , yn+1 ) ≡ fn+1 ,

yn+1 = yn + hfn+1 , n = 0, 1, 2, . . . , N − 1.

A fórmula anterior representa o esquema de recorrência do método de


Euler implícito, sendo o erro de truncatura local dado por
T-
h
τn (h) = − y ′′ (ξn ) ,
2

com ξn ∈ ]tn , tn+1 [. Tal como o método de Euler explícito, o método de Euler
implícito é um método de primeira ordem (o erro de truncatura local tende
FC

para zero como h).


À semelhança do que acontece com o método de Euler Explícito, a de-
dução do método pode também ser feita recorrendo à integração numérica,
agora com a regra do rectângulo à direita:
∫ b
h2 ′
f (x) dx = hf (b) − f (η)
a 2

com η ∈ [a, b], h = b − a. Deixam-se os detalhes como exercício.

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 135

Exemplo 5. Resolução numérica, com o método de Euler Implícito, do pro-


blema 
 y ′ = y (t) , t ∈ [0, 1]
 y (0) = 1.

utilizando os passos h = 0.25 e h = 0.1.

g
Aqui, atendendo à fórmula do método de Euler implícito, obtém-se

yn+1 = yn + hfn+1 ⇔ yn+1 = yn + hyn+1


⇔ (1 − h) yn+1 = yn

l
yn
⇔ yn+1 = ,
1−h
UA
com n = 0, 1, 2, 3, o que fornece os seguintes resultados:

y1 =

y2 =
y0
1−h
y1
1−h
= 1.33333

=
1.33333
1−h
= 1.77778
y2 1.77778
y3 = = = 2.37037
1−h 1−h
y3 2.37037
y4 = = = 3.16049
T-
1−h 1−h
Comparando as aproximações obtidas com os valores provenientes da
solução da equação diferencial, é notória a falta de qualidade das aproxima-
ções.
FC

tn yn y (tn )
0.00 1.00000 1.00000
0.25 1.33333 1.28403
0.50 1.77778 1.64872
0.75 2.37037 2.11700
1.00 3.16049 2.71828

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 136
y
b
b

yn ≈ y(tn )
y(t) = et b
b

b
b

b
b

b
b

b
b

b
b
b
b

g
b
b

l
0 t1 t2 t3 t4 = 1 t

Com um passo menor, h = 0.1, os resultados melhoram:


UA tn
0.00
0.10
..
.
0.90
1.00000
1.11111
..
.
2.58117
yn y (tn )
1.00000
1.10517
..
.
2.45960
1.00 2.86797 2.71828
y
T-
yn ≈ y(tn ) b
b

y(t) = et b
b
b
b

b
b

b
b

b
b

b
b
b
b

b
b
b
b

b
b
b
b

bbb
b

bb
bb
FC

b
bb

b
b

b
b

0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t

6.2.4 O método de Crank-Nicolson

O método de Crank-Nicolson pode ser visto como uma combinação dos dois
métodos apresentados anteriormente.

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 137

Apesar de também poder ser deduzido a partir da fórmula de Taylor,


apresenta-se apenas a dedução a partir da regra de integração do Trapézio,
pelo que é também usual designar este método por método do Trapézio.
Integrando a equação diferencial em t ∈ [tn , tn+1 ] tem-se:
∫ tn+1
h[ ′ ] h3
y ′ (t) dt = y (tn ) + y ′ (tn+1 ) − y ′′′ (ηn )

g
tn 2 12

com ηn ∈ ]tn , tn+1 [.


Como, ∫ tn+1

l
y ′ (t) dt = y (tn+1 ) − y (tn ) ,
tn

UA
então

yn+1 = yn +
h[ ′
2

h
2
] h3
y (tn ) + y ′ (tn+1 ) − y ′′′ (ξn ) .
y (tn+1 ) = y (tn ) +
12
Obtemos assim a recorrência para o método de Crank-Nicolson:

[fn + fn+1 ] , n = 0, 1, . . . , N − 1.

O método de Crank-Nicolson é um exemplo de um método de Euler ge-


neralizado, ou seja, é uma combinação dos métodos de Euler explícito e
T-
implícito,
yn+1 = yn + h [(1 − θ) fn + θfn+1 ] ,

em que 0 ≤ θ ≤ 1.
Se θ = 0 obtém-se o método de Euler explícito.
Se θ = 1 obtém-se o método de Euler implícito.
FC

Se 0 < θ < 1 obtém-se um método semi-implícito, como é exemplo o


método de Crank-Nicolson (θ = 1/2).
Deve notar-se que, enquanto os métodos de Euler explícito e implícito
são de primeira ordem, o erro de truncatura local tende para zero com h, no
caso do método de Crank-Nicolson, o erro de truncatura local, que é dado
por
h2 ′′′
τn (h) = − y (ηn ) ,
12
tende para zero com h2 , ou seja, o método é de segunda ordem.

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 138

Isto significa que quanto mais pontos forem considerados na discretiza-


ção, mais rapidamente o erro tende para zero, ou seja, melhor será a apro-
ximação, fornecendo assim melhores resultados do que os métodos de Euler
explícito e implícito.

Exemplo 6. Resolução numérica, com o método de Crank-Nicolson, do pro-

g
blema 
 y ′ = y (t) , t ∈ [0, 1]
 y (0) = 1.

l
utilizando os passos h = 0.25 e h = 0.1.
Considerando então h = 0.25, a discretização correspondente a este
UA
passo de discretização é dada por:

t0 = 0,
t2 = t0 + 2h = 0.5,
t4 = t0 + 4h = tN = 1,
t1 = t0 + h = 0.25,
t3 = t0 + 3h = 0.75,

com N = (1 − 0)/h = 1/0.25 = 4 e tn = t0 + nh, n = 0, 1, 2, 3, 4.


Por outro lado, o método de Crank-Nicolson é dado por
T-
h
yn+1 = yn + [fn+1 + fn ] ,
2
com fn ≡ f (tn , yn ) = yn e fn+1 ≡ f (tn+1 , yn+1 ) = yn+1 . Portanto

h h h h
FC

yn+1 = yn + fn+1 + fn = yn + yn+1 + yn


2 2 2 2
ou seja,

h h
yn+1 − yn+1 = yn + yn ⇔
( )2 ( 2)
h h
1− yn+1 = 1 + yn ⇔
2 2
2+h
yn+1 = yn
2−h
com n = 0, 1, 2, 3.

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 139

Considerando então a condição inicial y (0) = 1 = y0 , tem-se que:

y0 = 1
2 + 0.25
y1 = × y0 = 1.28571
2 − 0.25
2 + 0.25
y2 = × y1 = 1.28571 × 1.28571 = 1.65306

g
2 − 0.25
2 + 0.25
y3 = × y2 = 1.28571 × 1.65306 = 2.12536
2 − 0.25

l
2 + 0.25
y4 = × y3 = 1.28571 × 2.12536 = 2.73261
2 − 0.25

UA
Nota-se perfeitamente a melhoria da qualidade dos resultados em re-
lação aos métodos de Euler, mas, comparando-os com os valores obtidos
com a solução da equação diferencial, verifica-se que, mesmo assim, ainda
são resultados afectados por um erro considerável. Melhorará, obviamente,
quando se diminuir o tamanho do passo.

tn yn y (tn )
0.00 1.00000 1.00000
T-
0.25 1.28571 1.28403
0.50 1.65306 1.64872
0.75 2.12536 2.11700
1.00 2.73261 2.71828
y
FC

yn ≈ y(tn )
y(t) = et b
bb

b
bb

b
b

b
b

b
b

0 t1 t2 t3 t4 = 1 t

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 140

Com um passo mais pequeno, h = 0.1, os resultados melhoram:


tn yn y (tn )
0.00 1.00000 1.00000
0.10 1.10526 1.10517
.. .. ..
. . .

g
0.90 2.46145 2.45960
1.00 2.72055 2.71828
y

yn ≈ y(tn )

l
y(t) = et b
b

b
b

UA b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b

0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t

T-
6.3 Métodos preditores-correctores
Nos métodos implícitos ou semi-implícitos, como os métodos de Euler im-
plícito e o de Crank-Nicolson, raramente é possível escrever um esquema de
FC

recorrência por forma a ”explicitar” yn+1 em função de yn , como foi feito nos
exemplos apresentados.
De facto, na maioria dos casos obtém-se uma equação não linear em
yn+1 , o que obriga à utilização de métodos para a resolução de equações
não lineares, como os métodos de Newton ou da Secante, para obter uma
aproximação para yn+1 .
Por exemplo, para o problema de valor inicial

 y ′ = −y ln(y), t ∈ [0, T ], T > 0,
 y (0) = y ,
0

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 141

o método de Crank-Nicolson escreve-se


h
yn+1 = yn − [yn+1 ln (yn+1 ) + yn ln (yn )] ,
2
para n = 0, 1, . . .. É fácil de perceber que neste caso não é possível descre-
ver yn+1 de forma explícita em função de yn , o que obriga à recorrência a
métodos para resolver equações não lineares.

g
No entanto é possível recorrer a um processo bem mais prático e bem
mais simples, o qual se baseia numa ideia de “preditor-corrector”: em vez
de se aplicar directamente o método de Crank-Nicolson e resolver a equação

l
resultante em função de yn+1 , utiliza-se um método mais simples, por exem-
plo, o método de Euler explícito (preditor), numa primeira fase, obtendo-se

UA
uma primeira aproximação para yn+1 ,

yen+1 = yn + hf (tn , yn ) .

De seguida utiliza-se esta aproximação para obter o valor de yn+1 com o


método de Crank-Nicolson (corrector), ou seja,
h
[f (tn , yn ) + f (tn+1 , yen+1 )] .
yn+1 = yn +
2
O método apresentado desta forma pode ser sintetizado pela seguinte
T-
fórmula,
h
yn+1 = yn + [f (tn , yn ) + f (tn+1 , yn + hf (tn , yn ))] .
2
que corresponde ao método de Euler modificado.
Exemplo 7. Resolução de

FC

 y ′ = y (t) , t ∈ [0, 1]
 y (0) = 1.

utilizando o passo h = 0.25.


Considerando então h = 0.25, a discretização correspondente a este
passo de discretização é dada por:

t0 = 0, t1 = t0 + h = 0.25,
t2 = t0 + 2h = 0.5, t3 = t0 + 3h = 0.75,
t4 = t0 + 4h = tN = 1,

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 142

com N = (1 − 0)/h = 1/0.25 = 4 e tn = t0 + nh, n = 0, 1, 2, 3, 4.


No papel de preditor temos o método de Euler explícito:

yen+1 = yn + hfn

com fn ≡ f (tn , yn ) = yn .

g
No papel de corrector, usa-se o método de Crank-Nicolson, obtendo-se

h[ ]
yn+1 = yn + fn + fen+1
2

l
com fen+1 ≡ f (tn+1 , yen+1 ).

UA
Procedendo deste modo, os resultados que se obtêm são apresentados na
tabela que se segue.

tn
0.00
yen yn
1.00000
y (tn )
1.00000
0.25 1.25000 1.28125 1.28403
0.50 1.60156 1.64160 1.64872
0.75 2.05200 2.10330 2.11700
T-
1.00 2.62913 2.69486 2.71828
y

yn ≈ y(tn )
y(t) = et bb
bb
FC

b
bb

b
b

b
b

b
b

0 t1 t2 t3 t4 = 1 t

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 143

6.4 Os métodos de Runge-Kutta


O método mais simples para resolver numericamente um PVI é o método de
Euler explícito, apresentado por Leonhard Euler em 1768 na sua obra ”Ins-
titutiones Calculi Integralis”. Contudo, a sua simplicidade contrasta com a
falta de precisão dos resultados numéricos que derivam da sua aplicação.

g
Por exemplo, se pretendermos um resultado com 6 algarismos significativos,
o método de Euler obriga à utilização de uma discretização com, aproxi-
madamente, um milhão de pontos. A precisão pode ser aumentada com a

l
construção de métodos de Taylor de ordem superior. No entanto, esse proce-
dimento tem a desvantagem destes métodos obrigarem ao cálculo de muitas

UA
derivadas da função f para se obterem resultados com melhor precisão. Um
processo que se pode tornar penoso ou mesmo impraticável.
Uma alternativa foi apresentada por Carl Runge em 1875, a qual consiste
em considerar
(
h
(
y (t0 + h) ≈ y0 + hf t0 + , y t0 +
h
))
,
2 2
( )
h
partindo do conhecimento de y (t0 ). Mas, que valor atribuir a y t0 + ?
2
T-
A sugestão apresentada por Runge foi a de considerar o método de Euler
h
com passo igual a . A aplicação sucessiva deste processo permite definir o
2
seguinte método iterativo:

k1 = f (tn , yn )
( )
FC

h h
k2 = f tn + , y n + k1
2 2
yn+1 = yn + hk2 ,

com n = 0, 1, 2, . . . , N − 1. Apesar de recorrer ao método de Euler explícito,


o método numérico assim construído é mais preciso e não necessita do cál-
culo das derivadas de f . A generalização desta ideia deu origem à seguinte
definição.

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 144

Definição 8.

Seja m um número inteiro e aij , i, j = 1, 2, . . . , m, i > j,


ci , i = 2, 3, . . . , m e bi , i = 1, 2, . . . , m coeficientes reais. O método
dado por

g
k1 = f (tn , yn )
k2 = f (tn + c2 h, yn + a21 hk1 )
k3 = f (tn + c3 h, yn + a31 hk1 + a32 hk2 )

l
k4 = f (tn + c4 h, yn + a41 hk1 + a42 hk2 + a43 hk3 )
..

UA .
km = f (tn + cm h, yn + am1 hk1 + am2 hk2 + · · · + am,m−1 hkm−1 )
yn+1 = yn + h [b1 k1 + b2 k2 + · · · + bm km ] ,

com n = 0, 1, 2, . . . , N − 1, é designado por método de Runge-Kutta


de m etapas para a resolução numérica do problema de Cauchy.
T-
Usualmente considera-se

i−1
ci = aij , i = 2, 3, . . . , m.
j=1

Uma notação muito utilizada na prática para os métodos de Runge-Kutta


FC

é aquela que foi apresentada em 1964 por John Charles Butcher e é dada
pelo quadro que se segue

0
c2 a21
c3 a31 a32
.. .. .. ..
. . . .
cm am1 am2 ··· am,m−1
b1 b2 ··· bm−1 bm

Este quadro é conhecido por quadro de Butcher.

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 145

Um dos métodos de Runge-Kutta que é muito utilizado é aquele que é


dado por

k1 = f (tn , yn )
( )
h h
k2 = f tn + , yn + k1
2 2
( )

g
h h
k3 = f tn + , yn + k2
2 2
k4 = f (tn + h, yn + hk3 )
h[ ]

l
yn+1 = yn + k1 + 2k2 + 2k3 + k4 ,
6

UA
com n = 0, 1, 2, . . . , N − 1, e é designado por método de Runge-Kutta de 4
etapas, ou simplesmente por RK4.

Exemplo 8. Resolução numérica, pelo método RK4, do problema



 y ′ = y (t) , t ∈ [0, 1]
 y (0) = 1,

utilizando o passo h = 0.25.


T-
Considerando então h = 0.25, a discretização correspondente a este
passo de discretização é dada por:

t0 = 0, t1 = t0 + h = 0.25,
t2 = t0 + 2h = 0.5, t3 = t0 + 3h = 0.75,
FC

t4 = t0 + 4h = tN = 1,

com N = (1 − 0)/h = 1/0.25 = 4 e tn = t0 + nh, n = 0, 1, 2, 3, 4.


Para exemplificar a aplicação dos métodos de Runge-Kutta na resolução
do PVI, considere-se então o RK4. Neste caso é necessário obter, em cada tn ,

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 146

os valores de ki , i = 1, 2, 3, 4, com

k1 = f (tn , yn )
( )
h h
k2 = f tn + , yn + k1
2 2
( )
h h
k3 = f tn + , yn + k2

g
2 2
k4 = f (tn + h, yn + hk3 )
h[ ]
yn+1 = yn + k1 + 2k2 + 2k3 + k4 ,

l
6
com n = 0, 1, 2, 3.

UA
Procedendo deste modo, os resultados que se obtêm são os seguintes.

tn
0.00
0.25
0.50
yn
1.00000
1.28402
1.64870
y (tn )
1.00000
1.28403
1.64872
0.75 2.11696 2.11700
1.00 2.71821 2.71828
T-
y

yn ≈ y(tn )
y(t) = et b
b

b
b
FC

b
b

b
b

b
b

0 t1 t2 t3 t4 = 1 t

Para terminar apresentamos os erros associados às aproximações obtidas,


com os vários métodos numéricos, na resolução de (P), com h = 0.25.

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 147

|e (yn )| = |y (tn ) − yn |
tn EE EI CN PC RK4
0.00 0.00 0.00 0.00 0.00 0.00
0.25 0.0340 0.0493 0.00169 0.00278 0.00000849
0.50 0.0862 0.129 0.00434 0.00712 0.0000218
0.75 0.164 0.253 0.00836 0.0137 0.0000420

g
1.00 0.277 0.442 0.0143 0.0234 0.0000719
| e (yn ) |

0.45 b

l
b

bb
Euler Implícito
bb
Euler Explícito 0.4
bb
Preditor-corrector

UA bb

bb
Crank-Nicolson
RK4
0.35

0.3

0.25

0.2

0.15
b
b
b
b

b
b
b
b

0.1 b
b

0.05 b
b

b
b
b
b
b
b b
b
b
T-
b
bbbb
b b
b
b bbbb bb bb

0 t1 t2 t3 t4 = 1 t

6.5 Erro de truncatura local, global e de consistência


FC

A definição de erro de truncatura local, que foi vista a propósito do método de


Euler explícito, pode ser generalizada a qualquer outro método numérico de
forma a que seja sempre uma medida, local, da qualidade da aproximação da
derivada. Pode-se também obter uma medida global do erro de truncatura,
de acordo com a seguinte definição.

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 148

Definição 9.

Chama-se erro de truncatura global, τ (h), à quantidade

τ (h) = max |τn (h)| .


0≤n≤N −1

g
Estamos agora em condições de definir a consistência de um método nu-
mérico.

l
Definição 10.

UA
Se o erro de truncatura local de um método numérico para resolver
(P) é da ordem de hp , p > 0, isto é, se existe uma constante C > 0
tal que
|τn (h)| ≤ Chp , n = 0, 1, . . . , N − 1.

diz-se que o método é consistente, com ordem de consistência p.


T-
A noção de consistência traduz quão adequado é o método numérico
para aproximar o problema diferencial. De acordo com esta definição, os
dois métodos de Euler (explícito e implícito) são consistentes com ordem de
consistência p = 1, enquanto que o método de Crank-Nicolson também o é
mas com uma ordem de consistência p = 2.
FC

6.5.1 Estabilidade

O conceito de estabilidade de um problema numérico garante que, num in-


tervalo limitado para t, pequenas perturbações nos dados do problema con-
duzem a perturbações limitadas na solução numérica, quando h → 0. Este
conceito é portanto análogo ao de estabilidade formulado para o problema
de valor inicial na Introdução deste capítulo.

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 149

Definição 11.

Um método é estável se para todo ϵ > 0, existe h0 > 0 e existe uma


constante positiva C(I) tais que para qualquer passo h, 0 < h < h0 ,
se tem

|ρn | ≤ ϵ =⇒ |zn − yn | ≤ Cϵ, ∀n = 0, 1, · · · , N,

g
em que zn é solução do problema perturbado, em cada passo, por ρn .

l
Observação.

UA
Para o método de Euler explícito, zn é a solução de

zn+1 = yn + hf (tn , yn ) + ρn .

6.5.2 Convergência e ordem de convergência


Definição 12.
T-
Um método numérico para a resolução do problema (P) diz-se con-
vergente, com ordem de convergência é p, se existir uma constante
C > 0, tal que
|y (tn ) − yn | ≤ Chp ,
FC

para todo o n = 0, 1, . . . , N .

Pode-se estimar a ordem de convergência do seguinte modo: admita-se que


para diferentes valores de h, hn e hn−1 , se pode escrever que

en ≡ e(yn ) = Chpn e en−1 ≡ e(yn−1 ) = Chpn−1 .

Então uma estimativa para a ordem de convergência, p, é

p = ln (en /en−1 ) /ln (hn /hn−1 ) .

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 150

Concluímos com o teorema que é o resultado fulcral da análise aos métodos


numéricos para equações diferenciais ordinárias.

Teorema 12 (de Lax-Richtmyer).

Um método é convergente se e só se é consistente e estável.

g
No que diz respeito ao método de Euler explícito, recorde-se a forma
como foi obtido a partir do desenvolvimento em série de Taylor,

l
h2 ′′
y (tn+1 ) = y (tn ) + hy ′ (tn ) + y (ξn ) ,
2

UA
com ξn ∈ ]tn , tn+1 [. O erro que afecta a aproximação yn+1 pode ser decom-
posto da seguinte forma:

e (yn+1 ) = y (tn+1 ) − yn+1 = [y (tn+1 ) − un+1 ] + [un+1 − yn+1 ]

onde un+1 representa a aproximação que se obtém para y (tn+1 ) aplicando


o método de Euler partindo com a condição yn = y (tn ), isto é, do valor
da solução da equação diferencial e não da sua aproximação. Deste modo,
como
T-
y (tn+1 ) − un+1 = hτn (h)
e
un+1 − yn+1 = e (yn ) + h [f (tn , y (tn )) − f (tn , yn )] ,
tem-se que
FC

e (yn+1 ) = hτn (h) + e (yn ) + h [f (tn , y (tn )) − f (tn , yn )]

o que mostra como o erro que se comete na aproximação para a solução em


tn+1 depende do erro cometido no ponto anterior, do erro de truncatura local
e da função f . Em termos gráficos, o erro de truncatura local e o erro podem
ser ilustrados da seguinte forma:

e (yn+1 ) = y (tn+1 ) − yn+1 = [y (tn+1 ) − un+1 ) + [un+1 − yn+1 ]


un+1 − yn+1 = e (yn ) + h [f (tn , y (tn )) − f (tn , yn )]
y (tn+1 ) − un+1 = hτn (h)

Capítulo 6
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 151

y (x)
y (tn+1 ) bb

hτn
b
b

un+1
e (yn+1 )

b
b

yn+1

g
y (tn ) bb

yn

l
b
b

tn tn+1

UA
6.6 Exercícios
1. Considere o problema y ′ (t) = cos (2 y(t)), t ∈ (0, 1], y(0) = 0. Resolva-
o com os métodos de Euler progressivo, Euler regressivo e Crank-Ni-
colson e estime a respectiva ordem de convergência.

2. Considere o problema y ′ (t) = λy(t), t ∈ (0, +∞), y(0) = 1. Resolva-


o com o método de Euler progressivo, para h = 20/8, h = 20/11 e
h = 1/2.
T-
3. Escreva um programa para resolver y ′ = f (x, y), y(x0 ) = y0 , usando
os métodos de Euler, para f e passo h arbitrários, num intervalo [x0 , b].
Resolva y ′ = x2 − y, y(0) = 1, para 0 ≤ x ≤ 4, com h = 0.25, 0.125 e
0.0625. Determine a solução aproximada, o erro e o erro relativo nos
FC

pontos x = 0, 0.25, 0.50, 0.75, · · · , 4.00.


(Solução do problema diferencial: y(x) = 2 − 2x + x2 − e−x )

Capítulo 6
Anexo

l g
11. Precisão Finita

UA
1.1 Representação de números no computador

Leituras interessantes sobre a história dos problemas da representação em


ponto flutuante nos processadores Intel Pentium:
Original Pentium FDIV flaw e-mail - Thomas R. Nicely
Wikipedia
MathWorks
T-
1.2 A norma IEEE 754

Esta norma1 estabelece a estandardização da representação binária norma-


lizada em ponto flutuante.

ë formato simples: palavras de 32 bits


FC

ë formato duplo: palavras de 64 bits

ë base de representação: b = 2

Distribuição dos bits: s0 e1 e2 . . . e11 d12 d13 . . . d63 , onde

• s0 representa o bit do sinal;


1
Mais informação acerca da norma IEEE 754 pode ser consultada nos seguintes endereços:
William Kahan, Berkeley, CA
Wikipedia

152
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 153

• ei , i = 1, . . . , 11, representa cada um dos bits do expoente;

• di , i = 12, . . . , 63, representa cada um dos bits da mantissa.

Se 1 ≤ expoente ≤ 2046, ou seja,

00000000001 ≤ e1 e2 . . . e11 ≤ 11111111110,

g
então o valor x é representado por

x = (−1)s × 2E−1023 × (1.D)

l
• (1.D) representa a mantissa normalizada (1 ≤ mantissa < 2) (o pri-

UA
meiro bit da mantissa é sempre 1 (bit implícito) e, por essa razão, não
é armazenado);

• O expoente E é ”enviesado”, para permitir a representação de expo-


entes negativos:

2−1022 = 21−1023 ≤ 2E−1023 ≤ 22046−1023 = 21023 .

Deste modo, o menor número real positivo representável é 2−1022 . Qual-


quer valor inferior gera uma situação de underflow. No MATLAB pode
T-
conhecer-se este valor com o comando realmin.
Da mesma forma, o maior número real positivo representável é 21023 .
Qualquer valor superior gera uma situação de overflow. No MATLAB
pode conhecer-se este valor com o comando realmax, qualquer valor
FC

superior a este valor é armazenado na variável Inf.

Representação do Zero:

s0 e1 e2 . . . e11 d12 d13 . . . d63

Se expoente = 0 e mantissa = 0, então

e1 e2 e3 e4 e5 e6 e7 e8 e9 e10 e11 = 00000000000,


d12 d13 . . . d63 = 00 . . . 0,

o que significa que a representação do zero será:

Capítulo 7
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 154

• se s = 0, então x = +0;

• se s = 1, então x = −0.

Representação da vizinhança de Zero (underflow gradual):

s0 e1 e2 . . . e11 d12 d13 . . . d63

g
A vizinhança de zero é tratada de forma diferente, por forma a garantir
uma representação mais densa dos números de pequena grandeza.
Se expoente = 0 e mantissa ̸= 0, então

l
e1 e2 e3 e4 e5 e6 e7 e8 e9 e10 e11 = 00000000000,

UA d12 d13 . . . d63 ̸= 00 . . . 0,

o que significa que a representação de x será:

x = (−1)s × 2−1022 × (0.D)

• (0.D) representa uma mantissa não normalizada (0 < mantissa < 1)


(o primeiro bit da mantissa é sempre 0 (bit implícito) e, por essa razão,
não é armazenado);
T-
• A técnica de underflow gradual permite representar uma gama mais
vasta de valores na vizinhança de zero;

• O menor número positivo representável é

2−1022 × 0.00 . . . 001 = 2−1022 ≤ 2−52 = 2−1074 .


FC

Números positivos inferiores são colocados a zero.

Casos dos Infinitos e NAN:

s0 e1 e2 . . . e11 d12 d13 . . . d63

Se expoente = 2047 e mantissa = 0, então

e1 e2 e3 e4 e5 e6 e7 e8 e9 e10 e11 = 11111111111,


d12 d13 . . . d63 = 00 . . . 0,

o que significa que a representação de x será:

Capítulo 7
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 155

• se s = 0, então x = +∞;

• se s = 1, então x = −∞.

Se expoente = 2047 e mantissa ̸= 0, então a representação de x será

x = N AN (Not A Number).

g
Situações de indeterminação como 0/0 ou ∞/∞ no MATLAB, resultam em
NaN.

l
2. Equações Não Lineares
UA
2.1 Equações Diofantinas
Caminhante! Aqui jaz Diofanto.
Os números dirão a duração da sua vida,
cuja sexta parte foi ocupada por uma doce infância.
Decorrida mais uma duodécima parte da sua vida, o seu rosto cobriu-se com barba.
Passado mais um sétimo da sua vida casou.
Cinco anos depois nasceu-lhe o seu único filho,
que apenas durou metade da vida do pai.
Triste com a morte do seu filho,
T-
Diofanto viveu ainda quatro anos.
Diz-me, Caminhante, que idade tinha Diofanto quando a morte o levou?

Diofanto de Alexandria, sec. III.

As equações Diofantinas são equações polinomiais cujas soluções, caso


existam, são números inteiros. Mas nem sempre possuem solução.
FC

Exemplo (Último teorema de Fermat, conjecturado por Pierre de Fermat em


1637 e demonstrado por Andrew Wiles em 1994). A equação

xn + y n = z n

não tem solução em Z, para n ∈ N, n ≥ 3.

Nature
Wikipedia

Capítulo 7
Análise Numérica I - LEI-MIEA-MIEB-MIEET 2017/2018 156

2.2 Equações polinomiais lineares, quadráticas, cúbicas e quárti-


cas

As equações polinomiais até ao grau 4 possuem formulas resolventes, que


permitem a obtenção das suas soluções de forma analítica.
Equação polinomial linear:

g
a0
a0 + a1 x = 0 ⇔ x = − ,
a1
com a1 ̸= 0.

l
Equação polinomial quadrática:

UA
com a2 ̸= 0.
a0 + a1 x + a2 x = 0 ⇔ x =

Equação polinomial cúbica:


2 −a1 ±

a0 + a1 x + a2 x2 + a3 x3 = 0
a21 − 4a0 a2
2a2
,

(ver algoritmo em Wolfram)


Equação polinomial quártica:
T-
a0 + a1 x + a2 x2 + a3 x3 + a4 x4 = 0

(ver algoritmo em Wolfram)


FC

Capítulo 7

Você também pode gostar