Elementos de Análise NuméricaAproximação de funções -objectivo de aproximação de funções...

Post on 22-Apr-2015

116 views 4 download

Transcript of Elementos de Análise NuméricaAproximação de funções -objectivo de aproximação de funções...

Elementos de Análise NuméricaAproximação de funções

-objectivo de aproximação de funções

-Interpolação: -interpolação polinomial

-polinómio interpolador de Newton

-polinómio interpolador de Lagrange

-”splines”

[-regressão: -regressão linear

-coeficiente de regressão

-regressão não linear]

Aproximação de funções

Pontos mais importantes:

1

Elementos de Análise NuméricaAproximação de funções

Motivação

-dados são frequentemente disponíveis como um conjunto discreto

de pontos (experiências, tabelas) ----> pretendem-se estimar valores

entre os pontos

-pretende-se uma forma simplificada de uma função complicada ----->

calculam-se os valores da função só para alguns pontos discretos no

intervalo de interesse e usar uma função mais simples (e.g. linear)

para estimar os outros valores (tabelas, gráficos de engenharia)

2

Elementos de Análise NuméricaAproximação de funções

Métodos de aproximação de funções

-pontos muito precisos (erros associados são desprezáveis) ----> a função de aproximação deve passar por cada um dos pontos----> interpolação

-pontos afectado por um erro apreciável----->o que têm importância é a tendência geral dos dados por isso a função não precisa de passar necessariamente por todos os pontos-----> regressão

interpolação

regressão

3

Elementos de Análise NuméricaAproximação de funções

Interpolação polinomial

-em princípio podemos usar qualquer função como função

interpoladora

-polinómios são excelentes candidatos, porque dados n+1 pontos, há

apenas um e só um polinómio de grau n, ou inferior, que passa em

todos os pontos: -2 pontos----> n=1 (recta)

-3 pontos----> n=2 (parábola)

-a interpolação consiste em determinar os parâmetros do polinómio de

grau n a partir de n+1 pontos dados ({x1;y1}, {x2;y2},…, {xn+1;yn+1})

sabendo que p(xi)= yi

-forma geral dos polinómios:

p x a a x a x a xnn( ) ... 0 1 2

2

4

Elementos de Análise NuméricaAproximação de funções

-aplicando os pontos conhecidos {xi;yi} resulta um sistema linear com n+1 incógnitas

Interpolação polinomial

n

1

0

n

1

0

nn

n1

n0

2nn

211

200

y

y

y

a

a

a

x

x

x

xx1

xx1

xx1

-a matriz de coeficientes é tanto mais mal condicionada tanto maior for n

-embora o polinómio p(x) seja único, ele pode ser expresso de variadas

maneiras: -polinómio de Newton-polinómio de Lagrange

5

Elementos de Análise NuméricaAproximação de funções

Polinómio interpolador de Newton (diferenças divididas finitas)

Interpolação linear (n=1): 2 pontos {x1;y1}, {x2;y2}

)xx()xx(

)yy(yy

x)xx(

)yy(ya

)xx(

)yy(a

xaay

xaay

112

121

112

1210

12

121

2102

1101

aprox. da primeira derivada 6

Elementos de Análise NuméricaAproximação de funções

Polinómio interpolador de Newton (diferenças divididas finitas)

Interpolação quadrática (n=2): 3 pontos {x1;y1}, {x2;y2}, {x3;y3}

-procuramos o interpolador na forma:p x b b x x b x x x x( ) ( ) ( )( ) 0 1 1 2 1 2

-aplicando as condições conhecidos, os parâmetros de polinómio podem ser determinadas:

p x b y x y

p x b b x x y by y

x xx y

p x b b x x b x x x x y

b

y yx x

y yx x

x xx

( ) ; )

( ) ( ) ; )

( ) ( ) ( )( )

;

1 0 1 1 1

2 0 1 2 1 2 12 1

2 12 2

3 0 1 2 1 2 3 1 3 2 3

3

3 2

3 2

2 1

2 1

3 13

(

(

( y3)7

Elementos de Análise NuméricaAproximação de funções

Polinómio interpolador de Newton (diferenças divididas finitas)

Interpolação de grau n (forma geral): n+1 pontos {x0;y0}, {x1;y1},... {xn;yn}

-procuramos o interpolador na forma:p x b b x x b x x x x b x x x x x xn n( ) ( ) ( )( ) ... ( )( )....( ) 0 1 0 2 0 1 0 1 1

onde

b y

b f x x

b f x x x

b f x x x x xn n n

0 0

1 1 0

2 2 1 0

1 2 1 0

[ , ]

[ , , ]

[ , ,..., , , ]

-a função f[ ] é chamada diferenças divididas de ordem n

8

Elementos de Análise NuméricaAproximação de funções

Polinómio interpolador de Newton (diferenças divididas finitas)

Diferenças divididas:

-ordem 0: f[ xi]=f(xi)

-ordem 1:

-ordem 2:

-ordem n:

f x xf x f x

x xi j

i j

i j

[ , ]( ) ( )

f x x xf x x f x x

x xi j k

i j j k

i k

[ , , ][ , ] [ , ]

f x x x xf x x x f x x x

x xn nn n n n

n

[ , ,..., , ][ , ,..., ] [ , ,..., ]

1 1 0

1 1 1 2 0

0

-polinómio de interpolador geral de Newton:

p x f x x x f x x x x x x f x x x

x x x x x x f x x xn n n

( ) ( ) ( ) [ , ] ( )( ) [ , , ]

( )( )...( ) [ , ,..., ]

0 0 1 0 0 1 2 1 0

0 1 1 1 0 9

Elementos de Análise NuméricaAproximação de funções

Polinómio interpolador de Newton (diferenças dividida finita)

x y

x0 y0

x1 y1

x2 y2

x3 y3

yy y

x x101 0

1 0

ordem1ª 2ª 3ª

yy y

x x212 1

2 1

yy y

x x323 2

3 2

yy y

x x21021 10

2 0

yy y

x x32132 21

3 1

yy y

x x3210321 210

3 0

-não é necessário que os pontos estejam igualmente espaçados-não é necessário que as abcissas estejam ordenadas por ordem crescente

Tabela de diferenças divididas

10

Elementos de Análise NuméricaAproximação de funções

Exemplo:

x y

1 -1

1.1 1.51

1.3 2.56

1.4 -3.1

09.2511.1

)1(51.1y10

ordem1ª 2ª 3ª

27.51.13.1

51.156.2y21

59.563.14.1

56.21.3y32

07.6613.1

09.2527.5y210

2.2061.14.1

27.559.56y321

3.35014.1

)07.66(2.206y3210

)3,1x)(1,1x)(1x()3,350()1,1x)(1x()07,66()1x(09,251)x(p

1102,3)3,117,1)(1,117,1)(117,1()3,350(

)1,117,1)(117,1()07,66()117,1(09,251)17,1(p

Elementos de Análise NuméricaAproximação de funções

Erro de interpolador de Newton

-o erro da interpolação é uma função definida por en(x)=f(x)-pn(x)

-a formula do interpolador é semelhante à do desenvolvimento de

uma função em série de Taylor

-as diferenças divididas são aproximações das derivadas de ordem

superior

-o erro associado à aproximação de Taylor:

-para o interpolador numa forma análoga:

Rf

nx xn

n

i in

( ) ( )

( )!( )

1

11

1

com xi<<xi+1

Rf

nx x x x x xn

n

n

( ) ( )

( )!( )( )...( )

1

0 11

R f x x x x x x x x x x xn n n n [ , , ,..., , ]( )( )...( )1 1 0 0 1

f x x x x xf

nn n

n

[ , , ,..., , ]( )

( )!

( )

1 1 0

1

1

12

Elementos de Análise NuméricaAproximação de funções

Erro de interpolador de Newton

-a função f(x) é geralmente incógnita, mas se mais um ponto (n+1) é disponível,o erro pode ser aproximado:

R f x x x x x x x x x x xn n n n n [ , , ,..., , ]( )( )...( )1 1 1 0 0 1

13

Elementos de Análise NuméricaAproximação de funções

14

Exemplo:

x y

1 -1

1.1 1.51

1.3 2.56

1.4 -3.1

09.25

ordem

1ª 2ª 3ª

27.5

59.56

07.66

2.206

3.350

)4,1x)(3,1x)(1,1x)(1x(2302)x(R 3

1.6 4.14

36.2

309.3

1031

230216.1

)3.350(1031y43210

819,0)4,117,1)(3,117,1)(1,117,1)(117,1(2302)17,1(R 3

Elementos de Análise NuméricaAproximação de funções

Obtenção do polinómio interpolador pelo método de Lagrange

-o método de Lagrange é uma reformulação do interpolador

Newtoniano, mas evita o cálculo das diferenças divididas finitas

-expressão geral:

p x L x f xi ii

n

( ) ( ) ( )

0onde L x

x x

x xij

i jjj i

n

( )

0

-n=1 p xx x

x xf x

x x

x xf x( ) ( ) ( )

1

0 10

0

1 01

-n=2 p xx x

x x

x x

x xf x

x x

x x

x x

x xf x

x x

x x

x x

x xf x( ) ( ) ( ) ( )

1

0 1

2

0 20

0

1 0

2

1 21

0

2 0

1

2 12

-o erro de aproximação é obtido de forma semelhante do que no caso do método Newtoniano

15

Elementos de Análise NuméricaAproximação de funções

x f(x)

0 11 72 6

Exemplo:

612

1x

02

0x7

21

2x

01

0x1

20

2x

10

1x)x(p

16

72,6612

19,0

02

09,07

21

29,0

01

09,01

20

29,0

10

19,0)9,0(p

Elementos de Análise NuméricaAproximação de funções

Interpolação com nós equidistantes

-designando por h a distância entre nós sucessivos, podemos escrever que:

x

x x h

x x h

x x nh

x

n

n

0

1 0

2 0

0

02

onde h =

xn

-diferenças divididas :

f x xf x f x

x x

f x

h[ , ]

( ) ( ) ( )1 0

1 0

1 0

0

f x x x

f x f xx x

f x f xx x

x x

f x

h[ , , ]

( ) ( ) ( ) ( )( )

2 1 0

2 1

2 1

1 0

1 0

2 0

20

22

f x x x xf x x x f x x x

x x

f x

n hn nn n n n

n

n

n[ , ,..., , ][ , ,..., ] [ , ,..., ] ( )

!

1 1 01 1 1 2 0

0

0

17

Elementos de Análise NuméricaAproximação de funções

Interpolação com nós equidistantes

-o símbolo n representa o operador de diferenças progressivas:

0

1

1

f x f x

f x f x h f x

f x f xk k

( ) ( )

( ) ( ) ( )

( ) ( ( ( ))

p x f xf x

hx x

f x

hx x x x h

f x

n hx x x x h x x n h

n

n

( ) ( )( )

( )( )

( )( )

( )

!( )( )...( ( ) )

00

0

20

2 0 0

00 0 0

2

1

-o resultado pode ser substituído no interpolador Newtoniano:

18

Elementos de Análise NuméricaAproximação de funções

-aplicando o facto de qualquer ponto no intervalo [xo,xn] pode ser

representado pela seguinte formula: x=x0+h

-o interpolador pode ser simplificado:

)1n)...(1(!n

)x(f

)1(!2

)x(f

!1

)x(f)x(f)x(p

0n

02

00

Rf

nh nn

nn

( ) ( )

( )!( )...( )

11

11

-o erro é dado por:

-extrapolação: estimativa do valor de f(x) fora da gama de valores dos

pontos conhecidos (perigoso)

Interpolação com nós equidistantes

19

Elementos de Análise NuméricaAproximação de funções

x y

10 -1

20 1.51

30 2.56

40 -3.1

51,2)1(51,1

ordemf 2f 3f

04,151,156,2

66,556,21,3

47,151,204,1

7,604,166,5

23,5)47,1(7,6

Exemplo:

)2)(1(!3

23,5 )1(

!2

47,151,21)x(p

21.2)23,1)(13,1(3,1!3

23,5 )13,1(3,1

!2

47,13,151,21)23(p

X=23 ; =1,3

Elementos de Análise NuméricaAproximação de funções

“Splines” (interpolação por segmentos polinomiais)

-às vezes um polinómio interpolador de grau n pode resultar em grandes

erros (exemplo: uma função geralmente suave mas com algumas

variações bruscas)

-solução: splines, aplicando polinómios de grau inferior de n (para n+1

pontos) a subconjuntos de pontos

Splines lineares (m=1):

n1-n1n1n1n

21111

10000

xx x)xx(m)x(f)x(S

xx x)xx(m)x(f)x(S

xx x)xx(m)x(f)x(S

onde m

f x f x

x xii i

i i

( ) ( )1

1

21

Elementos de Análise NuméricaAproximação de funções

“Splines” (interpolação por segmentos polinomiais)

Splines quadráticas (m=2): as derivadas de primeira ordem

contínuas nos nós (iguais)

-para cada intervalo entre os pontos, o aproximador é um polinómio

de grau 2:

-n intervalos ---> 3n incógnitas -----> precisamos 3n equações

-estas equações são:

i1-i2

iiii xx xxcxba)x(S

f x a b x c x

f x a b x c xonde i

i i i i i i

i i i i i i

( )

( )

1 1 1 1 1 1

2

1 1 12

= 2,3...n 2n-2 equações

f x a b x c x

f x a b x c xnos pontos

n n n n n n

( )

( )

0 1 1 0 1 02

2

extremos 2 equações

n-1 equaçõesb c x b c xi i i i i i 2 21 1 1 1 onde i = 2,3...n

2 01c a segunda derivada igual a zero 1 equação 22

Elementos de Análise NuméricaAproximação de funções

“Splines” (interpolação por segmentos polinomiais)

Splines cúbicas (m=3): as derivadas de primeira e segunda ordem

contínuas nos nós (iguais)

-para cada intervalo entre os pontos, o aproximador é um polinómio de

grau 3:

-n intervalos ---n> 4n incógnitas -----> precisamos 4n equações

(condições):

-valores da função iguais nos nós interiores (2n-2)

-a primeira e última funções devem passar pelos pontos extremos

respectivos (2)

-o valor das primeiras derivadas nos pontos interiores deve ser igual (n-1)

-o valor de segundas derivadas nos pontos interiores deve ser igual (n-1)

- o valor de segundas derivadas nos pontos extremos é 0 (2)

i1-i3

i2

iii xx xxd+xcxba)x(S

23

Elementos de Análise NuméricaAproximação de funções

“Splines” (interpolação por segmentos polinomiais)

-as condições anteriores resultam num sistema de eq. com 4n incógnitas

-um método alternativo resulta só num sistema tridiagonal apenas com

n-1 incógnitas

-a segunda derivada em cada intervalo é uma recta---->pode ser

representada com um interpolador de Largrange de 1º grau:

)x(fxx

xx)x(f

xx

xx)x(f i

1ii

1i1i

i1i

ii

-a expressão anterior pode ser integrada duas vezes, e o resultado é

uma função polinomial de grau 3 com duas constantes de integração

-aplicando as condições para os valores extremos no intervalo i (f(x i) e

f(xi-1)), os constantes de integração podem ser determinadas

24

Elementos de Análise NuméricaAproximação de funções

“Splines” (interpolação por segmentos polinomiais)

-o resultado:

f xf x

x xx x

f x

x xx x

f x

x x

f x x xx x

f x

x x

f x x xx x

ii

i ii

i

i ii

i

i i

i i ii

i

i i

i i ii

( )( )

( )( )

( )

( )( )

( ) ( )( )( )

( ) ( )( )( )

1

1

3

11

3

1

1

1 1

1

11

6 6

6 6

-a expressão para cada intervalo (i=1,2,...,n) só tem duas incógnitas (f´´) em vez de 4

25

Elementos de Análise NuméricaAproximação de funções

-aplicando a condição que:

e derivando a fórmula anterior:

“Splines” (interpolação por segmentos polinomiais)

f x f xi i i i1( ) ( )

( ) ( ) ( ) ( ) ( ) ( )

( ) ( ) ( ) ( )

x x f x x x f x x x f x

x xf x f x

x xf x f x

i i i i i i i i i

i ii i

i ii i

1 1 1 1 1 1

11

11

2

6 6

-o resultado é um sistema com n-1 equações e n+1 incógnitas-mas considerando que as segundas derivadas são zero nos pontos 1 e n, o sistema (tridiagonal) só envolve n-1 incógnitas---->pode ser resolvido para as segundas derivadas nos nós

26

Elementos de Análise NuméricaAproximação de funções

Exemplo:

( ) ( ) ( ) ( ) ( ) ( )

( ) ( ) ( ) ( )

x x f x x x f x x x f x

x xf x f x

x xf x f x

i i i i i i i i i

i ii i

i ii i

1 1 1 1 1 1

11

11

2

6 6

i 0 1 2 3

xi 10 20 30 40

f(xi) -1 1,51 2,56 -3,1

03,4

876,0

56,251,110

656,21,3

10

6

51,1110

651,156,2

10

6

)30(f

)20(f

2010

1020

3002010

1020A 7,22

2003,4

10876,0A1

8,7103,410

876,020A2

239,0)30(f

0758,0)20(f

27

Elementos de Análise NuméricaAproximação de funções

f xf x

x xx x

f x

x xx x

f x

x x

f x x xx x

f x

x x

f x x xx x

ii

i ii

i

i ii

i

i i

i i ii

i

i i

i i ii

( )( )

( )( )

( )

( )( )

( ) ( )( )( )

( ) ( )( )( )

1

1

3

11

3

1

1

1 1

1

11

6 6

6 6

84,1)2023(6

10239,0

10

56,2

)2330(6

100758,0

10

51,1)2023(

106

239,0)2330(

106

0758,0)23(f 33

2

28