• Nenhum resultado encontrado

Introdução aos Métodos Numéricos

N/A
N/A
Protected

Academic year: 2021

Share "Introdução aos Métodos Numéricos"

Copied!
87
0
0

Texto

(1)

Introdução aos Métodos

Numéricos

Instituto de Computação UFF

Departamento de Ciência da Computação

(2)

Conteúdo temático

(3)

Conteúdo específico

● Fórmula de Lagrange

● Método de Newton-Gregory ● Custo computacional

(4)

Fórmula de Lagrange

Fórmula de Lagrange

Se não necessitamos do polinômio na forma canônica podemos usar a fórmula de Lagrange

Parece simples... Mas...

pn(x)=L0(x) y0+L1(x) y1+L2(x) y2+⋯+ Ln(x) yn=

i=0 n

(5)

Fórmula de Lagrange

Se não necessitamos do polinômio na forma canônica podemos usar a fórmula de Lagrange

Parece simples... Mas...

pn(x)=L0(x) y0+L1(x) y1+L2(x) y2+⋯+Ln(x) yn=

i=0 n

(6)

Fórmula de Lagrange

Mas é simples mesmo! Para facilitar o entendimento...

L0(x)= (x−x1)(x−x2)⋯(x−xn−1)(x−xn) (x0x1)(x0x2)⋯(x0xn−1)(x0xn) L1(x)= (x−x0)(x−x2)⋯(x−xn−1)(x−xn) (x1x0)(x1x2)⋯(x1xn−1)(x1xn) L2(x)= (x−x0)(x−x1)⋯(x−xn−1)(x−xn) (x2x0)(x2x1)⋯(x2xn−1)(x1xn) ⋮ (x−x )(x−x )(x−x )⋯(x−x )

(7)

Fórmula de Lagrange

Não confunda simples com fácil e fácil não é o oposto de trabalhoso

(8)

Fórmula de Lagrange

Um exemplo

Já sabemos que teremos um polinômio de grau 2 Escrevamos o caso geral para este grau

x f(x)

0 0

π/2 1

(9)

Fórmula de Lagrange

Um exemplo L0(x)= (x−x1)(x−x2) (x0x1)(x0x2); L1(x)= (x−x0)(x−x2) (x1x0)(x1x2) ; L2(x)= (x−x0)(x−x1) (x2x0)(x2x1) p2(x)=L0(x) y0+L1(x) y1+L2(x) y2

(10)

Fórmula de Lagrange

Um exemplo ou L0(x)=(x−π/2)( x−π / 4) (0−π/ 4)(0−π /2) ; L1(x)= (x−0)(x−π /4) (π /2−0)(π/2−π /4); L2(x)= (x−0)( x−π /2) (π /4−0)(π /4−π /2) p2(x)=L0(x)0+ L1(x)×1+ L2(x)

2 2

(11)

Fórmula de Lagrange

Um exemplo logo L0(x)= 8 π2(x−π/2)( x−π /4); L1(x)= 8 π2(x−0)( x−π /4); L2(x)=− 16 π2 (x−0)( x−π /2)

(12)

Fórmula de Lagrange

Um exemplo logo L0(x)= 8 π2(x−π/2)( x−π /4); L1(x)= 8 π2(x−0)( x−π /4); L2(x)=− 16 π2 (x−0)( x−π /2) p2(x)= 8 π2 x(x−π/ 4)− 16 π2 x(x−π/2)

2 2 = 8 π2

[

x(x−π/ 4)−x (x−π/2)

2

]

(13)

Fórmula de Lagrange

Calculemos pela fórmula x = π/6 e x = π/3

p2(x)= 8

(14)

Fórmula de Lagrange

Calculemos pela fórmula x = π/6 e x = π/3

p2(x)= 8 π2

[

x (x−π/4)−x(x−π/2)

2

]

p2(π /6)= 8 π2[π/6(π /6−π /4)−π/6(π /6−π /2)√2]=8

[

1 6

(

1 6− 1 4

)

− 1 6

(

1 6− 1 2

)

√2

]

=0,517428 p2(π /3)= 8 π2 [π /3(π/3−π /4)−π /3(π/3−π /2)√2]8

[

1 3

(

1 3− 1 4

)

− 1 3

(

1 3− 1 2

)

√2

]

=0,850761

(15)

Fórmula de Lagrange

Calculemos pela fórmula x = π/6 e x = π/3

p2(x)= 8 π2

[

x (x−π/4)−x(x−π/2)

2

]

p2(π /6)= 8 π2[π/6(π /6−π /4)−π/6(π /6−π /2)√2]=8

[

1 6

(

1 6− 1 4

)

− 1 6

(

1 6− 1 2

)

√2

]

=0,517428 p2(π /3)= 8 π2 [π /3(π/3−π /4)−π /3(π/3−π /2)√2]8

[

1 3

(

1 3− 1 4

)

− 1 3

(

1 3− 1 2

)

√2

]

=0,850761

(16)

Fórmula de Lagrange

Observação importante:

deixe a expressão deste polinômio neste formato. É trabalho inútil e sujeito a erros tentar “desenvolver“ o polinômio até ficar na forma canônica.

(17)

Fórmula de Lagrange

Observação importante:

deixe a expressão deste polinômio neste formato. É trabalho inútil e sujeito a erros tentar “desenvolver“ o polinômio até ficar na forma canônica.

(18)

Fórmula de Lagrange

Também não precisamos calcular o polinômio como fizemos Podemos substituir os valores dos pontos mais o valor do ponto no qual queremos calcular o polinômio

(19)

Fórmula de Lagrange

A Fórmula de Lagrange pode ser obtida teoricamente usando a regra de Cramer

(20)

Fórmula de Lagrange

(21)

Fórmula de Lagrange

Qual a vantagem desta fórmula? ● Não resolvemos um sistema

(22)

Fórmula de Lagrange

Qual a vantagem desta fórmula? ● Não resolvemos um sistema

(23)

Fórmula de Lagrange

Qual a vantagem desta fórmula? ● Não resolvemos um sistema

Qual o problema?

● O cálculo do polinômio não é tão simples e barato como no caso anterior

(24)

Fórmula de Lagrange

Qual o custo computacional de calcular um ponto?

É fácil: observe que temos (n+1) Li(x) e em cada um fazemos n multiplicações, 2(n-1) somas e uma divisão

(25)

Interpolação

Quais são os problemas dos dois algoritmos que conhecemos até agora?

Vários, mas estudaremos um:

● Não há um procedimento simples se quisermos adicionar mais pontos

(26)

Fórmula de

Newton-Gregory

Fórmula de Newton-Gregory Construamos o método

(27)

Fórmula de

Newton-Gregory

Um ponto

Qual o polinômio que passa por este ponto? ● p

0(x0) = y0

● É interpolador somente para este ponto (x0, y0)

(28)

Fórmula de

Newton-Gregory

Dois pontos

Qual o polinômio que passaria por estes pontos? Sugestão:

(x0, y0),(x1, y1)

(29)

Fórmula de

Newton-Gregory

Dois pontos

Qual o polinômio que passaria por estes pontos? Sugestão:

(x0, y0),(x1, y1)

(30)

Fórmula de

Newton-Gregory

Dois pontos

Ele passa pelo primeiro ponto, obriguemos que passe pelo outro

(x0, y0),(x1, y1)

(31)

Fórmula de

Newton-Gregory

Dois pontos

Ele passa pelo primeiro ponto, obriguemos que passe pelo outro

(x0, y0),(x1, y1)

p1(x1)=p0(x1)+ A( x1x0)= y1y0+ A (x1x0)=y1A= y1− y0

(32)

Fórmula de

Newton-Gregory

Dois pontos

Ele passa pelo primeiro ponto, obriguemos que passe pelo outro

Logo

(x0, y0),(x1, y1)

p1(x1)=p0(x1)+ A( x1x0)= y1y0+ A (x1x0)=y1A= y1− y0

(33)

Fórmula de

Newton-Gregory

Dois pontos

Observe que o polinômio obtido interpola estes dois pontos (x0, y0),(x1, y1)

p1(x)= p0(x)+ y1− y0

(34)

Fórmula de

Newton-Gregory

Dois pontos

Observe que o polinômio obtido interpola estes dois pontos (x0, y0),(x1, y1)

p1(x)= p0(x)+ y1− y0

(35)

Fórmula de

Newton-Gregory

Antes de adicionar mais pontos, imporemos as seguintes restrições:

(36)

Fórmula de

Newton-Gregory

Antes de adicionar mais pontos, imporemos as seguintes restrições:

● Os pontos estarão ordenados em relação a x

(37)

Fórmula de

Newton-Gregory

Antes de adicionar mais pontos, imporemos as seguintes restrições:

● Os pontos estarão ordenados em relação a x

(38)

Fórmula de

Newton-Gregory

Dois pontos

Assim o polinômio obtido será escrito como (x0, y0),(x1, y1)

p1(x)= p0(x)+ y1− y0

(39)

Fórmula de

Newton-Gregory

Três pontos

Preservando o que obtivemos, vamos experimentar o polinômio (x0, y0),(x1, y1),( x2, y2)

(40)

Fórmula de

Newton-Gregory

Três pontos (x0, y0),(x1, y1),( x2, y2)

p2(x2)=p1(x2)+B( x2x0)(x2x1)=y2p0(x2)+ y1−y0

(41)

Fórmula de

Newton-Gregory

Três pontos (x0, y0),(x1, y1),( x2, y2) p2(x2)=p1(x2)+B( x2x0)(x2x1)=y2p0(x2)+ y1−y0 h (x2−x0)+B(2h)(h)= y2 y0+ y1−y0 h 2h+2h 2B= y 2⇒B= y2−2 y1+ y0 2h2

(42)

Fórmula de

Newton-Gregory

Três pontos Então (x0, y0),(x1, y1),( x2, y2) p2(x2)=p1(x2)+B( x2x0)(x2x1)=y2p0(x2)+ y1−y0 h (x2−x0)+B(2h)(h)= y2 y0+ y1−y0 h 2h+2h 2B= y 2⇒B= y2−2 y1+ y0 2h2 y2 y + y

(43)

Fórmula de

Newton-Gregory

Quatro pontos

Já parece natural experimentar o polinômio

que funciona como interpolador dos três primeiros pontos. (x0, y0),(x1, y1),( x2, y2),(x3, y3)

(44)

Fórmula de

Newton-Gregory

Quatro pontos (x0, y0),(x1, y1),( x2, y2),(x3, y3) p3(x3)=p2(x3)+C (x3x0)(x3x1)(x3x2)=y3 p1(x3)+ y2−2 y1+ y0 2h2 (x3−x0)(x3−x1)+C (3 h)(2 h)(h)= y3 p0(x3)+ y1−y0 h (x3−x0)+ y2−2 y1+ y0 2h2 6 h 2 +C 6 h3=y3 y −3 y +3 yy

(45)

Fórmula de

Newton-Gregory

Quatro pontos

que interpola os pontos dados

(x0, y0),(x1, y1),( x2, y2),(x3, y3)

p3(x)= p2(x)+ y3−3 y2+3 y1−y0

(46)

Fórmula de

Newton-Gregory

Observe que temos padrões surgindo

y −3 y +3 yy p2(x)= p1(x)+ y2−2 y1+ y0 2 h2 (x−x0)(x−x1) p1(x)= p0(x)+ y1−y0 h (x−x0) p0(x)= y0

(47)

Fórmula de

Newton-Gregory

Fórmula de Newton-Gregory Temos algo como

pi(x )= pi−1(x)+ ?

i! hi(x−x0)(x−x1)(x−x2)⋯(x−xi−1) p0(x)= y0

(48)

Operador de diferenças

progressivas

Vamos definir o operador

que é linear. Assim, observe que

Δ f (x)=f (x+δ x)−f (x)

(49)

Operador de diferenças

progressivas

Vamos definir o operador

que é linear. Assim, observe que

Δ f (x)=f (x+δ x)−f (x)

(50)

Operador de diferenças

progressivas

Vamos definir o operador

que é linear. Assim, observe que

Δ f (x)=f (x+δ x)−f (x)

Δ2f (x)=Δ Δ f (x)=Δ

[

f (x+δ x)−f (x)

]

f (x+δ x)−Δ f ( x) Δ2f (x)=f (x +δ x+δ x)−f (x+δ x)−

[

f (x+δ x)−f (x)

]

(51)

Operador de diferenças

progressivas

Da mesma forma, podemos escrever

Δ3f (x)=Δ Δ2f ( X )=Δ

[

f (x+2 δ x)−2 f (x+δ x)+f (x)

]

Δ3f (x)=Δ f (x+2 δ x)−2 Δ f ( x+δ x)+Δ f (x)

(52)

Operador de diferenças

progressivas

Da mesma forma, podemos escrever

Então

Δ3f (x)=Δ Δ2f ( X )=Δ

[

f (x+2 δ x)−2 f (x+δ x)+f (x)

]

Δ3f (x)=Δ f (x+2 δ x)−2 Δ f ( x+δ x)+Δ f (x)

(53)

Operador de diferenças

progressivas

Observe que podemos continuar a calcular as aplicações múltiplas do operador de diferenças progressivas o quanto quisermos.

No entanto, pararemos por aqui pois já dá para perceber o que queremos

(54)

Operador de diferenças

progressivas

Vamos substituir nas expressões encontradas

Δ f ( x0)=f ( x0+h)−f ( x0)=f ( x1)−f ( x0)=y1y0

(55)

Operador de diferenças

progressivas

Vamos substituir nas expressões encontradas

Δ2 f ( x0)=f ( x0+2h)−2 f ( x0+h)+f ( x0)=f ( x2)−2 f ( x1)+f ( x0)=y22 y1+ y0

Δ f ( x0)=f ( x0+h)−f ( x0)=f ( x1)−f ( x0)=y1y0

(56)

Operador de diferenças

progressivas

Vamos substituir nas expressões encontradas

Δ3f ( x0)=f ( x0+3 h)−3 f ( x0+2h)+3 f ( x0+h)−f ( x0)=f ( x3)−3 f ( x2)+3 f (x1)+f ( x0)

Δ3f (x )= y3 y +3 y + y

Δ2 f ( x0)=f ( x0+2h)−2 f ( x0+h)+f ( x0)=f ( x2)−2 f ( x1)+f ( x0)=y22 y1+ y0

Δ f ( x0)=f ( x0+h)−f ( x0)=f ( x1)−f ( x0)=y1y0

(57)

Fórmula de

Newton-Gregory

Observando o que obtemos

p3(x)= p2(x)+ y3−3 y2+3 y1− y0 (x−x0)(x−x1)(x−x2) p2(x)= p1(x)+ y2−2 y1+ y0 2 h2 (x−x0)(x−x1) p1(x)= p0(x)+ y1−y0 h (x−x0) p0(x)= y0

(58)

Operador de diferenças

progressivas

vemos que o fator “?“ é exatamente dado pelos valores que encontramos aqui com as diferenças progressivas.

(59)

Fórmula de

Newton-Gregory

Fórmula de Newton-Gregory pi(x )= pi−1(x)+ Δ i f ( x0) i! hi (x−x0)(x−x1)(x−x2)⋯(x−xi−1) p0(x)= y0

(60)

Fórmula de

Newton-Gregory

A fórmula parece simples mas o cálculo das diferenças parece um problema.

(61)

Fórmula de

Newton-Gregory

A fórmula parece simples mas o cálculo das diferenças parece um problema.

(62)

Fórmula de

Newton-Gregory

Observe a tabela abaixo

x y Δf(x) Δ2f(x) Δ3f(x) ... Δnf(x)

x0 y0 y1-y0 y2-2y1+y0 y3-3y2+3y1 -y0 . x1 y1 y2-y1 y3-2y2+y1 .

x2 y2 y3-y2 . .

x3 y3 . . .

(63)

Fórmula de

Newton-Gregory

● Colocamos duas colunas em uma tabela contendo os valores de x e y

● Criamos uma nova coluna subtraindo os valores de y progressivamente. Obtemos a primeira diferença

● Criamos outra coluna subtraindo os valores da primeira

(64)

Fórmula de

Newton-Gregory

(65)

Fórmula de

Newton-Gregory

Experimentando... Três pontos: x f(x) 0 0 π/2 1 π/4 √2/2

(66)

Fórmula de

Newton-Gregory

Experimentando... Três pontos:

Podemos usar os pontos como estão?

x f(x)

0 0

π/2 1

(67)

Fórmula de

Newton-Gregory

Experimentando... Três pontos:

Podemos usar os pontos como estão?

Certamente não: os pontos são igualmente espaçados mas não

x f(x)

0 0

π/2 1

(68)

Fórmula de

Newton-Gregory

Ordenando: h = π/4 Tabela x y Δf(x) Δ2f(x) 0 0 π/4 √2/2 π/2 1

(69)

Fórmula de

Newton-Gregory

Ordenando: h = π/4 Tabela Inicialmente temos x y Δf(x) Δ2f(x) 0 0 √2/2 1-√2 π/4 √2/2 1-√2/2 π/2 1 p0(x)= y0=0

(70)

Fórmula de

Newton-Gregory

Ordenando: h = π/4 Tabela Inicialmente temos Daí obtemos x y Δf(x) Δ2f(x) 0 0 √2/2 1-√2 π/4 √2/2 1-√2/2 π/2 1 p0(x)= y0=0

(71)

Fórmula de

Newton-Gregory

Ordenando: h = π/4 Tabela Inicialmente temos x y Δf(x) Δ2f(x) 0 0 √2/2 1-√2 π/4 √2/2 1-√2/2 π/2 1 p0(x)= y0=0

(72)

Fórmula de

Newton-Gregory

Claramente é um polinômio que interpola os dois primeiros pontos

Calculemos em x=π/6

idêntico aos cálculos anteriores, como era de se esperar. Adicionemos mais um ponto

p1(π /6)= p0(π /6)+ 2π

2 π

6 =0+

2

(73)

Fórmula de

Newton-Gregory

h = π/4 Tabela Já temos x y Δf(x) Δ2f(x) 0 0 √2/2 1-√2 π/4 √2/2 1-√2/2 π/2 1 p0(x)= y0=0; p1(x)= p0(x)+ π2

2 x

(74)

Fórmula de

Newton-Gregory

h = π/4 Tabela Já temos E assim x y Δf(x) Δ2f(x) 0 0 √2/2 1-√2 π/4 √2/2 1-√2/2 π/2 1 p0(x)= y0=0; p1(x)= p0(x)+ π2

2 x Δ2f (x ) 1−

2

(75)

Fórmula de

Newton-Gregory

É este polinômio que interpola os três pontos

Calculemos em x=π/6

Temos o resultado anterior para o polinômio do primeiro

grau. Assim...

p2(π /6)= p1(π /6)+ 8

(76)

Fórmula de

Newton-Gregory

É este polinômio que interpola os três pontos

Calculemos em x=π/6

Temos o resultado anterior para o polinômio do primeiro

grau. Assim,

p2(π /6)=

2 3 +8(1−

2) 1 6 ( 1 6− 1 4 )=

2 3 − 1−

2 9 =0,517428 p2(π /6)= p1(π /6)+ 8 π2(1−

2) π6 ( π6 − π4 )

(77)

Fórmula de

Newton-Gregory

É este polinômio que interpola os três pontos

Calculemos em x=π/6

Temos o resultado anterior para o polinômio do primeiro

grau. Assim,

p (π /6)=

2+8(1−

2)1 ( 1−1 )=

2−1−

2=0,517428

p2(π /6)= p1(π /6)+ 8

(78)

Fórmula de

Newton-Gregory

O mesmo ocorrerá se calcularmos o polinômio em

x=π/3

(79)

Fórmula de

Newton-Gregory

Usando das simetrias do seno, podemos adicionar um

ponto

x y Δf(x) Δ2f(x) Δ3f(x) 0 0 √2/2 1-√2 π/4 √2/2 1-√2/2 π/2 1 3π/4 √2/2

(80)

Fórmula de

Newton-Gregory

Usando das simetrias do seno, podemos adicionar um

ponto

e construirmos uma tabela ampliada! Vejamos o

polinômio de terceiro grau

x y Δf(x) Δ2f(x) Δ3f(x)

0 0 √2/2 1-√2 2√2-3

π/4 √2/2 1-√2/2 √2-2

π/2 1 √2/2-1

(81)

Fórmula de

Newton-Gregory

Usando das simetrias do seno, podemos adicionar um

ponto

e construirmos uma tabela ampliada! Vejamos o

x y Δf(x) Δ2f(x) Δ3f(x)

0 0 √2/2 1-√2 2√2-3

π/4 √2/2 1-√2/2 √2-2

π/2 1 √2/2-1

(82)

Fórmula de

Newton-Gregory

Ou dando uma arrumada

Calculando em x=π/6

p3(x)= p2(x)+ 32

3 π3 (2√2−3) x ( x−π/ 4)( x−π/2)

p3(π/6)= p2(π/6)+ 32

(83)

Fórmula de

Newton-Gregory

Ou dando uma arrumada

Calculando em x=π/6

p3(x)= p2(x)+ 32

3 π3 (2√2−3) x ( x−π/ 4)( x−π/2)

p3(π/6)= p2(π/6)+ 32

(84)

Fórmula de

Newton-Gregory

As vantagens desta fórmula se tornam evidentes:

Adicionar um ponto novo é de custo baixo (O(n))

Podemos aproveitar todos os cálculos anteriores

(85)

Fórmula de

Newton-Gregory

E o custo total disto?

Construir a tabela

Fazemos n-1 subtrações na primeira coluna, n-2 na

segunda, n-3 na terceira, etc. Ou seja, (n-1)(n)/2

(86)

Fórmula de

Newton-Gregory

E o custo total disto?

Cálculo de um valor do polinômio

p0(x)= y0; p1(x)= p0(x)+Δ f ( x0) h (x−x0); p2(x)= p1(x)+ Δ2f ( x0) 2 h2 (x−x0)(x−x1) p3(x)= p2(x)+ Δ 3 f ( x0) 6 h3 (x−x0)(x−x1)(x−x2)

(87)

Fórmula de

Newton-Gregory

E o custo total disto?

Construir a tabela custa O(n

2

)

Cada cálculo do polinômio custa O(n

2

)

Só é válida para pontos ordenados e igualmente

Referências

Documentos relacionados