instituto de computação - introdução aos métodos...

Post on 18-Mar-2021

6 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Introdução aos Métodos Numéricos

Instituto de Computação UFFDepartamento de Ciência da Computação

Otton Teixeira da Silveira Filho

Conteúdo da disciplina

● Erros em Aproximações Numéricas

● Sistemas de Equações Lineares. Métodos diretos

● Interpolação

● Ajuste de Curvas

● Zeros de Função

● Sistemas de Equações Lineares. Métodos Iterativos

● Integração Numérica

● Introdução à Resolução de Equações Diferenciais Ordinárias

Conteúdo específico

● Limitação na representação numérica

● Mudança de base numérica

● Problemas mal-condicionados

Limitação de representação numérica

Computadores usam representação limitada de números sejam inteiros, reais ou complexos

Seria necessário uma memória infinita para representar números com um número potencialmente infinito de algarismos

Limitação de representação numérica

● Computadores usam representação limitada:

● “inteiros“ : 2 Baites (-32 768 − 32 767)

● 4 Baites (-2 147 483 648 − 2 147 483 647)

Limitação de representação numérica

● Computadores usam representação limitada:

● “reais“ (ponto flutuante):

4 Baites − 7 algarismos significativos (base 10)

8 Baites − 15 algarismos significativos (base 10)

Calculando com precisão limitada

Denominaremos Ruido Numérico aos valores gerados na computação de números de ponto flutuante e que tem como fonte os cálculos oriundos de usarmos precisão finita

Calculando com precisão limitada

A=~A+δ A ; A ,δ A∈ℜ ;~A Ponto Flutuante

B=~B+δB ;B ,δB∈ℜ;~B Ponto Flutuante

Calculando com precisão limitada

● Todo sistema de cálculo numérico tem precisão limitada

● Para facilitar o entendimento, trabalharemos com um dispositivo de cálculo que representa 5 algarismos significativos

● Usaremos o formato onde 123 são os algarismos não representáveis.

3,1458|123

Soma

A+B=~A+δ A+

~B+δB=~A+

~B+δ A+δb

Soma

A+B=~A+δ A+

~B+δB=~A+

~B+δ A+δb

A=3,1435 x 101 ;B=4,2356 x 10−2

Soma

A+B=~A+δ A+

~B+δB=~A+

~B+δ A+δb

A=3,1435 x 101 ;B=4,2356 x 10−2

31,435|0+0,042|356=31,477|356

Observe que se B fosse, por exemplo, cem vezes menor seria como se ele fosse zero. Toda informação de B seria perdida.

Soma

Quanto maior for a diferença de magnitude entre os números, maior será o ruido numérico na soma.

Subtração

A−B=~A+δ A−(~B+δB )=~A−

~B+δ A+δB

Subtração

Por oposição, veja que se dois números forem muito próximos mas sua representação for idêntica, podemos ter como resultado da subtração um valor representando zero para um valor que não é zero.

Subtração

Quanto menor for a diferença de magnitude entre os números, maior será o ruido numérico

Multiplicação

A×B=(~A+δ A )×(δB+~B )=~A×

~B+~A δb+

~Bδ A

Multiplicação

A×B=(~A+δ A )×(δB+~B )=~A×

~B+~A δb+

~Bδ A

A=3,1435 x 101 ;B=4,2356 x 10−2

Multiplicação

A×B=(~A+δ A )×(δB+~B )=~A×

~B+~A δb+

~Bδ A

A=3,1435 x 101 ;B=4,2356 x 10−2

31,435×0,0423|56=1,3314|6086

Multiplicação

Quanto maior for a diferença de magnitude entre os números, maior será o ruido numérico

Divisão

AB

=~A+δ A~B+δB

=~A /

~B+δ A /~B

1+δB /~B

;~B≠0

Divisão

AB

=~A+δ A~B+δB

=~A /

~B+δ A /~B

1+δB /~B

;~B≠0

SérieGeométrica :1

1+r=1−r+r2

−r3+⋯;|r|<1

Divisão

AB

=~A+δ A~B+δB

=~A /

~B+δ A /~B

1+δB /~B

;~B≠0

SérieGeométrica :1

1+r=1−r+r2

−r3+⋯;|r|<1

~A /~B+δ A /~B1+δB /

~B=(

~A~B

+δ A~B )× 1

1+δB /~B

=(~A~B

+δ A~B )× [1−

δB~B

+( δB~B )

2

+⋯]

Divisão

AB

=~A~B

+δ A~B

−~A~B

δB~B

−δ A~B

δB~B

+⋯

Repare que se B for “pequeno“ em relação a A, a representação de B ao quadrado no segundo termo, por exemplo, fará a representação de A ser amplificada, levando a perder algarismos significativos de B

Divisão

Quanto menor for o valor do divisor em relação ao dividendo, maior será o ruido numérico

Mudança de base numérica

Números que não são dízima periódica em decimal podem o ser em binário:

0,110 e 0,0110 são dízimas periódicas na base 2 usada pelos computadores, ou seja,

Portanto, 100 X 0,01 pode ser diferente de 1...

0,110=0,0 00112 ;0,0110=0,00 000010100011110101112

Mudança de base numérica

● Faça um programa em sua linguagem favorita somando 0,0110 100 vezes e veja o resultado

● Use a função rationalize() do Maxima para ver qual é a representação como números racionais para os números 0,110 e 0,0110 no computador

Problemas mal condicionados

Um problema é dito malcondicionado se mudança em seus parâmetros produz uma mudança numa ordem de grandeza superior à mudança original

Um exemplo simples

x2−2 x+1=0

1,01 x2−2 x+1=0

0,99 x2−2 x+1=0

Um exemplo simples

a x2+bx+c=0 ; x=−b±√b2

−4 ac2a

Um exemplo simples

x2−2 x+1=0 ; x=2±

√4−42

=1;raiz dupla

Um exemplo simples

1,01 x2−2 x+1=0; x=

2±√4−4,042,02

=1±0,1 i

1,01

Um exemplo simples

0,99 x2−2 x+1=0 ; x=

2±√4−3,961,98

=1±0,10,99

={1,110, 90

Problemas mal condicionados

A natureza do problema (raiz dupla, raizes complexas conjugadas, raizes reais distintas) muda radicalmente com a variação que fizemos no coeficiente de segundo grau da equação

Problemas mal condicionados

A natureza do problema (raiz dupla, raizes complexas conjugadas, raizes reais distintas) muda radicalmente com a variação que fizemos no coeficiente de segundo grau da equação

De fato haveria, neste caso específico, a mesma mudança de natureza do problema para qualquer pequena variação no coeficiente do segundo grau

Mais um exemplo simples

( 9 162,5 7 ) x⃗=(12 )

Mais um exemplo simples

( 9 162,5 7 ) x⃗=(12 ) x⃗=( 10

−89 )

Mais um exemplo simples

( 9 162,5 7 ) x⃗=(12 ) x⃗=( 10

−89 )

( 9 162,6 7 ) x⃗=(12 )

Mais um exemplo simples

( 9 162,5 7 ) x⃗=(12 ) x⃗=( 10

−89 )

( 9 162,6 7 ) x⃗=(12 ) x⃗=( 12,5

−111,5 )

Mais um exemplo simples

( 9 162,5 7 ) x⃗=(12 ) x⃗=( 10

−89 )

( 9 162,6 7 ) x⃗=(12 ) x⃗=( 12,5

−111,5 )

( 9,01 162,5 7 ) x⃗=(12 )

Mais um exemplo simples

( 9 162,5 7 ) x⃗=(12 ) x⃗=( 10

−89 )

( 9 162,6 7 ) x⃗=(12 ) x⃗=( 12,5

−111,5 )

( 9,01 162,5 7 ) x⃗=(12 ) x⃗≈( 8,771929

−78,035087 )

Problemas mal condicionados

Aqui temos novamente que uma pequena variação nos parâmetros do problema gera uma mudança muito maior na solução deste sistema

Problemas mal condicionados

Problemas que envolvem:

● Sistemas de Equações Lineares

● Sistemas de Equações Não-lineares

● Equações Diferenciais

● Integração Numérica

● Cálculo de funções

● Etc.

Problemas mal condicionados

...podem ser mal-condicionados!

top related