Buscar

Aproximação de funções II

Prévia do material em texto

Cálculo Numérico – Profa. Simone Tomazzoni 
 2014 
 
Página | 1 
 
Aproximação de funções 
 A tabela a seguir apresenta a concentração de oxigênio dissolvido em água como uma função da 
temperatura para uma concentração de cloreto de 10 g/l 
Tabela 1: Concentração de oxigênio em função da temperatura 
T(
o
C) 0 5 10 15 
c (g/l) 14,6 12,8 11,3 10,1 
 Considere que você deseja obter um valor para a concentração que não se encontra na tabela. Nesse 
caso você teria que aproximar, ou seja, você teria que estimar um valor para concentração desejada com 
base nas temperaturas que a determinam. 
 Existem duas classes de métodos para aproximação de dados: interpolação e ajuste. A distinção entre 
elas está em considerarmos, ou não, a existência de erros nos dados. No primeiro caso, consideramos que os 
dados são precisos e, portanto pode-se exigir que a curva de aproximação passe pelos pontos dados. No 
segundo caso, são considerados possíveis erros introduzidos na obtenção dos dados. 
 
(a) (b) 
 
Figura 1: (a) Ajuste e (b) Interpolação 
 Em ambos os casos, deseja-se aproximar f por outra função g mais apropriada, ou seja: 
f(x)  g(x) 
 
 Na maioria das vezes, tem-se as seguintes situações: 
-2 0 2 4 6 8 10 12 14 16
9
10
11
12
13
14
15
16
temperatura (°C)
co
nc
en
tr
aç
ão
 (
g/
l)
-2 0 2 4 6 8 10 12 14 16
9
10
11
12
13
14
15
16
temperatura (°C)
co
nc
en
tr
aç
ão
 (
g/
l)
Cálculo Numérico – Profa. Simone Tomazzoni 
 2014 
 
Página | 2 
 
i) deseja-se avaliar quantitativamente, valores de uma função f que é conhecida em apenas 
alguns pontos base. 
ii) deseja-se substituir uma função f de difícil tratamento, por uma função g de manuseio mais 
simples; 
 
(a) (b) 
Figura 2: (a) a expressão de f é desconhecida e (b) f é de difícil tratamento 
 
 Problemas como esses surgem em muitas áreas da matemática, da engenharia e das ciências 
em geral. Dentro da matemática, a interpolação desempenha papel essencial no próprio cálculo numérico. 
Nesse exemplo particular, citamos o cálculo de valores de funções complicadas, como as funções 
transcendentes, a integração numérica e as soluções de equações diferenciais. 
 
Interpolação 
 Dado um conjunto de pontos, geralmente chamado conjunto de dados, (xk, f(xk)), k = 1, 2,..., n. A 
interpolação consiste em construir uma função, dita função interpoladora, que forneça uma estimativa para 
os valores de f(x) em um intervalo I que contenha esses pontos, sendo x  xk. 
 As funções interpoladoras mais comuns são formadas por combinações lineares de funções simples, 
escolhidas de uma classe de funções. 
0 0 1 1( ) ( ) ( ) ... ( )n ng x a g x a g x a g x   
 
 Dentre as classes mais usadas se encontram os monômios 
 0 1 2, , ,..., nx x x x
, as funções 
trigonométricas 
 ( ),cos( )sen nx nx
 e as exponenciais 
 0 1, ,..., nb x b xb xe e e
. 
 Dessa forma, combinando monômios de grau até n, obtém-se funções interpoladoras polinomiais, ou 
seja, 
Cálculo Numérico – Profa. Simone Tomazzoni 
 2014 
 
Página | 3 
 
0 1( ) ( ) ...
n
nf x g x a a x a x    
 
 Combinando-se funções trigonométricas, têm-se funções interpoladoras na forma 
0 1 2 0 1 2( ) ( ) ( ) (2 ) ... ( ) cos( ) cos(2 ) ... cos( )n nf x g x a a sen x a sen x a sen nx b b x b x b nx          
 
Já as funções interpoladoras exponenciais são da forma 
0 1
0 1( ) ( )
nb x b xb x
nf x g x a e a e a e   
 
Interpolação Polinomial 
 O uso de interpolações polinomiais tem a facilidade de reduzir os cálculos à aritmética elementar e é 
apoiado pelo Teorema de Weierstrass. 
Teorema da aproximação de Weierstrass Se f é contínua em um intervalo fechado [a, b], para todo ε > 0 
existe um polinômio p(x) tal que, para todo x  [a, b], temos |f(x) – p(x)| < ε. 
 Consideremos (n+1) pontos distintos: x0, x1, ..., xn, chamados nodos da interpolação, e os valores de 
f(x) nesses pontos f(x0), f(x1), ...,f(xn). 
 Uma forma de interpolação de f(x) consiste em obter um determinado polinômio pn(x), de grau n, de 
modo que 
0 1( ) ( ) ...
n
n nf x p x a a x a x    
 
que satisfaça 
0 0
1 1
( ) ( )
( ) ( )
( ) ( )
n
n
n n n
p x f x
p x f x
p x f x



 
 
Figura 3. Interpretação geométrica para n = 5 
Cálculo Numérico – Profa. Simone Tomazzoni 
 2014 
 
Página | 4 
 
 Note que, escolhido um polinômio interpolador de ordem n, para definir pn completamente é preciso 
determinar os coeficientes a0, a1,...,an. 
 
Interpolação Linear e quadrática 
 
Exemplo 1. Considere que se queira determinar um polinômio interpolador de grau n = 1 para o primeiro e 
último dado da Tab. 1. 
 
 
 
Exemplo 2. Considere que se queira determinar um polinômio interpolador de grau n = 2 para os três 
primeiros dados da Tab. 1. 
 
 
 
 De um modo geral, dados n + 1 pontos de f(x), é possível construir um polinômio interpolador 
empregando a abordagem dos exemplos 1 e 2. Neste caso, a resolução do problema consiste em resolver o 
sistema linear 2
0 00 0 0
2
1 11 1 1
2
2 22 2 2
2
1
1
1
1
k
k
k
k
n nn n n
a fx x x
a fx x x
a fx x x
a fx x x
     
     
     
     
     
     
         
 
 Embora esta abordagem forneça uma maneira fácil de realizar a interpolação, ele possui uma séria 
deficiência. A matriz dos coeficientes, chamada matriz de Vandermonde, é muito mal condicionada, ou seja, 
suas soluções são muito sensíveis a erros de arredondamento. Mais ainda, o mau condicionamento cresce 
com a ordem da matriz. 
 Como consequência, há abordagens alternativas que não apresentam essa deficiência: os polinômios 
de Lagrange e Newton, entre outras. 
 
Cálculo Numérico – Profa. Simone Tomazzoni 
 2014 
 
Página | 5 
 
Interpolação exemplos 1 e 2 – MATLAB (usando o comando polyfit) 
 
>> t=[0 15] 
t = 
 0 15 
>> c=[14.6 10.1] 
c = 
 14.6000 10.1000 
>> p1=polyfit(t,c,1) 
p1 = 
 -0.3000 14.6000 
P1(t) = -0.3t + 14.6 
>> t=[0 5 10] 
t = 
 0 5 10 
>> c=[14.6 12.8 11.3] 
c = 
 14.6000 12.8000 11.3000 
>> p2=polyfit(t,c,2) 
p2 = 
 0.0060 -0.3900 14.6000 
P2(t) = 0.006t2 – 0.39t + 14.6 
 
Gráfico 
 
Para construir os gráficos dos polinômios p1 e p2 juntamente com os nodos: 
>> tn=[0 5 10 15]; 
>> c=[14.6 12.8 11.3 10.1]; 
>> t=-2:.01:16; 
>> p1=-0.3.*t+14.6; % ou p1 = polyval(p1,t) 
>> p2=0.006.*t.^2 - 0.39.*t + 14.6; % ou p2 = polyval(p2,t) 
>> plot(tn,c,'o',t,p1,t,p2),grid 
 
 
 
 
 
 
 
-2 0 2 4 6 8 10 12 14 16
9
10
11
12
13
14
15
16
 
 
Nodos
p1
p2
Cálculo Numérico – Profa. Simone Tomazzoni 
 2014 
 
Página | 6 
 
Exercícios 
 
1. Os dados a seguir para a densidade do gás nitrogênio em função da temperatura foram obtidos com 
alta precisão. Use polinômios de Lagrange de grau 1 e 2 para fazer uma estimativa da densidade em 
uma temperatura de 330 K. Construa uma figura com os dados da tabela e com os polinômios p1 e 
p2, simultaneamente. Para fazer a escolha dos nodos empregados em cada interpolação sugere-se que 
construa o gráfico dos nodos. 
 Tabela 2: Densidade do nitrogênio em função da temperatura 
T(K) 200 250 300 350 400 450 
d (g/l) 1,71 1,37 1,14 0,97 0,85 0,76 
 
 
 
2. Dados os pontos (-1, 1), (1, 3), (2, -1) e (3, -4) obtenha um polinômio interpolador de grau 3, na forma de 
Lagrange para aproximarf(x).

Outros materiais

Materiais relacionados

Perguntas relacionadas

Materiais recentes

Perguntas Recentes