Vous êtes sur la page 1sur 8

Clculo Numrico

Faculdade de Cincias Sociais Aplicadas e Comunicao FCSAC Faculdade de Engenharia, Arquiteturas e Urbanismo FEAU

Prof. Dr. Sergio Pilling (IPD/ Fsica e Astronomia)

REVISO DA 1 PARTE DO CURSO


1 Aritmtica de Ponto Flutuante e Erros em Maquinas digitais a. Notao ponto flutuante b. Converso decimal binrio c. Principais fontes de erros de maquinas digitais (Mantissa finita) d. Erro absoluto e erro relativo d1. Erros em operaes aritmticas d2. Erros devido a representao truncada ou arredondada dos nmeros 2 Mtodos iterativos para achar zeros (razes) de funes reais a. Identificando intervalos que contem razes de funes. b. Quando parar de fazer as contas? Critrios de parada c. Mtodos iterativos - Met. Bisseco - Met. Posio Falsa - Met. Ponto Fixo - Met. Newton - Met. Secante. 3 - Mtodos numricos para resolver sistema de equaes. a. Met. Direto de eliminao de Gauss. b. Met. Iterativos. - Critrios de parada - Mtodo de Gauss-Jacobi - Mtodos de Gauss-Seidel c. Critrios de convergncia dos Met. Iterativos: Linhas para o met. Gauss-Jacobi e Sassenfeld para o met. Gauss-Seidel

1 Aritmtica de Ponto Flutuante e Erros em Maquinas digitais


Como um mquina digital armazena um nmero internamente: (N)10 Not. Ponto flutuante (exp)10 Converso para binrio (exp)2 Palavra do (mantissa)10 (mantissa)2 Computador 01010010101010101 exp a. Notao ponto flutuante t mantissa

- t =mantissa - o que overflow? - o que underflow?


b. Converso decimal binrio

Ex3. (23)10 (x)2 23 2 1 11 2 1 5 2 1 2 2 0 1 Leitura

Usando o mtodo das divises sucessivas.

Resposta: (x)2 = (10111)2


Dividir at que o ltimo quociente seja menor que a base

Ex5. (0,1875)10 (x)2 0,1875 x 2 0,3750


Leitura

Usando o mtodo das multiplicacoes sucessivas. 0,50 x 2 1, 00 Resposta: (x)2 = (0,0011)2


Parar quando no existir mais a parte fracionria

0,3750 x 2 0,750

0,750 x 2 1, 50

Parte inteira: Mtodo da diviso sucessiva

Ex7. (23,1875)10 (10111,0011)2


Parte fracionria: Mtodo da multiplicao sucessiva

Ex9. (110,11)2 (x)10

Usando o mtodo das multiplicaes pelas potencias da base

(110,11)2 = 1x22 + 1x21 + 0x20 + 1x2-1 +1x2-2 = 6,75 = (6,75)10


4 d2 d -1 + 2 + 0 + 1/2 + 1/4

d0 c. Principais fontes de erros de maquinas digitais (Mantissa finita) c1. Representao infinita de um numero binrio!

(0,11)10 = (0,000111000010100011110101110000101000111101............)2
Repeties

Numa maquina com 6 digitos na matissa teremos: (0,11)10 (0,000111)2 (0,109375)10


Truncado c2. Mantissa finita para representao de nmeros! d. Erro absoluto (EA) e erro relativo (EA)

EAx =| x x |

ERx =

EAx xx = x x

onde x o valor preciso e x o valor aproximado (armazenado na mquina). x pode ser ainda um valor truncado ou arredondado. d1. Erros em operaes aritmticas (propagao dos erros) i) Propagao dos erros absolutos: Soma e Subtrao Multiplicao Diviso

EA( x y ) =| EAx EAy |


ii) Propagao dos erros relativos: Soma e Subtrao

EA( xy ) =| x EAy + yEAx |

EA( x / y )

EAx x EAy = 2 y y

Multiplicao

Diviso

ER( x y ) =

x y ERx ER y + xy xy

ER( xy ) =| ERx + ER y | +

ER( x / y ) =| ERx ERy | +

onde o fator , associado ao erro devido ao fato do computador trabalhar com nmeros truncados ou arredondados dado por: t = nmero de dgitos da mantissa

= 10-t+1

(no caso de truncamento)

= 10-t+1 (no caso de arredondamento)


3

2 Mtodos iterativos para achar zeros (razes) de funes reais


a. Identificando intervalos que contem razes de funes. Seja f(x) contnua num intervalo [a,b] - Se f(a)f(b) < 0 existe PELO MENOS uma raiz dentro desse intervalo. - Se f(a)f(b) > 0 existe 1 nica raiz dentro desse intervalo. b. Quando parar de fazer as contas? Quando se atingir a preciso desejada. - Critrios de paradas dos mtodos iterativos b1. Nos mtodos com intervalo inicial I=[a,b] (Bisseco e posio falsa). Paramos de fazer a conta quando f(xk)< ou bk-ak < . Qualquer uma das duas condies, a que vier primeiro!

b2. Nos mtodos com chute inicial (MPF, Newton ou Secante). Paramos de fazer a conta quando f(xk)< ou |xk xk-1| < . Qualquer uma das duas condies, a que vier primeiro! Em geral (preciso estipulada) um nmero muito pequeno, por exemplo, ~ 0,000001 = 10-6
c. Os mtodos iterativos. - Mecanismos de iterao dos Mtodos de obteno de zeros de funes reais: I) Mtodo da Bisseco A cada iterao diminui-se o intervalo tomando uma media dos valores anteriores. Funo recursiva

( xk ) = xk =

ak + bk 2
Intervalo inicial

Numero de iteraes no mtodo da bisseco:

II) Mtodo da Posio Falsa

Funo recursiva

( xk ) = xk =

a k f (bk ) bk f ( a k ) f (bk ) f ( a k )

Os mtodos da bissecao e da Posio Falsa tem convergncia garantida pois os intervalos a cada interao sempre contem a raiz. Para ambos os mtodos temos o seguinte esquema iterativo: a0 Sinal da funo a1 Sinal da funo x1 a2 x 2
b1

x0

b0

b2

Sinal da funo

Paramos de fazer a conta quando satisfeito o critrio de parada f(xk)< ou bk-ak < , o que vier primerio e a soluo aproximada ser x =xk III) Mtodo da Ponto Fixo (MPF)

. . .

Transformar f(x)=0 numa equao equivalente x=(x) e a partir de um chute inicial x0 gerar uma seqncia { xk} de aproximaes atravs da relao
Funo recursiva

xk+1 = (xk)
Graficamente, uma raiz da equao x=(x) a abscissa do ponto de intercesso da reta y =x e da curva y=(x)
OBS: Esse mtodo nem sempre converge. Uma condio para convergncia que a funo equivalente escolhida tenha uma inclinao baixa nas proximidades da raiz, ou seja, que |(xk) | < 1 nas proximidades da raiz . Alem disso, a convergncia ser mais rpida quanto menor for () IV) Mtodo de Newton ou Newton-Raphson Esse mtodo bem parecido com o MPF, contudo para acelerar a convergncia escolhe-se uma () tal que ()= 0. Nesse mtodo utilizamos a expresso abaixo no o processo iterativo: Funo recursiva

Chute inicial tangente

xk+1 = (xk)
onde xk=0 um chute inicial para a raiz OBS: Esse mtodo nem sempre converge. Se f (xk) ~ 0 o mtodo pode divergir.

IV) Mtodo da Secante Uma das desvantagens no mtodo de Newton a necessidade de se obter f(x) e calcular seu valor numrico a cada iterao, nesse mtodo a derivada da funo aproximada pela expresso abaixo:

tangente Chutes iniciais

secante onde xk=0 xk=1 so chutes iniciais para a raiz. Nesse mtodo utilizamos a expresso abaixo no o processo iterativo: Funo recursiva

xk+1 = (xk;xk-1) =

OBS: Se nesse ltimo mtodo tivermos f(xk) ~ f(xk-1) o mtodo pode divergir!

3 Mtodos numricos para resolver sistemas de equaes lineares


a. Mtodo direto de eliminao de Gauss Sistema Matriz sanduche Aplicar estratgias para pivoteamento (parcial ou total) Triagularizar a matriz sanduche (Calcular o fator multiplicado e realizar operacoes envolvendo as linhas) Soluo trivial (de baixo pra cima) Obs. Nas estratgias de pivoteamento parcial trocar a posio de linhas e na estratgia de pivoteamento parcial trocar a posio de colunas. Antes de eliminar os termos da prxima coluna aplicar as estratgias de pivoetamento novamente se necessrio.

Exemplo de operaes:

b. Mtodos Iterativos Sistema Verificar se tem convergncia garantida para um dado mtodo (critrio das linhas ou Sassenfeld) Escrever o sistema equivalente (isolar xi de cada linha i) Aplicar o mtodo escolhido parar o clculo ao atingir o critrio de parada. Obs. Se o critrio de verificao de convergncia falhar, trocar a posio das linhas e colunas do sistema e aplicar o critrio de verificao novamente. 6

Exerccio resolvido mostrando uma comparao entre dois mtodos iterativos: Calcule as duas primeiras iteraes dos mtodos Gauss-Jacobi e Gauss-Seidel do sistema linear abaixo:

x1(0) Use como chute inicial o vetor (matriz coluna) x(0) = x2(0) = x3(0)

4x1 + 2x2 9x3 = 7 5x1 6x2 8x3 = 3 1x1 2x2 + 15x3 = 5

1 2 3

Etapa inicial Isolar os xi de cada linha i e escrever o sistema de equaes equivalentes.

4x1 + 2x2 9x3 = 7 5x1 6x2 8x3 = 3 1x1 2x2 + 15x3 = 5

x1 = + 7 2x2 + 9x3 4 x2 = + 3 5x1 + 8x3 -6 x3 = 5 1x1 + 2x2 15

Abaixo temos um diagrama mostrando de forma esquemtica a dependncia de cada um dos termos nas trs primeiras iteraes de uma matriz A:3x3 dos mtodos de Gauss-Jacobi e Gauss-Seidel.

(0) 1

Mtodo de Gauss-Jacobi x1(1) x1(2) x2(1) x3(1) x2(2) x3(2)

x1

(3)

x1

(0)

Mtodo de Gauss-Seidel x1(1) x1(2) x2(1) x3(1) x2(2) x3(2)

x1(3) x2(3) x3(3)

x2(0) x3(0)

x2(3) x3(3)

x2(0) x3(0)

Segue abaixo exemplos para o calculo das trs primeiras iteraes (x(1), x(2) e x(3)) pelo mtodo de Gauss-Jacobi usando como chute inicial: x1(1) = (+ 7 2x2(0) + 9x3(0))/4 = 7.50 (1) (0) (0) x2 = (+ 3 5x1 + 8x3 )/(-6) = -3.667 x3(1) = ( 5 1x1(0) + 2x2(0) )/(15) = -0.133 x1(2) = (+ 7 2x2(1) + 9x3(1))/4 = 3.882 (2) (1) (1) x2 = (+ 3 5x1 + 8x3 )/(-6) = 5.572 x3(2) = ( 5 1x1(1) + 2x2(1) )/(15) = -1.322 x1(3) = (+ 7 2x2(2) + 9x3(2))/4 = -4.010 (3) (2) (2) x2 = (+ 3 5x1 + 8x3 )/(-6) = 4.497 x3(3) = ( 5 1x1(2) + 2x2(2) )/(15) = 0.150 x1(1) 7.50 (1) (1) x = x2 = -3.667 x3(1) -0.133 x1(2) 3.882 (2) (2) x = x2 = 5.572 x3(2) -1.322 x1(3) -4.010 (3) (3) x = x2 = 4.497 x3(3) 0.150
7

Segue abaixo exemplos para o calculo das trs primeiras iteraes (x(1), x(2) e x(3)) pelo mtodo de Gauss-Seidel usando como chute inicial: x1(1) = (+ 7 2x2(0) + 9x3(0))/4 = 7.50 (1) (1) (0) x2 = (+ 3 5x1 + 8x3 )/(-6) = 1.75 x3(1) = ( 5 1x1(1) + 2x2(1) )/(15) = -0.60 x1(2) = (+ 7 2x2(1) + 9x3(1))/4 = -0.475 (2) (2) (1) x2 = (+ 3 5x1 + 8x3 )/(-6) = -0.095 x3(2) = ( 5 1x1(2) + 2x2(2) )/(15) = -0.314 x1(3) = (+ 7 2x2(2) + 9x3(2))/4 = 1.091 (3) (3) (2) x2 = (+ 3 5x1 + 8x3 )/(-6) = 0.827 x3(3) = ( 5 1x1(3) + 2x2(3) )/(15) = -0.295 x1(1) 7.50 (1) (1) x = x2 = 1.75 x3(1) -0.60 x1(2) -0.475 (2) (2) x = x2 = -0.095 x3(2) -0.314 x1(3) 1.091 (3) (3) x = x2 = 0.827 x3(3) -0.295

Se for dada uma preciso quando parar de fazer os clculos? Quando tivermos satisfeito o critrio de parada.

Critrio de parada

Distancia relativa entre duas iteraes numa certa etapa k, d(k), deve ser menor que

(k )

max | xi( k ) xi( k 1) | = < (k ) max | xi |

Obs: No exemplo anterior no fizemos nenhum teste para saber se os mtodos iterativos teriam convergncia assegurada ou no. Na prtica antes de utilizarmos esses mtodos numa maquina digital verificamos se o critrio das linhas satisfeito (no caso da utilizao o mtodo de Gauss-Jacobi) ou o critrio de Sassenfeld (no caso da utilizao do mtodo de Gauss-Seidel).

Critrio das linhas (i < 1)

Critrio de Sassenfeld (i < 1)


(ex A:4x4) 1

Vous aimerez peut-être aussi