Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Interpolação Polinomial, Notas de estudo de Engenharia Sanitária

Cálculo Numérico

Tipologia: Notas de estudo

2013

Compartilhado em 07/09/2013

rafael-barbosa-49
rafael-barbosa-49 🇧🇷

4 documentos

1 / 20

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
UNIVERSIDADE FEDERAL DA BAHIA – UFBA
Instituto de Ciências Ambientais e Desenvolvimento Sustentável – ICADS
Componente Curricular: IAD130 Cálculo Numérico I
RAFAEL MARQUES M. N. BARBOSA
Interpolação Polinomial:
Método de Lagrange e Splines Cúbicos
Docente:
Kennedy Morais Fernandes
Barreiras – BA
Julho – 2013
Sumário
1.0 Introdução................................................................................................... 3
2.0 Descrição/Formulação Matemática............................................................ 5
2.1 Método de Lagrange................................................................................ 5
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14

Pré-visualização parcial do texto

Baixe Interpolação Polinomial e outras Notas de estudo em PDF para Engenharia Sanitária, somente na Docsity!

UNIVERSIDADE FEDERAL DA BAHIA – UFBA

Instituto de Ciências Ambientais e Desenvolvimento Sustentável – ICADS Componente Curricular: IAD130 Cálculo Numérico I

RAFAEL MARQUES M. N. BARBOSA

Interpolação Polinomial:

Método de Lagrange e Splines Cúbicos

Docente: Kennedy Morais Fernandes

Barreiras – BA Julho – 2013

Sumário

1.0 Introdução................................................................................................... 3 2.0 Descrição/Formulação Matemática............................................................ 5 2.1 Método de Lagrange................................................................................ 5

2.2 Método de Splines Cúbicos...................................................................... 9 3.0 Implementação Computacional.................................................................. 12 4.0 Resultados Numéricos e Análises.............................................................. 16 5.0 Considerações Finais................................................................................. 20 Referências Bibliográficas...................................................................................

1.0 Introdução

Na Engenharia e experimentos práticos de laboratório, dispõe-se habitualmente de dados experimentais, tabelas estatísticas ou até mesmo funções complexas que não se tem o dado de certo valor intermediário. Esse conjunto de dados obtidos experimentalmente caracteriza-se por não possuir continuidade, portanto, através da interpolação, pode-se obter uma outra função aproximada àquela que caracteriza a amostragem (CAMPOS, 2007).

Segundo Ruggiero e Lopes, 1988, a interpolação de uma função f(x) consiste em aproximá-la por outra função g(x), escolhida primeiramente entre uma classe de funções definidas. Dessa forma a função g(x) é então utilizada em substituição à função f(x). A Fig. 01 ilustra melhor a afirmação.

2.0 Descrição/Formulação Matemática

2.1 Método de Lagrange 1

Como visto anteriormente, o problema a ser abordado no presente trabalho trata-se de encontrar um valor correspondente a uma tabela cujo domínio não está explícito. Existem diversas formas de aproximar uma função para a função relativa aos conjuntos de dados. Portanto a fórmula de Lagrange para a interpolação polinomial pode ser obtida mediante a realização de algumas considerações (FREITAS, 2000): Considere a função:

= , com j ≠ k.

Vamos provar que a Eq. (2.0) tem as seguintes propriedades:

  • é um polinômio de grau n ;

Observe que é o produto de n fatores do tipo. Portanto, é o produto de n polinômios

de grau 1 e conseqüentemente um polinômio de grau n :

= , com j ≠ k.

Se teremos que é o produto de fatores ; Se , é o produto de fatores , com que

se anula quando , logo é nula.

1 Chamado também de Polinômio de Lagrange. Nomeado por razão do matemático italiano Joseph Louis Lagrange. É o polinômio de interpolação de um conjunto de pontos discretos.

Considerando que é de grau não superior a n , pois é a soma de que é um

polinômio de grau n para , ele pode ser escrito como uma combinação linear de , isto

é (FREITAS, 2000):

Problema A

O Problema A é descrito por uma tabela de valores da densidade da água do mar correspondente a diferentes valores de temperatura. Para se tornar mais didático a descrição, chamemos peso específico () dado em Kg/m³ de x e temperatura (T) dada em graus Celsius de f(x).

Tabela 2.1 – Dados discretos do peso específico da água do mar relativo à temperatura. ___________________________________________________________________ T 4º 8º 12º 16º 20º ___________________________________________________________________

1000,7794 1000,6427 1000,2805 999,7165 998, __________________________________________________________________

A interpolação de Lagrange consistirá em montar inicialmente a estrutura do polinômio de acordo com a Eq. (2.2):

Percebemos que falta determinar o produtório da equação (2.1) referente a : ; ;

Sabendo-se que a condição é válida:

(2.2)

Os valores das incógnitas x com os coeficientes estão relacionados com os valores

da tabela, com x começando com coeficiente.

Em alguns casos se tem a interpolação por polinômios de elevado grau, levando assim a resultados equivocados. Observou-se então que a interpolação por meio de intervalos de poucos pontos resultava num polinômio de grau inferior, assim como a continuidade de que se precisa. Denominaram essa forma de interpolação de Splines Cúbicos.

2.2 Método de Splines 2 Cúbicos

No método de interpolação de Splines possui os tipos: linear, quadrático e cúbico. O método de Splines Cúbicos apresenta vantagens em comparação ao método Linear pelo fato desta não possuir a derivada contínua nos nós. O método em estudo também apresenta vantagens com relação à Quadrática, pois esta possui derivada primeira contínua, mas apenas a primeira derivada (RUGGIERO e LOPES, 1988). Uma spline cúbica consiste em uma função polinomial S 3 (x) , por partes, contínua, onde cada parte, S (^) k(x) , é um polinômio de grau 3 no intervalo , k=1, 2, ..., n. Como

pode ser visto na ilustração da Fig. 02.

2 O nome Spline origina-se dos desenhos técnicos, onde usava-se uma régua elástica chamada spline, em desenhos de engenharia, que pode ser curvada de forma a passar por um dado conjunto de pontos (xi, yi).

Figura 02 – Ilustração gráfica da aproximação de f(x) pelo Método de Spline Cúbico S 1 (x). (RUGGIERO e LOPES, 1988)

Esse polinômio S (^) k(x) terá a primeira e segunda derivada contínua, sem apresentar picos ou trocas de curvaturas nos limites de intervalos. Então deve-se construir um

polinômio interpolador cúbico que passe por dois pontos sucessivos () e (), ou seja

o conjunto dos polinômios S (^) k(x) é utilizado no intervalo [], com a forma (CAMPOS, 2007):

Satisfazendo as condições:

, i=1, 2,..., n-1 e ,

, i=1, 2,..., n-

Tais condições implicam na continuidade do spline e que passem pelos pontos ( ). E

para garantir que as inclinações e curvaturas sejam contínuas também, impõe-se:

algebricamente como foi colocado anteriormente, por isso, na Seção 3.0 foi posto as Implementações Computacionais a fim de que se tenha eficiência na interpolação dos dados obtidos.

3.0 Implementação Computacional

Nesta seção serão apresentados os algoritmos utilizados na implementação dos métodos de Interpolação de Lagrange e Splines Cúbicos para o Problema A e Problema B apresentados nos itens anteriores. O Algoritmo 1 apresenta a função principal de cada algoritmo, enquanto que o algoritmo 2 é a subrotina e expressa o processo de cálculos necessários para a interpolação.

3.1 Interpolação de Lagrange

Problema A

___________________________________________________________________________

Algoritmo 1 Função Principal (Interpolação de Lagrange )___________________________ 1: inteiro n, resultados, entrada, saída 2: caracter auxiliar 3: abra entrada 4: abra resultados 5: leia (entrada,) auxiliar 6: leia (entrada,) auxiliar 7: leia (entrada,*) n 8: chamar subrotina lagrange

10

9: feche resultado 10: feche saída 11: feche entrada 12: fim ______________________________________________________________________ Algoritmo 2 Subrotina Lagrange ( n, resultados, entrada, saida)_ ______________________ 1: inteiro i, j, n, resultados, entrada, saida 2: real soma, p, x(n), y(n), xvalor, intervalo 3: caracter auxiliar 4: leia (entrada,) auxiliar 5: leia (entrada,) intervalo 6: leia (entrada,) auxiliar 7: faça i1,n, 8: escreva (saida,) x(i), y(i) 9: fim faça 10: xvalor x(1) 11: enquanto (xvalor < = x(n)) faça 12: soma = 13: faça i1,n, 14: p 15: faça j1,n, 16: se (j≠i) então 17: pp(xvalor-x(j)) / (x(i)-x(j)) 18: fim se 19: fim faça 20: somasoma+ py(i) 21: fim faça 22: escreva (resultados,*) xvalor, soma 23: xvalorxvalor+intervalo 24: fim enquanto 25: fim

Problema B

A implementação computacional para o método de Lagrange segue uma mesma estrutura de algoritmo, não mudando muito nas funções, podendo sim construir de forma diferente os algoritmos e ser funcional da mesma maneira, entretanto opta-se por seguir o mesmo padrão por método a fim de que se tenha uma padronização. Então o que se altera do Problema A para o Problema B são apenas os dados de entrada, que são arquivos no formato txt (texto). Por isso tanto o Algoritmo 1 como o Algoritmo 2 possuem a mesma estrutura.


Algoritmo 1 Função Principal (Interpolação de Lagrange) ____________________________

23: escreva (saida,) ‘Matriz A’ 24: para i1,n, 25: escreva (saida,) A(i,j) 26: fim para 27: escreva (saida,) ‘Matriz B’ 28: para i1,n, 29: escreva (saida,) B(i) 30: fim para 31: para i0, n-1, 1 32: g(i) 0. 33: fim para 34: para k1, n, 1 35: para i0, n-2, 1 36: g(i)=B(i) 37: para j1, i-1, 1 38: g(i) g(i)-A(i,j)g(j) 39: fim para 40: g(i) g(i)/A(i,i) 41: fim para 42: zx(0) 43: t0, 44: para k1, 100, 1 45: ak(g(k)-g(k-1))/(6h) 46: bkg(k)/ 47: ck(g(k)-g(k-1))/h+ (2hg(k)+g(k-1)h)/ 48: dkg(k) 49: escreva (saida,) ‘Solução’ 50: enquanto (z<=x(k)) faça 51: solak(z-x(k))3 + bk(z-x(k))2+ck(z-x(k))+dk 52: escreva (saida,) z,s 53: zz+t 54: fim enquanto 55: fim para 56: feche saída 57: fim


Problema B

A implementação computacional para o método de Splines Cúbicos também segue a mesma estrutura de algoritmo, não mudando muito nas funções, assim como para o Método de Lagrange no item anterior. Então o que se altera do Problema A para o

Problema B são apenas os dados de entrada, que são arquivos no formato txt (texto). Por isso tanto o Algoritmo 1 como o Algoritmo 2 possuem a mesma estrutura.




Algoritmo 1 Função Principal (Interpolação de Splines Cúbicos)_ ______________________ **__________________________________


_______ Algoritmo 2** Subrotina Principal ( entrada, n)_ _______________________

4.0 Resultados Numéricos e

Análises

Serão apresentados nesta seção apresentados os resultados obtidos a partir da implementação computacional utilizando o método de interpolação de Lagrange e Splines Cúbicas para o Problema A e Problema B descritos anteriormente. Tais métodos têm por finalidade calcular os valores que não estão expostos na Tabela 2.1 e Tabela 2.2, mas que pertencem aos mesmos intervalos impostos. As tabelas estão agrupadas pelos métodos de Interpolação e em cada item estão os problemas em questão.

Foi posto abaixo junto às tabelas comparativas os gráficos que representam as aproximações de cada método, podendo assim ter melhor entendimento com qual método obteve melhores aproximações.

4.1 Problema A

Na Tabela 4.1 estão dispostos os valores de x e f(x) das funções

14

Tabela 4.1 - Comparativo das aproximações para o Problema A Interpolação de Lagrange

Interpolação de Spline Cúbico x f(x) x f(x) 5,900 1000,7443 5,900 1000, 5,950 1000,7426 5,950 1000, 6,000 1000,7409 6,000 1000, 6,050 1000,7391 6,050 1000, 6,100 1000,7374 6,100 1000, 9,900 1000,4972 9,900 1000, 9,950 1000,4927 9,950 1000, 10,000 1000,4882 10,000 1000, 10,050 1000,4836 10,050 1000, 10,100 1000,4791 10,100 1000, 13,900 1000,0365 13,900 999, 13,950 1000,0295 13,950 999, 14,000 1000,0224 14,000 999, 14,050 1000,0153 14,050 999, 14,100 1000,0082 14,100 999, 17,900 999,3837 17,900 998, 17,950 999,3744 17,950 998, 18,000 999,3650 18,000 998, 18,050 999,3557 18,050 998, 18,100 999,3463 18,100 998,

Com a ilustração do Gráfico 1, nota-se como que o comportamento do Método de Lagrange é realmente suave, enquanto o de Spline Cúbico possui os nós destacados e os erros aproximando de zero. Entretanto entre os intervalos, em relação ao outro método, não se obteve valores considerados. Na Tabela 4.2 estão relacionados os erros de cada método para os pontos fornecidos. Fica claro que o Método de Lagrange foi mais eficiente com erros bem menores do que o Método de Splines Cúbicos.

4.2 Problema B

Para o Problema B a forma de comparação foi análoga ao Problema A. Pegou-se quatro pontos igualmente distribuídos e analisa-se que houve maior discrepância entre os métodos neste caso. É necessário destacar que tal problema foi retirado do Exemplo

16

Tabela 4.2 - Comparativo dos erros entre os métodos. Problema A. Interpolação de Lagrange

Interpolação de Spline Cúbico X Erro X Erro 6 0,00001063 6 0, 10 0,00000312 10 0, 14 0,00001562 14 0, 18 0,00002812 18 0,

Tabela 4.3 - Comparativo das aproximações para o Problema B Interpolação de Lagrange

Interpolação de Spline Cúbico x f(x) x f(x) 0,100 2,8791 0,100 2, 0,150 2,7982 0,150 2, 0,200 2,7039 0,200 2, 0,250 2,5963 0,250 2, 0,300 2,4754 0,300 2, 0,650 1,2669 0,650 1, 0,700 1,0435 0,700 1, 0,750 0,8076 0,750 0, 0,800 0,5593 0,800 0, 0,850 0,2986 0,850 0, 1,200 -1,8686 1,200 -1, 1,250 -2,2268 1,250 -2, 1,300 -2,5970 1,300 -2, 1,350 -2,9793 1,350 -2, 1,400 -3,3737 1,400 -3, 1,750 -6,4732 1,750 -6, 1,800 -6,9647 1,800 -7, 1,850 -7,4684 1,850 -7, 1,900 -7,9844 1,900 -8, 1,950 -8,5128 1,950 -8,

14, do Capítulo 5 de Ruggiero e Lopes, 1988. Foi dado no exemplo o valor interpolado de x = 0,25:

  • X(0,25) = 2, Nota-se que para esse exemplo o Método Splines Cúbico obteve melhor aproximação para o valor exato dado, com erro zero. O Método de Lagrage em contra partida não teve sua precisão distanciada do valor exato dado e atingiu erro para o ponto 0,25 de 0,0615.

Gráfico 2–Ilustração gráfica da interpolação dos dois métodos para o conjunto de dados do Quadro 2.

do Método de Splines Cúbicos adquirindo erro de zero.

5.0 Considerações Finais

A interpolação polinomial de f(x) está bem relacionada com o conjunto de dados discretos que se tem em mãos.

Foi observado que o erro obtido através do Método de Spline Cúbicos para o Problema A se apresentou de forma acentuada em relação ao Método de Lagrange, o que ficou de fato comprovado no Gráfico 4.1. Notou-se que entre os intervalos dos nós a função permanecia praticamente constante até o limite do nó. Posteriormente a função se comportava como “degrau”, decaindo abruptamente no mesmo nó.

Para o Problema B os dois métodos interpolaram os dados da Tabela 2.2 de forma positiva. O erro obtido pelo Método de Splines Cúbicos foi menor em comparação ao de Lagrange. Entretanto como visto no Gráfico 2, os dois métodos alcançaram de forma positiva a interpolação dos dados.

REFERÊNCIAS BIBLIOGRÁFICAS

ASANO, Claudio Hirofume;COLLI, Eduardo. Cálculo Numérico - Fundamentos e Aplicações. 2009.

CAMPOS, Frederico Ferreira. Algoritmos Numéricos. 2ª Ed. Belo Horizonte: LTC editora, 2007.

FREITAS, Sergio Roberto de. Métodos Numéricos. 2000.

RUGGIERO, Márcia A. Gomes; LOPES, Vera Lúcia da Rocha. Cálculo Numérico: Aspectos Teóricos e Computacionais. 2ª Ed. São Paulo: Pearson editora. 1988.