Você está na página 1de 30

Mtodos Numricos aplicados

Engenharia Qumica
1

AULA 2

Prof. Dr. Paulo Henrique S. L. Coelho


Plano de aula
2

Aproximao de Erros;
Nmeros no computador.

Algoritmos Significativos.

Definio de Erros.

Erros de Arredondamento.

Erros de Truncamento.

Programao e Software.
Fortran.

Exemplo da resoluo de um modelo simples linear.


Nmeros em Computador
3

Representao decimal

O familiar sistema decimal (base 10) usa dez algarismos 0, 1,..., 9.

Um nmero escrito como uma sequncia de algarismos que


correspondem a mltiplos de potncias de 10.
Nmeros em Computador
4

Representao Binria

Uma forma que pode ser facilmente implementada em computadores o


sistema binrio (base 2).

No sistema binrio, um nmero representado pelos algarismos 0 e 1.

Portanto, um nmero escrito como uma sequncia de zeros e uns que


corresponda multiplicao de potncias de 2.

O primeiro algarismo esquerda da vrgula decimal corresponde a 20 .

O algarismo esquerda deste corresponde a 21 , o algarismo sua


esquerda corresponde a 22 , e assim por diante.
Nmeros em Computador
5

Representao Binria

Da mesma forma, o primeiro algarismo


direita da vrgula decimal corresponde a 21,
o prximo algarismo direita a 22, e assim
por diante. Os primeiros dez algarismos (1, 2,
3,..., 10 na base 10) e a sua representao na
base 2 so mostrados na figura ao lado.

QUAL SERIA A REPRESENTAO


DO NMERO 60.724,3125?
Nmeros em Computador
6

Representao Binria

NMERO 60.724,3125 =
Nmeros em Computador
7

Representao em ponto flutuante


DECIMAL:
Para acomodar nmeros grandes e pequenos, nmeros reais so escritos
na representao em ponto flutuante (vrgula).

A representao decimal em ponto flutuante (tambm chamada de


notao cientfica) tem a forma:

d,dddddd x 10p

Nessa representao, um algarismo escrito esquerda da vrgula


decimal, e o resto dos algarismos significativos escrito direita da
vrgula. O nmero 0,dddddd chamado de mantissa. Segue 1 exemplo:

6519,23 escrito como 6,51923 10


Nmeros em Computador
8

Representao em ponto flutuante


BINRIO:
A representao binria em ponto flutuante tem a forma:

1,bbbbbb x 2bbb
Tanto a mantissa quanto o expoente so escritos na forma binria. A
forma na equao acima obtida com a normalizao do nmero (quando
escrito na forma decimal) em relao maior potncia de 2 menor que o
prprio nmero. Por exemplo:

50 na representao binria em ponto flutuante - o nmero dividido (e


multiplicado) por 25 = 32 (que a maior potncia de 2 menor que 50):
Nmeros em Computador
9

Armazenamento

Uma vez colocado na representao binria em ponto flutuante, o nmero


armazenado no computador. O computador armazena os valores do
expoente e da mantissa separadamente, no sendo armazenado o primeiro
1 frente da vrgula decimal.

Um bit um algarismo binrio.

A memria do computador organizada em bytes, onde cada byte


corresponde a 8 bits.

Preciso simples ou em preciso dupla.


Nmeros em Computador
10

Armazenamento

Na preciso simples, os nmeros so armazenados em uma cadeia de


32 bits (4 bytes), e, na preciso dupla, em uma cadeia de 64 bits (8
bytes). Em ambos os casos, o primeiro bit armazena o sinal do nmero
(0 corresponde a + e 1 corresponde a ). Os prximos 8 bits na
preciso simples (11 na preciso dupla) so usados para armazenar o
expoente. Os 23 bits seguintes na preciso simples (52 bits na preciso
dupla) so usados para armazenar a mantissa).
Erros em Solues Numricas
11

Solues numricas podem ser muito precisas, mas em geral so inexatas.

Dois tipos de erros so introduzidos quando mtodos numricos so


usados na soluo de um problema:

-Erros de arredondamento: ocorrem em funo da maneira pela qual


computadores digitais armazenam nmeros e executam operaes
numricas.

- Erros de truncamento: introduzidos pelo mtodo numrico usado na


soluo (aproximaes).

Juntos, os dois erros constituem o erro total da soluo numrica.


Erros em Solues Numricas
12

Erros de arredondamento

Os nmeros so representados em um computador atravs de um nmero


finito de bits.

Consequentemente, nmeros reais que tm uma mantissa mais longa do


que o nmero de bits disponveis para represent-los tm que
ser encurtados.

Um nmero pode ser encurtado seja cortando, ou descartando


os algarismos a mais, ou fazendo-se um arredondamento.

No corte, algarismos na mantissa alm do comprimento que pode ser


armazenado so simplesmente deixados de fora.
No arredondamento, o ltimo algarismo armazenado arredondado.
Erros em Solues Numricas
13
Erros em Solues Numricas
14

Erros de truncamento

Mtodos numricos usados na soluo de um problema matemtico


adotam um procedimento matemtico aproximado.
Um exemplo simples a avaliao numrica de sen (x), que pode ser feita
a partir da expanso em srie de Taylor:

O valor de sen(/6) de pode ser determinado de forma exata com a


equao acima se um nmero infinito de termos for usado.

O seu valor pode ser aproximado com o uso de apenas um nmero finito
de termos. A diferena entre o valor verdadeiro (exato) e o valor
aproximado o erro de truncamento, denotado por ETR.
Erros em Solues Numricas
15

Erro total

A soluo numrica uma aproximao. Juntos, os erros de


arredondamento e de truncamento resultam no erro numrico total
includo na soluo numrica. Esse erro total, tambm chamado de erro
real, a diferena entre a soluo verdadeira (exata) e a soluo numrica:

O valor absoluto da razo entre o erro real e a soluo exata chamado de


erro relativo real:
Programao e Software
16

Linguagem em FORTRAN

Apostilas sero disponveis na plataforma da disciplina.

Compilador:
Programao e Software
17

Exemplo: Clculo da exponencial.

Expanso de Taylor:

Preciso simples (8 significativos):


Programao e Software
18

Preciso simples (8 significativos):

Com dupla preciso (16 significativos):


Programao e Software
19

Exemplo
Resoluo do sistema com 2 equaes e 2 incgnitas abaixo, pelo mtodo
de iterao.

Vamos analisar atravs da linguagem de programao Fortran os


passos para a resoluo do problema:
- Chute inicial.
- Montagem da equao.
- Teste de parada.
- Soluo.
Programao e Software
20

Resoluo computacional

PROGRAMA PARA A RESOLUO DO SISTEMA LINEAR 2X2

CHUTE INICIAL

WRITE(*,*) 'DIGITE X: '


READ(*,*) X

WRITE(*,*) 'DIGITE Y: '


READ(*,*) Y

X1=0.0
Y1=0.0

CONTADOR DO NMERO DE ITERAES


Z=0.0
Programao e Software
21

CRITRIO DE PARADA

5 IF ((ABS(X-X1).GT.0.0001).AND.(ABS(Y-Y1).GT.0.0001)) THEN

MONTAGEM DA EQUAO

E1 = X+Y
E2 = X-Y
Programao e Software
22

MTODO PARA A CONVERGNCIA DO VALOR

IF ((E1.GE.3.0).AND.(E2.GE.1.0)) THEN

X=(X+X1)/2
Y=(Y+Y1)/2

ELSE

X1=X
Y1=Y
Programao e Software
23

MTODO PARA A CONVERGNCIA DO VALOR

IF ((E1.LE.3.0).AND.(E2.LE.1.0)) THEN

X=2*X
Y=2*Y

ELSE

END IF

END IF
Programao e Software
24

VALOR PRVIO ENCONTRADO POR ITERAO

Z=Z+1

WRITE(*,*)'ITERAO=', Z

WRITE(*,*)'X=', X

WRITE(*,*)'Y=', Y

GO TO 5

ELSE
Programao e Software
25

SOLUO DO PROBLEMA

WRITE(*,*)'VALOR FINAL DE X=', X

WRITE(*,*)'VALOR FINAL DE Y=', Y

END IF

END
Programao e Software
26

Exerccio: reator de mistura perfeita (CSTR).


Reaes: 2 A B+C
A+B C+D
Programao e Software
27

Exerccio: reator de mistura perfeita (CSTR).


Reaes: 2 A B+C
A+B C+D

Balano de Massa:
Programao e Software
28

Exerccio: reator de mistura perfeita (CSTR).


Reaes: 2 A B+C
A+B C+D

Dados:

V = 3,0 F = 25,0 CA0 = 15,0 CB0 = 0,0 K1 = 0,07 K2 = 0,05

Encontre, por iterao, os valores que CA, CB, CC e CD que satisfazem


o balano de massa, utilizando a programao fortran.
Programao e Software
29

Exerccio: reator de mistura perfeita (CSTR).

Resposta:
Referncias
30

PINTO, J. C. & LAGE P. L. C., Mtodos Numricos em


Problemas de Engenharia Qumica, Ed. E-papers, 2001.
GILAT, A. & SUBRAMANIAM, V., Mtodos Numricos
para Engenheiros e Cientistas: uma introduo com
aplicaes usando o MATLAB, Traduo: Alberto Resende
de Conti, Porto Alegre : Bookman, 2008 (ISBN 978-85-
7780-297-5).