Escolar Documentos
Profissional Documentos
Cultura Documentos
Numérico
1. Introdução 4
O que é o Cálculo Numérico? 4
A Importância do Curso de Cálculo Numérico 5
2. Representação Numérica 8
Ponto Fixo e Ponto Flutuante 9
Aplicação à Linguagem de Programação C 10
Erros Numéricos 11
Propagação e Condicionamento de Erros Numéricos 13
Erros na Aritmética de Ponto Flutuante 13
4. Referências Bibliográficas 43
02
03
CÁLCULO NUMÉRICO
1. Introdução
4
CÁLCULO NUMÉRICO
5
CÁLCULO NUMÉRICO
6
CÁLCULO NUMÉRICO
2. Representação Numérica
Fonte: Elements1
1 Retirado em https://elements.envato.com/
8
CÁLCULO NUMÉRICO
seja, usam o número 2 como base ao como 1011 (lembre-se que na base
invés do número 10. Como na base binária só existem os algarismos 0 e
decimal existem 10 algarismos dife- 1) significa 1x23 + 0x22 + 1x21 + 1x20
rentes (0, 1, 2, 3, 4, 5, 6, 7, 8, 9), na que na base 10 seria 8+2+1=11.
base binária existem somente 2 nú- Essa ideia que está por trás da
meros: 0 e 1. Portanto, a base binária representação dos números em ba-
é usada porque essas máquinas uti- ses numéricas é utilizada para repre-
lizam-se de sinais elétricos, sendo o sentar números no computador. A
0 correspondente a ausência de sinal fim de tornar a manipulação de nú-
e o número 1 a presença do sinal elé- meros mais eficiente, os computado-
trico. res fazem a distinção entre números
inteiros e números reais. Um nú-
Ponto Fixo e Ponto Flu- mero inteiro apresenta a chamada
tuante representação de ponto fixo, onde a
posição do ponto “decimal” está fixa
A princípio, toda vez que es- e todos os dígitos são usados para re-
crevemos um número, deveríamos presentar o número em si, com exce-
mencionar a base numérica a qual ção do primeiro dígito usado para
estamos nos referindo. Obviamente, representar o sinal desse número. A
isso não se faz necessário na prática, figura 2.1 ilustra essa representação.
pois estamos sempre representando
os números na base decimal, por- Representação de números inteiros
tanto sabemos exatamente o seu sig-
nificado. Por exemplo, quando es-
crevemos o número 1532, o que real-
mente queremos dizer? Estamos di- Para um número real qual-
zendo que esse número representa quer (inteiro ou não inteiro) é utili-
uma quantidade equivalente a 1 x zada a representação de ponto flu-
1000 + 5 x 100 + 3 x 10 + 2, ou, es- tuante, que é dada pela expressão:
crevendo a base de outra forma, 1 x
103 + 5 x 102 + 3 x 101 + 2 x 100.
Essa é a chamada representação po-
sicional de números. Onde: 0.d1d2d3...dt é uma fração na
Na base binária, o mecanismo base b, também chamada de man-
é o mesmo, porém, ao invés de po- tissa, com 0 ≤ di ≤ b-1, para todo i =
tências de 10, utilizamos potências 1,2,3,...,t, sendo t o número máximo
de 2. Portanto, um número binário
9
CÁLCULO NUMÉRICO
de dígitos da mantissa que é deter- ção de ponto fixo) existem duas pa-
minado pelo comprimento de pala- lavras chaves para declarar uma va-
vra do computador; e é um expoente riável: int e long. A diferença entre
que varia em um intervalo dado pe- essas duas representações é o núme-
los limites da máquina utilizada. ro de dígitos a ser usado. No caso do
Esse tipo de representação é int, utiliza-se 15 dígitos binários e
chamada de ponto flutuante pois o mais um dígito para o sinal, ou seja,
ponto da fração “flutua” conforme o 16 bits que é igual a 2 bytes. Por-
número a ser representado e sua po- tanto, uma variável declarada com
sição é expressa pelo expoente e. A int pode armazenar números de –
figura 2.1 ilustra essa representação. 32768 (=-215) a +32767 (=215-1).
Já a palavrachave long corres-
Representação de números reais ponde a representação de ponto fixo
com 32 bits (31 dígitos binários para
o número mais um dígito para o si-
nal), ou seja, 4 bytes. Neste caso,
uma variável declarada como long
Alguns exemplos da represen- pode armazenar números de –2.147.
tação de ponto flutuante pode ser 483.648 (= -231) a 2.147.483. 647
visto na tabela a seguir: (=231-1).
No caso da representação de
ponto flutuante, também existem
duas palavras: float e double. A pa-
lavra float corresponde a represen-
tação com base binária (b=2), nú-
mero máximo de dígitos igual a 24
(t=24) e expoente entre – 126 e 127.
Portanto, uma variável declarada
Aplicação à Linguagem de como float pode armazenar números
Programação C
reais entre ~10-38 e ~1038. Já a pala-
vra chave double apresenta um nú-
Na linguagem C é possível es- mero máximo de dígitos igual a 53
pecificar a representação que deve (t=53) e expoente entre –1022 e
ser usada para os números a serem 1023, ou seja, varáveis declaradas
armazenados em uma dada variável. como double podem armazenar nú-
Para números inteiros (representa- meros entre ~10- 307 a ~10307.
10
CÁLCULO NUMÉRICO
11
CÁLCULO NUMÉRICO
12
CÁLCULO NUMÉRICO
13
CÁLCULO NUMÉRICO
14
CÁLCULO NUMÉRICO
15
CÁLCULO NUMÉRICO
2 Retirado em https://conhecimentocientifico.r7.com/
17
CÁLCULO NUMÉRICO
18
CÁLCULO NUMÉRICO
19
CÁLCULO NUMÉRICO
20
CÁLCULO NUMÉRICO
Inicialmente, subdividimos
este intervalo em suas duas meta-
des, ou seja: Verificamos se a raiz
está contida na primeira ou na se-
gunda metade do intervalo inicial,
usando o teorema de Bolzano. Ou
Exemplo: Seja a função seja, se a função f(x) mudar de sinal
f(x)=x.ln(x)-3.2. Podemos calcular o
valor de f(x) para valores arbitrários
de x, como mostrado na tabela abai- entre a e saberemos que a raiz
xo: está nessa primeira metade do inter-
valo [a,b]. Caso a função f(x) mude
21
CÁLCULO NUMÉRICO
22
CÁLCULO NUMÉRICO
23
CÁLCULO NUMÉRICO
E usando as propriedades do
Ou seja, no ponto x que corres-
log segue que:
ponde à raiz de f(x), ao substituir-
mos o valor de x na função φ(x), te-
remos como resultado o próprio va-
lor de x. Portanto, a raiz de f(x) será
o ponto fixo de φ(x), ou seja, o valor
que ao ser substituído em φ(x) re-
A expressão (4.13) dá o nú- torna o próprio valor de x.
mero de iterações necessárias para Por exemplo, a função:
que o critério de parada, definido em
(4.8), seja satisfeito.
24
CÁLCULO NUMÉRICO
Mais um exemplo,
25
CÁLCULO NUMÉRICO
26
CÁLCULO NUMÉRICO
Então:
. Para isto,
pretende-se usar uma das seguintes
funções de iteração:
27
CÁLCULO NUMÉRICO
Ou seja:
28
CÁLCULO NUMÉRICO
O Teorema de convergência
será satisfeito se x < 1,386. Final-
mente, para a condição (iii), deve-
mos ter x0 < 1,386, que é satisfeita
para x0 = -0.5, que foi o valor usado.
Ainda nesse exemplo, vimos
29
CÁLCULO NUMÉRICO
30
CÁLCULO NUMÉRICO
Interpretação Geométrica
31
CÁLCULO NUMÉRICO
Lista de Exercícios:
32
CÁLCULO NUMÉRICO
4. Como você poderia usar o mé- método da iteração linear? O que fa-
todo da bissecção para estimar o va- zer caso seja constatado que o mé-
todo da iteração linear não irá con-
lor de ? Estime esse valor com
vergir para um dado problema?
uma precisão de (ou erro menor
8. Dada a função f(x)=ln(x) –x2
que) 0,1.
+ 4, mostre 3 formas para a função
5. Dada a função
φ(x) que poderiam ser usadas para
: se estimar a raiz de f(x).
9. Mostre que as seguintes fun-
a. Determine o intervalo em x ções de interação satisfazem as con-
dições (i) e (ii) do teorema de con-
que contém pelo menos uma raiz de
f(x) (graficamente ou aritmetica- vergência:
mente usando o Teorema de Bol-
zano);
b. Partindo-se desse intervalo,
utilize o método da bissecção para
determinar o valor dessa raiz após 4
iterações.
c. Qual é o erro no seu resultado
final?
6. Dada a função :
33
CÁLCULO NUMÉRICO
b. Usando , estime a
raiz de f(x) com |xn-xn-1| < 0,001.
Use o método de Newton-Ra- c. Faça a mesma estimativa
phson para encontrar uma estima- usando o método de Newton-Ra-
tiva da raíz de f(x) tal que |f(x)| < 10- phson. Qual dos dois métodos con-
4. Parta de xo=1. verge mais rapidamente?
d. Um outro critério de parada
12. Deseja-se resolver a seguinte que poderia ser usado corresponde à
equação usando o Método de New- verificação se o valor de f(x) está
ton-Raphson: próximo de zero. Qual resultado
para a raiz de f(x) se obteria caso se
usasse como critério de parada a
condição |f(x)| < 0.001?
34
CÁLCULO NUMÉRICO
Forma de Lagrange
Nosso problema é estimar o
valor de f(x) para um valor de x que Seja um conjunto de n+1 da-
não tenha sido medido, como por dos {xi,f(xi)}. Queremos encontrar
exemplo, x=2.0. um polinômio interpolador p(x) que
Portanto, interpolar um ponto satisfaça a condição (1), isto é, passe
x a um conjunto de n+1 dados {xi, por todos os pontos.
f(xi)}, significa simplesmente, calcu- Uma possível forma para p(x)
lar o valor de f(x), sem conhecer a que satisfaça (1) é:
forma analítica de f(x).
A interpolação polinomial
consiste em se obter um polinômio
p(x) que passe por todos os pontos
do conjunto de (n+1) dados {xi,f(xi)},
Onde os Lk(x) são polinômios
isto é:
tais que:
Sendo que:
35
CÁLCULO NUMÉRICO
Ou seja:
36
CÁLCULO NUMÉRICO
De (8) em (6):
Portanto:
De (5):
Onde:
Por construção:
37
CÁLCULO NUMÉRICO
38
CÁLCULO NUMÉRICO
39
CÁLCULO NUMÉRICO
Exemplo: Dado:
Podemos verificar que o poli-
nômio interpolador de ordem 1,
p1(x), é dado por:
40
CÁLCULO NUMÉRICO
Usando (5.9):
41
42
42
CÁLCULO NUMÉRICO
4. Referências Bibliográficas
BARROS, Q.. Introdução ao cálculo numé-
rico. São Paulo: Edgar Blücher, 1972. 114
p.
43
43
04
4