noções básicas sobre erros
DESCRIPTION
Apresentação sobre Noções básicas sobre erros preparada a partir do capítulo 1 do livro de Ruggiero, Cálculo Numérico.TRANSCRIPT
-
Noes bsicas sobre ErrosEmanuele Santos
-
UFC - Universidade Federal do Cear Clculo Numrico - Professora Emanuele Santos
Agenda Representao de Nmeros Mudanas de Base
Aritmtica de Ponto Flutuante Truncamento e arredondamento
2
-
UFC - Universidade Federal do Cear Clculo Numrico - Professora Emanuele Santos
Objetivos Ao final desta aula, voc dever ser capaz de: Compreender porque as solues para problemas matemticos
dependem da representao numrica utilizada
Analisar as consequncias das limitaes da representao numrica em um computador
Representar um nmero em uma base qualquer e realizar mudanas de bases
3
-
UFC - Universidade Federal do Cear Clculo Numrico - Professora Emanuele Santos
Resoluo de Problemas usando Mtodos Numricos
4
Levantar Dados
ProblemaReal
Construir Modelo
Matemtico
Escolher Mtodo Numrico Adequado
Implementar Mtodo Computacionalmente
SoluoNumrica
Analisar resultados
Se houverajustes necessrios
-
UFC - Universidade Federal do Cear Clculo Numrico - Professora Emanuele Santos
Resoluo de Problemas usando Mtodos Numricos
5
Levantar Dados
ProblemaReal
Construir Modelo
Matemtico
Escolher Mtodo Numrico Adequado
Implementar Mtodo Computacionalmente
SoluoNumrica
Analisar resultados
Se houverajustes necessrios
Erros de modelagem (ex. erros decorrentes de
simplificaes)
Erros de resoluo (ex. limitao do
equipamento)
Erros de aproximao
-
UFC - Universidade Federal do Cear Clculo Numrico - Professora Emanuele Santos
Representao de Nmeros Solues so dependentes da representao numrica utilizada Exemplos Clculo da rea A de uma circunferncia de raio 100m
- Resultados dependentes do valor de utilizado A = 31400 m2 ou A = 31416 m2 ou A = 31415.92654 m2
- possvel calcular a rea exata?
- Qual o resultado mais preciso?
6
-
UFC - Universidade Federal do Cear Clculo Numrico - Professora Emanuele Santos
Representao de Nmeros Exemplos Clculo do somatrio no computador: , para xi = 0.11
7
S =30000Xi=1
xi
Em Python, preciso dupla
Em C, preciso simples3300.9851073300.0000000006285
-
UFC - Universidade Federal do Cear Clculo Numrico - Professora Emanuele Santos
Representao de Nmeros Observaes Clculo envolvendo nmeros que no podem ser representados por
um nmero finito de dgitos no fornecer resultado exato
o nmero de dgitos utilizados preciso Um nmero pode ter representao finita em uma base e no-finita
em outras bases
Ns usamos o sistema decimal O computador opera no sistema binrio
8
-
UFC - Universidade Federal do Cear Clculo Numrico - Professora Emanuele Santos
Interao com o Computador
Mudanas de bases podem introduzir erros que afetam os resultados finais dos clculos
9
Operaes no Computador
Sistema binrio
Sadade Dados
Entradade Dados
Sistema decimal
Sistema decimal
converso base 10 base 2
converso base 2 base 10
-
UFC - Universidade Federal do Cear Clculo Numrico - Professora Emanuele Santos
Bases Pode-se representar um nmero real N, em qualquer base b, da
seguinte forma:
onde ai {0, 1, 2, 3, ..., (b-1)}, com n e m inteiros
10
Nb =mXi=n
ai bi
-
UFC - Universidade Federal do Cear Clculo Numrico - Professora Emanuele Santos
Base Binria
Exemplos
11
Nb =mXi=n
ai bi
N2 =mXi=n
ai 2i, ai 2 {0, 1}
(1011)2 = 1 20 + 1 21 + 0 22 + 1 23(111.01)2 = 1 22 + 0 21 + 1 20 + 1 21 + 1 22
-
UFC - Universidade Federal do Cear Clculo Numrico - Professora Emanuele Santos
Base Decimal
Exemplos
12
Nb =mXi=n
ai bi
N10 =mXi=n
ai 10i, ai 2 {0, 1, . . . , 9}
(231)10 = 1 100 + 3 101 + 2 102(231.35)10 = 5 102 + 3 101 + 1 100 + 3 101 + 2 102
-
UFC - Universidade Federal do Cear Clculo Numrico - Professora Emanuele Santos
Mudanas de Base Base binria para base decimal Procedimento: multiplicar o dgito binrio por uma potncia
adequada de 2 e depois somar os nmeros obtidos, ou seja, calcular
13
mXi=n
ai 2i
(1011)2 = 1 20 + 1 21 + 0 22 + 1 23(111.01)2 = 1 22 + 0 21 + 1 20 + 1 21 + 1 22
= (7.25)10
= (11)2
-
UFC - Universidade Federal do Cear Clculo Numrico - Professora Emanuele Santos
Mudanas de Base Base decimal para base binria (parte inteira) Procedimento: dividir o nmero decimal sucessivamente por 2
14
25 21 12 2
60 230 2
11Leitura
Operaes
(25)10 = (11001)2
-
UFC - Universidade Federal do Cear Clculo Numrico - Professora Emanuele Santos
Mudanas de Base Base decimal para base binria (parte fracionria)
15
(0.1875) x 2 = 0.375 parte inteira = 0 e parte fracionria 0.375(0.375) x 2 = 0.75 parte inteira = 0 e parte fracionria 0.75(0.75) x 2 = 1.5 parte inteira = 1 e parte fracionria 0.5(0.5) x 2 = 1.0 parte inteira = 1 e parte fracionria 0
(0.1875)10 = (0.0011)2
(13.25)10 = (13)10 + (0.25)10 = (1101)2 + (0.01)2 = (1101.01)2(0.11)10 = (0.00011100001. . . )2
-
Aritmtica de Ponto Flutuante
-
UFC - Universidade Federal do Cear Clculo Numrico - Professora Emanuele Santos
Representao em Ponto Flutuante Sistema utilizado pelo computador para representar um nmero real r
onde: - 2 a base em que a mquina opera - e o expoente, nmeiro inteiro no intervalo [l,u]
- a mantissa e t o nmero de dgitos na mantissa
17
r = m e
m = 0.d1d2 . . . dt0 di ( 1); i = 0, . . . , t, d1 6= 0
-
UFC - Universidade Federal do Cear Clculo Numrico - Professora Emanuele Santos
Representao em Ponto Flutuante Dado um sistema (, t, l, u), temos: zero = 0.00...0 x l menor nmero positivo, no nulo, exatamente representvel: menor
mantissa, menor expoente l
- m = 0.100...0 x l maior nmero positivo exatamente representvel: maior mantissa,
maior expoente - M = 0... x u, onde = -1
18
{t vezes{t-1 vezes
t vezes{
-
UFC - Universidade Federal do Cear Clculo Numrico - Professora Emanuele Santos
Representao em Ponto Flutuante Dado um sistema (, t, l, u), temos: nmero mximo de mantissas positivas possveis:
- mantissas+ = ( -1)x t-1 nmero mximo de expoentes possveis:
- exppossveis = u - l + 1 nmero de elementos positivos representveis:
- NR+ = mantissas+ x exppossveis nmero total de elementos representveis:
- NRt = 2 x NR+ +119
-
UFC - Universidade Federal do Cear Clculo Numrico - Professora Emanuele Santos
Representao em Ponto Flutuante Exemplo 1 Dado o sistema de ponto flutuante SPF (3, 2, -1, 2), com a seguinte
forma de representao: O menor positivo exatamente representvel:
O maior positivo exatamente representvel:
A quantidade de reais positivos exatamente representveis: - mantissas+ = (3-1) x 31= 6 - exppossveis = 2 - (-1) + 1 = 4 - NR+ = 6 x 4 = 24
20
0.10 31 = (1 31 + 0 32) 31 = 19
0.22 32 = (2 31 + 2 32) 32 = 8
0.d1d2 3e, 0 di 2, d1 6= 0, e 2 [1, 2]
-
UFC - Universidade Federal do Cear Clculo Numrico - Professora Emanuele Santos
Representao em Ponto Flutuante Dado um sistema (, t, l, u), seja o seguinte conjunto:
Dado um nmero real x, trs casos podem acontecer: x G e x no representvel: truncamento ou arredondamento |x| < m: underflow |x| > M: overflow
21
G = {x 2 R |m |x| M}
-
UFC - Universidade Federal do Cear Clculo Numrico - Professora Emanuele Santos
Representao em Ponto Flutuante: Exemplo 2 O sistema SPF (10, 3, -5, 5), usa a seguinte forma para representar os
nmeros:
zero: 0.000 x 10-5 menor nmero positivo: m = 0.100 x 10-5 = 10-6 maior nmero positivo: M = 0.999 x 105 = 99900 representando x = 235.89:
- x = 0.23589 x 103, 5 > t = 3; 0.235 x 103 < x < 0.236 x 103
- truncamento: x = 0.235 x 103, arredondamento: x = 0.236 x 103
22
0.d1d2d3 10e, 0 di 9, d1 6= 0, e 2 [5, 5]
-
UFC - Universidade Federal do Cear Clculo Numrico - Professora Emanuele Santos
Preciso simples e dupla simples: 32 bits
- 1 bit sinal, 8 bits expoente, 23 bits mantissa
dupla: 64 bits 1 bit sinal, 11 bits expoente, 52 bits mantissa
23
-
UFC - Universidade Federal do Cear Clculo Numrico - Professora Emanuele Santos
Representao em Ponto Flutuante: Exerccio Questo 9, p. 23: Considere uma mquina cujo sistema de
representao de nmeros definido por: = 10, t = 4, l=-5 e u = 5. Pede-se:
a) qual o menor e o maior nmero em mdulo representados nesta mquina?
b) como ser representado o nmero 73.758 nesta mquina, se for usando arredondamento? E se for usado truncamento?
24