Escolar Documentos
Profissional Documentos
Cultura Documentos
F. Wolfango Macedo
UTAD
Departamento de Matemática
Vila Real
1992
ÍNDICE ANÁLISE DE ERROS
Prefácio
Capítulo 1 INTRODUÇÃO
1. Tipos de Erros
2. O Processo de Medição
5. Bibliografia
6. Exercícios e Problemas
3. Bibliografia
4. Exercícios
1. Intervalos
4. Funções Intervalares
8. Bibliografia
9. Exercícios e Problemas
Prefácio
Limitamo-nos aqui tão somente a uma análise de erros dos algoritmos numéricos
básicos. Referimos de passagem, no capítulo 1, a análise de erros instrumentais, a
calibração de instrumentos e métodos experimentais, apenas mencionando a
análise estatística e a compensação dos erros de observação, melhor tratada dentro
das disciplinas específicas que recorrem a esse tipo de análise. Dedicamos alguma
atenção, no capítulo 2, aos erros das operações elementares e à propagação de
erros de arredondamento nas operações máquina em vírgula flutuante e em
algoritmos numéricos fundamentais. No capítulo 3 apresentamos uma introdução
à análise intervalar de erros, cujo desenvolvimento futuro aliviará o utilizador de
programas computacionais da tarefa enfadonha e por vezes impossível de uma
análise de erros provenientes das inúmeras operações executadas através desses
programas, cada vez mais sofisticados e que tendem a funcionar como uma
caixa-negra para a maioria dos utilizadores ocasionais. Pensamos que os
produtores de software científico tentarão, cada vez mais, incluir métodos de
avaliação do rigor numérico dos resultados dos algoritmos que incluem nos seus
programas, constituindo a análise intervalar de erros um método previlegiado para
essa avaliação. Mas tal resultado só será conseguido se os utilizadores desse
software, isto é, os Engenheiros e Investigadores, estiverem cientes da
necessidade dessa avaliação. É com o objectivo de ajudar a tornar consciente e
permanente essa necessidade que se publica este trabalho didáctico.
Escalares 1-7
Vectores 1-8
Escalares 1-9
Vectores 1-10
5. Bibliografia 1-20
Capítulo 1 INTRODUÇÃO
a = α m × 10 m + α m − 1 × 10 m − 1 +…+ α m − n +1 × 10 m − n + 1 +… , (20)
em que
α i = algarismo ∈ {0, 1, …, 9} ; i = 1, …, n
? Exemplo 10.
31567
. = 3 × 101 + 1× 100 + 5 × 10−1 + 6 × 10−2 + 7 × 10−3
= 31567
. × (101 )
= 31567
. E1 ; ( n = 5algarismos significativos)
. × 10−3
= 745
= 745
. E−3 ; (n = 3algarismos significativos).
n = ± ( α m α m − 1 K α 0 )10
= ( α m × 10 m + α m − 1 × 10 m − 1 + K + α 0 ) . (21)
D( x ) = x − I( x ) . (22)
em que β k são dígitos. Quando β k = 0 para k > k0, dizemos que a dízima D (x) é
? Exemplo 11.
Œ Sendo x = + 253
. tem-se:
I (x ) = 2 ; D (x ) = 053
.
2 3 = 066
. … = 0. ( 6), dízima periódica
2 4 = 05
. , dízima finita
2 = 141
. … , dízima infinita não periódica
Algarismos significativos
1
| ∆a| = máx | a − a| = ⋅ 10 m − n + 1 , (24)
2
? Exemplo 12.
1
a = 3225
. ; a = 32.3 ; | ∆a| = | a − a | = 005
. ≤ × ( 01
.)
2
O valor aproximado a tem os algarismos significativos correctos até ao das décimas (inclusivé),
i.e., 3 algarismos significativos correctos.
1
b = 0.999 ; b = 1000
. ; | ∆b| = | b − b | = 0001
. ≤ ⋅ 0.01
2
O valor aproximado b tem os algarismos significativos correctos até ao das centésimas (inclusivé),
i.e., 3 algarismos significativos correctos.
? Exemplo 13.
Exemplo 15.
0.002450 .2450E -2 -2
-6543 - .6543E 4 4
? Exemplo 16.
− ( .34567)10 E 3 = − 34567
. ; (.10111)2 E (100) 2 = 10111
.
− ( .34567)10 E 1 = − 34567
. ; (.10111)2 E (10) 2 = 10111
.
? Exemplo 17.
Pelo facto de a notação em vírgula flutuante ser muito económica em dígitos ela é
Computador b p es = ei
IBM 360/370 16 6 26
? Exemplo 18.
Arredondamento: v f (x ) = ( ⋅ 67)E 0
Truncatura: v f ( x ) = ( ⋅ 66 )E 0
Arredondamento: v f ( y ) = − ( ⋅ 639)E 4
Truncatura: v f ( y ) = − ( ⋅ 638)E 4
m = ⋅ d1 d 2 … d i d i + 1 … ; 0 ≤ d i ≤ 9 ; d 1 ≥ 1 , (25)
⋅ d1 d 2 … d p , se 0 ≤ d p + 1 ≤ 4
m′ = −p
(26)
⋅ d1 d 2 … d p + 10 , se d p + 1 ≥ 5
v f ( x ) = ± m′ ×10 e . (27)
v f ( x ) − x
m′ − m
= = 5 × 10 − ( p+1)
≤ 5 × 10 − p , (28)
x m m
v f ( x ) = x (1 ± δ x ) (29)
v f ( x ) = x (1 ± ε ) . (30)
A mantissa escreve-se:
m = ⋅ d1 d 2 … d i d i + 1 … ; d i = 0 ou 1 ; d1 = 1 . (31)
⋅ d1 d 2 … d p , se d p + 1 = 0
m′ = −p
(32)
⋅ d1 d 2 … d p + 2 , se d p + 1 = 1
? Exemplo 19. Calculemos a densidade dos números racionais do intervalo [2e, 2e+1], com
amplitude 2e que se podem escrever com uma mantissa de p = 24 bits. Com 24 bits podem-se
escrever 224 mantissas distintas. A densidade pretendida é pois 224/2e. Em particular, quando
e = 22, a densidade no intervalo [222, 223] dos racionais com mantissas de 24 bits é apenas de 4,
enquanto a densidade dos racionais com mantissas de 32 bits, nesse mesmo intervalo, é de
210 = 512.
Operandos: x = ± mx × 2ex y = ± my × 2 y
e
;
e + ey
Operação: x × y = ± mx ⋅ m y × 2 x ; 2−1 < mx ⋅ m y < 20
A normalização de mx ⋅ m y obriga, se tal for necessário, à translação da vírgula uma posição para a
esquerda. A mantissa arredondada passará a ser
mx ⋅ m y + ∆ xy ou mx ⋅ m y + 2 ∆ xy ,
( mx ⋅ m y + ∆ xy ) × 2e x + ey ; se mx ⋅ m y ≥ 2−1
v f (x ) ⋅ * ⋅ v ( f ( x ) =
e x + ey
( mx ⋅ m y + 2 ∆ xy ) × 2 ; se 2−2 ≤ mx ⋅ m y ≥ 2−1
∆ xy
1 + , se mx m y ≥ 2−1
e + ey mx m y
= mx ⋅ m y × 2 x ⋅
1 + 2 ∆ xy
, se 2−2 < mx m y < 2−1
mx m y
= x ⋅ y (1 ± ε m ) ,
onde ε m ≤ 2 ∆ xy ≤ 2− p = ε.
Em análise de erros devemos portanto ter em conta a propagação dos erros nos
dados iniciais e a propagação dos erros de arredondamento nas
operações-máquina.
“Overflow” e “Underflow”
? Exemplo 21. No caso de um minicomputador VAX 780 tem-se e s = 27 , p = 24, pelo que haverá
“overflow” sempre que o resultado de uma operação exceda (1 − 2−24 ) ⋅ 227 ≈ 2128 . Assim, ao tentar
multiplicar os números x = 270 e y = 280 haverá “overflow”.
? Exemplo 22.
Œ Média de dois números positivos. Pode acontecer que algum dos números x e y seja demasiado
grande para ser representável em vírgula flutuante, mas que a sua média ( x + y ) / 2 seja
representável. O cálculo da média poderá então fazer-se pelo algoritmo x − (x − y ) / 2.
n
• Soma de quadrados. Sendo x ↔ ℜ n , a soma de quadrados S = ∑ x i2 poderá causar “overflow”.
1
Em certos casos essa situação poderá ser remediada, calculando-se aquela soma do seguinte
modo:
2
n x
µ = máx | xi | ; S =µ2⋅ i .
i 1 µ
? Exemplo 23. No caso de um minicomputador VAX 780 tem-se ei = 27, pelo que o menor valor
1 −50 1
absoluto que este computador pode registar é 2-129. Assim, ao tentar dividir ⋅ 2 por ⋅ 280
2 2
haverá “underflow”.
5. Bibliografia
Conte, S.D.; deBoor, C. (1980) 3rd ed. • Elementary Numerical Analysis: An
Algorithm Approach • McGraw-Hill, ISE, N. York
6. Exercícios e Problemas
notação (0. b1 … bm ) × B e2 .
a = 03216
. × 10 3 , b = 03156
. × 10 −2 , c = 0.4567 × 101 ,
efectue as operações
a ab
a+ b+ c , a− b− c , , ,
c c
→
0.6183 × 100; 0.2182 × 101; 0.7843 × 10 2 ; 0.3456 × 10 2 ; 0.3211 × 10 3; 0.6543 × 10 3; 0.2222 × 10 4
←
I - 10 Capítulo I INTRODUÇÃO
http://www.utad.pt/~wmacedo
8. Verifique que a expressão (19) não é uma distância, por não satisfazer a
desigualdade triangualar em ℜ 2 quando a norma utilizada é a norma L1 . Use os
vectores x = [1 , 0 ]′, y = [ 1 , 1 ]′, z = [ 0 , 1 ]′ nessa verificação.
6. Exercícios e Problemas I - 11
PROPAGAÇÃO DE ERROS 2-1
2-1
3. Bibliografia 2-31
2-32
http://www.utad.pt/~wmacedo
O erro relativo máximo das operações-máquina pode ser definido como o menor
número positivo ε em vírgula flutuante, aceitável pelo computador, tal que
v f (1 • + • ε ) > 1 .
v f (x • + • y ) = (x + y ) ⋅ (1 ± ε 1 )
v f (x • − • y ) = (x − y ) ⋅ (1 ± ε 2 )
εi ≤ ε ; i = 1, … , 4 (34)
v f (x • * • y ) = ( x * y ) ⋅ (1 ± ε 3 )
v f (x • / • y ) = ( x / y ) ⋅ (1 ± ε 4 )
ε
v f (x • + • y) = x se | y| < ⋅ | x| , (35)
b
? Exemplo 9.
a = 0243215
. E−4 ; b = 0334755
. E2 ; c = − 0334654
. E2
Será então :
v f [a • + • ( b • + • c )] = v f [ 0243215
. E − 4 • + • 0101000
. E − 1]
v f [(a • + • b ) • + • c )] = v f [ 0334755
. E 2 • − • 0334654
. E 2]
= 0000101
. E 2 = 0101000
. E −1
v f [ x + v f ( y + z )] = v f [ x + ( y + z )(1 + ε 3 )] = [x + ( y + z )(1 + ε 3 )] (1 + ε 4 ) ,
em que
1 1− p
εi ≤ ε = b ; i = 1, …, 4
2
vf [vf ( x + y ) + z )] ≠ vf [ x + vf ( y + z )] , c. q. d.
( + 1)
= ℑ i) ( (i
)
Um algoritmo operações
elementares
ℑ = ℑ ( ) o … o ℑ 2) ℑ ( o ℑ (0) (37)
diversos algoritmos.
Exemplo 10. Seja ℑ (a, b, c) = a + b + c. A função composta ℑ pode ser realizada por um dos
seguintes algoritmos:
1º Algoritmo:
a + b u
ℑ (0 ) (a , b, c ) = = v ∈ℜ
2
; ℑ(0 ) : ℜ 3 → ℜ 2
c
ℑ (1) ( u, v ) = ( u + v ) ∈ℜ ; ℑ (1) : ℜ 2 → ℜ1
2º Algoritmo:
a u
ℑ (0 ) (a , b, c ) = = ∈ℜ
2
; ℑ (0 ) : ℜ 3 → ℜ 2
b + c v
ℑ (1) ( u, v ) = ( u + v ) ∈ℜ ; ℑ (1) : ℜ 2 → ℜ1
1º Algoritmo:
a 2 u
y1 = a ⋅ a ; ℑ ( 0 ) ( a, b ) = =
b v
u x
y2 = b ⋅ b ; ℑ (1) ( u, v ) = 2 =
v z
y = y1 − y 2 ; ℑ ( 2) ( x, z ) = ( x − z )
2º Algoritmo:
a u
y1 = a + b ; ℑ (0 )
( a, b ) = b = v
a + b w
u − v x
y2 = a − b ; ℑ (1) (u, v, w ) = =
w z
y = y1 ⋅ y 2 ; ℑ ( 2 ) ( x, z ) = x ⋅ z
v f [ℑ (i)
j ( u)] = (1 ± ε j ) ⋅ ℑ (ji) ( u) ; εj ≤ε, j = 1, …, ni + 1 (38)
em que
Em (38) e (39) suposemos que o vector u dos operandos era exacto. Todavia, os
operandos de cada operação-máquina já estão afectados por erros dos dados
iniciais e por erros de arredondamento originados nas operações-máquina
precedentes. Sejam esses operandos x (i) . Tem-se então
(i + 1)
x = v f [ℑ (i) ( x (i) )] (41)
|vf (ℑ (i)
j ) |
( x (i) ) − ℑ (ji) ( x (i) ) ≈ E i + 1 ⋅ ℑ (ji) ( x | (i)
|
)
= Ei + 1 ⋅ x | (i + 1)
|=a i+1 (42)
|∆x (i + 1)
| = J [ℑ (i)
(x (i)
]|
) ⋅ ∆x (i)
| ; i = 1, …, r (43)
Adicionando aos erros (43), provenientes da propagação dos erros nos dados
iniciais, os erros (42) de arredondamento na operação-máquina i obtem-se a
fórmula iterativa:
(i + 1)
| ∆x | = a i + 1 + J [ℑ (i) ( x (i)
)] ⋅ | ∆x (i) |
= E i + 1 ⋅ x (i + 1) + J [ℑ (i) ( x (i)
)] ⋅ | ∆x (i) | (44)
A fórmula iterativa (44) produz uma sucessão cujo termo final é o erro que afecta
o resultado do algoritmo-máquina (Stoer e Burlisch, 1980):
| | + ∑ J [Ψ
r
| ∆y | ≈ ABS J [ℑ ( x )] ⋅ ∆x (0) ( i)
( x (i) )] ⋅ a i + a r + 1
i =1
r
≈ ABS J [( x )] ⋅ | ∆x (0) | +
∑ J [Ψ
i =1
(i)
( x (i) )] ⋅ Ei ⋅ x (i) + Er +1 ⋅ y , (45)
em que
0
J [ℑ( x )] = Π J [ℑ (i) ( x (i)
)] (46)
i= r
i
J [Ψ (i) ( x ( i)
)] = Π J [ℑ (k )
( x (k ) )] ; i = 0, …, r . (47)
k =r
? Exemplo 12.
a a 2 a 2
x (0 )
= ; x (1)
= ; x (2)
= 2 ; x ( 3) = y = [ a 2 − b 2 ]
b b b
b) Operações elementares:
u 2 u
ℑ (0 ) (u , v ) = ; ℑ (1) ( u, v ) = 2 ; ℑ (2) ( u, v ) = u − v
v v
2a 0
J [ℑ (0 ) ( x (0 )
)] =
0 1
1 0
J [ℑ (1) (x (1)
)] =
0 2b
J [ℑ (2) ( x ( 2)
)] = [ 1, − 1 ]
0
J [ℑ (x )] = ∏ J [ ℑ (i ) ( x (i )
)] = [ 2a, − 2b ]
i=2
J [Ψ (1)
(x (1)
)] = [ 1, − 2b ]
J [Ψ ( 2)
(x ( 2)
)] = [ 1, − 1 ]
ε 0 a 2 ε a 2
a1 = E1 ⋅ x (1)
= 1 ⋅ = 1
0 0 b 0
0 0 a 2 0
a 2 = E2 ⋅ x ( 2)
= ⋅ 2 = 2
0 ε 2 b ε 2 b
a 3 = ε 3 (a 2 − b 2 ) ; | ε i | ≤ ε , i = 1, 2, 3
| ∆a |
| ∆x (0 )
|=
| ∆b |
| ∆a | ε 1a 2 0
| ∆y| ≈ ABS [ 2a, − 2b]⋅ + [1, − 2b ] ⋅ + [1, − 1] ⋅ 2
+ ε 3 (a 2 − b 2 )
| ∆a | 0 ε 2 b
{
≈ ABS 2a | ∆a| − 2b | ∆b| + ε 1a 2 − ε 2 b 2 + ε 3 ( a 2 − b 2 ) }
O erro absoluto máximo | ∆yinclui
| os erros produzidos na propagação dos erros nos dados
iniciais e os erros provenientes de arredondamentos nas operações-máquina em vírgula
flutuante.
a
a
x (0 )
= ; x (1)
= b
b
a − b
a + b
x (2)
= ; x (3) = y = ( a + b ) ⋅ ( a − b )
a − b
b) Operações elementares:
u
u + v
ℑ ( 0 ) ( u, v ) = v ; ℑ (1) ( u, v, w ) = ; ℑ (2) ( u, v ) = u ⋅ v
w
u − v
1 0
J [ℑ (0 )
(x (0 )
)] = 0 1
1 −1
1 1 0
J [ℑ (1) (x (1)
)] =
0 0 1
J [ℑ (2) ( x ( 2)
)] = [ a − b, a + b ]
0
J [ℑ (x )] = Π J [ ℑ (i ) (x (i )
)] = [ 2a, − 2b ]
i =1
1 1 0
J [Ψ (1)
(x (1)
)] = [ b, a ] ⋅ = [ a − b, a − b, a + b ]
0 0 1
J [Ψ ( 2)
(x ( 2)
)] = J [ ℑ ( 2) ( x ( 2)
)] = [ a − b, a + b ]
0
a1 = E1 ⋅ x (1)
= diag [ 0, 0, ε 2 ] ⋅ x (1)
= 0
ε 2 ( a − b )
ε 0 a + b ε 1 ( a + b )
a 2 = E2 ⋅ x ( 2)
= 1 ⋅ =
0 0 a − b 0
a 3 = E3 ⋅ x ( 3)
= ε 3 (a + b ) ( a − b )
∆a
| ∆x (0 )
|=
∆b
0
∆a +
| ∆y| ≈ ABS [ 2a, − 2b] ⋅ + [ a − b, a − b, a + b] ⋅ 0
∆
b
ε 2 ( a − b)
ε 1 (a + b )
+ [ a − b, a + b] ⋅ 0 + + −
ε 3 ( a b ) (a b )
0
Œ Os erros nos dados iniciais | ∆x (0) | propagam-se nos dois algoritmos de igual
modo e a sua contribuição para o erro final é 2a ⋅ | ∆a| − 2b ⋅ | ∆b| ; este erro é
igual ao produto J [ℑ ( x )] ⋅ | ∆x (0) | . A matriz jacobiana J [ℑ ( x )] não depende
do modo como se haja feito a decomposição da função ℑ ( x ) em operações
(funções) elementares, i.e., é independente dos algoritmos que a realizam. Daí
que aquele produto não dependa do algoritmo escolhido, mas da própria
função ℑ ( x ) que se pretende calcular. Para certas funções o vector
J [ℑ ( x )] ⋅ | ∆x (0) | poderá ter elementos muito grandes em valor absoluto.
Diremos então que o problema de cálculo numérico de ℑ ( x ) é um problema
mal conformado ;
• Os erros de arredondamento provenientes da execução das operações-máquina
em vírgula flutuante, acumulados ao longo de um algoritmo, são dados pela
expressão
r
∑ J [Ψ
i =1
(i)
(x (i)
)] a i + a r + 1 . (48)
[ ] [ ]
i
J Ψ (i)
(x ( i)
) = Π J ℑ (k )
(x (k )
) , (49)
k =r
ε1 a2 − ε 2 b2 + ε 3 (a 2 − b2 ) , (50)
| ∆(0) ( x )| ≤ | x (0)
|⋅ε . (53)
2| x ( 0)
|⋅ ε . (54)
Assim, entre vários algoritmos alternativos instáveis pode existir um que seja
mais fiável que os outros. Esse deve ser o escolhido.
Percorrendo os grafos ao longo das setas obtêm-se relações entre os vários tipos
de erro. Para determinar o factor de amplificação pelo qual devemos multiplicar o
erro i para obter a sua contribuição para o erro j, multiplicamos os factores de
amplificação relativos a um percurso possível entre os nós i e j e adicionamos os
produtos relativos aos vários percursos possíveis entre i e j. A análise de erros
através de grafos torna-se assim mecânica e programável.
? Exemplo13.
ε y1 = 1 × ε a + 1 × ε a + ε 1 ; ε y2 = 1 × ε b + 1 × ε b + ε 2
y1 y2
εy = ⋅ ε y1 − ⋅ ε y2 + ε 3
y1 − y 2 y1 − y2
a b a b
ε y1 = ⋅εa + ⋅ ε b + ε1 ; ε y2 = ⋅εa − ⋅εb + ε2
a+b a+b a−b a−b
b b
× 1− × 1 ⋅ ε b .
a+b a−b
dy1
dt = y 2
(56)
dy
2 = y1 ,
dt
y1 = a1 ⋅ xp t ) + a 2 ⋅ e p ( − t
y 2 = a1 ⋅ ex (t ) − a 2 ⋅ xp − t )
Se as condições iniciais
y ( 0 = − y2 ( ) = 1 (58)
as 1 e a2 são a1 = 0 , a 2 = 1.
A resolução numérica do sistema (56) produz valores para y1 e y 2 correspondentes a uma sucessão
de valores t1 , t 2 , … , t n . Se as condições iniciais (58) forem afectadas por erros ∆y1 , ∆y2 , o valor
calculado de a1 será diferente de zero e consequentemente também os termos a1 ⋅ exp( t ). Os erros
de y1 e y 2 crescerão portanto com t. A resolução numérica das equações (56) não é portanto um
problema bem conformado. Para remediar esta situação deveremos determinar as condições
iniciais com a maior precisão possível, o que implica que se meçam as grandezas t, y1, y2 com
grande precisão, o que por sua vez exige registos longos em vírgula flutuante.
possui as raízes 1, 2, …, 10. Se perturbarmos o coeficiente do termo x9 com um pequeno erro, seja
10−6 , a equação (59) passará a ser
ε ε ε ε
−
+ − + −
ε ε ε ε
− −
− −
p(x ) ≡ x 2 + 2 bx − c = 0 , (61)
c
x = ℑ ( b, c ) = − b + b 2 + c =
(b + b 2 + c )
Os dados iniciais são os valores numéricos dos coeficientes b, c, supostos afectados por erros
relativos ε b , ε c , cuja contribuição para o erro relativo da solução ℑ ( b, c ) é, como se pode
verificar,
−b −b b+∆2
1
c
⋅εb + ⋅εc = 1 ⋅εb + ⋅εc (62)
∆ 2x ∆ ∆ 2∆ 2
1 1 1
2 2 2
Como os valores absolutos das fracções em (62) não excedem 1, se suposermos que | ε b | ≤ ε ,
| ε c | ≤ ε , obteremos para erro esperado mínimo da solução x a quantidade
ε r < 2ε . (63)
Será em relação à quantidade 2ε que se avaliará a estabilidade dos dois algoritmos para o cálculo
de ℑ ( b, c ).
1º Algoritmo:
x1 = b 2 x 2 = x1 + c x3 = ( x2 ) x = x3 − b
1
; ; 2
; (64)
x3 ⋅ ε x3 ∆2
1
1
= ⋅ ( ε x3 ) = ( b ∆ 2 + b 2 + c ) ⋅ ( ε x3 ) = k1 ⋅ ( ε x3 )
1
(65)
−b + ∆
1
x 2
c
2b2
k1 > > 0, (66)
c
podendo portanto k1 ser muito grande , visto que assumimos atrás que b >> c.
Conclui-se assim que o algoritmo 1 não é numericamente estável, porque a contribuição do erro de
arredondamento na operação x 3 = (x 2 ) 2 para o erro relativo do resultado final excede muito o
1
2º Algoritmo:
c
x1 = b 2 x 2 = x1 + c x3 = ( x2 ) x4 = b + x3 x=
1
; ; 2
; ; (67)
x4
Neste algoritmo não surge a complicação de perda de precisão devida ao cálculo de uma diferença,
ao contrário do que acontece no algoritmo anterior. O erro de arredondamento x 3 ⋅ ( ε x3 ) será
amplificado de acordo com as operações subsequentes:
c
x3 → b + x3 → = Ψ (x 3 ) (68)
( b + x3 )
1 ∂ Ψ ( x3 ) −c ∆2
1
⋅ ⋅ x 3 ( ε x3 ) = ⋅ x ( ε ) = − ⋅ ( ε x3 ) = k 2 ⋅ ( ε x3 ) (69)
∂ x3 x ( b + x3 ) 2
3 x
p+∆2
3 1
x
O factor de amplificação k2 mantem-se pequeno, visto que | k 2 | < 1. Conclui-se assim que o
algoritmo 2 é estável.
Para comprovação empírica das conclusões anteriores quanto à estabilidade dos algoritmos 1 e 2,
resolvamos numericamente a equação x 2 + 999998 . x − 2 = 0 , cujas raízes exactas são -1000 e
0.002. Os valores b = 499.999, c = 2, satisfazem os pressupostos das análises anteriores, isto é,
b >> c > 0 sendo ∆ 2 = 500001
1
. .
Calculemos com 5 casas decimais as raízes − b + ∆ 2 (1º algoritmo) e c / ( b + ∆1/ 2 ) (2º algoritmo).
1
c − s
G= ,
s c
cm cm − 1
s = G s , m = 1, … , k . (71)
m m −1
ck c0 1
s = G s = G
k k
0 (72)
k 0
∆c k ∂ G k 1 ∂ G k 1
∆s = ∂ c ⋅ 0 ⋅ ∆c + ∂ s ⋅ 0 ⋅ ∆s . (73)
k
Ora,
∂G k ∂G k
= k ⋅G k −1 ; = k ⋅ A⋅G k −1
∂c ∂s
0 −1
∆c = ε c ⋅ cos x ; ∆s = ε s ⋅ sin x ; A= (74)
1 0
Como a matriz G é uma matriz de rotação (Givens) plana, com ângulo de rotação x rad, podemos
escrever
ck − 1 − sk − 1
G k −1 =
c k − 1
. (75)
sk − 1
∆c k ck − 1 − sk − 1
∆s = k ⋅ s ⋅ ε c ⋅ cos x + k ⋅ c ⋅ ε s ⋅ sin x , (76)
k k −1 k −1
Concluimos assim que, sendo k muito grande, o algoritmo poderá ser instável para certos valores
de x. Os erros esperados mínimos obtêm-se por aplicação da fórmula (55) da secção 2.2.:
| ∆c k | = | ∆sk | ≈ 138
. ε. (79)
Concluimos assim que, sendo k grande e kx = 1, os erros (77) excedem largamente os erros (79),
pelo que podemos finalmente afirmar que o algoritmo constituído pelas fórmulas de recorrência
(70) é numericamente instável.
A = R′ R , (80 )
: Algoritmo 1. “Factor-Choleski”
Para i = 1, …, n ;
1
i −1
2
Calcule: rii = aii − ∑ rki2
k =1
Para j = 1, … , i − 1;
a − i −1r r
∑
ij k =1 ki kj
Calcule rij = rii
i
| eij | < η ⋅ k | ~rki ⋅ ~rii | , i, j = 1, …, n , (81)
k =1
onde
ε
η= ; ( n + 1) ε < 1 , (82)
[1 − ( n + 1) ε]
: Algoritmo 2. “Choleski”
a) Substituição progressiva:
Para i = 1, …, n ;
i −1
b i − ∑ ~rik ~yk
Calcule: yi = k =1
~r
ii
b) Substituição regressiva:
y − i +1~r x
∑
i k =1 ik k
Calcule: x i = ~r
ii
~
O erro resultante na fase de substituição progressiva é o vector b - R ′ y e o erro
~
resultante na fase de substituição regressiva é o vector y - R x . Os erros
absolutos máximos das componentes desses dois vectores são determinados pelas
relações
i
~r y
i
bi −
∑
k =1
ki k < η ⋅ ∑ k ⋅ | rki y k | ;
k =1
~ i = 1, …, n ,
i
~r x
i
y i −
∑
k =n
ki k < η ⋅ ∑ ( n + 1 − k ) ⋅ | rik x k | ;
k =n
~ i = 1, …, n . (83)
~ ~
| b - R ′ y| < η ⋅ | R ′ | ⋅ D 1 ⋅ | y|
~ ~
| y - R x | < η ⋅ | R | ⋅ D 2 ⋅ | x| , (84)
~ ~ ~ ~ ~
b - Ax = ( b - R ′ y ) + R ′ ( y - R x ) + ( R ′ R - A ) x . (86)
~ ~ ~
}
+ ( diag R ) 2 + η ⋅ | R ′ | ⋅ D1 ⋅ | R | ⋅ D 2 ⋅ | x| . (87)
Geralmente,
1
( n + 1) ε ≤ , (88)
2
η ≤2ε ; ( n + 1) η ≤ 1 . (89)
(2n + 3) ε ~ ~
| b - A x| < ⋅ | R ′ | ⋅ | R | ⋅ | x| , (90)
1 − ( n + 1) ε
1
supondo que ( n + 1) ε ≤ .
2
(A + δ A ) ⋅ x = b , (91)
onde a perturbação
( b - A x ) x′
δA = (92)
x′ x
satisfaz a relação
( 2n + 3 ) ε ~ ~
| δ A| < ⋅ | R′ | ⋅ | R | , (93)
1 − ( n + 1) ε
1
supondo que ( n + 1) ε ≤ .
2
3. Bibliografia
Hamming, R.W. (1973) 2nd ed. • Nummerical Methods for Scientists and
Engineers • Mc-Graw Hil , N.York
Esta obra é de nível intermédio. Está repleta de bons exemplos e exercícios. Foi
seguida de perto na redacção da secção 2.2.
4. Exercícios
626457
. ( 4) ; 066678
. (3) ; 000378
. (2) ; 06547
. E 5 ( 4)
3.
3. Bibliografia II - 19
F. WOLFANGO DE MACEDO (1992) - ANÁLISE DE ERROS - UTAD, Vila Real, Portugal
3 3
4. Calcule o erro absoluto máximo de S = ∑ ∑ [X ( i, j )]
i =1 j =1
2
, supondo que os
. x 2 − 123
a) 62 . x − 51
. =0
b) x 2 − 20 x + 1 = 0
x = a ⋅ sin (ω ⋅ t + y ) ,
correctas.
12.
1 1− x
a) − ; | x| << 1
1+3x 1+ x
1 1
1 1
2 2
b) x + − x − ; x >> 1
x x
1 − cos x
c) ; x√0 ; x << 1
x
14. Suponha que dispõe de um algoritmo para cálculo de arc sin x , com
aritmética em vírgula flutuante, mantissas de p dígitos, com erro relativo inferior a
5 ⋅ 10 − p . Atendendo à relação
x
arc tan x = arc sin ,
1 + x2
aquele programa servirá para calcular arc tan x. Calcule o erro relativo de
arc tan x e diga se o algoritmo disponível é estável para este problema.
z 1 − cos z
2
tan = ± .
2 1 + cos z
16. Sendo f(x) = a + bx, a √ 0 , b √ 0 , a derivada f ′ (0) = b pode ser calculada pela
fórmula
f ( h) − f ( − h)
f ′ (0) = .
2h
Use esta fórmula com aritmética binária em vírgula flutuante e exprima valores
de h (pequenos) como potências de 2. Nesse caso as operações-máquina de
multiplicação por h e de divisão por 2h são exactas. Determine o erro relativo
máximo no cálculo de f ′ (0) . Qual o comportamento desse erro quando h ⊗ 0 ?
4. Exercícios I - 21
F. WOLFANGO DE MACEDO (1992) - ANÁLISE DE ERROS - UTAD, Vila Real, Portugal
[ ]
1 1/ 2
u = ± x + ( x 2 + y 2 )1 / 2
2
y
v=
2u
1 n 1 n
s2 = ⋅ ( x i2 − n x 2
) ; s2 = ⋅ ( x i − x )2 ,
n−1 i =1 n−1 i=1
1 n
em que x = ⋅ x i . Qual das duas fórmulas é a mais fiável?
n i =1
1. Intervalos 3-1
8. Bibliografia 3-22
I-1
Capítulo 3 ANÁLISE INTERVALAR DE ERROS
1. Intervalos
a~ = [ a′ , a′ ′ ] = { a ∈ A | a′ ≤ a ≤ a′ ′ } , (1)
em que a′ , a′ ′ ∈ A, a′ ≤ a′ ′.
? Exemplo 1.
Igualdade: [ x′ , x′ ′ ] = [ y′ , y′ ′ ] ⇔ x′ = y′ ; x′ ′ = y′ ′
Inclusão: [ x′ , x′ ′ ] ϒ [ y′ , y′ ′ ] ⇔ y′ ≤ x′ ≤ x′ ′ ≤ y′ ′
• Sendo a relação ≤ entre vectores de ℜ 2 definida para componentes homólogas dos vectores
a′ , a′ ′ ∈ℜ 2 o intervalo ~
a = [a′ , a′ ′ ] corresponde a um rectângulo do plano ℜ 2 , como mostra a
figura abaixo.
Œ Amplitude de um intervalo:
amp (a~ )
r( a~ ) = (3)
| a′ + a′ ′ |
Ž Magnitude de um intervalo:
• Mignitude de um intervalo:
( x′ + x′ ′ )
m ( a~ ) = (6)
2
e em particular
amp ( ~
a−~
a ) = 2 amp ( ~
a) , (8)
donde
amp ( ~
a) > 0 ⇒ ~
a−~
a≠0 (9)
amp ( ~
x / ~y ) ≤ amp ( ~
x ) ⋅ mag ( ~y ) + mag ( ~
x ) ⋅ amp ( ~y ) (10)
mag ( ~y ) ⋅ amp ( ~
x ) + mag ( ~ x ) ⋅ amp ( y )
~
~ ~
amp( x * y ) ≤ (11)
mag ( ~y ) ⋅ mig ( ~y )
r (~
x ) + r ( ~y )
r (~
x * ~y ) = (12)
1 + r (~x ) ⋅ r ( ~y )
r (~
x / ~y ) = r( ~
x * ~y ) (13)
− x~ = − [ x′ , x′ ′ ] = [ − x′ ′ , − x′ ] , (14)
1 1
( x~ ) −1 = [ x′ , x′ ′ ] −1 = [ , ], se 0 ≈ ~
x. (15)
x′ ′ x′
x~ − ~y = ~
x + (− ~y ) ; ~
x / ~y = ~
x * ( ~y )−1 , se 0 ∉ ~y. (16)
definidas.
2 .
Œ Adição: [ x′ , x′ ′ ] + [ y′ , y′ ′ ] = [ x′ + y′ , x′ ′ + y′ ′ ]
• Subtração: [ x′ , x′ ′ ] − [ y′ , y′ ′ ] = [ x′ − y′ ′ , x′ ′ − y′ ]
Ž Multiplicação: [ x′ , x′ ′ ]* [ y′ , y′ ′ ] = [ z′ , z′ ′ ] , em que:
Quadro Q(*)
* y′ y′ ′
x′ x′ y′ x′ y′ ′
x′ ′ x′ ′ y′ x′ ′ y′ ′
• Divisão: Uma divisão intervalar só é definida quando 0 não pertence ao intervalo divisor. Se
0 ∉[ y′ , y′ ′ ] , então [ x′ , x′ ′ ] / [ y′ , y′ ′ ] = [ z′ , z′ ′ ], em que:
Quadro Q(/)
/ y′ y′ ′
x′ x′ y′ x′ y′ ′
x′ ′ x′′ y′ x′′ y′ ′
Numa divisão intervalar o intervalo divisor não deve possuir o zero, o que
constitui uma grande limitação desta operação e da própria aritmética intervalar.
Note-se que nas definições das operações aritméticas intervalares intervêm apenas
extremos de intervalos. Do ponto de vista da aritmética intervalar podemos
portanto identificar um intervalo [ a′ , a′ ′ ] com um par de números ( a′ , a′ ′ ) e
definir axiomaticamente as operações aritméticas intervalares sem atender ao
significado ou interpretabilidade dos intervalos.
Adição Multiplicação
~
x + ~y = ~y + x~ x~ * ~y = ~y * x~
( x~ + ~y ) + ~
z = x~ + ( ~y + ~
z) (~
x * ~y ) * ~
z = x~ * ( ~y * ~
z)
~ ~
x + [0 , 0] = x (x~ + ~y ) * ~
z ⊂ x~ * ~
z + ~y * ~
z ~ ~
x * [1 , 1] = x
−(~
x + ~y ) = (− ~
x ) + ( − ~y ) (sub-distributividade) (~
x * ~y )−1 = (x~ ) −1 * ( y ) −1
~
Œ~
x−~
x = 0, ~
x /~
x = 1, somente quando amp ( ~
x)= 0
• Quando amp ( ~
x ) ≠ 0, tem-se:
~
x−~
x = amp ( ~
x ) ⋅ [−1 , 1]
~
x x′ x′ ′
= , , se x′ > 0
x x′ ′ x′
~
~
x x′ ′ x′
= , , se x′ ′ > 0
x x′ x′ ′
~
Entre: x1 , x 2 , y1 , y 2 ;
Calcule: a1 = x1 y1 ; a 2 = x1 y 2 ; a 3 = x 2 y1 ; a 4 = x 2 y 2 ;
z1 = mín ( a1 , a 2 , a 3 , a 4 );
z 2 = máx (a1 , a 2 , a 3 , a 4 );
Sai: [ z1 , z 2 ].
[ x1 , x 2 ] z1 z2
x1 ≥ 0 y1 ≥ 0 x1 y1 x2 y2
x1 ≥ 0 y2 ≤ 0 x2 y1 x1 y2
x1 < 0 ∧ x 2 > 0 y1 ≥ 0 x1 y 2 x2 y2
x2 ≤ 0 y1 ≥ 0 x1 y 2 x 2 y1
x1 ≥ 0 y1 < 0 ∧ y 2 > 0 x2 y1 x2 y2
x2 ≤ 0 y1 > 0 ∧ y 2 > 0 x1 y 2 x1 y1
x1 < 0 ∧ x 2 > 0 y2 ≤ 0 x2 y1 x1 y1
x2 ≤ 0 y2 ≤ 0 x 2 y2 x1 y1
x1 < 0 ∧ x 2 > 0 y1 < 0 ∧ y 2 > 0 mín ( x1 y2 , x 2 y1 ) máx ( x1 y1 , x 2 y 2 )
u~ = ~y − [ 3 , 3] = [ −21
. , − 19
. ] ; v~ = u~ * ~y = [ −2.31 , − 171
. ]
~ = v~ + [ 3 , 3] = [ 069 ~ ~
w . , 129
. ] ; z = ω * ~y = [0.621 , 1419
. ]
{ f ( y ) | y ∈ ~y} = [ 0999
. , 1001
. ],
Podemos assim concluir que o intervalo [0.621 , 1.419] é pessimista. O pessimismo de certos
resultados da aritmética intervalar é um motivo frequente de crítica a este método de análise de
erros.
Sendo ~
a ∈ I ( ℜ n ) um vector intervalar n-dimensional, podemos adoptar as normas
|| a~ || ∞ = máx {| ~ an |} ,
a | , …, | ~
|| a ||1 = ~
a | +…+ ~
a| (18)
donde
~ ~
Sendo ~
a , b ∈ I ( ℜ n ) podemos definir como distância entre ~
a e b qualquer das
~ ~
normas || ~
a - b|| ∞ , || a~ - b||1 , ou a métrica
~
d( a~ , b) = máx {| a′ - b′ | , | a′ ′ - b′ ′ |} (19)
~
Sendo A ∈ I ( ℜ m x n ), podemos utilizar as seguintes normas de matrizes
intervalares:
~ n
|| A|| ∞ = max ∑ | ~ aij | (20)
1 ≤ i≤ n
j =1
~ m
|| A||1 = max ∑ | ~ aij | (21)
1≤ j ≤ n
i =1
~
i.e., ρ( A ) é o maior dos valores próprios (absolutos) λ i ( A ), de todas as matrizes
~
A ∈ A.
~
em que mag ( A ) = [ | a ij |] , i.e., o raio espectral de uma matriz intervalar tem como
~
limite superior a norma de uma matriz ordinária cujos elementos são os valores
absolutos (magnitudes) dos elementos da matriz intervalar.
? Exemplo 4. Seja
~ ~ a ~
c
A = ~ ~ ,
b d
~ ~
com ~
a = [−2 , 2] , b = [−1 , 0] , ~
c = [ −2 , 3] , d = [ −3 , 4] , cujas magnitudes são | a| = 2 , | b| = 1 , | c| = 3 ,
~ ~ ~
~ 2 1
mag (A ) = ,
3 4
~ 2 1
ρ( A ) ≤ =7
3 4 ∞
2 1
≤ =5
3 4 1
4. Funções Intervalares
Seja f uma função real de n variáveis reais. Se a função f for definida por uma
expressão do tipo f ( x ) = p( x ) / q( x ) em que p( x ) e q( x ) são polinómios algébricos
reais, com x ∈ ℜ n , dizemos que a função f é uma função real racional. Na
expressão analítica de uma função real racional intervem apenas um número finito
de operações aritméticas ( + , −, *,/) com operandos reais.
C(~ x n ) = { f ( x1 , … , x n ) | x i ∈ ~
x1 , … , ~ x i , i = 1, …, n} (24)
Œ Monotonia
~
x i ⊂ ~y i , i = 1, …, n ⇒ C ( ~
x1 , … , ~
x n ) ⊂ C ( ~y1 , … , ~y n ) ; (25)
• Degenerescência
~
x i = [x i , x i ] = x i , i = 1, …, n ⇒ C ( ~
x1 , … , ~
x n ) = f ( x1 , … , x n ). (26)
~ ~
que contém o contra-domínio C, i.e., C ⊃ C . O intervalo C possui as propriedades
de monotonia e degenerescência, tal como o conjunto C. A construção do
~
intervalo C exige o cálculo dos extremos inf (C) e sup (C), problema que continua
difícil. Assim, tenta-se construir uma função intervalar racional, F, com variáveis
intervalares ~x1 , …, ~
x n , que além de ser fácil de calcular possua as seguintes
propriedades:
Œ Monotonia inclusiva;
• Degenerescência;
~
Ž Os seus valores sejam intervalos que incluam o intervalo C, i.e., seja:
F(~
x1 , …, ~
x n ) ⊃ [inf (C ) ; sup(C )] ⊃ C ( ~
x1 , …, ~
xn ) ; (28)
• Os intervalos F( ~
x1 , …, ~
x n ) tenham a menor amplitude possível.
2 Definição 6. (Função monótona). Uma função real racional f com variáveis x1 , …, x n diz-se:
xi ≥ yi
⇒ f ( x1 , … , xn ) ≥ f ( y1 , … , yn ) ; (29)
xj = yj , j ≠ i
xi ≥ yi
⇒ f ( x1 , … , xn ) ≤ f ( y1 , … , yn ) ; (30)
xj = yj , j ≠ i
• Monótona quando for parcialmente monótona relativamente a cada uma das variáveis x1 , … , x n .
Quando a função real racional f é monótona pode-se construir uma função F que
goze das quatro propriedades requeridas para uma extensão intervalar natural da
função f , atrás enumeradas.
2 Teorema 1.
Œ Sejam:
f: função monótona;
• Definam-se para i = 1, …, n:
x ′ i ∈ A x ′ ′ , i ∈ A
ui ≡ i vi ≡ i (31)
xi ′ ′ , i ∈B xi ′ i ∈B
F (~
x1 …, ~n = [ f ( u1 … , n ) f (v ,… )] (32)
I-
http://www.utad.pt/~wmacedo
? Exemplo 5.
Supondo que ~
x = [~
x1 , x~2 ]′ ∈ I[( ℜ +0 ) 2 ] , tem-se neste caso, A = {1 , 2}, e portanto
F (~
x1 , x~2 ) = [ f ( x1′ , x 2 ′ ) , f ( x1′ ′ , x 2 ′ ′ ) ]
[ 2 , 3]
Particularizando para x~ = , tem-se
[1 , 4]
F ( [2 , 3] , [1 , 4] ) = [ 22 + 12 , 32 + 4 2 ] = [ 5 , 25]
[ −2 , 2]
Mas para x~ = ~ ~
∈I ( ℜ ) não se pode construir F ( x1 , x 2 ) com base nas variáveis
2
[ −3 , 3]
isótonas e antítonas, porque f ( x1 , x 2 ) não é monótona emℜ.
~ ~ ~ ~
x i ⊂ ~y i , i = 1, …, n ⇒ f ( x1 , …, ~
x n ) ⊂ f ( ~y1 , …, ~y n ) (35)
~ ~ ~
x i = [x i , x i ] = x i , i = 1, …, n ⇒ f ( x1 , …, ~
x n ) = f ( x i , …, x n ) (36)
~
No entanto, não estão garantidas para a expressão racional intervalar f ( ~ x1 , …, ~
xn )
as restantes propriedades que caracterizam uma extensão intervalar natural de f,
~
i.e., nem sempre a expressão racional intervalar f ( ~
x1 , …, ~
x n ) produz os intervalos
F( ~
x1 , …, ~
x n ) construídos na secção 4.1.
Exemplo 6. Seja ( x1 x ) = 2
1 + x 2 . Calculemos a expressão racional intervalar
~~ ~
f ( x1 , x 2 ) = x~1 * ~
x12 + ~
x2 * ~
x 22
f (x1 , 2 F ( x~ ~2 ).
Dados: ~
x1 = [1 , 2] , x~2 = [ 2 , 3]. Tem-se para estes dados:
~~ ~
f ( x1 , x 2 ) = [1 , 4] + [ 4 , 9] = [5 , 13]
4. Funções Intervalares I - 11
F. WOLFANGO DE MACEDO (1992) - ANÁLISE DE ERROS - UTAD, Vila Real, Portugal
u1 = x1′ = 1 ; u 2 = x2 ′ = 2 ; v1 = x1′ ′ = 2 ; v 2 = x2 ′ ′ = 3 ,
donde
F (~
x1 , x~2 ) = [ f ( u1 , u 2 ) , f ( v1 , v 2 ) ] = [ 5 , 13] .
~~ ~
Nem sempre, no entanto, se tem f ( x1 , x 2 ) = F ( x~1 , x~2 ), como o seguinte contra-exemplo
demonstra.
‚ Dados: ~
x1 = [−1 , 1] , x~2 = [ 2 , 3]. Neste caso tem-se:
~~ ~
f ( x1 , x 2 ) = [ −1 , 1] + [ 4 , 9] = [ 3 , 10] .
~ ~
Verifica-se assim neste caso que f (x~1 , x~2 ) ≠ F ( x~1 , x~2 ), i.e., a expressão racional intervalar f e
~
a extensão intervalar natural F não são coincidentes.
1) ( ~
x ) 2 = [ ( x′ ) 2 , ( x′ ′ ) 2 ] , para x′ > 0 ;
1 1 1
(37)
~
2) e x = [ e x ′ , e x ′′ ]; (38)
3) ln ~
x = [ ln x′ , ln x′ ′ ] , para x′ > 0 ; (39)
[−11, ] , para amp ( ~ x ) ≥ 2π
π π
[sin x′ , sin x′ ′ ] , para ~x ⊂ [− , ]
2 2
π π
x = [sin x′ ′ , sin x′ ] , para ~
4) sin ~ x ⊂ [− , ] (40)
2 2
[mín (sin x′ , sin x′ ′ ) ; 1 ] , quando π ∈ ~
x
2
π
[ − 1 ; máx (sin x′ , sin x′ ′ )] , quando − ∈ ~x
2
5) arcsin ~
x = [ arcsin x′ , arcsin x′ ′ ] , para ~
x ⊂ [−1 , 1]; (41)
, ] , quando amp ( ~
[−11 x ) ≥ 2π
~
[cos x′ , cos x′ ′ ] , para x ⊂ [π , 2π ]
6) cos ~
x = [cos x′ ′ , cos x′ ] , para ~ x ∈[0 , π ] (42)
~
[ − 1 , máx (cos x′ , cos x′ ′ ) ] , quando π ∈ x
[mín (cos x′ , cos x′ ′ ) , 1 ] , quando 0 ∈ ~
x
7) arccos ~
x = [ arccos x′ ′ , arccos x′ ]; (43)
? π π
Exemplo 7. Sendo f ( x ) = sin x + cos x e x~ = [ − ε , + ε ], ε > 0 pequeno, calculemos um
2 2
π π π π
contra-domínio aproximado da função f. Façamos a decomposição x~ = [ − ε , ] ∪ [ , + ε ].
2 2 2 2
π π π π
{ f (x ) | x ∈x~} = f ( x ) | x ∈[
− ε , ] ∪ f (x ) | x ∈[ , + ε ]
2 2 2 2
π π π π
= sin ( − ε ) ; 1 + cos ( − ε ) ∪ sin ( + ε ) + cos ( + ε ); 1
2 2 2 2
π π π
= sin ( + ε ) + cos ( + ε ); 1+ cos ( − ε )
2 2 2
[
= (1 − δ 2 ) 2 ; 1 + δ ,
1
]
π π
em que δ = cos − ε . Como ε é pequeno, também é pequeno cos − ε = δ e podemos
2 2
escrever
C ( x~ ) = { f ( x ) | x ∈~
x } ⊃ [ 1− δ ; 1+ δ ] .
4. Funções Intervalares I - 13
F. WOLFANGO DE MACEDO (1992) - ANÁLISE DE ERROS - UTAD, Vila Real, Portugal
a ∈ℜ → vf ( a) ∈ M ( p).
| a ω b − a • ω • b| ≤ ε ⋅ | a ω b| (44)
~ ~
amp [a • ω • b ] ≤ k ⋅ ε ⋅ amp [a ω b ]
~ ~
(45)
y = f ( x 1 , x 2 , …, x n ) ∈ ℜ (46)
y p = f [v f ( x1 ), …, v f ( x n )] ∈ M ( p) , (47)
com operandos ~
x1 , …, ~
x n ∈ I [ M ( p)].
yp ≠ y ; y p , y ∈ ~y . (49)
Assintoticamente, amp ( ~y ) = 0 .
? Exemplo 8.
1
1 , se 1 − * 3 > 0
y= 3
0 , caso contrário
1 − (0.3132 … 3p )* 3 = 1 − 0.9192 … 9p ,
donde y p = 1, qualquer que seja p. Concluimos assim, com este tipo de aritmética, que a
expressão dada não é convergente;
1 − [0.31 … 3p ; 03
. 1 … 4 p ]* 3 = 1 − [ 09
. 1 … 9p ; 1, 01 … 02p ]
= [ − 0.01 … 02p ; 00
. 1 … 01p ] > 0 ,
donde ~y = 0 , qualquer que seja p. Concluimos assim, com este tipo de aritmética, que a
expressão dada é convergente.
2 Teorema 2. (Nickel).
x~ν x~ν + 1 ~
x , ν ∈ℵ ; lim ~
x ν = x~
ν⊗∞
• Suponhamos que durante a execução do algoritmo anterior em aritmética com vírgula flutuante,
com p dígitos na mantissa, se verificam as condições
v f (~
x ν ) x~ν ; ν, p ∈ℵ
lim[ v f (x~ν ) ] = x~ ; ν ∈ℵ
p→ ∞
• Então,
Não está no âmbito deste estudo uma revisão geral dos algoritmos disponíveis em
vários domínios da Matemática Intervalar. Referiremos aqui apenas algoritmos
intervalares usados no domínio da Álgebra Linear Numérica, de grande
importância pelas suas aplicações, onde a análise de erros pelos métodos
estudados no capítulo 2 apresenta grande dificuldade, devida ao grande número de
equações e coeficientes geralmente envolvidos.
Ax = b, (50)
CAx = Cb ; x - x + CAx = Cb
x = x - CAx + Cb ; x = ( I n - CA ) x + Cb (51)
x = Tx + r , (52)
x ν + 1 = Tx ν + r ; ν = 0, 1, …, n . . (53)
~ ~
em que A ∈ I ( ℜ n × n ), ~
x ∈ I ( ℜ n ), b ∈ I ( ℜ n ), a fórmula de iteração é
~ ~~ ~
x ν + 1 = Tx ν + r . (55)
2 Teorema 3.
Œ O processo iterativo
~ ~
x ν + 1 = Tx~ν + ~
r
~
x* [ inf .{x } , sup.{x } ] ,
* *
~
quando ρ [ mag ( T )] < 1.
2 ~ ~ ~
Teorema 4. Seja T = [ T′ , T′ ′ ] = [ tij ] , com t ij ≥ 0 . Se ρ (T′ ′ ) < 1 , o processo iterativo
~
~
x ν + 1 = Tx~ν + ~
r é convergente para ~
x* , qualquer que seja o intervalo inicial ~x 0 e verifica-se a
desigualdade
~
x* = [ inf {x* }, sup {x* } ]
~
Além disso, o limite ~
x* é o mesmo, quer a matriz de iteração T corresponda ao método de Jacobi
ou ao método de Gauss-Seidel.
2 0 a 1 1 2
4 ⋅ = ; soluções exactas: a = ; b =
3 b 4 2 3
Ax b
Tem-se:
05
. .
00
C = A −1 ≈
−06 .
. 03
. 0.0 [−01
00 . ] [ −01
. ; 01 . ] ~
. ; 01
T = I - CA ≈ ∈ =T
00
. 01 . ] [ −01
. [−0.1; 01 . ]
. ; 01
~
O limite superior da matriz intervalar T é a matriz real
01 .
. 01
T′ ′ =
01
. .
01
~ [0.4 ; 06
. ] 0.2
x0 = ~
r= = sol. inicial ; amp ( ~
x0 ) =
[ 06 . ]
. ; 07 01
.
~ [ 027 . ]
. ; 073 046
.
x~1 = Tx~ 0 + r~ = ; amp ( ~
x1 ) =
[ 047 . ]
. ; 090 .
043
~ [0.24 ; 076
. ] 053
.
x~ 2 = Tx~1 + r~ = ; amp ( x~ 2 ) =
[0.44 ; 095
. ] 0.51
~ ~~
x 6 = Tx ~ [ 0225
. ; 0.775]
; amp (~
0550
.
5 + r = x6 ) =
[ 0425
. ; 0.972] .
0547
~ ~~
x 7 = Tx ~ [ 0225
. . ]
; 0775 0550
; amp ( x~ 7 ) =
.
6 + r =
[ 0425
. . ]
; 0972 .
0547
Ponto médio de ~
x7:
0500
.
m(~
x7 ) =
.
0698
05. 05 .
mag 2 / 3 − 0692 < 0.026 .
.
manual automática
8. Bibliografia
Hansen, E.R. (1969) • Topics in Interval Analysis • Oxford University Press,
London.
Nickel, K. (1977) • The State of the Art in Numerical Analysis • Academic Press,
London
8. Bibliografia I - 21
F. WOLFANGO DE MACEDO (1992) - ANÁLISE DE ERROS - UTAD, Vila Real, Portugal
9. Exercícios e Problemas
amp ( ~
x ∩ ~y ) ≤ amp ( ~
x) ; amp ( ~
x ∩ ~y ) ≤ amp ( ~y )
−3 1 2
A = 0 −2 3 ,
−4 1 2
a) Construa o contra-domínio C = { f ( x ) | x ∈ ~
x }, para ~
x = [0 , 3] .
b) Construa a seguinte aproximação de C:
~
C = [ inf (C ) , sup(C ) ]
~
c) Calcule a expressão racional intervalar f ( ~
x).
−2 x + 3 y = 4
− x + y = 6
9. Exercícios e Problemas I - 23