43
 MEM977 – Prof. José Maria 1 Programa de Pós Graduação em Engenharia Mecânica - DEMEC/UFPE Sistemas de numeração e Erros Métodos Numéricos e Instrodução aos Métodos Numéricos Prof. José Maria Andrade

Clase de Barbosa

Embed Size (px)

DESCRIPTION

tylytl

Citation preview

  • MEM977 Prof. Jos Maria 1

    Programa de Ps Graduao em Engenharia Mecnica - DEMEC/UFPE

    Sistemas de numerao e Erros

    Mtodos Numricos e Instroduo aos Mtodos Numricos

    Prof. Jos Maria Andrade

  • SISTEMAS DE NUMERAO

    Objetivos

    Relembrar conceitos do sistema decimal de numerao.

    Trabalhar com o sistema binrio.

    Converter informaes de um sistema para outro.

    Estudar os tipos de erros numricos e suas consequncias.

  • TIPOS PRINCIPAIS DE SISTEMAS

    Decimal

    Este o sistema que trabalhamos desde os primeiros anos escolares. Usa dez caracteres (0, 1, 2, 3, 4, 5, 6, 7, 8 e 9), tambm chamados de dgitos, para representar uma informao qualquer.

  • Parte Inteira e Fracionria de um numero decimal

  • Exemplo 1.1 Representao do nmero decimal 581 na forma polinomial.

    Exemplo 1.2 Representao do nmero 135,23 da base 6 na forma polinomial (FP) e obteno do decimal equivalente.

    Exemplos

  • Sistema Binrio

    Exemplo 1.3 - Representao do binrio 1110 na forma polinomial (FP) e obteno do decimal equivalente.

    O sistema binrio usa apenas os caracteres 0 e 1 (base 2) para representar uma informao qualquer.

  • Exemplo 1.4 - Representao do binrio 101,11 na forma polinomial (FP) e obteno do decimal equivalente.

    Exemplo

  • MEM977 Prof. Jos Maria 8

    Outras bases de numeraoNumbers we use are DECIMAL (or base 10):

    Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9123 = 1*102 + 2*101 + 3*100

    But we can always use other bases:Octal (base 8):

    Digits: 0, 1, 2, 3, 4, 5, 6, 7123 = 1*82 + 2*81 + 3*801238 = 64+16+3 = 8310

    Binary (base 2):Digits: 0, 11011 = 1*23 + 0*22 + 1*21 + 1*2010112 = 8+0+2+1 = 11101238 = 001 010 011 = 10100112

    Hexadecimal (base 16):Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F123 = 1*162 + 2*161 + 3*16012316 = 256 + 32 + 3 = 2911012316 = 0001 0010 0011 = 1001000112

  • CONVERSES ENTRE BASES

    Decimal inteiro N para a base r

    Dr = (Qn Rn Rn-1 Rn-2 ... R1)r

  • Exemplo 1.5 - Converso do decimal 350 para binrio.

    Exemplo

  • Nmero com parte inteira e fracionria

    Exemplo 1.6 - Converso do decimal 350,233 para binrio.

  • MEM977 Prof. Jos Maria 12

    Conhecendo o Byte A byte is the smallest memory allocation available. A byte contains 8 bits so that:

    Smallest: 0 0 0 0 0 0 0 0 = 010 Largest: 1 1 1 1 1 1 1 1 = 1*27+1*26+1*25+1*24+1*23+1*22+1*21+1*20 = 25510 (or 28-1)

    Result: a single byte can be used to store an integer number ranging from 0 to 255 (256 different numbers)

    If negative numbers are included, one bit must be dedicated to the sign, leaving only 7 bits for the numberSmallest: 0Largest: +12710 or -12810

  • MEM977 Prof. Jos Maria 13

    Magnitude com sinal

    Example of signed magnitude: 000001012 => + 5 100001012 => - 5

    Notice also that signed-magnitude gives plus and minus zero! 000000002 => + 0 100000002 => - 0

  • MEM977 Prof. Jos Maria 14

    Preciso de nmeros em bytes

    28- 1 (255) is not a very big number, so computers generally use multiple bytes to represent numbers:

    Here is some new vocabulary: byte = 8 bits short (precision) = 2 bytes single (precision) = 4 bytes double (precision) = 8 bytes quad (precision) = 16 bytes char = 2 bytes (used to be 1 byte)

    Note: A word is the basic size of the CPU registers and for Pentium chips it is 4 bytes or 32 bits; it is 8 bytes for the new Itanium and some unix chipsets. It was 2 bytes for early Intel chips; some new game consoles use 16 byte words.

    Java and other languages use

    different names!

  • MEM977 Prof. Jos Maria 15

    Aritimtica de ponto Flutuante

    How are fractional numbers (called real or floating point numbers) stored in a computer?

    The IEEE 754 double format consists of three fields: a 52-bit fraction, f (also called the mantissa) an 11-bit based exponent, e and a 1-bit sign, s

    These fields are stored contiguously in 8 bytes (or 2 successively addressed 4-byte words = 64 bits):

  • MEM977 Prof. Jos Maria 16

    Padro IEEE de ponto flutuante

  • MEM977 Prof. Jos Maria 17

    Representao dos nmeros

    Because only a finite number of bits are used for each part of the number, not all possible real numbers can be represented in a computer using IEEE 754

    0

    Positive numbers smaller than 2-1022 (positive underflow, Matlab realmin)

    Positive numbers greater than (2-2-52) x 21023 (positive overflow, Matlab realmax)

    Negative numbers less than -(2-2-52) x 21023 (negative overflow)

    Negative numbers greater than -2-1022(negative underflow)

    RESULT: about 16 digits of precision in the range 10308

    Zero (actually is a special combination of bits)

  • MEM977 Prof. Jos Maria 18

    Fontes de erro em computaoOthers sources of error in computation:

    Errors in the input data - measurement errors, errors introduced by the conversion of decimal data to binary, roundoff errors;

    Roundoff errors during computation (as discussed);Truncation errors - using approximate calculation is

    inevitable when computing quantities involving limits and other infinite processes on a computer Never try to compare two floating point numbers for

    equality because all 16+ digits would have to match perfectly

  • MEM977 Prof. Jos Maria 19

    Good Accuracy Good Precision

    Good PrecisionPoor Accuracy

    Good AccuracyPoor Precision

    Poor AccuracyPoor Precision

    Low precision: pi = 3.14 High precision: pi = 3.140101011 Low accuracy: pi = 3.10212 High accuracy: pi = 3.14159 High accuracy & precision: pi = 3.141592653

    Nmeros: Preciso e Exatido (acurcia)

  • MEM977 Prof. Jos Maria 20

    Descrevendo Erro no MATLAB

    Accuracy How close your answer is to the actual or real

    answer.Precision The smallest difference that can be represented on

    the computer (help eps)Recognize: MATLAB (and other programs that use IEEE

    doubles) give you 15-16 good digits MATLAB will also store exact integer values using

    only the mantissa (for about 15-16 digits total)Matlab commands: realmin, realmax, eps, bitmax (try with help)

  • MEM977 Prof. Jos Maria 21

    Memory in MATLAB

  • MEM977 Prof. Jos Maria 22

    What it Means

    In the previous slide, we see:

    What is the size of the variable i What does class represent? How many bytes are used to store the value?

    Name Size Bytes Class

    i 1x1 8 double array s 1x43 86 char array t 1x200 1600 double array

  • MEM977 Prof. Jos Maria 23

    Back to MATLAB - what does all this mean?

    We must pay attention to the math! (on any computer!)

    Given a finite (limited) number of bits, almost all computations will result in numbers that cant be represented exactly.

    Remember that the result of a floating-point computation must be truncated to fit back into its finite representation.

    Always check your results - design programs to allow for independent verification of computations!

  • MEM977 Prof. Jos Maria 24

    Sistema de ponto flutuante

  • MEM977 Prof. Jos Maria 25

    Sistema de ponto flutuante

  • MEM977 Prof. Jos Maria 26

    Exerccio: Representao dos Nmeros

  • MEM977 Prof. Jos Maria 27

    Exerccio: Representao dos Nmeros

  • MEM977 Prof. Jos Maria 28

    Erros numricos e computacionais

    Nenhum resultado numrico ou computacional tem valor se no tivermos conhecimento e controle dos possveis erros envolvidos no processo.

    Para avaliao da soluo de um problema fundamental conhecer todo o processo de resoluo adotado e as possveis aproximaes inerentes.

  • MEM977 Prof. Jos Maria 29

    Tipos de Erros

    Uma soluo numrica nem sempre leva a um nmero exato.

    Existe uma diferena entre a soluo numrica e os valores razoveis analticos ou experimentais.

    Problema

    Fsico

    Problema matemtico

    Soluo Analtica

    Representao dos nmeros na mquina

    Soluo Numrica

    Algoritimo Computacional

  • MEM977 Prof. Jos Maria 30

    Erro Absoluto e Relativo

  • MEM977 Prof. Jos Maria 31

    Erro Absoluto e Relativo

    Exercicio:Qual a melhor aproximao das indicadas abaixo ?

  • MEM977 Prof. Jos Maria 32

    Erro Absoluto e Relativo

  • MEM977 Prof. Jos Maria 33

    Fontes de Erros

    Erro na ModelagemDevido expresso matemtica que no reflete perfeitamente o fenmeno fsico ou aos dados terem sido obtidos com pouca exatido.

    Erro GrosseiroDevido a erro na elaborao ou implementao do algoritmo ou a erro de digitao.

  • MEM977 Prof. Jos Maria 34

    Tipos de Erros Computacionais

    Exerccio: Calcular o valor de e1 por meio de uma srie truncada de segunda ordem. Verificar o erro sabendo-se que o valor com 4 algarismos significativos 2,718.

  • MEM977 Prof. Jos Maria 35

    Tipos de Erros Computacionais

  • MEM977 Prof. Jos Maria 36

    Erros Computacionais - Exemplos

    Operaes com diviso e multiplicao

  • MEM977 Prof. Jos Maria 37

    Erros Computacionais - Exemplos

    Nmeros fora da faixa de abrangncia

  • MEM977 Prof. Jos Maria 38

    Erros Computacionais - Exemplos

    Zero de ponto flutuante

  • MEM977 Prof. Jos Maria 39

    Falhas por erros computacionais

    Caso 1 - Guerra do Golfo, 25/fev/91 mssil Patriot dos EUA falha na interceptao do missil Scud do Iraque (fonte:http://ta.twi.tudelft.nl/users/vuik/wi211/disasters.html)

    Causa: Limitao na representao numrica (24 bits)

    Consequncia: O Scud atinge acampamento americano e 28 soldados so mortos, ferindo mais umas 100 pessoas.

    Erro de 0,34 s no clculo do tempo de lanamento

  • MEM977 Prof. Jos Maria 40

    Falhas por erros computacionais

    Caso 2: Guiana Francesa, 04/jun/96 - Exploso do foguete Ariane 5. (fonte:http://ta.twi.tudelft.nl/users/vuik/wi211/disasters.html; http://www.around.com/ariane.html)

    Causa: Erro de software no sistema de referencia inercial. Um ponto flutuante de de 64 bits relacionado a velocidade horizontal do foguete com respeito plataforma foi convertido para um nmero de 16 bits, ocasionando o desligamento do sistema guia 36,7 s aps o lanamento.

    Consequncia: U$7 bilhes de investimentos perdidos.

  • MEM977 Prof. Jos Maria 41

    Falhas por erros computacionais

    Caso 3: Mar do Norte/Noruega, 23/ago/91 - Afundamento da Plataforma Martima Sleipner)

    Causa: Inexatido no clculo de aproximao pelo de MEF usando um modelo linear elstico (com o software NASTRAN). Erro na anlise apontou que tenses de cisalhamento subestimadas em 47% levando a um projeto deficiente.

    Consequncia: Prejuzo de U$700 milhes de investimentos.

  • MEM977 Prof. Jos Maria 42

    Exerccio: Preciso da Mquina

  • MEM977 Prof. Jos Maria 43

    Exerccio: Preciso da Mquina

    Slide 1Slide 2Slide 3Slide 4Slide 5Slide 6Slide 7Slide 8Slide 9Slide 10Slide 11Slide 12Slide 13Slide 14Slide 15Slide 16Slide 17Slide 18Slide 19Slide 20Slide 21Slide 22Slide 23Slide 24Slide 25Slide 26Slide 27Slide 28Slide 29Slide 30Slide 31Slide 32Slide 33Slide 34Slide 35Slide 36Slide 37Slide 38Slide 39Slide 40Slide 41Slide 42Slide 43