Esquema de Horner: diferenças entre revisões

Origem: Wikipédia, a enciclopédia livre.
Conteúdo apagado Conteúdo adicionado
Mvsosorio (discussão | contribs)
Mvsosorio (discussão | contribs)
Linha 84: Linha 84:
A utilização do Método de Horner para a divisão de polinômios é uma extensão do [[Algoritmo de Briot-Ruffini|dispositivo de Briot-Ruffini] pois ele permite efetuar a divisão de um polinômio P(x) de grau n por outro polinômio D(x) de grau i. Sendo n e i dois números inteiros '''quaisquer'''.
A utilização do Método de Horner para a divisão de polinômios é uma extensão do [[Algoritmo de Briot-Ruffini|dispositivo de Briot-Ruffini] pois ele permite efetuar a divisão de um polinômio P(x) de grau n por outro polinômio D(x) de grau i. Sendo n e i dois números inteiros '''quaisquer'''.


Para aplicar o método é necessário construir uma tabela desse modo:


│ Nesta espaço colocaremos os coeficientes do polinômio dividendo em ordem crescente.
[[Ficheiro:Horner Method.gif|thumb||80px|commoldura|centro|Aplicação do Método de Horner]]
──┼─────────────────── Na primeira coluna, que está separada das demais, colocamos os coeficientes
│ do polinômio divisor. Com o termo de maior grau no espaço superior e os
│ demais no meio com os sinais trocados.
──┼───────────────────
Por exemplo vamos dividir <math> 12x^5-x^4+3x^2+5</math> por <math>3x^3+2x^2-1 </math>
Inicialmente temos:


3│ 12 -1 0 3 0 5 Note que os termos x³ e x¹ tem os coeficientes "0" que devem ser colocados
──┼─────────────────── na tabela.
-2│
0│
1│
──┼───────────────────
Em seguida, conta-se quantos coeficientes ficaram na primeira coluna do meio, neste exemplo, três. Logo, o resto terá três coeficientes também. Para separar o resto do quociente usa-se uma linha vertical contando três posições a partir do último coeficiente do polinômio dividendo. O resultado fica assim:

3│ 12 -1 0 │ 3 0 5
──┼─────────┼───────── Podemos então finalmente dar inicio ao método. Ele consiste em pegar os
-2│ │ coeficientes do dividendo um a um e dividir pelo termo de maior grau do divisor
0│ │ (no caso o 3) e descê-lo até a última linha. Em seguida ele é multiplicado pelo
1│ │ segundo termo do divisor e colocado na segunda linha e terceira coluna.Repete-se
──┼─────────┼───────── essa operação para o próximo divisor, dispondo os resultados na segunda linha.
│ │
O resultado obtido deve ser:
3│ 12 -1 0 │ 3 0 5
──┼─────────┼───────── 12/3 = 4
-2│ -8 0 │ 4 4*(-2) = -8
0│ │ 4*0 = 0
1│ │ 4*1 = 4
──┼─────────┼─────────
│4 │
Em seguida soma-se todos os valores da terceira coluna e então divide-se pelo coeficiente do termo de maior grau (repetindo o processo). Isso é feito até que a última linha seja preenchida.
Ao final teremos:

3│ 12 -1 0 │ 3 0 5
──┼─────────┼───────── Agora a aplicação do método está quase terminada.O Quociente tem os coeficientes
-2│ -8 0 │ 4 da última linha (4;-3;2) com as potências crescendo da direita para a esquerda.
0│ 6 │ 0-3 Assim,temos: Quociente = 4x²-3x+2.
1│ │-4 0 2 Para sabermos o resto somamos cada os valores da 5ª,6ª e 7ª colunas.
──┼─────────┼───────── Obtendo: (3;-3;7). A forma de obter os expoentes das potencias é igual.
│4 -3 2 │ Logo, Resto = 3x²-3x+7

[[Ficheiro:Horner Method.gif|thumb||x100px|commoldura|direita|Aplicação do Método de Horner]]


=== Expansão de [[Série de Taylor|Taylor]] ===
=== Expansão de [[Série de Taylor|Taylor]] ===

Revisão das 02h38min de 27 de maio de 2013

O Método de Horner (também chamado de algoritmo de Horner ou esquema de Horner) é um algoritmo que permite:

  • Calcular o quociente e o resto de uma divisão entre dois polinômios quaisquer;
  • Calcular a série de Taylor de um polinômio em torno de um ponto;
  • Deflação de um polinômio.


Historia

O algoritmo possui esse nome devido ao trabalho "A new method of solving numerical equations of all orders" do matemático inglês William George Horner publicado em 1819 na "Philosophical Transactions of the Royal Society". Porém, a utilização do método é muito mais antigas. Fontes históricas indicam que ele já era conhecido por:

Demonstração

O método de Horner consiste em reescrever um polinômio de forma a obter uma aproximação para um certo ponto ()

em que são os coeficientes do polinômio e números reais.Podemos estar interessados em calcular seu valor para .Primeiramente observe que ele pode ser escrito na forma de parênteses encaixados(ou concatenados):

Segundo o método deve-se definir da seguinte forma:

Então é o valor de .


Assim, substituindo iterativamente na expressão,


Por exemplo, para um polinômio completo de quarto grau. Queremos encontrar seu valor para Temos:

Com do tipo:

Substituindo:








Aplicações

Divisão de polinômios

A utilização do Método de Horner para a divisão de polinômios é uma extensão do [[Algoritmo de Briot-Ruffini|dispositivo de Briot-Ruffini] pois ele permite efetuar a divisão de um polinômio P(x) de grau n por outro polinômio D(x) de grau i. Sendo n e i dois números inteiros quaisquer.

Para aplicar o método é necessário construir uma tabela desse modo:

  │  Nesta espaço colocaremos os coeficientes do polinômio dividendo em ordem crescente.
──┼─────────────────── Na primeira coluna, que está separada das demais, colocamos os coeficientes
  │                          do polinômio divisor. Com o termo de maior grau no espaço superior e os 
  │                          demais no meio com os sinais trocados.
──┼───────────────────  
  │

Por exemplo vamos dividir por Inicialmente temos:


 3│ 12 -1 0 3 0 5        Note que os termos x³ e x¹ tem os coeficientes "0" que devem ser colocados
──┼───────────────────   na tabela.
-2│
 0│     
 1│     
──┼───────────────────
  │

Em seguida, conta-se quantos coeficientes ficaram na primeira coluna do meio, neste exemplo, três. Logo, o resto terá três coeficientes também. Para separar o resto do quociente usa-se uma linha vertical contando três posições a partir do último coeficiente do polinômio dividendo. O resultado fica assim:

 3│ 12 -1 0 │ 3 0 5             
──┼─────────┼─────────   Podemos então finalmente dar inicio ao método. Ele consiste em pegar os 
-2│         │            coeficientes do dividendo um a um e dividir pelo termo de maior grau do divisor  
 0│         │            (no caso o 3) e descê-lo até a última linha. Em seguida ele é multiplicado pelo 
 1│         │            segundo termo do divisor e colocado na segunda linha e terceira coluna.Repete-se
──┼─────────┼─────────   essa operação para o próximo divisor, dispondo os resultados na segunda linha.
  │         │

O resultado obtido deve ser:

 3│ 12 -1 0 │ 3 0 5             
──┼─────────┼─────────   12/3  = 4
-2│    -8 0 │ 4          4*(-2) = -8 
 0│         │            4*0 = 0
 1│         │            4*1 = 4
──┼─────────┼─────────   
  │4        │

Em seguida soma-se todos os valores da terceira coluna e então divide-se pelo coeficiente do termo de maior grau (repetindo o processo). Isso é feito até que a última linha seja preenchida. Ao final teremos:

 3│ 12 -1 0 │ 3 0 5             
──┼─────────┼─────────   Agora a aplicação do método está quase terminada.O Quociente tem os coeficientes
-2│    -8 0 │ 4          da última linha (4;-3;2) com as potências crescendo da direita para a esquerda.  
 0│       6 │ 0-3        Assim,temos: Quociente = 4x²-3x+2.
 1│         │-4 0 2      Para sabermos o resto somamos cada os valores da 5ª,6ª e 7ª colunas. 
──┼─────────┼─────────   Obtendo: (3;-3;7). A forma de obter os expoentes das potencias é igual.
  │4   -3 2 │            Logo, Resto = 3x²-3x+7
Aplicação do Método de Horner

Expansão de Taylor

A maneira mais eficaz de calcular o valor de um polinômio de grau em é utilizando o método de Horner. Ao reescrevê-lo na forma concatenada torna-se necessario utilizar apenas adições e multiplicações. Enquanto que utilizando o polinômio na sua forma canônica utiliza-se mais adições e multiplicações o que leva mais tempo para ser computado.

Por exemplo, considere o polinômio:

Para calcular seu valor em diretamente, utiliza-se a expressão:

Que envolve realizar 15 multiplicações e 5 somas.

Enquanto que utilizando o método de Horner temos a forma fatorada:

Que para ser calculada envolve fazer apenas 5 multiplicações e 5 somas.

Aplicação do Método de Horner no Scilab

De fato, este é o método utilizado pelo software de computação numérica Scilab. Para utilizar esse algoritmo no programa usa-se o comando horner (P, x) onde P é uma matriz de polinômios ou de razões de polinômios e x é um número real ou uma matriz para o qual se deseja obter o valor de P.

Deflação

Eficiência

Referências