Você está na página 1de 32

Cálculo Numérico: Aula

Introdutória.
Ponto fixo e ponto flutuante,
Classificação de Erros
GEX 240 – Cálculo Numérico
Evelise Freire
Sandra Silveira
Avisos
Quinta-feira
• Horário de atendimento:
15h-18h
DEX05

• Monitoria: verificar horários na secretaria;

• Fora do horário: somente com agendamento por email:


sandra.silveira@dex.ufla.br

• Listas de exercícios e pdf das aulas serão


disponibilizados no campus virtual;
Bibliografia básica:
Aula de hoje:

• Para quê serve cálculo numérico?


• Aritmética do ponto flutuante.
• Erros de arredondamento e truncamento
• Condicionamento de algoritmos

Por que usar ponto flutuante?


Representar a parte fracionária de um número em
ponto flutuante ou notação científica é mais barato
computacionalmente.
4
Pra que serve Cálculo Numérico?

• Problemas reais podem ser modelados por


equações matemáticas;
Pra que serve Cálculo Numérico?
Modelados pelas equações de Navier-
Stokes:
Mas...

 Algumas equações não tem solução analítica!

 Solução: Resolver de maneira aproximada, ou


seja numericamente!
O que significa resolver um problema
numericamente
Vejamos mais um exemplo:
• Barragem – Usina Hidrelétrica • Problema: Estresse térmico
Ilha Solteira – SP que a barragem pode sofrer
Como obter esta distribuição?
Idéia: Considerar alguns pontos do interior da barragem e aproximar a temperatura nestes
pontos a partir das temperaturas exteriores.

E se a análise for
composta por
milhares de pontos?
10
Definições importantes

• “A essência dos métodos numéricos está na


discretização do contínuo. É esta discretização
que torna finito o problema e portanto
viabiliza sua solução através dos
computadores” Fonte:
Métodos Numéricos, Maria Cristina Cunha

discretizar: 1) tornar discreto, com unidades e elementos distintos e não contínuos;


2) Dividir em partes menores e menos complexas;
3) Tornar algo contínuo em individual; individualizar uma unidade contínua ou
discreta.

11
Essência do método numérico

Soluções • Transformar um
numéricas problema contínuo em
um problema discreto
• Desenvolver critérios
Soluções
para especificar a
aproximadas
confiança dos
resultados
aproximados!!
Erros (Estimativas de erros)
12
Definições importantes:

• Algoritmo:
1. Descrição de uma sequência de passos que
deve ser seguida para a realização de uma tarefa
2. Sequência finita de instruções ou operações cuja
execução, em tempo finito, resolve um
problema computacional, qualquer que seja a
instância.
3. Descrição sequencial dos passos que
caracterizam um método numérico. Consiste de
uma sequência de n passos
13
Exemplo
• Algoritmo 1: Área de um retângulo:
Passo 1: Receber o valor dos lados do retângulo;
Passo 2: Multiplicar o valor de um lado pelo outro;
Passo 3: Mostrar o valor de sua área.

Conclusão: Conhecimento matemática do


problema é muito importante!!!!!!!!!

Fonte: Ascencio e Campos, 2012, Fundamentos da programação de computadores.


Pearson Education

14
Definições importantes:

• Iteração ou aproximação sucessiva:


Repetição de um processo
Tentativa ou chute inicial
Equação de recorrência (Método matemático)
Teste de parada.

15
Estratégia de solução numérica:

LEVANTAMENTO DE
DADOS
ESCOLHA DO
IMPLEMENTAÇÃO
MÉTODO
PROBLEMA COMPUTACIONAL
NUMÉRICO
CONSTRUÇÃO DO
MODELO ANÁLISE DOS
MATEMÁTICO RESULTADOS

VERIFICAÇÃO/
VALIDAÇÃO
De onde vem o erro? Exemplo 1
Potência negativa:
caminha para a
esquerda

0.25312 X10-1 = 0.025312 na base 10


Potência positiva:
caminha para a
direita

0.25312 X102 = 25.312 na base 10

17
Aritmética de ponto flutuante

• Representação do número em ponto flutuante


com n dígitos: Nº máximo de
casas decimais

fl(x) = +- (0.d1 d2 d3 ... dt)x β e

Mantissa
Base

Número Normalizado d1 diferente de zero.

18
Vantagens e desvantagens

 Facilita o trabalho com números fracionários, pois


“elimina” a parte inteira
 Consequentemente, facilita o armazenamento de dados

 Arredondamento/ Truncamento
 Possibilidade de Cancelamento
 Underflow e Overflow

19
O que o erro numérico pode causar? Casos reais

• Desastres causados por erros numéricos:

Explosão do Foguete
Patriot Missile
Ariane 5
Arábia Saudita – 1991 Plataforma offshore
Guiana Francesa – 1996
Guerra do Golfo Mar do Norte– 1991
Prejuízo de $500
28 mortos. Prejuízo de $ 1 bilhão.
milhões.
Causa: Erro de Causa: Falta de exatidão
Causa: Overflow
arredondamento. em um dos métodos
utilizados
http://www.ima.umn.edu/~arnold/disasters/ (Elementos Finitos)
Diferença entre ponto fixo e ponto
flutuante (notação científica)

21
Diferença na representação

Fonte: http://www.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0301-1-
11/RepresentacaoNumerica.pdf

22
Exemplo 2

Considere uma máquina que opera no sistema:


β =10 , t=3; e ∈[-5,5]
Qual é o menor número positivo possível neste
sistema? E o maior?

23
Underflow e Overflow

Considere a mesma máquina do exemplo anterior.


β =10 , t=3; e pertencente ao intervalo [-5,5]

O número x=0.397x10-7 não pode Underflow


(“Estourou inferiormente”)
ser representado nessa máquina

O número x=0.875x109 não pode Overflow


(“Estourou superiormente”)
ser representado nessa máquina
24
Aproximação ERRO: Discrepância introduzia pela
omissão de algarismos significativos;

• Arredondar: aproximar superiormente ou


inferiormente
3,141516 arredondar 3,14152

• Truncar: Barrar, cortar, interromper.

3,141516 Truncar 3,14151


25
Fluxograma para arredondamento

26
Acurácia e Precisão

27
Classificação dos Erros:
• x = valor exato
• x = valor aproximado ou melhor estimativa
disponível para o valor aproximado
• ERRO ABSOLUTO: Diferença entre o valor exato de um
número e seu valor aproximado.
ABSOLUTO  x  x

• ERRO RELATIVO: Erro absoluto dividido pelo valor aproximado.


Pode ser estimado em taxa percentual.

xx ABSOLUTO
RELATIVO  RELATIVO  100%
x x 28
Condicionamento de algoritmos
Estabilidade ou Instabilidade: informação sobre
a sensibilidade do método aos erros de
arredondamento ou truncamento acumulados
no cálculo. h=120 cm
0,012

0,01
Concentração [Kg/m3]

Exemplo de 0,008

0,006

Problema estável: 0,004

0,002

0
139

346

553
116

162
185
208
231
254
277
300
323

369
392
415
438
461
484
507
530

576
599
1
24
47
70
93

Passo no tempo [s]

29
Exemplo 3

• Considerando os dados do exemplo 2 em que


t=3, um número com mantissa maior que três
deve ser truncado ou arredondado. Trunque e
arredonde os seguintes números, no final da
operação.

a) 0.5589x10-1
b) 1.5567412x103
Exemplo 4
Dar a representação por arredondamento e truncamento dos
números a seguir num sistema de aritmética de ponto flutuante
de três dígitos (t=3), com base 10 e e no intervalo [-4,4]
X Representação por Representação por
arredondamento truncamento
1.25

-238.15

10.053

0.000007

31
Análise de erros em pontos flutuantes
Exemplo 5

Dados x=0.937x104 e y=0.1272x102 , obter os


seguintes valores aproximados por
arredondamento e por truncamento, para t=4.
a) x+y
b) x*y

32

Você também pode gostar