Você está na página 1de 530

CÁLCULO NUMÉRICO

COMPUTACIONAL
UNIVERSIDADE FEDERAL DE SANTA CATARINA
Reitor
Ubaldo César Balthazar
Vice-Reitora
Alacoque Lorenzini Erdmann

EDITORA DA UFSC
Diretora Executiva
Gleisy R. B. Fachin
Conselho Editorial
Gleisy R. B. Fachin (Presidente)
Adriano Luiz Duarte
Aguinaldo Roberto Pinto
Carlos Luiz Cardoso
Eliete Cibele Cipriano Vaz
Ione Ribeiro Valle
Gestine Cássia Trindade
José Paulo Speck Pereira
Josimari Telino de Lacerda
Katia Jakovljevic Pudla Wagner
Luana Renostro Heinen
Luis Alberto Gómez
Mauri Furlan
Pedro Paulo de Andrade Júnior

Editora da UFSC
Campus Universitário – Trindade
Caixa Postal 476
88040-900 – Florianópolis-SC
Fone: (48) 3721-9408
editora@contato.ufsc.br
www.editora.ufsc.br
Sérgio Peters
Julio Felipe Szeremeta

CÁLCULO NUMÉRICO
COMPUTACIONAL

2018
© 2018 Editora da UFSC

Coordenação editorial:
Flavia Vicenzi
Capa:
Paulo Roberto da Silva
Editoração:
Laís Tomaselli Krause
Alicia da Costa Edwirges
Cristiano Tarouco
Revisão:
Heloisa Hübbe de Miranda

Ficha Catalográfica
(Catalogação na fonte pela Biblioteca Universitária da Universidade
Federal de Santa Catarina)

P481c Peters, Sérgio


Cálculo numérico computacional [recurso eletrônico] / Sérgio Peters,
Julio Felipe Szeremeta. – Dados eletrônicos – Florianópolis : Editora da
UFSC, 2018.
527 p. : il., gráfs., tabs. – (Coleção Didática)
Inclui bibliografia.
E-book (PDF)
Disponível em: <htt://editora.ufsc.br/estante-aberta/>
ISBN 978-85-328-0838-7
1. Matemática aplicada à computação. 2. Computação – Matemática.
3. Informática. I. Szeremeta, Julio Felipe. II. Título. III. Série.
cdu: 519.67
Elaborado por Jonathas Troglio – CRB 1411093

Este livro está sob a licença Creative Commons, que segue o princípio
do acesso público à informação. O livro pode ser compartilhado
desde que atribuídos os devidos créditos de autoria. Não é permitida
nenhuma forma de alteração ou a sua utilização para fins comerciais.
br.creativecommons.org
Aos meus filhos, Pedro, João, Bia, e à minha mulher, Silvia,
companheiros(as) e incentivadores(as) desta obra.
Sérgio Peters

Aos meus filhos, Igor e Yuri, e particularmente à minha esposa,


Mariza, companheira de longa jornada, pela paciência, apoio
e motivação a mim dedicados.
Julio Felipe Szeremeta
SUMÁRIO

PREFÁCIO................................................................................................13
APRESENTAÇÃO.....................................................................................15

CAPÍTULO 1
SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS..................... 19

1.1 REPRESENTAÇÃO DE QUANTIDADES......................................................... 21


1.2 SISTEMA DE NUMERAÇÃO DECIMAL (b = 10)............................................. 25
1.2.1 Utiliza apenas dez símbolos........................................................................ 25
1.2.2 Faz uso do zero............................................................................................ 26
1.2.3 Adota o princípio da posicionalidade........................................................... 26

1.3 SISTEMA BINÁRIO (b = 2)............................................................................ 27


1.4 SISTEMA HEXADECIMAL (b = 16)................................................................ 29
1.5 CONVERSÕES ENTRE SISTEMAS DE NUMERAÇÃO.................................... 30
1.5.1 Conversão de base b para base 10.............................................................. 30
1.5.2 Conversão de base 10 para base b............................................................... 30
1.5.3 Conversões diretas entre binário e hexadecimal........................................ 33
1.6 REPRESENTAÇÃO DIGITAL DE NÚMEROS.................................................. 35
1.6.1 Padrão 16 bits original................................................................................. 36
1.6.1.1 Menor positivo representável (mp)................................................. 38
1.6.1.2 Maior positivo representável (MP).................................................. 38
1.6.1.3 Representação do zero.................................................................... 39
1.6.1.4 Quantidade máxima de elementos representáveis......................... 41
1.6.2 Otimizações da variável de 16 bits, segundo o padrão IEEE 754 ................ 43
1.6.2.1 Polarização...................................................................................... 44
1.6.2.2 Não armazenamento do primeiro bit não nulo da mantissa .......... 45
1.6.2.3 Flexibilidade na normalização da mantissa.................................... 46
1.6.2.4 Identificação da região de overflow................................................. 47
1.7 REPRESENTAÇÕES NUMÉRICAS, SEGUNDO O PADRÃO IEEE 754 ............ 48
1.7.1 Variável de 32 bits – binary32, tipo float do C, precisão simples................. 49
1.7.2 Variável de 64 bits – binary64, tipo double do C, precisão dupla................. 57
1.7.3 Variável de 128 bits – binary128, precisão quádrupla................................. 57
1.8 REPRESENTAÇÃO DE VARIÁVEIS INTEIRAS: PADRÃO ANSI C.................... 58
1.8.1 Short int....................................................................................................... 58
1.9 TIPOS DE ERROS EXISTENTES EM REPRESENTAÇÕES DIGITAIS............... 60
1.9.1 Erros inerentes............................................................................................ 60
1.9.2 Erros de arredondamento........................................................................... 60
1.9.2.1 Arredondamento manual................................................................. 61
1.9.2.2 Arredondamento digital................................................................... 61
1.9.2.2.1 Armazenamento de Racionais ilimitados................................62
1.9.2.2.2 Armazenamento de Irracionais...............................................62
1.9.2.2.3 Armazenamento com mudança de base.................................63
1.9.2.2.4 Armazenamento de resultados
de operações aritméticas........................................................64
1.9.2.3 Consequências dos erros de arredondamento................................ 68
1.9.2.3.1 Propagação de erros devido à perda de significação..............68
1.9.2.3.2 Instabilidade numérica nos algoritmos...................................70
1.9.3 Erros de truncamento.................................................................................. 70
1.9.4 Medida de erros........................................................................................... 75

1.10 CONCLUSÕES.............................................................................................. 79
COMPLEMENTANDO............................................................................................ 81

CAPÍTULO 2
SOLUÇÃO COMPUTACIONAL DE SISTEMAS
DE EQUAÇÕES LINEARES.............................................................89

2.1 SOLUÇÃO ELIMINATIVA DE A * X = B.......................................................... 93


2.1.1 Método de eliminação de Gauss.................................................................. 94
2.1.1.1 Pivotação parcial........................................................................... 100
2.1.1.2 Pivotação total............................................................................... 105
2.1.1.3 Quantitativo de soluções de A * X = B........................................... 110
2.1.2 Método de Gauss-Jordan........................................................................... 116
2.1.3 Método da inversão de matrizes................................................................ 116
2.1.4 Método de decomposição LU (de Crout).................................................... 122
2.1.5 Método de Cholesky................................................................................... 140
2.1.6 Solução de sistemas com a matriz de coeficientes do tipo banda............. 141
2.1.7 Sistemas lineares mal condicionados....................................................... 148
2.2 SOLUÇÃO DE SISTEMAS LINEARES POR MÉTODOS ITERATIVOS..............154
2.2.1 Método iterativo de Jacobi......................................................................... 156
2.2.2 Método iterativo de Gauss-Seidel.............................................................. 161
2.2.3 Convergência dos métodos iterativos........................................................ 164
2.2.3.1 Teorema de convergência – critério de Scarborough.................... 164
2.2.4 Aplicação de coeficientes de relaxação..................................................... 168
2.3 CONCLUSÕES.............................................................................................182
COMPLEMENTANDO...........................................................................................183

CAPÍTULO 3
SOLUÇÃO DE EQUAÇÕES NÃO LINEARES
A UMA INCÓGNITA....................................................................... 187
3.1 ISOLAMENTO OU LOCALIZAÇÃO DE SOLUÇÕES DE f(x) = 0......................190
3.2 REFINAMENTO DA SOLUÇÃO ISOLADA.....................................................192
3.2.1 Métodos de quebra ................................................................................... 194
3.2.1.1 Método da bisseção (ou bipartição) para raízes reais.................... 194
3.2.1.2 Método da falsa posição................................................................. 200
3.2.1.3 Método da falsa posição modificado............................................... 204
3.2.2 Métodos de linearização............................................................................... 208
3.2.2.1 Método da iteração linear.............................................................. 210
3.2.2.1.1 Teorema de convergência......................................................213
3.2.2.2 Método de Newton.......................................................................... 216
3.2.2.3 Método da secante......................................................................... 223
3.2.2.4 Tratamento geral de funções com derivada nula em x = α ........... 227
3.2.2.5 Rotinas de funções predefinidas.................................................... 234
3.2.2.5.1 Recíproco de um número.......................................................234
3.2.2.5.2 Raiz quadrada de um número...............................................236
3.3 SOLUÇÃO DE EQUAÇÕES POLINOMIAIS....................................................238
3.3.1 Localização de raízes de equações polinomiais........................................ 239
3.3.2 Natureza de raízes de equações polinomiais............................................ 247
3.3.3 Cálculo eficiente de valores das funções polinomiais
e suas derivadas........................................................................................ 250
3.3.4 Método de Newton para Pn(x) = 0............................................................. 254
3.3.4.1 Determinação de raízes de equações polinomiais com
multiplicidade................................................................................ 258
3.3.4.2 Purificação de raízes obtidas com redução de grau...................... 274
3.3.5 Determinação de raízes de equações pelo método de Müller................... 276
3.4 CONCLUSÕES.............................................................................................281

CAPÍTULO 4
RESOLUÇÃO DE SISTEMAS DE EQUAÇÕES NÃO LINEARES.......283

4.1 MÉTODO DE NEWTON................................................................................288


4.2 MÉTODO DE NEWTON COM DERIVADAS PARCIAIS NUMÉRICAS...............296
4.3 MÉTODO DE BROYDEN...............................................................................301
4.4 CONCLUSÕES.............................................................................................306

CAPÍTULO 5
APROXIMAÇÃO POLINOMIAL POR INTERPOLAÇÃO,
SPLINE E CURVAS DE BÉZIER..................................................... 307
5.1 APROXIMAÇÃO POR INTERPOLAÇÃO POLINOMIAL...................................312
5.1.1 Unicidade do interpolador......................................................................... 317
5.1.2 Determinação eficiente do interpolador ................................................... 318
5.1.2.1 Expressão do interpolador polinomial Pn(x)
na base dos polinômios de Lagrange............................................ 319
5.1.2.2 Interpolador de Gregory-Newton com diferenças......................... 323
5.1.3 Avaliação do erro de truncamento na interpolação................................... 332
5.2 INTERPOLAÇÃO DE FUNÇÕES COM VÁRIAS
VARIÁVEIS INDEPENDENTES.....................................................................338
5.3 APROXIMAÇÃO POR INTERPOLAÇÃO SPLINE.............................................. 342
5.4 TRATAMENTO DO FENÔMENO DE RUNGE.................................................358
5.5 APROXIMAÇÃO DE NÃO FUNÇÕES VIA PARAMETRIZAÇÃO.......................361
5.6 APROXIMAÇÃO POR CURVAS DE BÉZIER...................................................363
5.7 CONCLUSÕES.............................................................................................371
CAPÍTULO 6
APROXIMAÇÃO POR SÉRIES E POR FUNÇÕES RACIONAIS........ 373
6.1 APROXIMAÇÃO DE y = f(x) POR SÉRIES.....................................................376
6.1.1 Aproximação por séries de Taylor............................................................. 377
6.1.2 Aproximação por séries de Tchebychev..................................................... 386
6.2 APROXIMAÇÃO RACIONAL DE PADÉ..........................................................403
6.3 CONCLUSÕES.............................................................................................420

CAPÍTULO 7
APROXIMAÇÃO PELA TENDÊNCIA VIA AJUSTE DE CURVAS...... 421

7.1 MÉTODO DOS MÍNIMOS QUADRADOS PARA AJUSTE


A FUNÇÕES POLINOMIAIS.........................................................................428
7.2 AJUSTE POR MÍNIMOS QUADRADOS A FUNÇÕES
NÃO POLINOMIAIS.....................................................................................437
7.2.1 Determinação direta da ajustadora não polinomial................................... 438
7.2.2 Ajuste por transformações de forma paramétrica em polinomial............ 443
7.2.2.1 Ajuste a exponenciais.................................................................... 443
7.2.2.2 Ajuste a curvas geométricas......................................................... 446
7.2.2.3 Ajuste a curvas hiperbólicas......................................................... 446
7.2.2.4 Ajuste a sigmoides........................................................................ 446
7.3 CONCLUSÕES.............................................................................................451

CAPÍTULO 8
INTEGRAÇÃO NUMÉRICA............................................................453

8.1 INTEGRAÇÃO NUMÉRICA POR MÉTODOS


DE NEWTON-COTES...................................................................................458
8.1.1 Método dos trapézios................................................................................... 458
8.1.2 Método de Simpson..................................................................................... 466
8.2 INTEGRAÇÃO NUMÉRICA GAUSSIANA
OU QUADRATURA GAUSSIANA...................................................................471
8.2.1 Método de Gauss-Legendre......................................................................... 473
8.2.2 Método Gauss-Tchebychev.......................................................................... 484
8.3 CONCLUSÕES.............................................................................................487
CAPÍTULO 9
RESOLUÇÃO NUMÉRICA DE EQUAÇÕES DIFERENCIAIS
ORDINÁRIAS................................................................................489

9.1 MÉTODO DE EULER SIMPLES....................................................................493


9.2 MÉTODOS DE RUNGE-KUTTA....................................................................497
9.2.1 Método de Euler aperfeiçoado................................................................... 498
9.2.2 Método de Runge-Kutta de 4ª ordem......................................................... 502
9.3 SOLUÇÃO NUMÉRICA DE SISTEMAS DE PVI DE 1ª ORDEM
E DE PVI DE ORDEM SUPERIOR.................................................................509
9.4 SOLUÇÃO NUMÉRICA DE EDO COM PROBLEMA DE VALOR
NO CONTORNO (PVC).................................................................................514
9.4.1 Métodos de determinação de uma condição inicial
em função de uma condição de contorno.................................................. 515
9.5 CONCLUSÕES.............................................................................................521
COMPLEMENTANDO...........................................................................................522

REFERÊNCIAS.......................................................................................525
PREFÁCIO

A arte de modelar matematicamente os fenômenos físicos é uma parte


muito importante para todas as áreas da Engenharia, pois com estes modelos
podemos estudar a natureza na qual vivemos e também desenvolver os mais
diversos equipamentos de uso social, aumentando a qualidade de vida das
pessoas. O voo dos pássaros, o suave correr de um córrego, os ventos e as ondas
do mar são alguns exemplos de fenômenos que possuem uma representação
matemática e podem ser estudados matematicamente. Tais fenômenos são
representados por sistemas de equações diferenciais, normalmente parciais
e não lineares. Quando estes sistemas de equações diferenciais são muito
complexos, como na aerodinâmica de um avião ou de um automóvel, por
exemplo, os métodos analíticos não conseguem resolvê-los, e técnicas
numéricas devem ser empregadas. Para a aplicação destas técnicas numéricas,
e para melhor representar os dados e detalhes do problema, é necessário um
ferramental de fundamentos numérico/matemático que devem ser dominados
pelo analista/engenheiro. É exatamente do que trata o livro dos professores
Sérgio Peters e Julio Felipe Szeremeta, que reúne fundamentos essenciais
para o domínio de muitas técnicas numéricas empregadas nos mais diversos
ramos da física e da engenharia. Fundamentos dos erros numéricos, solução
de equações gerais e polinomiais, solução de sistemas de equações lineares e
não lineares, ajuste de curvas genérico, representação de funções em séries e
soluções de equações diferencias ordinárias, são tópicos apresentados neste
texto sempre com a preocupação de transmitir ao aluno a importância e o
significado do aprendizado desses fundamentos. O livro expõe estas técnicas
com a visão das Ciências da Computação e da Engenharia, proporcionada
pela formação dos autores, ampliando a bibliografia disponível com um
texto didático e bem focado.

Prof. Clovis Raimundo Maliska


Laboratório de Simulação Numérica em Mecânica
dos Fluidos e Transferência de Calor – SINMEC
Departamento de Engenharia Mecânica – EMC – UFSC
Isaac Newton e Johann Carl Friedrich Gauss
Ilustração de Claudio José Girardi, 2017.
APRESENTAÇÃO

O cálculo numérico é um ramo da matemática aplicada que


trata da solução de modelos matemáticos das mais variadas áreas do
conhecimento e, diferentemente do cálculo diferencial e integral,
faz uso de metodologias construtivas para a solução desses modelos.
Nessas metodologias estão envolvidas apenas operações aritméticas elementares
e, normalmente, geram uma sequência de aproximações para a solução
exata do modelo. Daí a necessidade de se avaliar quão “distante” a solução
aproximada está da solução exata, mesmo quando a desconhecemos. O cálculo
numérico é, portanto, não apenas uma metodologia construtiva de solução
de modelos, mas também envolve a avaliação da qualidade da solução obtida.
Aqui o termo qualidade tem o mesmo significado daquele da fabricação
de um determinado produto, isto é, delimitação do grau de confiança a ser
depositado no mesmo e dispêndio do menor custo possível para obtê-lo.
Como a geração de uma sequência de aproximações para a solução exata
é tipicamente repetitiva e envolve somente operações aritméticas básicas,
pode ser implementada e executada por computadores. Daí a denominação
de Cálculo numérico computacional.
Mantendo a praxe, este livro é o resultado da longa experiência de mais
de três décadas dos autores lecionando as disciplinas de Cálculo Numérico
e Análise Numérica Computacional em cursos da área das ciências exatas,
notadamente engenharias e ciências da computação, da Universidade Federal
de Santa Catarina – UFSC. Por consequência, foi organizado seguindo os
conteúdos tradicionais destas disciplinas.
São princípios norteadores desta obra:

1. Gratuidade e publicidade: versão na forma digital disponível para


acesso livre e aberto, incluindo um repositório de Algoritmos,
Caderno de Exercícios e de Respostas, nos endereços eletrônicos:
<http://editora.ufsc.br/estante-aberta/> e <http://sergiopeters.prof.
ufsc.br/livro-calculo-numerico-computacional/>.
16 CÁLCULO NUMÉRICO COMPUTACIONAL

2. Reusabilidade: utiliza software livre, com algoritmos escritos em


Octave, podendo ser reutilizado pelos estudantes em sala de aula,
nos estudos e em futuros locais de trabalho, e é compatível com
o MatLab.
3. Intercambiabilidade: utiliza formato de notação científica com
“ponto”, em vez de “vírgula”, para facilitar o processo de copiar,
colar e testar exemplos e algoritmos, uma vez que linguagens de
programação usam notação com o ponto “.” para separar a parte
inteira da parte fracionária dos números, conforme padrão em
países de cultura inglesa; e utiliza o símbolo “*” como operador de
produto em vez de “×”.
4. Confiabilidade: todos os resultados aproximados apresentam uma
medida da sua qualidade, ou seja, é dimensionado o seu erro.
5. Acessibilidade: todos os assuntos e métodos foram abordados e
descritos pedagogicamente em linguagem que mantém a preocu-
pação constante com o entendimento pelo leitor.
6. Integralidade: além dos tópicos abordados nos programas das
disciplinas de Cálculo Numérico e correlatas, oferecidas nos cursos
tradicionais das ciências exatas do país, essa obra traz contribuições
de tópicos complementares, inéditos na literatura nacional da área,
com destaque para:
a) representação digital dos números e avaliação de erros de
arredondamento;
b) comparativo da eficiência numérica e computacional dos métodos
de solução de sistemas de equações lineares abordados;
c) metodologia inovadora para determinação das raízes, e respec-
tivas multiplicidades, de equações polinomiais;
d) interpolação polinomial bi-dimensional, aproximação por splines
cúbicas e por curvas de Bézier;
e) ajuste generalizado de curvas com análise estatística dos
resultados;
f) aproximação de funções por séries de Tchebychev e por racionais
de Padé;
APRESENTAÇÃO 17

g) fundamentação matemática dos métodos de integração numé-


rica por Gauss-Legendre e Gauss-Tchebychev; e
h) tratamento alternativo para solução numérica de equações
diferenciais ordinárias com condições de contorno.
Manifestamos nossa gratidão aos nossos muitos alunos de graduação,
que foram os principais motivadores e que tanto contribuíram para a
concretização desta obra, com as suas sugestões de aprimoramento, dificul-
dades de entendimento, dúvidas e proveitosas discussões.
Agradecemos o incentivo e a contribuição de todos os colegas do
Departamento de Informática e Estatística, especialmente aos colegas,
professores de Cálculo Numérico, Nelcy Dabrowski de Araújo Mendonça,
Ricardo Felipe Custódio, Daniel Santana de Freitas e Juliana Eyng, e aos
professores de Estatística, Pedro Alberto Barbetta, André Wust Zibetti e
Andreia Zanella, pelas sugestões e apoio no desenvolvimento do tópico
relativo à análise estatística dos resultados do ajustamento de curvas.
À professora Lorena Hulse Bittencourt, professora de matemática do
ensino fundamental e médio do professor Sérgio Peters, nos colégios Henrique
Fontes e Dehon de Tubarão-SC, que abriu oportunidades de experimentar
a missão de ensinar, através de aulas particulares aos colegas de colégio.
À professora Verônica Fialka, in memoriam, alfabetizadora do professor
Julio Felipe Szeremeta, por ter conseguido, mesmo em condições precárias
e improváveis, despertar-lhe o interesse e a paixão pela matemática.
Somos gratos ao trabalho de adequação de linguagem, revisão textual,
e diagramação inicial, efetuado pelos técnicos Denise Aparecida Bunn,
Claudia Leal Estevão e Cláudio José Girardi, que resultou em um texto com
linguagem dialógica mais acessível ao público-alvo, melhorando a efetividade
do entendimento pelo leitor sobre os assuntos abordados.
Agradecemos à equipe da Editora da UFSC e à professora Gleisy R.
B. Fachin, diretora executiva da Editora da UFSC.
CAPÍTULO 1

SISTEMAS DE
NUMERAÇÃO
E ERROS
NUMÉRICOS

OBJETIVOS ESPECÍFICOS DE APRENDIZAGEM


Ao finalizar este capítulo, você será capaz de:
■■ compreender os fundamentos dos sistemas de numeração
utilizados atualmente;
■■ efetuar conversões entre diferentes sistemas de numeração;
■■ realizar representação digital de quantidades reais e intei-
ras; e
■■ identificar os tipos e as consequências de erros existentes
em representações digitais.
Neste capítulo, vamos apresentar alguns tópicos que fundamentam o
cálculo numérico computacional, como as representações de quantidades
em computadores, suas respectivas propriedades e os possíveis erros gerados.

1.1 REPRESENTAÇÃO DE QUANTIDADES


As formas de representação de quantidades ou números, chamadas
de Sistemas de Numeração, evoluíram e continuam evoluindo no curso
da história humana, passando dos sistemas meramente “associativos”
para os sistemas “simbólicos”, em uso há milênios, nos quais determinado
símbolo pode representar vários valores, e, finalmente, para os sistemas
“lógicos magnéticos”, atualmente em uso nos computadores.

 Livros de alfabetização ilustram os números através de “associações” com os dedos da mão.

Podemos agrupar os sistemas de numeração simbólicos em duas


grandes categorias. Na primeira, denominada “aditiva”, cada símbolo
tem um valor fixo e o valor total é representado pela junção dos valores
específicos de cada símbolo do número, por exemplo, os antigos sistemas
romano, grego, egípcio e hebraico. A segunda categoria, que praticamente
prevaleceu à primeira e foi desenvolvida pelos astrônomos hindus por volta
do século VI, é denominada “posicional”. Nesta categoria, o valor de cada
símbolo é relativo e depende da sua posição no número.
22 CÁLCULO NUMÉRICO COMPUTACIONAL

A representação simbólica de um número depende da quantidade


de símbolos utilizados. Essa quantidade é denominada de base, que
denotaremos por um número natural b.

A seguir, vamos apresentar exemplos de um sistema aditivo e de sistemas posi-


cionais com suas respectivas bases.

Exemplo de sistema aditivo:


a) Sistema romano: base b = 7 e símbolos {I, V, X, L, C, D, M}. Note
a inexistência do “zero” e a limitação dos valores representáveis
apenas à ordem dos milhares.
Exemplos de três sistemas posicionais:
a) Sistema decimal: base b = 10 e símbolos {0, 1, 2, 3, 4, 5, 6, 7, 8, 9},
denominados de dígitos ou algarismos. Note a presença do “zero”.
Dígito: do latim digitus, mesmo que dedo; sinal convencional que representa graficamente os
números; e cada um dos símbolos que representam os números inteiros positivos menores
que a base de um sistema numérico. Fonte: Adaptado de Instituto Antônio Houaiss (2009).
 Algarismo: derivação da palavra algorismi, versão latina do nome Al-Khwarizmi, matemático
árabe que escreveu tratados sobre aritmética e álgebra, entre outros. Fonte: Só Matemática
(1998-2016).

b) Sistema binário: base b = 2 e símbolos {0,1}, denominados de bits,


ou binary digits. A aritmética binária foi desenvolvida no início
do século XVII pelo matemático Leibnitz; em 1814, Boole criou a
álgebra booleana; e, em 1935, Shannon a implementou em circuitos.
c) Sistema ternário-quântico: base b = 3 e símbolos {0,1,0ˆ1}, em
que 0ˆ1 é uma superposição dos dois bits, denominados de qubits,
ou bit quântico. Este sistema é usado na moderna computação
quântica, que faz uso direto de propriedades da mecânica quântica,
ampliando a representação e o processamento.
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 23

tacional
Denominamos “notação” a forma ou o tipo de palavra com que
representamos um número X na base b, Xb, usando um sistema posicional.
Neste livro, utilizaremos formato de notação científica com “ponto” em vez de “vírgula”, para facilitar o
Denominamos “notação” a forma ou o tipo de palavra com que
processo de copiar, colar e testar exemplos e algoritmos, uma vez que as linguagens de programação

representamos
usam notação um com o número X naa parte
base,
ponto “.” para separar
padrão em países de cultura inglesa.
β da, parte
inteira X β ,fracionária
usando dosum sistema
números, conforme
e livro,
posicional. Hoje, usamos quatro tipos de notação:
aremos
mato de Hoje, usamos quatro tipos de notação:
a) Notação convencional, ou de ponto fixo: nesse
otação
a) caso,
Notaçãorepresentamos
convencional ou ponto um fixo: X β nesse caso, representamos
pela “palavra”:
entífica
com
um X pela “palavra”:
X β = b(a1a2  ak* arial X = (a a ... a
. ak +1 bak + n ) β1 , 2 emk que. a k+n
... a )
β k+1 éb , em
a que béa
base,
base, ai∈{0, 1, 2, ..., b – 1}, k é o comprimento da parte inteira, en
vez de ai ∈ {0,1, 2, , β* times
− 1} , k é o comprimento da parte inteira, e
acilitar Varios
da parte fracionária pontos
* calibri (xi,yi),
do número, com aok,longo
n∈ ℕdo . livro, ficaram com a virgu
n da parte fracionária do número, com k , n ∈ �ℕ.
(xi,...). Se possível, dar um pequeno espaçamento, local em
copiar,
Pg. 15
emplos b) Notação fracionária:
b) Notação fracionária: nesse caso, representamos
representamos tipicamente
tipicamenteum
De uso corrente.... Refere-se a uma metodologia abstrativa, será que esta claro
X βXbpor
Xb por Pg.
= (a /β23=2)(ba, 1em
a16 ) β , aem
/ a2que ≠ que a2 ℤ.
0 e ai∈ ≠ 0Essa
e arepresentação
ℤ. Essa é
um X1Pg. i ∈�
ma vez 2
ens de limitada a números
x - Não x
racionais.
representação é limitada a números racionais.
o usam ( a1a2 ..... ak . ak +1 ..... ak + n ) β
X βPg.=17
ponto c) Notação fatorada:
c) Notação fatorada: nesse
Agradecemos
nesse caso,
o caso, representamos
incentivo um um
e contribuição
representamos de porpor
X βtodo
X os colegas do
Informática b professores d
e Estatística, especialmente aos colegas
n+k

∑ a β X +=∑(a a. aβ a, )emβque aa∈∈{0,


parar a k E
a parte
=Xβ i
k −i Nelcy Dabrowski
β
Daniel
1 i 2
−i
k......
,t em {0,1,
β de que ...,, βb −–1}1}, k é o
Araújo Mendonça, Clara Amélia
1, 2,
i , de Oliveira, Rica
Santana de Freitas ie Juliana Eyng, e os professores de estatí
i =1 i= k +1
meros, Barbetta, Andre Wust Zibetti e Andreia Zanela, pelas suge
écomprimento
o comprimento
(adaa2parteda parte
...... a )
inteira,
inteira, daeparte
edon tópico da parte fracionária
fracionária
nrelativo do número,
rão em 1desenvolvimento
t β a análise estatística dos resulta
nglesa. com k, n∈ ℕ ,
do número, com quando representado na notação convencional.
k , n ∈ �ℕ, quando representada na notação
de curvas.
convencional. Pg.23
Pg. 24
X β = ( aflutuante:
Notação em ponto 1 a 2 … a k . a k +1 … ak + n ) β caso, representamos
nesse
d) Notação em ponto flutuante: nesse caso,
a arepresentamos
a um
um Xb por XXb= β (
X (a =a(0. .a.aa ......
a...a a)a) )β βE = ( 11 + 22 + … + tt ) β , em que
E E
β =

1 1 221 2 t t βtb β aβ βa β at
X por X β = Pg.
ai∈β {0, 1, 2, ..., b(0–1}.
.24a1aO2  grupo at ) β deβ Esímbolos
= ( 11 + (a22 a+  ... β β
+a ) té)chamado
E
,
30contém
β β 1 2 tβb
Xβ = (a1 .os at )β β E significativos da represen-
de mantissa,
em que ai ∈ {0,1, 2,a2,… tβ símbolos
− 1} . O grupo de símbolos
tação e tem comprimento
Pg. 24 t fixo. Os expoentes1E* 2da −1 base b estão
101.1
(Xa1a=2(....at ))β2 = 1é* 2+22 +chamado 0 * 21 + 1 * 20 +de ( 5.5)10
=mantissa,
= ( 3.0957de
situados em um Xintervalo * 10
)10números inteiros, I ≤ E ≤ S, e dependem
contém os t símbolos significativos da
olos significativos da forma de normalização
36 Pg. 32 da mantissa, ou seja, dependem da posição
representação
padronizada do ponto( (ou 0.1 =e2-4tem
)10 vírgula),   comprimento
*(1.100110011
se
 antes
 ou 0011... ) 2t do
depois fixo. Os
primeiro
gnificativos são os não nulos,
dígito (15)10 =não
expoentes
significativo (1111) E daDessa
nulo. baseforma,
t=10
β estão situados
arredondamento
um sistema em
-4 de ponto
artir da esquerda até o último não ( 0.1)102 = 2-4 *(1.100110011
    0011...)
   2 ≅ 2 * (1.100110011)2
um intervalo
flutuante qualquer pode serde números
definido t=pela
10
inteiros, IF(b,
quádrupla ≤ E t,≤ I,S ,S).
a, ou até o último (nulo ou não) e38dependem
( 0.1)10 ≅da
2-4 * (forma
1.100110011 ≅ ( 0.0999755859375
de )2normalização da)10
os à direita são significativos e Símbolos
zeros significativos
mantissa,
são os não nulos, contados a partir da esquerda até o último não
 nulo à direita, ou até o últimoou seja,
(nulo ou dependem
não) indicado dasão significativos
(zeros à direita posição e
o são). MP Pg.
zeros à esquerda (
= 33
não
padronizada +o são).do ponto) (ou vírgula), (
0.1111111111 2 * 215 = 2−1 + 2−2 + 2−3 + ... + 2−10 * 215
-4 se antes ou
) = (3
( 0.1)10 = 2-4 *(1.100110011
   0011...)
 2 ≅ 2 * (1.100110011)2
depois do primeiro t=10dígito significativo não nulo.
39
Dessa forma, um sistema ( F)16 =de
(1111 )2 flutuante qualquer pode
ponto
0
ser definido pela quádrupla F ( β0, t , I , 0S ) . 0
pg. 34
0 0 0 0 0 0 0
X β = (a1 . a2 ...... at )β β E

24
(a1a2 ...... at )β
CÁLCULO NUMÉRICO COMPUTACIONAL

Pg. 24
Atualmente, para fins de eficiência computacional, representamos
um número na notação em ponto flutuante por: X (a11.. aa22 .........aat )t)βb β E
Xbβ==(a
tanto em calculadoras científicas quanto em computadores.
30

O sistema de representação de quantidades que (101.1utilizamos


X = mais )2 = 1* 22 +é o0 * 21 + 1 * 20 +
sistema de numeração decimal.
36
Ao longo do texto, apresentaremos exemplos com o objetivo de reforçar o
conteúdo exposto. (15) = (1111) 10 2

Exemplo 1.1: represente o decimal X = 309.57 nas38


suas notações de ponto
fixo, fatorada e ponto flutuante.

Solução:
MP = + ( 0.1111111111)2 * 215 = 2−1 (
Considerando a sua notação em ponto fixo: 39

X = (309.57)10 0 0 0 0 0 0

Considerando a sua notação fatorada:


X = (309.57)10 = 3 * 102 + 0 * 101 + 9 * 100 + 5 * 10–1 + 7 * 10–2
45
Considerando a sua notação em ponto flutuante:
s d1 d2 d3 d4 d5
X = (3.0957)10 * 10+2

t dígitos
Observe que a construção das operações aritméticas deve considerar o significa
valor relativo de cada símbolo numérico como apresentado na sua notação
fatorada. Assim, quando fazemos qualquer operação s aritmética,
d 2 d3comod 4a d5 d6
adição, operamos os termos envolvidos considerando a posição do ponto
(vírgula) como referência, operando unidade com unidade, 
dezena com
t = 10 dígitos significativ
dezena e assim por diante.
Pg. 71
x notações
x x 2 3
xn
ex ≅ 1 +
Na próxima seção, vamos detalhar os sistemas de numeração e as + + de+ ... +
números mais comuns em computadores. 1! 2! 3! n!

74

f ( x0 + h ) + f ( x0 − h ) = f ( x0 ) + f ′( x0

+ f ( x0 ) − f ′( x0
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 25

1.2 SISTEMA DE NUMERAÇÃO DECIMAL (b = 10)


A aceitação do sistema de numeração decimal como padrão se deve
a algumas de suas características, que detalharemos a seguir.

1.2.1 Utiliza apenas dez símbolos


Tais símbolos são representados por 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9, conhe-
cidos também por algarismos arábicos ou hindu-arábicos, que são derivados da
versão ainda hoje usada no mundo árabe (escrita da direita para a esquerda):

٩, ٨, ٧, ٦, ٥, ٤, ٣, ٢, ١

Historicamente, a simbologia dos dígitos tem diversas hipóteses sobre


sua origem e evolução no mundo ocidental, conforme Figura 1.1:
a) número de ângulos existentes no desenho de cada algarismo;
b) número de traços contidos no desenho de cada algarismo;
c) número de pontos de cada algarismo;
d) número de diâmetros e arcos de circunferência contidos no desenho
de cada algarismo; e
e) figuras desenhadas a partir dos traços de um quadrado e suas
diagonais.
Figura 1.1 – Origem e evolução dos números hindu-arábicos

Fonte: Portal Escolar (2011).


26 CÁLCULO NUMÉRICO COMPUTACIONAL

1.2.2 Faz uso do zero


O zero foi aceito com certa relutância na origem do sistema decimal,
pois era difícil imaginar a quantificação e a representação do nada, do
inexistente. Hoje é indispensável, pois é o indicador da ausência de certas
potências da base.

Exemplo 1.2: no número decimal

(702.4)10 = 7 * 102 + 0 * 101 + 2 * 100 +4 * 10–1

a posição correspondente à dezena, ou à potencia 101, está ausente.

1.2.3 Adota o princípio da posicionalidade


No sistema posicional, o valor de cada símbolo é relativo, isto é, depende
da sua posição no número.

Exemplo 1.3: nos números decimais

(348)10 = 3 * 102 + 4 * 101 + 8 * 100


(574)10 = 5 * 102 + 7 * 101 + 4 * 100
(702.4)10 = 7 * 102 + 0 * 101 + 2 * 100 + 4 * 10–1

O dígito, ou símbolo, ou algarismo 4 representa 4 dezenas, 4 unidades e 4


décimos, respectivamente. Note que nenhum dígito interfere na posição do
outro, eles são inteiramente independentes entre si.

Para facilitar a representação física dos números e otimizar as operações


aritméticas em computadores, vamos estabelecer outros sistemas de numeração.
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 27

1.3 Sistema Binário ( β = 2 )


1.3 SISTEMA BINÁRIO (b = 2)
O sistema binário, como vimos, utiliza apenas dois símbolos, 0 e
1 , também chamados
O sistema decomo
binário, bits , vimos,
o zero eutiliza
o princípio
apenasda posicionalidade.
dois símbolos, 0 e 1,
também
Nesse chamados
novo sistema bits,
dede o zero e o princípio
numeração, da posicionalidade.
a correspondência Nesse
com o decimal
novo sistema de numeração, a correspondência com o decimal será:
será:

Decimal 0 1 2 3 4 5 6 7 8 9 10 ... 19 ...

Binário 0 1 10 11 100 101 110 111 1000 1001 1010 ... 10011 ...

Exemplo 1.4: (10011)2 = (1 * 24 +40 * 23 + 0 * 22 + 1 * 21 + 1 * 20) = (19)


Exemplo 1.4: (10011)2 = (1 * 2 +0 * 23 + 0 * 22 + 1 * 21 + 1 * 20 )1010= (19 )1010
Observe no Exemplo 1.4 que a forma fatorada do número binário já está representada
na base decimal.
Observe no Exemplo 1.4 que a forma fatorada do número binário já
estáOrepresentada
sistema binário
na basetem sido amplamente utilizado em compu-
decimal.
tadores, por permitir a otimização de recursos físicos, e apresenta vantagens
sobre o sistema decimal como:

a) Simplicidade de representação física: bastam dois estados físicos


distintos para representar os bits da base:
1 pode ser representado por – , on, ... e
0 pode ser representado por + , off, ...
Assim, ficou mais fácil construir uma máquina que reconheça
dois estados físicos do que dez estados distintos necessários para
representar os decimais.

b) Facilidade na definição de operadores lógicos para operações


aritméticas fundamentais.

Acompanhe no Exemplo 1.5 a demonstração da vantagem do sistema binário sobre


o decimal em relação à forma de implementação digital das operações aritméticas.

Exemplo 1.5: vamos calcular o número de combinações dos dígitos inteiros


x e y necessário para obter a operação de adição.
28 CÁLCULO NUMÉRICO COMPUTACIONAL

Em base decimal, temos 100 combinações dos possíveis 10 valores de x com


10 valores de y para definir a função adição entre dois dígitos ou algarismos.
Podemos reduzir essas 100 combinações a 19 resultados diferentes, observe:

0 + 0 = 00

0 + 9 = 09
1 + 0 = 01

1 + 9 = 10


9 + 0 = 09

9 + 9 = 18

Na base binária, necessitamos de apenas quatro combinações de dígitos


binários x e y, com basicamente dois resultados diferentes:

0+0=0
0+1=1
1+0=1
1 + 1 = 10
Combinações de dígitos binários
Podemos obter os resultados dessas adições binárias usando expressões booleanas entre x e y:
XOR – também conhecida como disjunção binária exclusiva, devolve um bit 1 sempre que o número de
 operandos iguais a 1 é ímpar, consequentemente devolve um bit 0 sempre que o número de bits 1 for
zero ou dois, e serve para definir o primeiro dígito (à direita); e
AND – também conhecida como conjunção binária, devolve um bit 1 somente quando ambos os operandos
sejam 1 e serve para definir o dígito extra, “vai-um” (à esquerda). Fonte: Patterson e Hennessy (2007).

Observe que, na última operação, temos um bit 1 extra transportado


para o registro imediatamente à esquerda, com uma operação chamada
popularmente de “vai-um” (“carry out”).
Porém, uma desvantagem do sistema binário em relação ao sistema
decimal é a necessidade de registros longos para armazenar números
representando quantidades relativamente pequenas.
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 29

Exemplo 1.6: (597)10 = (1001010101)2

Observe que, no Exemplo 1.6, foi necessário um registro com capacidade


de armazenamento de 10 bits para representar a grandeza decimal (597)10
de apenas 3 dígitos.

1.4 SISTEMA HEXADECIMAL (b = 16)


No sistema hexadecimal, que também é posicional, os símbolos
representativos são: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F, em que
A, B, C, D, E, F representam as quantidades decimais 10, 11, 12, 13, 14, 15,
respectivamente.

Exemplo 1.7:
(FA9C)16 = 15 * 163 + 10 * 162 + 9 * 161 + 12 * 160 = (64156)10
(FA9C)16 = (1111 1010 1001 1100)2

O sistema hexadecimal utiliza um número reduzido de símbolos


para representar grandes quantidades, por isso é um sistema de numeração
interessante para compactação, visualização e armazenamento de dados, ou
seja, usa registros curtos. Os registros binários internos de uma variável
podem ser convertidos de forma direta para hexadecimal, como veremos
na próxima seção.

Exemplo 1.8:

(11010110)2 = (D6)16 = (214)10


8 bits 2 símbolos 3 símbolos
hexadecimais decimais
30 CÁLCULO NUMÉRICO COMPUTACIONAL

1.5 CONVERSÕES ENTRE SISTEMAS


DE NUMERAÇÃO
Conversões entre bases são necessárias para possibilitar a comunicação
homem-computador e vice-versa, no caso dos sistemas decimal e binário,
bem como para a compactação e descompactação das representações, nos
casos das conversões binário para hexadecimal e vice-versa.

1.5.1 Conversão de base b para base 10


Obtemos diretamente as conversões de uma base b para base 10
escrevendo o número na sua forma fatorada, com fatores representados
na base decimal. Essas conversões são utilizadas pelos computadores para
apresentar os resultados calculados, para a nossa visualização e o nosso uso.

Confira o desenvolvimento dos Exemplos 1.9 e 1.10 para entender as conversões


entre binário e decimal utilizadas nas diversas formas de interação humano-
computador, como os comandos de entrada e saída de dados utilizados nas
linguagens de programação.

Exemplo 1.9: converta o binário X = (101.1)2 para decimal.

Solução:
X = (101.1)2 = 1 * 22 + 0 * 21 + 1 * 20 + 1 * 2–1 = (5.5)10

1.5.2 Conversão de base 10 para base b


As conversões de base 10 para base b = 2 são utilizadas por computadores
para armazenar os dados.

Exemplo 1.10: simule a entrada do número X = (19.03125)10 em computador


convertendo-o para binário.
Solução:
Como X não é um número inteiro, temos que converter separadamente as
suas partes, inteira (19)10 e fracionária (0.03125)10:
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 31

a) Na parte inteira do número, efetuamos a sua divisão inteira pela base


b, sucessivamente, e construímos o número convertido tomando
o último quociente e os restos da última divisão até o da primeira.

(19)10 = (?)2

(19)10 = (10011)2
Verificação: (10011)2 = 1 * 24 + 0 * 23 + 0 * 22 + 1 * 21 + 1 * 20 = (19)10

b) Na parte fracionária do número: efetuamos a sua multiplicação


inteira pela base b, sucessivamente; construímos o número convertido
tomando os inteiros resultantes de cada produto; e multiplicamos
novamente a parte fracionária do produto anterior até que o produto
final seja um inteiro ou atinja a quantidade limite de símbolos na
representação.

(0.03125)10 = (?)2

0.03125 0.06250 0.12500 0.25000 0.50000


*2 *2 *2 *2 *2

0.06250 0.12500 0.25000 0.50000 1.00000


0 0 0 0 1
(0.03125)10 = (0.00001)2

Verificação:
(0.00001)2 = 0 * 2–1 + 0 * 2–2 + 0 * 2–3 + 0 * 2–4 + 0 * 2–5 = (0.03125)10

Logo, juntando as duas partes, temos (19.03125)10 = (10011.00001)2

A seguir, apresentaremos outro exemplo de conversão decimal binária, cujo


resultado tem número de bits ilimitado.
32 1.11: converta X = ( 0.1) para binário
Exemplo CÁLCULO NUMÉRICO COMPUTACIONAL
e armazene-o
10
com 10 bits significativos.
Solução: Exemplo 1.11: converta X = (0.1)10 para binário e armazene-o com 10 bits
Exemplo 1.11: converta X = ( 0.1)10 para binário e armazene-o
0.1 significativos.
0.2 0.4 0.8 0.6 0.2 0.4 0.8 0.6 0.2
com 10 bits significativos.
*2 *2 *2 *2 *2 *2 *2 *2 *2 *2
arial Solução:
* *arial
**times
Solução:
times 0.4 0.8 1.6 1.2 0.4 0.8 1.6 1.2 0.4
0.2
0 0.10.1
**calibri
calibri
0 0.20.20 0.40.4
1 0.80.8
1 0.60.60 0.20.2
0 0.40.4
1 0.80.81 0.60.6 0 0.20.2
144424443 144424443
Pg.15
Pg. 15 *2 *2 *2 *2 *2 *2 *2 *2 *2 *2 *2 *2 *2 *2 *2 *2 *2 *2 *2 *2
DeDeuso 0.20.2 0.40.4
usocorrente....
corrente.... 0.80.8a1.6
Refere-se
Refere-se 1.6metodologia
auma
uma 1.2 0.40.4
metodologia
1.2 0.80.8 1.6
abstrativa,
abstrativa, 1.6que
será
será 1.21.2
que 0.4isso?
estaclaro
esta claro
0.4 isso?
Pg. Assim,
Pg. 16
16 ( 0.1)10 = (0.0 0011001100110011...)
{ { { { 2 é exato na base binária
Nãox0
x x*- -Não
arial x 0 0 0 00 11 11 00 00 11 11 00
  144 
somente
Pg.17
Pg. 17
na sua4forma
144 2444 de3dízima periódica
42444 3 infinitos bits.
com
* times
Agradecemos
Agradecemos
* calibri oo incentivoincentivo ee contribuição contribuição de de todo
todo os os colegas
colegas do do Departamento
Departamento de de
* arial
Informática
Informática
* times
Nelcy
Nelcy
Assim,Assim,( 0.1
Dabrowskide
e e Estatística,
Estatística,
(0.1) )10Araújo
deAraújo
especialmente
especialmente
== (0.0 0011001100110011...)
{{
Mendonça,
aos
{
Clara
aos colegas
colegas
{
Amélia
professores
professores
2 é exato
exatona
deOliveira,
Oliveira,
dede Cálculo
Cálculo
nabase
basebinária
RicardoFelipe
Numérico
Numérico
binária somente
FelipeCustodio,
Custodio,
15Dabrowski Mendonça, Clara Amélia de Ricardo
10
Pg.
Um
Daniel
Daniel
De uso
na
número
somente
* calibri Santana
Santana sua de
corrente....
forma
com
na
de sua de aforma
infinitos
Freitas
Freitas
Refere-se edízima
eumaJuliana
Juliana periódica
de
bits não
dízima
Eyng,
Eyng,
metodologia oscom
pode
eeabstrativa,
os infinitos
ser
periódica
professores
professores
será quededebits.
armazenado,
com por
infinitos
estatística
estatística
esta claro
isso
Pedro
isso?Pedro bits.
Alberto
Alberto

Barbetta,
Barbetta, Andre
Andre Wust
Wust Zibetti
Zibetti e e Andreia
Andreia Zanela,
Zanela, pelas
pelas sugestões
sugestões ee apoio
apoio no
no
precisamos
Pg. 16 desprezar parte dos seus bits menos significativos por
Pg. 15
x - Não x Um número
desenvolvimento
desenvolvimento do dotópico
tópico relativo
relativo
comarredondamento, a a análise
análise
infinitos bits não pode estatística
estatística dos
dos resultados
resultados do
do ajustamento
ajustamento
de um processo chamado
De uso corrente.... Refere-se a uma metodologia abstrativa, será que esta clarro isso?
de curvas.
Pg.curvas.
17
vejaser armazenado,
o tópico por isso precisamos
Arredondamento
Pg. 16 desprezar parte dos seus bits menos significativos por um processo chamado
Pg.23
Pg.23 Um número
Decimal
Agradecemos na seção o incentivo com infinitos
Complementando... bits não
e contribuição deaopode
finalos
todo ser
deste armazenado,
Capítulo.
colegas por isso de
do Departamento
x - Não x arredondamento. Veja o tópico Arredondamento decimal na seção Complemen-
Xβ β==( a(1aa1a2 …
XInformática 2… .aak +k1+…
aeak k.Estatística, 1… )β
aak +kn+)n βespecialmente
Pg. 17 precisamos tando... ao final desteparte
desprezar dos seus bits menos significativosNumérico
capítulo. aos colegas professores de Cálculo por
Nelcy
AgradecemosDabrowski o de Araújo
incentivo a a
1e aa
Mendonça,
1 contribuição aat t de
Clara Amélia de Oliveira, Ricardo Felipe Custodio,
E E todo os colegas do Departamento de
Xβ β==(0
XDaniel um (0.Santana
.aprocesso
1aa
1a2…2… aatde )t β) βFreitas
β ==( ( e1 1+Juliana
EE
βchamado 22
…++ t )t e)ββ
+arredondamento,
++… veja o tópico Arredondamento
Informática e Estatística, ββ ββ2 2 Eyng,
especialmente aos os professores
ββ colegas professoresde deestatística Pedro Alberto
Cálculo Numérico Nelcy
Considerando
Barbetta,
Decimal
Dabrowski Andre
de
Considerando
na
Araújo Wust
seção que
Mendonça, Zibettio que
Complementando...
Clara
o
registro
e registro
Andreia
Amélia binário
de
binário
Zanela,
ao final
Oliveira,
disponível
disponível
pelas
deste
Ricardo
tenha
tenha
sugestões
Capítulo.
Felipe eapenas
apenas
Custodio, apoio nobits
10
Daniel
Pg.24
Pg. 24
10XSantana para
desenvolvimento armazenar do tópico osEyng,
dígitos
relativo e os significativos
a análise estatísticado Exemplo
dos resultados 1.11,
Albertofaremos
do Barbetta,uma
ajustamento
=(a(1apara
Xβbits
de β=
curvas. 1. .aa
de … aarmazenar
Freitas
2 2… at )t β)ββeβEJuliana
E os dígitos significativos
professores doPedro
de estatística Exemplo 1.11,
Andre extensão
Wust Zibetti diretae Andreia do arredondamento
Zanela, pelas sugestões decimal usualnopara
e apoio o sistema binário
desenvolvimento do
faremos
Pg.
Pg.
Pg.2324
tópico uma extensão
24relativo a análise diretados
estatística doresultados
arredondamento
do ajustamento decimal
de curvas. usual para
X
XPg.23 ( ada
X=β=(=3.0957 seguinte
1 aConsiderando
( 3.0957 2…) ) a*k10
* 10 . +a2+k2+1 … forma:
ak + n ) β que o registro binário disponível tenha apenas
o sistema binário 1010 da seguinte forma:
X
Pg.
Pg. 3232= ( a a a . a Eak + n )aβ1 a2 a
X10
β = bits
β (0 . a1para
1 2 a2 …-4a-4t )armazenar
k k
β β = ( 1 + os
+ 1 +… dígitos
+ tt ) β Esignificativos do Exemplo 1.11,
( 0.1)10)10==22 *((1.100110011
( 0.1 0.1
 )E10
*(1.100110011
=βa β 2
0011...
a0011... +) 2)aβ2t ) β E
(0.0001100110011 0011...
123 ) 2 decimal usual para
Xfaremos
Pg.β = 24(0 . a1auma 2 at ) 
extensão
β β t== ( 1
1010 1 direta
t=
 2+14243
+arredondamento do tarredondamento
arredondamento
β β 2
β -4-4
t=10 arredondamento
Xoβ sistema
Pg. (10.1
=24(a0.1 .)a10)210=… 2a2-4)-4*(1.100110011
=binário
t β 
*(1.100110011
βE
  da

   0011...)
 0011...)
seguinte   2≅≅22 * (*1.100110011
2 forma: (1.100110011)2)2
E t=t= 1010
Observe
X β =24 (a0.1
)10)10 2a2-4t -4que
. a2 ≅≅Observe a que
parcela
(+2(β1.100110011 a ser arredondada 32 2éémenor
Pg. )* β*1.100110011 a parcela a ser arredondada (0.0011...)
(0.0011...) menor do que
( (10.1 ( 0.1 ) = ( 0.0999755859375
≅≅( 0.0999755859375
)2)(0.0001100110011 )10)10 0011... 12
)
X
Pg. (
24 3.0957 ) * 10
do que ( 0.5 )1010 = (0.1000...) 2 ee deve
= 10
2
deveser 14243
serarredondada
arredondada 12 3
parapara“zero”
2
“zero” de a gerar
de modo
t =10 arredondamento
Pg.
X 33
Pg.
Pg. =32
33
modo a gerar ( 3.0957
o menor ) 10
* 10
+2
erro.
o menor erro. Logo, Logo,
( 0.1)10)10==(20.1
( 0.1
Pg. 32 *10
Observe
= 2-4 *(1.100110011
2-4-4*)(1.100110011
(1.100110011 
que

t= 0011...)
0011...)

10a parcela
0011...
 -4-4 )
2 2≅≅22 *a 1.100110011
(*1.100110011
(ser
2 )2)2
arredondada
( )
         arredondamento 123 2 é menor
(0.0011...)
( ) -4 2 ≅ ( 0.0001100110011)
-4
0.1 0.1 = 2 *(1.100110011
10 = (0.00011001100110011...)
t=t= 10 10 0011... )
( 0.1 ) 2 (1.100110011 0011...) 2 (1.100110011 )
( F( F)16)16=(10=0.5 )-410)2)=2
-4 2
do que = 14243
(0.1000...) e 12
deve ≅ 3 ser arredondada para2“zero” de
10
(1111
(1111 *
 t=
10  arredondamento
t =10 2
2 *
2

pg.modo
( 0.1a)10gerar = 2-4 *(1.100110011 0011...)2 ≅ 2 * (1.100110011)2
t=10 -4

34 ( 0.1
34 ) ≅ 2 * (o menor
1.100110011 erro. Logo,
)2 ≅ ( 0.0999755859375 )10
pg.
( 0.110 ) ≅ ( 0.0001100110011
t=10
) ≅ ( 0.0999755859375 )10
( A1.B)16)16(0.1
( A1.B ==()1010 (1010
≅ 20001
10 -4
0001 . .1011
1011)2)2 )2 ≅ ( 0.0999755859375)10
* (1.100110011
2

Pg. 33 ( 0.1 )10 = 14243 123 2 (


(0.00011001100110011...) ≅ 0.0001100110011 )2
10

pg.3535
pg.
( 0.1)333 +0
Pg. = 22-42*(1.1001100110 0 4 40011...)
33
323 ≅ 2 2 *2 (1.100110011
t =10 -4
) 22
((
== 11*2*2310+0 *2-4+0
*2

+0
*2
1
*2+0
+0 )()( ) ) ( (
1 
*2*2 22 ++11
 *2*2+0 )()( ) )
+0*2*-42+1 +1*2*21 +0
1
+0*2*20 0 224 24
(
0.1 )10 = 
 2 ( )10 (

 t=10
*(1.100110011
  0011...)
0.1 ≅ 0.0001100110011

 2 ≅ 2)2 (
 (1.100110011


*  )
≅ 0.0999755859375
 2 )10
( F)16 = (1111)2
88 t=10
11
1010
00
+( 0(34
+pg. 022+1
** ( F
+1 2)2+1
33
+1
** +0)22)()(22) )++(1(122+1
= (21111
2+0
22
**
11
**
00
+122+1
44
** +022)()(22) )
+122+0 33
**
22
**
11
**
00 44


 16
 2
 
 
 

( A1.B)16 = (1010 0001 . 1011)2
pg. 34
Pg.36
Pg. 36
66 1414
Daniel Santana de Freitas e Juliana Eyng, e os professores de estatística Pedro Albe
Barbetta, Andre Wust Zibetti e Andreia Zanela, pelas sugestões e apoio
desenvolvimento do tópico relativo a análise estatística dos resultados do ajustame
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS
de curvas. 33
Pg.23
X β = ( a1a2 … ak . a k +1 … ak + n ) β
Observe a1 uma
a a
X β = (0agora que
. a1a2 … at ) β(0.1)
β E =10( era
1
fração
+ 22 + … + tt ) βdecimal
E exata e a conver-
* arial
β β β
temos para uma representação binária ilimitada, também exata enquanto
Pg. 24 por um número * times
for representada de bits infinito. Ou seja, nesse exemplo,
* calibri
note que, Xna (a1 . a2 …at )de
β =conversão
E
β β base, descartamos parte dos bits da represen-
Pg. 24por limitação doPg. 15
tação binária, número de bits representáveis, o que gerou
um erro de = ( 3.0957 )10 * 10 +2
X arredondamento. De uso corrente.... Refere-se a uma metodologia abstrativa, será que e
Pg. 16
Pg. 32
Perceba nas conversões dos Exemplos 1.10 e 1.11 que:
x - Não x
( 0.1)10 = 2
-4
(1.100110011
*
   0011...
Pg. 17  ) 2
t=10 arredondamento
Agradecemos o incentivo e contribuição de todo os col
a) (0.03125)
( 0.110)10== (0.00001)
2-4 *(1.100110011
2  0011...)
Informática 2 ≅ 2 * (1.100110011
-4
)2 aos colegas professores
  eEstatística, especialmente
t=10
Dabrowski de Araújo Mendonça, Clara Amélia de Oliveira, Ric
(0.03125)
( 0.110)10=≅ 3125 / 10000
2-4 * (1.100110011 = 1≅/(Freitas
Santana) 2de
32 = 1/2 5
0.0999755859375(o denominador é uma de estatíst
)10 e os professores
e Juliana Eyng,
potência da base 2) Andre Wust Zibetti e Andreia Zanela, pelas sugestões e ap
Pg. 33 tópico relativo a análise estatística dos resultados do ajustament
0.1
b) ( )10 = 2 -4
*(1.100110011
  0011...)
 2 ≅ 2 * (1.100110011)2
Pg.23
-4

t=10 X β = (a1a2 ak . ak +1 ak + n ) β
(0.1)10 =( F(1
)16 =/ (10)
1111) fração
(a
2 2 X β =não
(0 . apode
1a2 aser expressa
t )β β = ( 1 +
E a2 outraaequiva-
a1 por
+ + tt ) β E
lente
pg. 34 cujo denominador seja uma potência de 2) β β 2
β
Pg. 24
( A1.B)16 = (1010 0001 . 1011 )2
Issopg.se35deve ao fato de queXum )β β=E p / q será limitado nessa
a1 . a2 at X
β = (racional
b
base b se, =e(somente se, 1puder
Pg.
0 ser
3 24
4 expresso na forma 0de X
2
= v / bk.
1*23 +0*22 +0 *2 +0*2 )( 2 ) + (1*2 +0*2 +1+*22 +0*2 )( 2 )b
3 2 1 4

   X = (3.0957


 )10*
10 
8 10
A seguir, vamos apresentar Pg. 32
conversões importantes para entender
1 0 o mecanismo
(
+ 0*23 +1
de visualização

de*2representações
2

 
)( ) (
+1*21 +0*20 24de +base
1(*20.1

3
+1
) *2
binária
10
=2 2+1

-4 1
2 meio
**(1.100110011
por 
4
)( )
+0*20de 2representações
0011... )2 em
base hexadecimal. 6 14
t=10 arredondamento

Pg. 36 ( 0.1)10 = 2-4 *(1.100110011 0011...)2 ≅ 2-4 * (1.100110011)


t=10

(0.1)10 ≅ 2-4 * (1.100110011)2 ≅ (0.0999755859375)10


1.5.3 Conversões diretas entre binário
e hexadecimal
Pg. 33
( 0.1)10 = 2-4 *(1.100110011 0011...)2 ≅ 2-4 * (1.100110011)2
Sabemos que cada símbolo hexadecimal corresponde
t=10 a quatro dígitos
binários, pois 16 = 2 . Por exemplo, ( F)16 = (1111)2 é armazenado em 4 bits.
1 4

Então, fazemos a conversão direta


pg. 34associando a cada hexadecimal quatro

( A1.B)16 =os(1010
dígitos binários. Ou seja, agrupamos dígitos . 1011)2 em grupos de
0001 binários
quatro a partir da posição do ponto
pg. 35 (vírgula). Caso seja necessário, comple-
tamos o grupo de quatro bits com= (1zeros não
2 significativos.
*2 +0*2 +0*2 +0*2 )( 2 ) + (1*2 +0*2 +1*2 +0*2 )( 2 )
3 1 0 4
3
3 2 1 0 4
2

8 10

( )( 2 ) + (1 2 +1 2 +1 2 +0 2 )( 2 )
1 0
3 2 1 0 4 3 2 1 0 4
+ 0*2 +1*2 +1*2 +0*2 * * * *

6 14
Pg. 36
34 CÁLCULO NUMÉRICO COMPUTACIONAL

Exemplo 1.12: converta (A1.B)16 = (?)2


Exemplo 1.12: converta ( A1.B )16 = ( ? )2
Solução:
Solução:Como
Como (A)16 = (1010)2
( A ) = (1010 )
(1)1616= (0001)2 2
(1) ==(1011)
(B)16
( 0001)2
16 2
( B )16 = (1011)2
teremos:
teremos:
(A1.B)16 = (1010 0001 . 1011)2
( A1.B )16 = (1010 0001 . 1011)2

ExemploExemplo
1.13: 1.13: converta
converta diretamente ooregistro
diretamente registro bits16
de 16de (1000101001101110)
bits 2
para hexadecimal.
(1000101001101110)2 para hexadecimal.
Solução:Solução:
Agrupando os bitsosem
Agrupando bitsgrupos de quatro,
em grupos temos:
de quatro, temos:
 
 10001010 { {  = ( 8A6E )16
{ { 01101110
 8 A 6 E 2

Exemplo 1.14: demonstre


Exemplo a mesma
1.14: demonstre conversão
a mesma do Exemplo
conversão 1.13
do Exemplo 1.13 através da
conversão por parcelas decimais.
através da conversão por parcelas decimais.
Solução:Solução:
ObserveObserve
que que
(1000101001101110 )2 =
(1000101001101110) =
(1 2
*
15
+0*214 +0*213 +0*212 +1*211 +0*2102+1*29 +0*28 +0*27 +1*26 +1*25 +0*24 +1*23 +1*22 +1*21 +0*20 )10
(1 * 215 + 0 * 214 + 0 * 213 + 0 * 212 + 1 * 211 + 0 * 210 + 1 * 29 + 0 * 28 + 0 * 27
fatorando + 1cada grupo de quatro bits, em potências de 16 = 2 ,
* 26 + 1 * 25 + 0 * 24 + 1 * 23 + 1 * 22 + 1 * 21 + 0 * 20)
4

10
conforme segue:
*2 ( 2 ) bits,
2 fatorando 4 cada 3grupo
*2 +0*2 +1de
1 quatro
*2 +0*2 ( 2 ) *2 em
+1*2potências 20 ( 2de 161444
) +1 =3 +1
24*2, 2conforme 20 ( 2segue:
)
3 2 1 0
= 11444
3
*2 +0*2 +0
2444
1
3
0
+11444 2
*2 +0
2444 3
0 4 3
+ 01444 2
+1*21 +0*3
2444
4
*2 +1*21 +0*3
2444
4

8 10 6 14

= 8* (16 ) +A* (16 ) +6* (16 ) +E* (16 ) = ( 8A6E )16


3 2 1 0

Nas conversões diretas entre as bases binária e hexadecimal não


há perda de dígitos significativos (não há arredondamentos).
Solução: t=10

( F)16 que
Observe = (1111)2
34
(1000101001101110 )2 =
CAPÍTULO
pg. 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 35
((1A1.B
*
) = (1010 0001 . 1011)
15 16* 14
2 +0 2 +0 2 +0 2 +1 2 +0 2
pg. 35
*
13
*
12
*
112
*
10
+1*29 +0*28 +0*27 +1*26 +1*25 +0*24 +1*23 +1*22 +1*21 +0*20 )10

fatorando
= (1*2 +0*2 +0cada
3
*2 +0*2grupo
)( 2 ) + de
2
1*2 quatro
(1
+0*2 em
+0*2 +1*2bits, )( 2 )potências de 16 = 2 ,
0 4
3
3 2 1 0 4
2 4

    


conforme8 segue: 10
1 0
= (
+1*02*32+0

1444
3
+12*2 +1
2
1 *2 +0
1
*2 +0*2 +0*2

2444
0 *24
0 3
24*23 +
3 2 +11444 ( ))( ) (
1*2*22+1
+0
3
+1
2444
1*2 +1
2
*2 +0*2
0 *2 4+0*2
1 2
3 2 +

0
32
01444
4
2 1
*2 +1*2 +1*2 +0*2
0 4
24443 2 +11444
1
3 2
( )
1
*2 +1*2 +1*2 +0*2
24443 2
0 4 )( ) ( ) ( )
0

8 6 10 14 6 14

Pg.
= 8*36
(16 ) +A* (16 ) +6* (16 ) +E* (16 ) = (8A6E )16
3 2 1 0

Nas conversões diretas entre as bases binária e hexadecimal


Capítulo
Capítulo não
1 –1Sistemas
– Sistemas

de Numeração
de Numeração e Erros
e Erros Nu
Nas conversões diretas entre as bases binária e hexadecimal não
perda de dígitos significativos (não há arredondamentos).
há perda de dígitos significativos (não há arredondamentos).
1.61.6Representação
RepresentaçãoDigital
DigitaldedeNúmeros
Números

1.6 REPRESENTAÇÃO
Conforme
Conforme vimosnanaseção
vimos seção1.1,
1.1,nos
nosDIGITAL DE NÚMEROS
sistemascomputacionais,
sistemas computacionais,
representamos
representamos umum número
número nana forma
forma dede notação
notação em em ponto
ponto flutuante,
flutuante, dede
maneira
maneira
Conforme
a racionalizar
a racionalizar
vimos na
o armazenamento
o armazenamento
seção 1.1, nos
digital,
digital,
sistemas
pois,
pois, sese
computacionais,
utilizássemos
utilizássemos
um
representamos
armazenamento
um
em
número
ponto
na
fixo
forma
(ou
de
vírgula
notação
fixa),
em
seria
ponto flutuante, de
necessário
um armazenamento em ponto fixo (ou vírgula fixa), seria necessário
maneira a racionalizar o armazenamento digital, pois, se utilizássemos um
umumnúmero
númerodedeposições
posições(dígitos)
(dígitos)nonomínimo
mínimoigual igualà àvariação
variação dos
armazenamento em ponto fixo (ou vírgula fixa), seria necessáriodos
um número
limitesdos
limites dos expoentes.
expoentes.
de posições (dígitos) no mínimo igual à variação dos limites dos expoentes.
PorPor exemplo,
exemplo, para
para
Por exemplo, obter
obter aa
para representação
representação
obter dede
a representação umauma decalculadora
calculadora
uma calculadora
científi
científi caca comum,
científica
comum, com
comum,
com menor
menor positivo
compositivo
menor positivo
mp mp
= 1.0
mp= 1.0 = 1.0
* 10
* 10 e maior
−99−99 *
epositivo
10 positivo
e maior –99
maior positivo
MPMP= = MP = 9.999999999
9.999999999
9.999999999 * 10
10+99
+99+99 , *seriam, seriam necessárias:
necessárias:
* 10 , seriam necessárias:

−99 −99
a)a)
9999posições
posições
a) 99 posiçõesparaapara
para aparte
parte fracionária,
a parte entre
fracionária,
fracionária, entre 1.0
entre
1.0 1.0
* 10 e e1,
* 10 * 10 –991,
e 1, pois
pois 1.0 *

1099−99
= 0.000
pois 1.0 * 10 = 0.000.....00001... 00001
0.000.....00001
14 4244 tem 99
tem dígitos
99 depois
dígitos do
depois
3 tem 99 dígitos depois do
14
4244
3 pontodo (vírgula).
99 99
ponto
ponto (vírgula).
b) (vírgula).
100 posições para a parte inteira, entre 1 e 9.99999999 * 10+99,
+99+99
b)b)
100100 posições
posições para
para a parte
a parte
pois 9.99999999
9.99999999 inteira,
inteira,
10
**10
99
++99 entre
entre 1 e1 e9.99999999
9.99999999
==9999999999000.....0000
9999999999000 ... 0000* 10
tem , , dígitos.
* 10 100
   
pois
pois 9.99999999
9.99999999 +99+99
= 9999999999000.....0000
* 10 = 9999999999000.....0000
* 10 1444424444
1444424444 100
3 tem
3 tem 100 100
dígitos.
dígitos.
c) Mais uma posição para o sinal 100100
(definido por s), totalizando 200
c)c) Maisuma
Mais posições
umaposição
posição display
no para desinal
parao osinal uma hipotética
(defi
(defi nidopor
nido calculadora
por científica “de
s),s),totalizando
totalizando
ponto fixo”, conforme
posiçõesnonodisplay
200posições
200 segue:
displaydedeuma umahipotética
hipotéticacalculadora
calculadora
científi
científi caca“de
“deponto
pontofixo”,
fixo”,conforme
conformesegue:
segue:
s
ss
100 posições para a 99 posições para a
100
100 posições
posições parainteira
parte
para 9999 posições para
parte
posições para aa
fracionária
a parte
a parte inteira
inteira parte
parte fracionária
fracionária
Normalmente
Normalmente
Por
Por isso,
isso, essas
essas representações
representações dede ponto
ponto fixo
fixo ficaram
ficaram limitadas
limitadas apresentam
apresentam
1010 dígitos
dígitos
àsàscalculadoras
calculadoraspara
paraoperações
operaçõesbásicas.
básicas.
decimais
36 CÁLCULO NUMÉRICO COMPUTACIONAL

Por isso, essas representações de ponto fixo ficaram limitadas às


calculadoras para operações básicas.
Por outro lado, uma representação em ponto flutuante (ou vírgula
flutuante), como a das calculadoras científicas comuns, funciona com pouco
mais de 10 dígitos e com as posições reservadas ao expoente e aos sinais.
Então, uma representação em ponto flutuante é aquela em que o
ponto se desloca entre os dígitos significativos da mantissa, segundo certo
padrão de normalização para a sua localização, se antes ou depois do primeiro
dígito significativo, conforme vimos na seção 1.1.

Normalmente apresentam 10 dígitos decimais na tela e mais alguns dígitos internos extras, também
 chamados dígitos de “guarda”, usados para ampliar a faixa de abrangência das operações aritméticas.

Exemplo 1.15: represente os números em notação científica ou ponto


flutuante e sua forma fatorada:

Solução:
a) (+0.0003501)10 = +3.501 * 10–4
= +(3 * 100 + 5 * 10–1 + 0 * 10–2 + 1 * 10–3) * 10–4
b) (+101.011)2 = (+1.01011)2 * 22
= +(1 * 20 + 0 * 2–1 + 1 * 2–2 + 0 * 2–3+ 1 * 2–4 + 1 * 2–5) * 22

Na próxima seção, vamos exemplificar a representação digital de números em


computadores, mostrando os padrões clássicos como registrado na literatura
pertinente, a exemplo de Patterson e Hennessy (2007).

1.6.1 Padrão 16 bits original


A representação clássica da variável de 16 bits, utilizada em computa-
dores com arquitetura de 16 bits, não é mais utilizada, mas a detalhamos
aqui por motivos didáticos e históricos.
Em um sistema de representação em ponto flutuante e base binária
(b = 2), com t = 10 dígitos binários (bits) na mantissa e expoentes
limitados entre I=–15 e S=+15, (15)10 = (1111)2, simbolicamente temos:
F(b, t, I, S) = F(2, 10, –15, +15)10.
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 37

Já para a representação esquemática de dígitos significativos binários,


1.6.1bit é alocado em um registro, conforme células representadas a seguir:
cada
1.6.1 Capítulo 1 – Sistemas de Numeração e Erros Numéricos
s1 d1 d2 d3 d4 d5 d6 d7 d8 d9 d10 s2 e1 e2 e3 e4
s1 d1 d2 d3 d4 d5 d6 d7 d8 Capítulo
d9 1 – Sistemas
d10 s2Numeração
de e1 ee2ErroseNuméricos
3 e4
    
    
f exp
f exp
t = número de dígitos significativos da mantissa f
mero s1= sinal do número (da mantissa f f)
s2 de dígitos
= sinal do1.35
Ex.
Ex.
significativos
expoente
1.35
da mantissa
f = mantissa com t dígitos significativos
nal do expexpoente
= expoente s2 = sinal do expoente
Unidade 110 = (0000 0000 0000 0001) 2 = (0001)16
expoentePor convenção,Unidade
exptemos:
= expoente 110 = (0000 0000 0000 0001) 2 = (0001)16
+ Maior positivo +3276710 = (0111 1111 1111 1111) 2 = (7FFF)16
nvenção, + Maior positivo +3276710 = (0111 1111 1111 1111) 2 = (7FFF)16
Se s1 = temos:
0 ⇒ número Por convenção, positivo 110 + temos:
32767 = (1000 0000 0000 0000) = (8000)
110 + 327671010 = (1000 0000 0000 0000)22 = (8000)1616
0⇒ número positivo
Se s1 = 1 ⇒ número ⇒ número positivo
Se s1 = 0 negativo
1⇒ s2 número Se
negativo
Grafico s = 1 ⇒ número negativo
6.12
⇒ idem Grafico 6.121
s2 ⇒ idem
dem E, no registro total, temos 16 bits:
registro1 bit total,
para otemos E, no16
sinal dosregistro
bits:
dígitos total, temos 16 bits:(mantissa), s
significativos 1
ara 10 o sinal dos 1 bit
dígitos para o sinal
significativos dos dígitos
(mantissa),significativos
s (mantissa), s1
bits para armazenar os dígitos significativos
10 bits para armazenar os dígitos significativos da mantissa, f 1 da mantissa, f

para armazenar
1 bit para o sinal 1os
bitdígitos
do
paraexpoente, significativos
o sinal dosexpoente, dasmantissa, f
2 2
ara 4obitssinal do oexpoente,
para 4 bits parado
módulo s2o módulo
expoente, do exp expoente, exp
paraNessa o módulo do expoente,
representação, os dígitos exp significativos são armazenados
Nessa representação, os dígitos significativos são armazenados no
representação,
padrão os dígitoscom
de normalização significativos
d1 ≠ 0 com são armazenados
posicionado à direita do ponto. do ponto. Um
padrão de normalização d1 ≠ 0 posicionado à direita
mnormalização
número v armazenado
númerocom vd1armazenado 0 posicionado
≠ nesse registro
nessepoderia à direitapoderia
registro dointerpretado
ser ponto. por: por:
ser interpretado
v armazenado nesse registro v = (−1)poderia s1
(0. f ) βser 2± expinterpretado por:
± exp
v = (−1) (0. f ) β 2
s1

ou
ou ou
v = (−1) s1 (0 . d1d 2 d3d 4 d5 d 6 d 7 d8 d9 d10 ) β 2± exp
v = (−1) s1 (0 . d1d 2 d3d 4 d5 d 6 d 7 d8 d9 d10 ) β 2± exp
Exemplo 1.16: vamos
Exemplo representar
1.16: vamos representar − (101.011 )2 na variável
–(101.011) na variávelde de
1616 bits estabelecida
− (101.011)2 na variável de 16
2
1.16:estabelecida
bits vamosanteriormente.
representar
anteriormente.
lecida anteriormente.
Primeiramente, precisamos normalizar a posição do ponto
Primeiramente,
8.2.1 precisamos normalizar a posição do ponto (vírgula),
mente,
vírgula), precisamos
conforme normalizar
padrão adotado a posição para 16dobits:
ponto
conforme 0 16 bits: –(101.011)2 = –(0.1010110000)2 * 2
8.2.1 padrão adotado para +3
C(2,1) (t(2,1) )0 + C(2,2) ( t ) = 2
−conforme
(101.011)2padrão
=
(com 1oadotado
C(2,1) (t(2,1) )para
− ( 0.1010110000
significativo 0
)+ C* d2(2,2)116à(t(2,2)
+ 3 bits:
(2,2)
(com )10 = 21º
direita do significativo
ponto). Logo, dsinal 1
à s1 = 1, mantissa
C(2,1)+(3t(2,1) ) 1 + C(2,2) (t(2,2) ) 1 = 0
1 2
=
direita
2
− ( do ponto). Logo,
0.1010110000 )2C(2,1) (sinal
* 2 (com
t(2,1) ) +s1C=(2,2)1º significativo
1,(tmantissa
(2,2) ) = 0
ff = (1010110000
d 1
à )2 ,
C(2,1) (t(2,1) )2 + C(2,2) (t(2,2) )2 = 2 / 3
ponto). Logo,o sinal
convertendo expoente
C
s1 = 1,(tparamantissa
2 binário: ff = 2exp
(2,1) (2,1) )3 + C(2,2) (t(2,2) )3 = 2 / 3
(1010110000
= + ( 3)10 = )2 , + ( 0011)2 ,
C (t ) + C ( t ) = 0
t ( 3))310de + (bits:
0011)2 ,
do osinalexpoente
s2 = 0,para 
binário: =
com temos C então (t )3 +o Cregistro (+ ==0 16
(2,1) (2,1) (2,2) (2,2)
exp
 (2,1) (2,1) (2,2) (2,2)
bits estabelecida anteriormente.
Primeiramente, precisamos normalizar a posição do ponto
38 CÁLCULO NUMÉRICO COMPUTACIONAL
(vírgula), conforme padrão adotado para 16 bits:
− (101.011)2 = − ( 0.1010110000 )2 * 2+3 (com 1º significativo d1 à
acional
direita do ponto).
f = (1010110000) Logo,osinal
, convertendo s1 = 1,
expoente mantissa
para = =(1010110000
binário:ffexp )2 ,2,
+(3)10 = +(0011)
2
acional com convertendo o expoente
sinal s2 = 0, temos então opara binário:
registro exp =
de 16 bits: + ( 3)10 = + ( 0011)2 ,
com sinal s2 = 0, temos então o registro de 16 bits:

A
1 seguir,
1 apresentaremos
0 1 0 1 os 1limites
0 da0 representação
0 0 0 de números
0 0 Reais
1 1
A seguir,
em pontoapresentaremos os limites
flutuante no padrão daapresentado.
16 bits representação de números Reais
em pontoapresentaremos
A seguir, flutuante no os limites16
padrão dabits apresentado.
representação de números reais em ponto
flutuante no padrão 16 bits apresentado.

1.6.1.1 Menor Positivo Representável (mp)


1.6.1.1
Menor Positivo
1.6.1.1 MenorRepresentável (mp)
positivo representável (mp)
0 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1
0 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1
mp = + ( 0.1)2 * 2 = ( 2 * 2) −15=)10(2=
−15
( 2 −16(0.0000152587890625)
−1
)10 = −15
(0.0000152587890625)10 −16

mp ==
mp + ( 0.12 )*22* 2−15
+(0.1) –15
==(2–1 2* −21–15
* 210 (
–16
= )102= = ) (
(0.0000152587890625)
10
10 10 )10

1.6.1.2
Maior Positivo
1.6.1.2 MaiorRepresentável (MP)
positivo representável (MP)
1.6.1.2 Maior Positivo Representável (MP)
0 1 ( +0.0003501
1 1 )101 = +13.5011*10−4 1 1 1 1 0 1 1 1 1
a)
( 0.1111111111)22**22 (= =2(2 + +222 ++22 ++ ... ... ++ 22 ) * *22) == (32736)
0 1 1 1 1 = + 13 *1010 + 51*10 −1 1+ 0 *10
1 −2 +1 1 *100−3 *101−4 1 1 1
MP == ++(0.1111111111)
MP 1515 −1–1
(−2–2 −–3
3 −10
–10 15
15
)
( 32736 )1010 ≅ 2115* 215 ( )
( +101.011)2 =)2 (*+21.01011
MP = + (b)0.1111111111 15
= 2 )2+* 22 + 2 + ... + 2
−1 −2 −
(
3 − 10
* 2 = ( 32736 ) ≅ 1 * 2
15
) 15
( )
(5 )2,10, +15 ):
10
Nareta
Na retareal,
Real,temos
temos
= +(1 *a2aseguinte
0
seguinte 2−2 + 0 * 2−3 + 1* 2para
*representação
+ 0 * 2−1 + 1representação −4
+ 1 *FF
2−(2, * 10, −15, +15):
22 –15,
Na reta Real, temos a seguinte representação para
Pg. 38 F ( 2,10, −15, +15 ):
mites de
−MP
MP −mp mp
mp 0 mp MP MP
entação
mites de MP mp 0 mp MP
números
entação
MP mp 0 mp MP
Pg. 39
ivos são
números 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1
métricos
ivos são Có
s limites
métricos ȱȱ›Ž’¨˜ȱŽȱ˜ŸŽ›•˜ ȱȱȱȱȱȱȱȱȱȱȱȱȱ›Ž’¨˜ȱŽȱž—Ž›•˜ ȱȱȱȱȱȱȱȱȱȱ›Ž’¨˜ȱŽȱ˜ŸŽ›•˜ ȱ
exp. mínimo I
entados.
ȱȱ›Ž’¨˜ȱŽȱ˜ŸŽ›•˜ ȱȱȱȱȱȱȱȱȱȱȱȱȱ›Ž’¨˜ȱŽȱž—Ž›•˜ ȱȱȱȱȱȱȱȱȱȱ›Ž’¨˜ȱŽȱ˜ŸŽ›•˜ ȱ
s limites Pg.ȱȱ›Ž’¨˜ȱŽȱ˜ŸŽ›•˜ ȱȱȱȱȱȱȱȱȱȱȱȱȱ›Ž’¨˜ȱŽȱž—Ž›•˜ ȱȱȱȱȱȱȱȱȱȱ›Ž’¨˜ȱŽȱ˜ŸŽ›•˜ ȱ
45
entados. s d1 d2 d3 d4 d5 d6 d7 d8 d9 d10 e1 e2 e3 e4 e5
 a) Região
Os limites de dos underfl
de representação ow: são
números negativos ∈ℝ � / −aos
{xsimétricos mplimites mp} , que
< xdos<positivos. Có

a) compreende
Regiãot dígitos
de significativos
underfl ow:da ∈
mantissa
x ℝ
�f −
os números, em módulo, abaixo do mínimo
{ / mp < x <e ,
polarizado
mp } que Có

0 1 1 0 1 0 0 0 0 0 0 1 0 0 1 0
a) Região de underflow:
compreende
representável ose,números,
caso ℝ / em
{x ∈ surjam, – mp < xarredondados
módulo,
são < mp}, que do
abaixo compreende
mínimo
para o
s Có
osmais
números, em
representável módulo, abaixo do mínimo representável e, caso
t = 10 dígitose,
próximo caso−mp,
entre surjam,
significativos +são
mp .arredondados
da0,mantissa para
e polarizado o Có
surjam, são arredondados−para o mais próximo entre –mp, 0, +mp.
mais próximo
b) Região de overfl entreow: { mp,
{xx∈∈� �// +
0,
ℝ mp
xx < .MP ee xx >> MP
< −−MP MP}}, que
b) compreende
Região de overfl ow: {{xx∈
os números, ∈
emℝ / xx << −−MP
�/módulo,
� ee xx >>do
MPacima MP
MP }}, que
máximo
compreende ose números,
Pg. 46 armazenável não são em módulo, acima
armazenados do máximo
(normalmente
Colocar * com parentes quando envolver produto de números.
armazenável
travam
Se forem letras nãoousar e não
computador
* com são
comarmazenados
parênteses alguma mensagem(normalmente
de erro).
Capítulo 1 – Sistemas de Numeração e Erros Numéricos

CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 39


7: se uma operação aritmética gerasse o
001527 )10 , como poderíamos
b) Região
Varios pontos (xi,yi), de
ao longo
representá-lo
overflow: {x ficaram
do livro,
em
∈ ℝ / com
x < –MP e xgrudada
a virgula > MP}, noque compreende
1º índice i
5)10? os números,
(xi,...). Se possível, em módulo,
dar um pequeno acima local
espaçamento, do máximo armazenável
em vermelho: (xi , yi). e não são
Pg. 23 armazenados (normalmente travam o computador com alguma
mensagem de erro).
or não temX representação binária exata, nós o
β = ( a1a2 ak . ak +1 ak + n ) β
..... .....

mos pelo valorExemplo discreto se mais próximo, no caso


X β = (a1 . a2 1.17:
at )β β E uma operação aritmética gerasse o número (0.00001527)10,
890625 )10 , que
......

como é opoderíamos
próprio mp. representá-lo em F(2, 10, –15, +15)10?
(a1a2 ...... at )β
Solução:
ão do Zero Como
Pg. 24
esse valor não tem representação binária exata, nós o representa-
ríamos
X β = (a1 . apelo valor
2 at )β β
E discreto mais próximo, no caso (0.0000152587890625)10,
......

que éé obtida
tação do zero o próprio mp. com mantissa nula
sempre
30
nte representável (I).
X = (101.1 ) = 1 2 +Representação
0 2 + 1 2 + 1 2 = ( 5.5do
) zero
2 1 0 −1
1.6.1.3 2
* * * *
10

vamos representar
36 o zero em Fdo(2,10,–15,+15).
A representação zero é obtida sempre com mantissa nula e o menor
expoente
(15)10 = (1111)representável
2 (I).
0 0 038 0 0 0 0 1 1 1 1 1
Exemplo 1.18: vamos representar o zero em F(2, 10, –15, +15).
exp mínimo I
MP = + ( 0.1111111111)2 * 215 = ( 2−1 + 2−2 + 2−3 + ... + 2−10 ) * 215 = ( 32736 )10 ≅ 215
Solução:
embrar que39esse número é o único escrito na forma
a", pois sua mantissa
0 0 0é toda
0 zero.
0 0 0 0 0 0 0 1 1 1 1 1


expoente mínimo I
45

s
xemplos, veremos Devemos
do que lembrard que
d 2 poderia
esse número
d3 d 4 acontecer
d6 d7emd8uma
é o único escrito na forma “não
d9 d10 e1 e2 e3 e4 e5
1 5
normalizada”,
ção se o expoente do zeropois

sua diferente
fosse mantissa é toda
do zero. 
limite
  
t dígitos significativos da mantissa f e polarizado
Nos próximos exemplos, veremos o que poderia acontecer em uma operação de
s d 2 sed3o expoente
d 4 d5 dodzero dfosse
d8diferente
d9 d10 d11 inferior
e1 e2 I. e3 e4 e5
adição 6 7 do limite
 
t = 10 dígitos significativos de f , depois do ponto e polarizado
Exemplo
simule a operação
Pg. 71 de 1.19:
adição: simule a operação
0.000135 + 0.0 emde adição: 0.000135 + 0.0 em
F(10, x x 2
x 3
x n

0 ) , considerando
e x ≅ 1 + 4,+a–10,
1! 2! 3!
+ +10),
+ ... + considerando
representação do zeroa com
representação do zero com expoente
0 n!
nulo (0.0000 10 ). *
(0.0000 * 100 ) .
74
Solução:
h h2 h3 hn
f ( x0 + h ) + f ( x0−−3 h ) = f ( x0 ) + f ′( x0 ) + f ′′( x0 ) + f ′′′( x0 ) + ... + f ( n ) ( x0 ) + ...
0.1350 * 10 1! 2! 3! n!
206
h h2 h3 hn
+0.0000 * 10 0 + f ( x0 ) − f ′( x0 ) + f ′′( x0 ) − f ′′′( x0 ) − ... + f ( x0 ) + ...
(n)

1! 2! 3! n!
e adição/subtração
40 de dois termos é efetuada com CÁLCULO NUMÉRICO COMPUTACIONAL
eoentes
adição/subtração
iguais ao dodemaior dois termos
termo é(alinhamento
efetuada com
ração
oentes deiguais
adição/subtração
ao do maior determo
dois termos é efetuada com
(alinhamento
Toda
ois expoentes iguais operação de adição/subtração
ao do maior termo (alinhamento de dois termos é efetuada com os seus
0
dois*expoentes
0.000135 10 iguais ao do maior valor (alinhamento de expoentes):
ntes): 0
0.000135
+0.0000 * 10 * 100
0
+0.0000 0.000135
* 10
0 * 10
−3
≅ 0.0001 * 10 = 0
0.1000 0 * 10
+0.0000 * 10
≅ 0.0001 * 10 = 0
0.1000 * 10−3
−3
plo, ocorre ≅ 0.0001 * 10 =
arredondamento
0
0.1000com * 10 perda dos 2
osplo, ocorre arredondamento
excedentes, 3 e 5, que não cabem com perda dentrodos dos2
eantissa.
exemplo,
os excedentes, Nesse
ocorre exemplo,
arredondamento
3 e 5, quecientíficas, ocorre
não cabem arredondamento
com
dentroperda
dos doscom 2 perda dos 2 dígitos
Em calculadoras esses dígitos
significativos excedentes, 3 e 5, que não cabem dentro dos t = 4 registros da
ificativos
antissa.ficam
mente Emexcedentes,
calculadoras
guardados 3 como
ecientíficas,
5, que nãoesses
dígitos cabem dentro dos
dígitos
internos
mantissa. Em calculadoras científicas, essesde
dígitos excedentes normalmente
s da mantissa.
mente ficam Em calculadoras
ficamguardados
guardados comodígitos
como científicas,
dígitos esses
internos
internos de dedígitos
“guarda”.
normalmente ficam guardados como dígitos internos de
mule esta Exemplo
operação 1.20: simule esta
de adição: 0.000135operação
+ 0.0de adição: 0.000135 + 0.0 em
F(10, 4, –10, de +10), considerando a representação do zero com expoente
imule esta operação
+10 ) , considerando adição:
a representação 0.000135 do +zero
0.0
mínimo esta*I(0.0000 10de).adição: 0.000135
–10
10 ) ,simule
1.20:
( operação
) do zero + 0.0
*
+ínimo considerando
I 0.0000 10 −10 a representação
.
( ) , considerando
, 4, −10, +I 100.0000
mínimo Solução: * 10 )
−10
. a representação do zero
oente mínimo I 0.0000 (
0.1350 * 10−3
)
* 10
−10
.

0.1350**10
+0.0000 10−−103
−3
+0.0000 *0.1350
10−10 * 10
e expoentes pelo maior
+0.0000
e alinhamento de* termo:
10 −10
expoentes pelo maior valor:
de expoentes pelo maior termo:
0.1350 * 10−3
mento de expoentes pelo maior termo:
10−−33
0.1350**10
+0.0000 −3
+0.0000 *0.1350
10−−33 * 10
= 0.1350 * 10
+0.0000 * 10−3
= 0.1350 * 10−3
1.20, temos um=resultado
0.1350 * 10exato,
−3 sem arredonda-
ozero
1.20,representado
temos um resultado
pelo menor exato, sem arredonda-
expoente possívelexato, sem arredondamentos,
No Exemplo 1.20, temos um resultado
xemplo
zero 1.20, temos
representado
te o elemento um
pelo resultado
damenor exato,
expoente sem arredonda-
possível
ou seja,neutro
o zero operação
representado de adição
pelo menor em
expoente possível retrata correta-
seja,
te o o zero
elemento representado
neutro
menteoutro
a, não altera o elemento da
número. pelo menor
operação de expoente
adição empossível
neutro da operação de adição em meio digital, ou seja,
etamente o elemento
ja, não altera
não outro
altera neutro
número.
outro número. da operação de adição em
, ou seja, não altera outro número.
A seguir, apresentaremos
remos a quantificação a quantificação
dos elementos dos elementos representáveis em notação
representáveis
aremos de ponto flutuante.
a quantificação dos elementos representáveis
nto flutuante.
presentaremos
nto flutuante. a quantificação dos elementos representáveis
o de ponto flutuante.
Capítulo
Capítulo 11 –– Sistemas
Sistemas de
de Numeraçã
Numeraçã

CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 41


1.6.1.4
1.6.1.4 Quantidade
Quantidade Máxima
Máxima de
de Elementos
Elementos Representáveis
Representáveis
1.6.1.4 Quantidade
Podemos máxima de elementos representáveis
Podemos notar
notar que
que aa distribuição
distribuição dede números
números representáveis
representáveis
em ponto
em ponto flutuante
flutuante é padronizada por meio de tipos
tipos de
de variáveis
Podemos notaréque
padronizada
a distribuiçãopor meio derepresentáveis
de números variáveis
em ponto
ee ééflutuante
sempre discreta
sempreé discreta (somente
(somente
padronizada alguns
por meioalguns valores
de tiposvalores são representáveis),
são representáveis),
de variáveis e é sempre discreta
enquanto
(somenteaa distribuição
enquanto alguns valoresde
distribuição valores
desão da
da reta
reta Real
representáveis),
valores éé contínua
enquanto
Real (qualquer
a distribuição
contínua (qualquerde
valores
valor da reta Real
valor éé representável).
representável).é contínua (qualquer valor é representável).

Exemplo
Exemplo 1.21:
1.21:represente
represente os os
dois primeiros
dois números
primeiros positivos
números do sistema
positivos
Exemplo
F(2, 1.21:
10, –15, +15)represente
de 16 bits. os dois primeiros números positivos
do
do sistema F(2, 10,
sistema F(2, 10, –15, +15) de
–15, +15) de 16
16 bits.
bits.
Solução:
Solução:
Solução:
11º 1ºpositivo
o
positivo
positivo- --
00 11 00 00 00 00 00 00 00 00 00 11 11 11 11 11

++ (( 0.1000000000
0.1000000000 )) 2 22 = =
+ (0.1000000000) = (( 0.0000152587890625
−15
−15
(0.0000152587890625)
* * –15
2 22 *0.0000152587890625 )10
10 )10

22º
o positivo -
2º positivo
positivo - -
00 11 00 00 00 00 00 00 00 00 11 11 11 11 11 11
+ (( 0.1000000001
0.1000000001))22***2–15
22−−15
15
= (( 0.0000152885913848876953125
0.0000152885913848876953125 ))10
++ (0.1000000001) 2
==(0.0000152885913848876953125) 10 10

Observe
Observeque
Observe que existe
que existe uma
existe uma distância
distância
um intervalo vazioentre
entre esses
esses
entre dois
dois
esses números
números
dois números
consecutivos
consecutivos discretos,
discretos, enquanto
enquanto na nareta reta Real
consecutivos discretos, enquanto na reta Real podem existir infinitos Real podem
podem existir infinitos
existir infinitos
números
números
números entredois
entre
entre doisnúmeros
dois númerosquaisquer.
números quaisquer. Além
quaisquer. Além disso,
Além disso,aaadistribuição
disso, distribuiçãode
distribuição
números representáveis de F(b, t, I, S) não é uniforme em ℝ, e o número
de
de números
números representáveis
representáveis de de F β ,, tt ,, II ,, SS )) não
F (( β não éé uniforme
uniforme em em ℝ,ℝ, ee
máximo de elementos representáveis é uma combinação das possibilidades
o
o número
número máximo
máximo de de elementos
elementos representáveis é uma combinação
de preenchimento de cada registro.representáveis é uma combinação
das
das possibilidades
possibilidades de
de preenchimento
Para cada expoente, preenchimento
existe uma quantidade de
de cadacadafixa registro.
registro.
de números represen-
táveisPara cada expoente,
na mantissa
Para cada expoente, existe auma
NM, conforme
existe uma
combinaçãoquantidade
quantidade fixa dede números
de possibilidades
fixa números
de seus
representáveis
representáveis na
na mantissa
dígitos, por exemplo,mantissaem umNM, conforme
NM,sistema
conforme genéricoaa combinação
de base βde
combinação possibilidades
, com
de normalização
possibilidades
de d ≠ 0 depois do ponto (vírgula):
de seus
seus
1 dígitos,
dígitos, porpor exemplo,
exemplo, em em um um sistema
sistema genérico genérico de de base
base ββ,, com
com
normalização
normalização od1 ≠ 0 depois do ponto (vírgula):
≠ 0 depois
a) no 1d1registro, não do pontoter
podemos (vírgula):
o número 0 (normalização com
d1 ≠ 0), logo d1 pode assumir valores a partir de 1, totalizando
a) no
no –1º
a) (b 1º1)registro,
registro, não
não podemos
podemos ter
ter o o número
número 00 (normalização
(normalização
possibilidades; e
como d1 ≠ 0 ), logo d1 pode assumir valores aa partir
com d 1 ≠ 0 ), logo d 1 pode assumir valores partir de
de 1,
1,
b) do 2 registro
totalizando ( até
β − o
1) valor da posição
possibilidades; t,
e podemos ter representados
totalizando ( β − 1) possibilidades; e
qualquer um dos β valores da base, para cada um dos t – 1 registros
restantes, ou seja, bt – 1 possibilidades; logo, NM = (b – 1) bt – 1.
42 CÁLCULO NUMÉRICO COMPUTACIONAL

Para cada mantissa, existe uma quantidade fixa de expoentes represen-


táveis NE, incluindo S, I e o expoente nulo:

NE = S – I + 1
Dessa forma, o número total de elementos positivos representáveis NP
em um sistema de numeração genérico F(b, t, I, S) é dado por:

NP(b, t, I, S) = NM * NE = (S – I +1)(b – 1) bt–1


Ao dobrar esse número para incluir os negativos e mais um representável
para o zero, temos o número total de elementos representáveis NR:

NR(b, t, I, S) = 2 (S – I +1)(b – 1) bt–1 +1

Exemplo 1.22: em F(2, 3, –1, +2), temos as seguintes representações possíveis:

a) mantissas possíveis: b) expoentes possíveis:


0.100 2–1
0.101 20
0.110 2+1
0.111 2+2
A combinação de quatro possibilidades de mantissas para cada expoente
da base (NM = (b – 1) bt–1 = 4para b = 2 e t = 3)com quatro possibilidades
Capítulo 1 – Sistemas de Nume
de expoentes (NE = S – I + 1 = 4 para S = 2 e I = –1) definem o número total
de positivos representáveis (NP(b, t, I, S) = NM * NE = 16).
Do mesmo modo, incluimos as representações dos negativos e do zero,
Exemploesse
dobrando 1.23:
número ( 2, 10, −15,
em Fe somando 15 ) NR
1; +logo, (binário
= 33. de 16 bits totais),
temos: NP = 2 * ( 2 − 1) * (15 − ( −15 ) + 1) * 2 = 31745 elementos
10 −1

Exemplo 1.23: emincluindo


representáveis, F(2, 10, –15, os+15) 16 bits totais),
(binárioosdenegativos
positivos, temos:
e o zero.
NP = 2 * (2 – 1) * (15 – (–15) + 1) * 210 – 1 = 31745 elementos representáveis,
incluindo os positivos, os negativos e o zero.
Exemplo 1.24: em F (10, 10, −99, +99 ) (calculadora científica
comum 1.24:
Exemplo de 10em
decimais,
F(10, 10, com normalização
–99, +99) 1 ≠0
antes
(calculadoradcientífica do ponto
comum de 10
(vírgula)),
decimais, comtemos:
normalização d1 ≠ 0 antes do ponto (vírgula)), temos:

s1 d1 d2 d3 d4 d5 d6 d7 d8 d9 d10 s2 e1 e2

Como d1 deve ser sempre diferente de zero, essa 1ª posição da


mantissa tem nove possibilidades em vez de dez (d está entre 1
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 43

Como d1 deve ser sempre diferente de zero, essa 1a posição da mantissa tem
nove possibilidades em vez de dez (d1 está entre 1 e 9), enquanto as demais
nove posições têm dez possibilidades de dígitos diferentes (di está entre
0 e 9), logo, o número de mantissas diferentes é:

NM = (9) * 10 * 10 * 10 * 10 * 10 * 10 * 10 * 10 * 10 = 9 * 109
NM = (b – 1) bt–1 = (10 – 1) * 1010 – 1

Já o número de expoentes depende somente dos seus limites:

NE = S + I + 1 = +99 – (–99) +1

Logo, NR = 2 (b – 1) bt–1 (S – I + 1) + 1 = 3.582 * 1012 elementos.

A representação binária usada no padrão de 16 bits evoluiu junta-


mente com os computadores e atingiu uma forma mais otimizada de
representação, incluindo a polarização dos expoentes, mais flexibilidade
na normalização da mantissa para permitir maiores faixas de represen-
tação, mais precisão e exatidão, entre outras.
Dessa evolução, em 1985 surgiu o padrão IEEE 754 (Instituto de
Engenheiros Eletricistas e Eletrônicos), que é amplamente utilizado para
padronização de variáveis (PATTERSON; HENNESSY, 2007). Em 2008,
o padrão IEEE 754 referenciou oficialmente também o padrão otimizado
de 16 bits, denominando-o de binary16.

 Confira os conceitos de precisão e exatidão na seção Complementando... ao final deste capítulo.

1.6.2 Otimizações da variável de 16 bits, segundo


o padrão IEEE 754
Otimizações para a variável de 16 bits foram adotadas, como binary16,
com o objetivo de ampliar a sua representação, reduzindo as regiões de
underflow e overflow.

A seguir, apresentaremos o detalhamento dessas otimizações.


44
1.6.2.1 Polarização CÁLCULO NUMÉRICO COMPUTACIONAL

O padrão IEEE 754 adotou a Polarização, ou Excesso, para


1.6.2.1 Polarização
armazenamento dos expoentes, que é um valor acrescentado (em
Excesso)O padrão IEEE
a todos os754 adotou a polarização,
expoentes de um sistema ou excesso, para armaze-
de representação
namento dos expoentes, que é um valor acrescentado (em excesso) a todos os
em ponto flutuante, com o objetivo de tornar todos os expoentes
expoentes de um sistema de representação em ponto flutuante, com o objetivo
positivos, suprimindo
de tornar todos o sinal
os expoentes + e ampliando
positivos, suprimindooovalor
sinal +do expoente
e ampliando
superior
o valor do(S). Naturalmente,
expoente superior (S).todas as operações
Naturalmente, todas aritméticas devem
as operações aritmé-
considerar
ticas devemessa polarização
considerar introduzida
essa polarização e, no final,
introduzida e, nosubtraí-la para
final, subtraí-la
para imprimir
imprimir os resultados.
os resultados.

Exemplo 1.25: nana


variável de bits
de 16 F(2,F10,2,–15,
Exemplo 1.25: variável 16 bits ( 10, 15),
− 15,podemos usar uma
15 ) , podemos
polarização p = +(15)10 = +(1111)2
usar uma polarização p = + (15 )10 = + (1111)2

Observe
Observequeque
os expoentes da variável
os expoentes de 16 bits
da variável deocupam 5 bits (destacados
16 bits ocupam 5 bits
no(destacados
registro em cinza), uma posição para o sinal do expoente e
no registro em cinza), uma posição para o sinal quatro para
o seu módulo. Logo, os expoentes polarizados devem continuar cabendo
do expoente e quatro para o seu módulo. Logo, os expoentes
nos cinco registros binários disponíveis:
polarizados devem continuar cabendo nos cinco registros
I +binários
p = –(15)disponíveis:
10
+ p = –(1111)2 + p = –(1111)2 + (1111)2 = (00000)2

− (15+)10p += p+(1111)
S +Ip+=p+(15)
= = − (1111+)p2 += p+(1111)
= − (1111+ )(1111)
2
+ (1111= )(11110)
2
=( 00000 )2
10 2 2 2 2

S+p=+ (15 )10 + p =+ (1111)2 + p =+ (1111)2 + (1111)52 bits


= (111110)2
Como I e S polarizados têm agora o mesmo sinal (+), podemos5suprimir
bits s2
e usar todos os cinco registros binários reservados ao expoente. Assim, os
limites dos expoentes polarizados assumem os novos valores:

I = (00000)2 = (0)10
S = (11110)2 = (30)10

Podemos aproveitar melhor os 5 bits reservados ao expoente ampliando


o maior valor possível do expoente superior e adotando um novo S como
(11111)2 = (31)10. Note que pudemos incluir esse expoente extra porque
o expoente zero original (não polarizado) usava duas representações,
–0 e +0, e uma delas é desnecessária. Agora, o expoente zero polarizado é
(15)10 = (1111)2

38
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 45
MP = + ( 0.1111111111)2 * 2 = 2 + 2 + 2 + ... + 2 15
( −1 −2 −3 −10
) * 2 = ( 32736 )10 ≅ 2
15 15

39
representado apenas pelo seu valor positivo, +0, que é representado sem a
posição
Pg. 23 do sinal +.
0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1
Na forma polarizada dessa
X β = (a1a2 … ak . ak +1 … ak + n ) β variável de 16 bits, qualquer número
 v represen-
tado poderá ter esta forma: expoente mínimo I
45
Pg. 24
Xsβ = (ad11 . a2 …
d 2 at )βd3β d 4
E
d5 d6 d7 d8 d9 d10 e1 e2 e3 e4 e5
Varios pontos (xi,yi), ao longo do livro, ficaram com a virgula grudada no 1º índice i
X = 309.57
(xi,...). ( = 3dar

Se possível, *10um
2
0 *101 +
+ pequeno 9espaçamento,
*10 + 5 *10 local
) 0 −1
+ 7em
*10 vermelho:
−2 
(xi , yi). 
10 dígitos significativos
tt dígitos significativos da
damantissa
mantissaf ee polarizado
polarizado
Pg. 38
Pg. 23
s , 0, + mp
− mp
d d d d d d d d9 d10 d11 e1 e2 e3 e4 e5
2 3
X β = ( a1as2 éaúnico,
Pg. 45
Agora e4 v = 5(–1)s6 (0.f)72 2e – 815.
k . ak +1 ak + n ) β
s d1 d2
.....

d3 d4
 d5 d6
.....

d7 d8 d9 d
e1 e2
e3 e4 
e5
10
t = 10 dígitos significativos de f , depois do ponto e polarizado
Exemplo
X β 71
Pg. . a2 1.26:
at )β βno
= (a1 E registro binário,
......
a seguir, com exponte
  polarizado
 com

p x= +(15)
x 10x ,
2 qual
x 3 téd í
o gitos
n significativos
decimal
x da mantissa
representado? f e polarizado
e ≅ 1 + + + + ... +
(a1a2 ...... at 1!
)β 2! 3! n!
0 1 1 0 1 0 0 0 0 0 0 1 0 0 1 0
74 s24  
Pg. 
t = 10 d ígitos significativos da mantissa
t = 10 dígitos significativos da2 mantissa 3 e polarizado
ne polarizado
Xf β x= (+a1h. a+2 f atx)β−βhE = f ( x ) + f ′( x ) h + f ′′( x ) h + f ′′′( x ) h + ... + f ( n ) ( x ) h + ...
( ) ( ) ......

1! 2! 3! n!
0 0 0 0 0 0 0

Solução:
30 s d 2 d3 d4 d5 d6h d7 hd28 d9 h3d10 d11 e1 hn e2 e3 e4 e5
206
+ f s( x0 ) − f ′( xe0 )– 15+ f ′′( x0 ) − f ′′′( x0 ) − ... + f ( n ) ( x0 ) + ...
s 
Temos que v =2 (–1)1 (0.f)0 2 2 1!−1 2! 3! n!
 
X = (101.1)2 = 1* 2 + 0 * 2 + 1 * 2 + 1* 2 = ( 5.5)10
ts==100,dífgitos significativose de
= 110100000 , depois do=ponto
e =f (10010) (18) e polarizado
2 10
36
Pg. 46
v = (–1) 0
(0.110100000) 2
2 18 – 15
= +(110.1) 2
= (6.5)10
(15)010 = (1111)
1 2 1 0 1 0 0 0 0 0 0 1 0 0 1 0
s 1.6.2.2 Não armazenamento do primeiro bit 
 não nulo
da 
38 t = 10 mantissa
dígitos significativos de f , depois do ponto e polarizado
MP
Outra otimização (adotada pelo padrão ) IEEE 754 foi o não armazena-
= + ( 0.1111111111)2 * 215 = 2−1 + 2−2 + 2−3 + ... + 2−10 * 215 = ( 32736 )10 ≅ 215
Pg. 71
f ′( x0 = 0)
mento
39
e =1
0
do=primeiro bit da mantissa d1 ≠ 0, que é sempre unitário. Nessa
Pg. 143
otimização,
0 0 0
usamos 0
uma
0 0
representação
0 0 0
implícita
0 0
do1 primeiro
1 1
bit1 unitário
1
e
liberamos uma  r1posição
d1 ⋮ b1  
binária para armazenamento novo bitsignifi-
de um
t2
cativo. Logo, ot2 número r2 d 2 total de dígitos binários
b
⋮ 2  2 L ← L
significativos
expoente
2 − L
mínimo
1 é ampliado
I
45 r1
para 1 + t, a mantissa
 t3 r3f representada
d3 passa⋮ a ⋮conter
 os bits de d2 à dt + 1 e a
s  
posição d1 normalizada
d 2  d3 d 4 ⋱ dodponto (vírgula)
5⋱ d6⋱ d7 d8 passa
d⋮9 ad10ser
 à e1 direta
e2 e3 dee4 d1e5= 1, ou seja:
 ⋱
 ⋱ ⋱ ⋮  
v = (–1)s (1.f)2t 2deígitos
– 15
significativos da mantissa f
 e polarizado
 tn −1 rn −1 d n −1 ⋮ bn −1 
s d2 d3  d 4 d5 d6 d7 d8tn d9 rn d10⋮ bnd11 e1 e2 e3 e4 e5
 
t = 10 dígitos significativos de f , depois do ponto e polarizado
Pg. 71 t = 10 dígitos significativos de f, depois do ponto e polarizado
x x x x 2 3 n
ex ≅ 1 + + + + ... +
1! 2! 3! n!

74
46 CÁLCULO NUMÉRICO COMPUTACIONAL

Pg. 45
Observe que d1 = 1 está implícito antes do ponto e não aparece nesse
s d
registro. d2 d3 d4 d5 d6 d7 d8 d9 d10 e1 e2 e3 e4 e5
1

 

Exemplo 1.28: no t díregistro
gitos significativos
binário,daa seguir,
mantissa com
f e polarizado
polarização e com primeiro
bit
Pg. implícito,
46 qual é o decimal representado?
0 1 1 0 1 0 0 0 0 0 0 1 0 0 1 0
s  
t = 10 dígitos significativos de f , depois do ponto e polarizado
t = 10 dígitos significativos de f, depois do ponto e polarizado
Pg. 71
Solução:
f ′( x0 = 0) = e0 = 1
Temos que v = (–1)s (1.f)2 2e – 15
254 s = 0, f = 110100000 e e = (10010)2 = (18)10 Capítulo 1 – Sistemas de Numeração
P′( x ) v = (–1)0
(1.110100000)2
* 218 – 15 = +(1110.1) = (14.5)
2 10
n 0

Observe que, com os mesmos bits representados no Exemplo 1.26, podemos


334
agora Capítulo 1 – Sistemas de Numeração
0 armazenar
1 1 1 números
1 1 com
1 mais1 dígitos
1 1 significativos
1 1 1 totais.
1 1 0
M = f (4) (0.4) = 234.375
MP = + o(1.1111111111
Logo, valor do MP)2 * foi
230−15ampliado + 2−2 + 2−3 + ... + 2−10 ) * 215 = ( 65504 )10 ≅ ( 216 )
= (20 + 2−1 para:

0
(MP
449 1
era 1 1
(32736) 1(conforme
1 1 1 1
vimos na 1 seção 1 1
1.6.1.2) 1 1 1 0
10
MP b()1.1111111111
∂D=(=a+,(1.1111111111)
MP m
= 2 ( a1 + a222 / Tk2 ) − Vk  ( −1) ( a1 + a2 / Tk2 ) 1 = 0
( 65504 )1010≅≅((2
) **223030−15–−151= =(2(20 +0 +2−21 –1+ +22−2–2++22−3–3++−......2 ++ 22–10−10))**221515 == (65504) 21616))
∂a1 
k =1    
1.6.2.3
(MP
(MP era Flexibilidade
(32736) na
conformeNormalização vimos nada Mantissa
seção 1.6.1.2)
(a, b) eram (32736)10 2(conforme vimos 2na seção 1.6.1.2)
10
∂D
= 2 ( a1 + a2 / Tk ) − Vk  ( −1) ( a1 + a2 / Tk )  (1/ T ) = 0
−1 −2 2

∂a2 
k =1 
  k

1.6.2.3
O padrão Flexibilidade
IEEE 754na normalização
também adotou daamantissa
flexibilidade na
1.6.2.3 Flexibilidade
normalização
479 na Normalização
da mantissa para da Mantissa
ampliar a faixa de abrangência
O padrão IEEE 754 também adotou a flexibilidade na normalização
de
da números
mantissa para pequenos, ampliarcomo a faixapara o primeiro de
de abrangência número
númerospositivo mp,
pequenos,
Para
O m = 10 : IEEE 754 também adotou a flexibilidade na
padrão
como para oaprimeiro
reduzindo região de númerounderfl ow. mp, reduzindo a região de underflow.
positivo
normalização (2 m ) da mantissa para 20!
ampliar a faixa de abrangência
Como vimos
Max f vimos
Como f (1) = (−1)20 o mp
anteriormente,
( x) = anteriormente,
(20)
o+era
mp = 1.1601
era *10
12
x =1 (1 + 1)(20 1)
de números pequenos, como para o primeiro número positivo mp,
reduzindo
0 1 0a região 0 0de underfl
0 0 ow. 0 0 0 0 1 1 1 1 1
503
mp =mp Como vimos anteriormente,
= + (0.1000000000)
+(0.1000000000)
−15–16
2 *=2(2 =
* 2–15 = o(0.0000152587890625)
)(2
−16
mp era
) = (0.0000152587890625) 10
Excluir um parêntesis no final ).
2 10

0Com1 a otimização,
a otimização, que que reposicionou 0 a normalização
do d1≠ 0do d1 1≠ 01
0 0 0 0 0 0 0 0 1 1 1
Com reposicionou a normalização colocando
colocando
o ponto
mp =à sua o ponto
direita, à sua
deixando
+ (0.1000000000) direita,
2 * 2d1 ==
−15 deixando
1(2implícito,
−16
o novo 1 implícito,
d1 =valor de mp 10
) = (0.0000152587890625) o
seria:
novo valor de mp seria:
Com a otimização, que reposicionou a normalização do d1≠ 0
0 0
colocando 0 o 0ponto0 à0 sua0 direita,
0 0 deixando
0 0 d01 = 10 implícito,
0 0 o0 206
novo valor de mp seria:
mp = + (1.0000000000) * 20−15 = (2−15 ) , que seria maior ainda do Isso ocorre
2 10
Pg. 39
mp = + (0.1000000000) 2 * 2 =
(2 ) = (0.0000152587890625)10
0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1
Com a otimização, que reposicionou a normalização  do
d1 ≠0 Códi

CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS exp. mínimo I 47


colocando o ponto à sua direita, deixando d1 = 1 implícito, o
Pg. 45
novo
s d1valor
d 2 de
d3 mpdseria:
4 d5 d6 d7 d8 d9 d10 e1 e2 e3 e4 e5
Códi
  
0 0 0 t 0dígitos
0 significativos
0 0 da 0 mantissa
0 0f 0 0 e0 polarizado
0 0 0 Códi

0 1 1 0 1 0 0 0 0 0 0 1 0 0 1 0
mpmp
= +(1.0000000000)
=
+ (1.0000000000) * 20 – 15 =0 −(2
15–15) ,−que
= 15 seria maior ainda do que o anterior.
)10 , que seria maior aindado Isso oc
s 2 2 * 2(2
10
   Códi
manter
queEssa t = 10 dígitos significativos da mantissa
o anterior. e polarizado Códi
normalização da mantissa foi flexibilizada especifica- continu
mente para o caso de representação de números com o menor expoente dade n
Essa normalização da mantissa foi flexibilizada especificamente
polarizado possível, ou seja, para e = (00000)2, a normalização com represe
para
dPg. 1oimplícito
= 46 caso defoirepresentação
eliminada. Nessede números
caso, a mantissacom o menor
f pode assumirexpoente
qualquer ção ent
Colocar
1 * com parentes quando envolver produto de números.
polarizado
valor, mas o possível,
valor mínimo ou seja,
do
Se forem letras não usar * com parênteses
para
expoente e=, (00000)
não ,
polarizado,
2
a normalização
deve ser e com
= –14 10
, - meno
com “e
de1MP
o 1novo
= mp se torna:
= implícito
(1.1111111111 foi
)2 *eliminada.
230 −15
= (2 + 2 Nesse
0 −1
+ 2 + 2caso,
−2 −3
+ ...a+mantissa
−10 15
pode
2 ) * 2 = ( f65504 (2 )
)10 ≅assumir
16
0<e<
qualquer
Pg. 47 valor, mas o valor mínimo do expoente, não polarizado, deve v = (–1)s
0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0
ser e = −sem , e o novo mp
1410 normalização se torna:
(mantissa sem restrições)  para e = 00000
usando
2 - maior
Pg. 50
Computacional 0 0 −1240 0 0 0 0 0 0 0 0 1 0 0 0 0 0 “e = 0”,
) 2 (1* 2 + 1* 2−1 + 0 * 2−2 + 0 * 2−3 + 1* 2−4 + 0 * 2−5 + ...)10
v = ( +Logo,
v = (–1)
Pg. 51sem normalização (mantissa sem restrições)
⇒ para e = 000002
sem no
( 0.11001100...
mp )2 > (0.5)10 2 * 2–14 = (2–24)10 = 5.960464478 * 10–8
= +(0.0000000001)
(mp
Pg. 58 eraLogo,
(2–16)10 = 1.52587890625 * 10–5, conforme vimos na seção 1.6.1.1)
s
mp =Se e = 0 e f ≠ 0 , então* 2v−14
+ (0.0000000001) = = 1) −224−16382
( −(2 )10 (=0.5.960464478
f )2 * 10
−8
2
Pg. 62
Isso ocorre para −manter uma continuidade na representação
−5 entre:
Colocar(*mp era (2 )10 = 1.52587890625 * 10 , conforme vimos em 1.6.1.1)
16

s (1 – 15)
(1 10Menor
 ) ≅ (1.1001100110
10
usando
) 2−4 ”, na faixa 0 < e < 31, dado por v = (–1)  2 (1.0000000000)2
representável com *“e = 1
a normalização; e2
Pg. 64
1.6.2.4
MaiorIdentificação
representável comda Região
“e = 0 ”, dado de
por vOverflow
VA = 2 −4 * (1.1001100110) 2 = (0.099975585)10
= (–1)s 2(–14)(0.1111111111)2 sem normalização.

Pg. 70
=Por
( n +1último,
f ( x) 1.6.2.4 − 1 uma convenção
) * xIdentificação adicional
da região foi adotada no padrão
de overflow
IEEE 754 para identificar a região de overflow: a todo número
Por último, uma convenção adicional foi adotada no padrão IEEE 754
gerado dentro dessa região, atribuímos expoente igual ao seu limite
para identificar a região de overflow: a todo número gerado dentro dessa
superior:
região, S = ( 31)expoente
atribuímos 10
. igual ao seu limite superior: S = (31) . 10
OOnovo
novopadrão
padrão IEEE
IEEE 754754 otimizado
otimizado parapara 16(2
16 bits bits (2 bytes)
bytes) ficou ficou
nesta
forma final: final:
nesta forma

1 5 10
s e f
msb lsb msb lsb

Em que:

s 0 ⇒ v positivo e =
= s 1 ⇒ v negativo
e = expoente polarizado
48 CÁLCULO NUMÉRICO COMPUTACIONAL

Em que:
s = 0 ⇒ v positivo e s = 1 ⇒ v negativo
e = expoente polarizado
f = mantissa fracionária, a partir do segundo bit significativo (o primeiro bit
significativo será sempre unitário e não armazenado neste registro)
polarização = (15)10 = (01111)2
msb = bit mais significativo
lsb = bit menos significativo, de cada e e f

Um número v armazenado nesse registro é interpretado conforme o


valor de seu expoente polarizado e da seguinte forma:

Se 0 < e < 31, então v = (–1)s 2e–15 (1.f)2


Se e = 0 e f ≠ 0, então v = (–1)s 2–14 (0.f)2
Se e = 0 e f = 0, então v = (–1)s 2–14 (0.0)2 = zero
Se e = 31 = 25 – 1, então v pertence à região de overflow

Esse padrão binary16 com 16 bits praticamente não é mais utilizado,


pois atualmente temos custos de memória muito reduzidos e a arquitetura
comum nos computadores evoluiu para 64 bits, o que nos permite usar
variáveis de 64 bits com a mesma velocidade de acesso de variáveis de
32 ou 16 bits.

1.7 REPRESENTAÇÕES NUMÉRICAS, SEGUNDO


O PADRÃO IEEE 754
O padrão IEEE 754 de 1985 é amplamente utilizado em linguagens
de programação comerciais, e o apresentaremos na sua forma esquemática
para representação na forma de variáveis reais.
O padrão IEEE 754 de 1985 é amplamente utilizado em
linguagens de programação comerciais e o apresentaremos na sua
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 49
forma esquemática para representação na forma de variáveis reais.

1.7.1 deVariável
1.7.1 Variável 32 Bits – de 32 bits
Binary32, binary32
Tipo–Float , tipo float
do C, Precisão do C,
Simples
precisão simples
No padrão de 4 bytes (1 byte = 8 bits ) ou 32 bits (precisão de 7 a
No padrão de 4 bytes (1 byte = 8 bits) ou 32 bits (precisão de 7 a 8
8 dígitos decimais significativos equivalentes), podemos representar
dígitos decimais significativos equivalentes), podemos representar um
um número
número Real vReal v por
por um um registro
registro de 32 bits:
de 32 bits:
1 8 23
s e f
msb lsb msb lsb

que
que éé análogo
análogoao padrãobinary16,
aopadrão Binary16, apenas
apenascomcomfaixa faixade valores maismais
de valores am-
pliada, como
ampliada, comopolarização
polarização(127)
(127)
10
 = (01111111)
= (01111111)2
 , em , emque um
que númerov
umnúmero
armazenado em binary32 é interpretado conforme o valor de seu expoente
10 2
v armazenado em binary32 é interpretado conforme o valor de seu
polarizado e.
expoente polarizado e.
Dessa forma:
Computacional Dessa forma:
Se 0 < e < 255, então v = (–1)s 2e–127 (1.fs )2;e–127
Se 0 < e < 255, então v = (–1) 2 (1.f )2;
Se e = 0 e f ≠ 0, então v = (–1)s 2–126 (0.f )2;
Se e = 0Se e f ≠ 0,
e fe==0,0 então v =então = (–1)
(–1)s v2–126 (0.f )e2;
(0.0 2)2 = zero;
s –126

Se e==280 – 1,
Se e = 255 e f então
= 0, então v = (–1)
v pertence 2 de
à região
s –126
)2 = zero; e
(0.0overflow.
A apresentação desses 8 registros binários em computadores digitais
Se e = 255 = 2 – 1, então v pertence à região de overflow.
normalmente é feita em bytes. Nesse padrão, temos 4 bytes, e
A apresentação desses registros binários em computadores digitais
cada byte é composto de 2 registros hexadecimais (8 bits para
normalmente é feita em bytes. Nesse padrão, temos 4 bytes, e cada byte é
cada byte).
composto de 2 registros hexadecimais (8 bits para cada byte).

Exemplo 1.28: defina o decimal armazenado em


Exemplo 1.28: defina o decimal armazenado em
0 0 0 0 0 0 0 1 1 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
s e epolarizado
polarizado t = dígitos
t = 10 10 dígitos de f,f, depois
significativosde
significativos depois do
doponto
ponto

Solução:
Solução:
Observe que que
Observe
s = 0 ⇒ v positivo
=s 0 ⇒ v positivo
e = (00000011)2 = 1 * 21 + 1 * 20 = 3110
e = ( 00000011)2 = 1 * 2 + 1 * 20 = 310
f = (10010000000000000000000) 2
= (10010000000000000000000
como e = 310,f logo 0 < e < 255, então v = (–1))s2 2e – 127 (1.f)2
( −1) 2e −127 (1. f )2
s
como e = 310 , logo 0 < e < 255 , então v =
Assim, o número v armazenado é:
50 CÁLCULO NUMÉRICO COMPUTACIONAL

Assim, o número v armazenado é:

v = (–1)0 23–127 (1.10010000000000000000000)2


v = (+) 2–124 (1 * 20 + 1 * 2–1 + 0 * 2–2 + 0 * 2–3 + 1 * 2–4 + 0 * 2–5 + ...)10
v = (+) 4.70197740328915 * 10–38 (1 + 0.5 + 0 + 0 + 0.0625 + 0 ...)10
v = +7.346839693 * 10–38

Exemplo 1.29: represente (0.1)10 na base binária no padrão IEEE de 32 bits.

Solução:
Para tal, temos duas formas de conversão possíveis.

Primeira forma de conversão: podemos converter (0.1)10 diretamente para


binário, conforme efetuamos no Exemplo 1.11:
(0.1)10 = (0.00011001100110011001100110011...)2
e adequar o resultado diretamente ao padrão 32 bits, obtendo s, e, f.

Primeiramente, normalizamos a mantissa, colocando o 1o dígito significativo


(mais significativo), unitário, antes do ponto (vírgula), na forma (1.f)2, para
obter o expoente não polarizado original (e–127), supondo que e esteja na
faixa: 0 < e < 255 em que v = (–1)s 2e – 127 (1.f)2:

Assim,
(0.10)10 = 2–4 (1.1001100110011001100110011001100110011...)2

O expoente original, –4, não polarizado, deve ser equivalente ao expoente


(e – 127) da fórmula v = (–1)s 2e – 127 (1.f)2, também não polarizado, logo:
(e – 127) = –4

Então, o expoente e polarizado é o expoente original –4 somado à polarização


+127:
e = –4 +127 = 123
terí
Então, o expoente e polarizado é o expoente original −4 somado que
à polarização +127: a re
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 51 form
e =−4 + 127 =123
pad
Como e = 123 está no intervalo 0 < e < 255 , então confirmamos ou
Como e a= representação
123 está no intervalo  0 < e < 255, então confirmamos a repre-
do número (0.1)10 pela formula prevista
sentação vdo números e −(0.1)
= ( −1) 2 127 pela
(1.10f ) fórmula prevista v = (–1)s 2e – 127 (1.f)2
2

Caso ePrecisamos ainda


estivesse fora da faixa 0 < edefi nir
< 255 s e f:que adequar a representação a outro formato do
, teríamos
 mesmo padrão IEEE 754, com e = 0 ou com e = 255.
a) o sinal de + (0.1)10 é positivo, logo s = 0 , então:
Precisamos ainda definir s e f:
( −1) 2(123−127) (1.10011001100110011001100 11001100...)2
0
+(0.1)10 =
a) o sinal de +(0.1)10 é positivo, logo s = 0, então:
b) a mantissa f, composta dos bits depois do 1º bit unitário, tem
+(0.1)10 = (–1)0 2(123 – 127) (1.1001100110011001100110011001100...)2
infinitos dígitos significativos (é uma dízima periódica). Por
isso,f,precisamos
b) a mantissa composta dos bits depois
limitá-la aos 23 do bitregistro
bits1odo unitário,padrão
tem
infinitosIEEE
dígitosdesignificativos
32 bits totais.(éEssa
umalimitação
dízima periódica). Por isso,
de registros segue
precisamos limitá-la aos 23 bits do registro padrão
os mesmos princípios do arredondamento decimal. IEEE de 32 bits
totais. Essa limitação
Logo, de registros
precisamos segue os amesmos
arredondar parcelaprincípios
do número do
arredondamento decimal. Logo, precisamos arredondar a parcela
binário a partir do 24º bit, depois do ponto (vírgula), e
do número binário a partir do 24o bit, depois do ponto (vírgula), e
gerar oerro
gerar o menor menor erro possível:
possível:
(−1)0 2(123−127) (1.10011001100110011001100 11001100...)
+(0.1)10 = 14243 2
arredondamento

Então, a parcela que temos de eliminar, (0.11001100...)2 * 2–23, deve ser ava-
liada segundo os critérios de arredondamento, ou seja, podemos aproximá-
la para (0.)2 * 2–23 ou para (1.)2 * 2–23. Como devemos escolher o valor
aproximado com menor erro e verificamos que (0.11001100...)2 > (0.5)10,
então fazemos o arredondamento (0.11001100...)2 ≅ (1.)2.

Observe que:
i) toda fração binária de mais de um bit significativo que comece por
1 é maior que (0.5)10 , e que comece por 0 é menor que (0.5)10 ; e
ii) se a fração binária for de um “único” bit significativo e “unitário”,
então a fração binária será equivalente a (0.5)10 e deve seguir o
critério do bit anterior “par ou ímpar”, conforme previsto no
processo de arredondamento (vide seção Complementando...).

Logo, pelos mesmos critérios de minimização de erros, o nosso número


fica arredondado para cima, somando 1 no seu último bit:
e deve seguir o critério do bit anterior “par ou ímpar”,
conforme
conforme previsto
previsto nono processo
processo de de arredondamento.
arredondamento.
Logo,
Logo, 52
pelos
pelos mesmos
mesmos critérios
critérios dede minimização
minimização de erros,
deCÁLCULO
erros, o nosso
NUMÉRICO
o nosso COMPUTACIONAL

número
número ficafica arredondado
arredondado para
para cima,
cima, somando
somando 1 no
1 no seuseu último
último bit:bit:
+1+1
0 (123−127)
+(0.1)≅10 (≅−1)
+(0.1) (−01) 2 −127) (1.10011001100110011001100)
2(123 (1.10011001100110011001100) 2
10 2
0 (123−127)
+(0.1)≅10 (≅−1)
+(0.1) (−01) 2 −127) (1.1001100110011001100110
2(123 (1.1001100110011001100110
1) 1) 2
10 2

Também
Também devemos
devemos converter
converter o valor
o valor dodo expoente
expoente e para
e para binário:
binário:
Também devemos converter o valor do expoente e para binário:
( e − 127) = −4 ⇒ e = (123) = (01111011) ( e deve ser completado
(e − 127) (e
= −–4127)
⇒ =e = ⇒ 10
–4(123)e == 2 (e deve ser
(123)10 = (01111011) (e completado
deve ser completado com
10(01111011) 2
2
com “zero(s)” à esquerda
“zero(s)”à àesquerda
com “zero(s)” esquerda para para
paraficar ficar
ficarcom
comcom
8 bits 8 bits
). ).
8 bits ).
EmEm resumo:
resumo:
Em resumo:
s =s0= 0
s = e0 =
=
= e (123
(123
= ) )10 ( 01111011
( 01111011
) )2
e = (123)10 10= (01111011)2 2
= (10011001100110011001101) 2
f (10011001100110011001101)
f f= =(10011001100110011001101) 2
2

0 0 1 1 1 1 0 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1
0 0 1 1 1 1 0 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1

ss s ee e ff f

Segunda forma de conversão: alternativamente, podemos converter +(0.1)10


diretamente para a fórmula do padrão 32 bits, supondo inicialmente que e
esteja na faixa 0 < e < 255:
+(0.1)10 = (–1)s 2e – 127 (1.f)2

Assim, temos uma equação com três incógnitas, s, e, f, sendo


s = 0, para números positivos; e e, f, incógnitas que precisamos definir, mas
e é um inteiro, então considerando o valor mínimo de f, ou seja, f = 0, para
poder estimar o valor de e, temos:
+(0.1)10 = (–1)0 2e – 127 (1.0)2

Nesse caso, determinamos um valor de e maior do que o verdadeiro, mas e


terá a parte inteira correta:
(0.1)10 = 2e – 127
e = (123.6781...)10

 f = 0 representa uma mantissa menor do que a verdadeira, pois 1 ≤ (1.f )2 < 2.


(0.1)10 = 2
e = (123.6781...)10
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 53
Logo, tomamos o menor inteiro e = (123)10 (“eliminamos” a sua
parteLogo,
fracionária).
tomamosVerifi camos
o menor que ae suposição
inteiro inicial para oa sua parte
= (123)10 (“eliminamos”
expoente e na faixa
fracionária). Verificamos que
0 < e < 255 é aválida, ou teríamos
suposição inicial paraque tentar e na faixa
o expoente
0 < e < o255
armazenar é válida,
nosso ou teríamos
número em outra quefórmula,
tentar armazenar
com e =o(0)nosso número em
10 ou
outra fórmula,
com e = (255) . com e = (0)10
ou com e = (255)10
.
10

Agora, determinamos
Agora, determinamosoo valorvalordede f, com
f, com os valores
os valores de s anteriormente:
de s e e obtidos e e
obtidos anteriormente:
+(0.1) = (–1)
(−1)20 2123−127(1.f)
0 123 – 127
+(0.1)
10 = 10 1. 2f ( )2
(1.f)(1.= (0.1)10 / 2 2
2 f ) 2 = (0.1)
123 –123
127−127
10

(1.f)(1.
2 2 = (1.6)
=f )(1.6) , em, que
10 10
em (1.f)
que 2 (1.
deve deve
f ) 2ser ser sempre
sempre um número
um número entre 1 e 2
entre 1 e 2
Por fiPor
m, convertendo
fim, convertendo 10 para
(1.6)
(1.6) 10
binário,
para binário,temos:
temos:

+(1.6)10 =
(1.10011001100110011001100 11001100...)
14243 2
Arredondamento

Com a parcela
Com aa parcela
ser arredondada ( 0.11001100...
a ser arredondada )2 > (0.5)
(0.11001100...) 2 10 , 10, aproximamos
> (0.5)
Com a para
parcela
aproximamos para eaa ser
(1.)2 (1.) e aarredondada
somamos
2somamos ( 0.11001100...
no último
no último bit: bit: )2 > (0.5)10 ,
aproximamos para (1.) 2 e a somamos no último +1 bit:
47
+(1.6)10 ≅ (1.10011001100110011001100) 2 +1
+(1.6)
+(1.6) ≅ 10 ≅ (1.10011001100110011001100)
(1.1001100110011001100110 1) 2
10 2
+(1.6)10 ≅ (1.1001100110011001100110 1) 2
Gerando os mesmos resultados do item (a) anterior:
Gerando os mesmos resultados da primeira forma de conversão:
Gerando
0 0 1os
1 mesmos
1 1 0 1 1 resultados
1 0 0 1 1 0 0do
1 1item
0 0 1(a)
1 anterior:
0 0 1 1 0 0 1 1 0 1
0 0 1 1 1 1 0 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1
s e f
ss ee ff
Observe que esse número binário armazenado foi arredondado
a cima,Observe
ou seja,que esse número
o número binário binário
exatoarmazenado foi arredondado
(dízima periódica) foi
para cima,
oximado paraou Observe
umseja, que
o superior
valor númeroao esse número
binário binário armazenado
exato (dízima
exato, conforme foi arredondado
periódica) foi
arredondamento para
cima, ou seja, o número binário exato (dízima periódica) foi aproximado
aproximado
fração para um valor
(0.11001100...) superior ao exato, conforme arredondamento
2 ≅ (1.) 2 , que alterou o último bit para cima
para um valor superior ao exato, conforme arredondamento da fração
da fração
stacado com sublinhado).
(0.11001100...)
(0.11001100...) 2≅ (1.) 2, ,que
≅(1.) quealterou
alterou o último
o último bit para
bit para cima cima
(destacado com
2 2
(destacadosublinhado).
com sublinhado).
Exemplo 1.30: converta os 32 bits do Exemplo 1.29 do padrão
EEEExemplo 1.30: converta
para o número decimalosequivalente.
32 bits do Exemplo 1.29 do padrão
IEEE para o número decimal equivalente.
Solução:
Solução: os 32 bits, podemos converter o registro para
nterpretando
54 CÁLCULO NUMÉRICO COMPUTACIONAL

Exemplo 1.30: converta os 32 bits do Exemplo 1.29 do padrão IEEE para o


número decimal equivalente.

Solução:
Interpretando os 32 bits, podemos converter o registro para decimal,
conforme segue:

s=0
e = (123)10 = (01111011)2
f = (10011001100110011001101)2

Logo, se 0 < e < 255, então:

v = (–1)0 2123 – 127 (1.10011001100110011001101)2


v = (+) 2–4 (1 * 20 + 1 * 2–1 + 0 + 0 + 1 * 2–4 + 1 * 2–5 + 0 + 0 + 1 * 2–8 + 1 * 2–9
+1 * 2–12 + 1 * 2–13 + 1 * 2–16 + 1 * 2–17 + 1 * 2–20 + 1 * 2–21 + 1 * 2–23 )2
v = 0.100000001490116 (com 16 decimais significativos).

Os dígitos sublinhados representam os arredondamentos gerados na


representação do número decimal original 0.1 exato para sua representação
em binária, no padrão IEEE de 32 bits.

Exemplo 1.31: calcule o erro de arredondamento cometido na conversão


do decimal 0.1 para a representação binária padrão IEEE de 32 bits do
Exemplo 1.29.

Solução:
O erro é sempre calculado por meio de uma comparação entre o valor
aproximado obtido VA e o seu valor exato VE (quando disponível). Nesse
caso, queremos o erro de:
VA = 0.100000001490116 (valor armazenado em binário, com erro de
arredondamento) e temos VE = 0.100000000000000 (valor exato, disponível
na representação decimal).
O Erro é sempre calculado por meio de uma comparação entre
pre calculadoVAoO =por meio
Erro
valor é sempre
de uma
aproximado
0.100000001490116 calculado
comparação
obtido por
(valorVA e meio
oentre
seu de
armazenado uma
valor comparação
emexato
binário, entre
(quando
VE com erro
ximado obtidode oarredondamento)
valor
VA e oaproximado
disponível). seuNesse
valorcaso,
exato
eobtido
VE (quando
VA
queremos
temos e o 0.100000000000000
VE =o
seu valor
erro de: exato VE (quando
(valor 55
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS
Nesse caso, VA queremos
disponível). o erro
Nesse de: caso, queremos
(valor armazenado o erro de:
em binário, com erro
exato, disponível na representação
= 0.100000001490116 decimal).
001490116 (valorVA =armazenado em binário,
0.100000001490116
de arredondamento) (valor
e temos comarmazenado
VEerro em binário, com
= 0.100000000000000 erro
(valor
Logo,
Logo,
amento) e exato,
temos
de arredondamento)
VE = 0.100000000000000
disponível e temos(valor
na representação = 0.100000000000000 (valor
VEdecimal).
Erro= | VA − VE | (Erro absoluto)
nível na representação
exato,
Erro
Logo, disponível
VA
= | Erro –decimal).
VE | (Erro na absoluto)
representação decimal).
=| 0.100000001490116 − 0.100000000000000 |
Logo,
Erro = | Erro
0.100000001490116
== 0.000000001490116
Erro | VA − VE | (Erro– 0.100000000000000
absoluto) |
| VA − VE | (Erro absoluto)Erro
Erro = | VA − VE | (Erro absoluto)
=| 0.100000001490116 − 0.100000000000000 |
Erro = | 0.000000001490116
Podemos
=| 0.100000001490116Erro apresentar
−Erro esse erro de forma relativa ou percentual:
= 0.000000001490116 − 0.100000000000000 |
=
0.100000000000000
| 0.100000001490116|
Podemos apresentar
= 0.000000001490116 esse erro de forma relativa ou percentual:
Erro = 0.000000001490116
Podemos apresentar esse erro de forma relativa ou percentual:
esentar esse erro
Podemos
de forma
apresentar
relativaesse
ou percentual:
erro de forma relativa ou percentual:
Erro Relativo

Erro Relativo %
Note que esse erro pode ser calculado de forma exata em uma
calculadora
Note que científica decimal.
esse erro pode ser calculado de forma exata em uma calculadora científica
Note que
decimal. esse erro pode ser calculado de forma exata em uma
e erro pode calculadora
ser
Notecalculado
que científica
essede erro
formapodeexata
decimal. ser em
calculado
uma de forma exata em uma
Exemplo
ntífica decimal. 1.32:
calculadora
Exemplo represente
1.32:científica o zero
decimal.
represente e oselimites
o zero da variável
os limites padrão IEEE
da variável de 32 bits.
padrão
IEEE de 32 bits.
Solução:
Exemplo 1.32: represente o zero e os limites da variável padrão
acional Solução:
2: representeIEEE
oExemplo
zero
dee32 os1.32:
limites
represente
da variável o zero
padrão
s =e0os limites da variável padrão
utacional
bits.
utacional
ts. IEEE de 32 bits. 
a) Representação
Solução:
a) Representação doZero:
do zero: e = 00000000
Solução: fs =
=
0
00000000000000000000000
=000 0 0 0 0 0 do
 s0Representação 
0 0 00e=
0 0Zero: =
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0s 00000000
a) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
  
esentação do Zero: a) e =Representação
00000000
0 0= 0( −
0 0 020 0 −126
0 −126 do Zero:  e = 000000000
0 0 0 0 0 0 f 0 =000000000000000000000000
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
zero
 f zero = (1)
−1) 2 (0.) (0.)
2

 zero= 00000000000000000000000 2
 f = 00000000000000000000000
zero== (–1) 2−126(0.)
(−1)020 –126 (0.)
2 2
49
 s s= =0 0
b) Representação do mp:

b) Representação
b) Representaçãodo mp:ese= =
domp: =00000000
000000000
 
b) Representação do mp: f e==00000000000000000000001
f =00000000
00000000000000000000001
 f = 00000000000000000000001
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
0 0 0−1) 0 00 0−126
0 (0.00000000000000000000001)
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
mp= == ((–1)
mp
mp (−1)02022–126
−126
(0.00000000000000000000001)
(0.00000000000000000000001) 2 (menor e e menor f)
2 2
−126
mp=
mp = ((+)2
−1)−–126
+()2
0
2(1 * 2(0.00000000000000000000001)
126 −23
)= −45
mp== (+ )2−126(1(1** 22−23))==1.4012985 10–45
mp –23 1.4012985 * 10
1.4012985** 10 −45 2
(menor e e menor f)
mp = −126
(+ )2 (1 * 2 ) = −23
1.4012985 * 10
−45 (menor e e menor f)
s = 0
c) Representação do= MP: es =
 s = 0 (menor e e menor f)
c) Representação do= =
MP: e 11111110
0= (254)
11111110 (254)
10

c) Representação do=   10
MP: f e= 11111111111111111111111
= (254)10
11111110
 f = 11111111111111111111111

0 0 0 0 00 0 0 0 0 00 00 00 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 01 0 0 0 1
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
0 −126
mp = (−mp
56 1)mp 1)1)0 20 2−126
2= = (−(−
(0.00000000000000000000001)
(0.00000000000000000000001)
−126 CÁLCULO NUMÉRICO
(0.00000000000000000000001)
2 2
COMPUTACIONAL
2
mp = )2−126
(+mp 2−23 )= −23 −45 −45
mp= ((1+(+ ) )=
*)2
126
1.4012985 * 10
= )2−126(1(1* 2
*2
−23 1.4012985
=1.4012985* 10
* 10
−45
(menor e e(menor
menor ef)e menor f)
(menor e e menor f)
 s = 0 s s==00
c) Representação do=

MP: do 
c)
c)Representação
c) Representação
Representação do=MP:
e=
do MP:=
11111110
MP: = (254)10 (254)
ee 11111110
=
11111110 (254)
10
 f = 11111111111111111111111 10
f = 11111111111111111111111
  f = 11111111111111111111111
0 1 1 1 01 1 1 1 10 11 11 11 01 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
0 254 −127 0 254 −127
MP = (−MP
1) 2= (−(−1)1)(1.11111111111111111111111)
20 254 (1.11111111111111111111111)
254 −127
MP == (–1)
MP 0 2 (1.11111111111111111111111) 2
2 – 127 (1.11111111111111111111111) 2
2(maior e e maior f)

)10 = ( 3.4028235 * 10 ) ** 10 3838


2
MP = 2 MP
127
MP
MP(1.99999988127(1.99999988
===222127
127
(1.99999988
(1.99999988)
10
( 3.4028235
)1010) ===(3.4028235
( 3.4028235
38
10 ))10)
10 *10
38

10
(maior e e(maior
maior f)
(maiore ee emaior
maiorf)f)
Exemplo 1.33: defina
Exemplo
Exemplo
Exemplo 1.33:
1.33: asdefina
regiões
defina
1.33:defina asasas de underflow
regiões
regiões de de
regiões e overflow
deunderflow
underflow eeoverflow
e overflow
underflow da variável IEEE
overflow
da variável
de
da 32IEEE
bits. deIEEE
davariável
variável 32 bits.
IEEE dede3232bits.
bits.
Solução:Solução:
Solução:
Solução:
região de underflow:
região
região
região
de
de
{ x ∈ /{{x−{x1.4012985
deunderflow:
underflow:
underflow:
∈∈ / /−−
x∈ ℝ / – 1.4012985
* 10
1.4012985
−45
1.4012985 x10
<* 10
**10
<−–45
45< x < 1.4012985
−1.4012985
45

<<x x<<1.4012985
* 10
−45
1.4012985 } **10
10
* 10–45 }}
−45
−45
}
região de overflow:
região
região
regiãode
de { x ∈ /{{xx{x<x∈∈∈−ℝ3.4028235
deoverflow:
overflow:
overflow: ///xxx<<<−–3.4028235
− * 10
3.4028235
38
3.4028235 e *x*10
>
10+383.4028235
*10
3838
eeexx> * 10 } ** 10
>>+3.4028235
++
3.4028235
38
3.4028235 10
* 1038}} }
38
38

Exemplo 1.34: apresente


Exemplo
Exemplo
Exemplo 1.34:
1.34: na forma
1.34:apresente
apresente
apresente na
na hexadecimal
naforma
forma a representação
hexadecimal
formahexadecimal a arepresentação
hexadecimal arepresentaçãobinária
representação
obtida
bináriabinária
obtida no
noExemplo
Exemplo 1.29:
1.29: 1.29:
bináriaobtida
obtida no
noExemplo
Exemplo 1.29:
0 0 1 1 01 01 10 1 1 11 00 10 11 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 01 1 1 0 1
0 0 1 1 1 1 0 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1

Solução:
Representando os 32 bits em grupos de 4 bits, temos:

0011 1101 1100 1100 1100 1100 1100 1101

Desse modo, efetuamos a conversão direta de cada grupo de 4 bits para um


hexadecimal:

0011 1101 1100 1100 1100 1100 1100 1101


3 D C C C C C D

8 bytes (16 hexadecimais) equivalentes: 3D CC CC CD

Esta representação hexadecimal pode ser apresentada na forma de 4 bytes invertidos como CD CC CC 3D
 (no caso de compiladores Pascal).
0011 1101 1100 1100 1100 1100 1100 1101 pode ser
apresen
3 D C C C C C D
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 57 da na fo
de 4 byt
8 bytes (16 hexadecimais) equivalentes: 3D CC CC CD
como CD
caso de
1.7.2 Variável de 64 bits – binary64, tipo double Pascal).
64C,
1.7.2 Variável dedo Bits – Binary64,
precisão Tipo Double do C, Precisão Dupla
dupla
Nesse
Nesse padrão
padrão 8 bytes
8 bytes oubits
ou 64 bits (precisão
64(precisão de 16 ade
17 16 a 17decimais
dígitos dígitos
significativos equivalentes),
decimais signifi podemos representar
cativos equivalentes), um número
podemos Real v um
representar por
um registro
número bits:um registro de 64 bits:
de v64por
Real

1 11 52
s e f
msb lsb msb lsb

Emque
Em que a polarização
a polarização p = (1023)
p = (1023) = (011111111111)
 = (011111111111)
10 . 2.
10 2
Um númerov varmazenado
Umnúmero armazenado nonoregistro
registro bitsbits
64 64 é interpretado da
é interpretado
seguinte forma:
da seguinte forma:
( −1) 2e−1023 (1. f )2
s
Se 0então
Se 0 < e < 2047, < e < 2047 , então
v = (–1) 2 v = (1.f)
s e – 1023
2 s
Se e = 0 e f ≠ 0, então v = ( −1) 2−1022 ( 0. f )2
Se e = 0 e f ≠ 0, então v = (–1) 2 s –1022
(0.f) 2
Se e = 0 e f = 0, então ( −1=) zero
2−1022 ( 0.0 )2 =
s
v = zero
Se e = 0 e f = 0, então v = (–1) 2 s –1022
2
(0.0)
11
Se e11 = 2047 = 2 – 1, então v pertence à região de overflow
Computacional Se e = 2047 = 2  – 1, então v pertence à região de overflow

1.7.3 Variável de 128 bits – binary128, precisão


128 Bits – Binary128, Precisão Quádrupla
1.7.3 Variável dequádrupla

Nopadrão
No padrão 16 bytes,
16 bytes, ou bits
ou 128 bits (precisão
128(precisão de 34 ade
35 34 a 35decimais
dígitos dígitos
significativos equivalentes),equivalentes),
decimais significativos podemos representar um número
podemos Real v um
representar por
um registro de 128 bits:
número Real v por um registro de 128 bits:

1 15 112
s e f
msb lsb msb lsb

Em que a polarização p = (16383)10 = (01111111111111)2.


Em que a polarização p = (16383)10 = (01111111111111)2.
Um número v armazenado no registro 128 bits é interpretado da
Um número
seguinte forma: v armazenado no registro 128 bits é interpretado
da seguinte forma:
Se 0 < e < 32767 , então v = ( −1) 2e−16383 (1. f )2
s

Se e = 0 e f ≠ 0, então v = ( −1) 2 16382 ( 0. f )


58 CÁLCULO NUMÉRICO COMPUTACIONAL

Se 0 < e < 32767, então v = (–1)s 2e – 16383 (1.f)2


Se e = 0 e f ≠ 0, então v = (–1)s 2– 16382 (0.f)2
Se e = 0 e f = 0, então v = (–1)s 2– 16382 (0.0)2 = zero
Se e = 32767 = 215 – 1, então v pertence à região de overflow

1.8 REPRESENTAÇÃO DE VARIÁVEIS INTEIRAS:


PADRÃO ANSI C
Os formatos de representação de variáveis do tipo inteiras podem seguir
diversos padrões e tamanhos. Vamos apresentar um dos tipos para mostrar
como a representação de inteiros também pode gerar erros numéricos.

Short int
1.8.1
Short int são tipos inteiros limitados à faixa entre –32768 e +32767,
correspondendo ao armazenamento como 2 bytes (16 bits), na qual os intei-
ros “negativos” são armazenados em forma de complemento de dois.

Exemplo 1.35: defina os limites da variável short int.

Solução:

Zero 010 = (0000 0000 0000 0000)2 = (0000)16


Maior positivo +3276710 = (0111 1111 1111 1111)2 = (7FFF)16
Menor negativo –3276810 = –(1000 0000 0000 0000)2

 Observe que o 1o bit “zero”, indica um número positivo.

Observe que esse menor negativo não será armazenado com o sinal
“–” e sim por complemento de dois. Todos os inteiros negativos short int
são representados por complemento de dois, que é o seu complemento de
um (diferença de cada dígito do número negativo em relação a um) somado
à unidade. Então, o menor negativo será armazenado como:
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 59

Menor negativo –3276810 –(1000 0000 0000 0000)2


=
(0111 1111 1111 1111)2 → complemento de um
+1 → soma 1
(1000 0000 0000 0000)2 → complemento de dois

 Observe que o 1o bit é “um”, o que indica um número negativo (representação sem sinal).

1.6.1
Logo, o menor negativo é representado por:
s1 d1 d2 d3 d4 d5 d6 d7 d8 d9 d10 s2 e1 e2 e3
–32768 = (1000 0000 0000

10
0000)2 = (8000)16 (sem sinal
  “–”) 
f exp
Agora observe o que acontece quando executamos a soma de uma
“unidade” com o “maior positivo” da variável short int, 3276710, ou seja,
Ex. 1.35 calculamos um número na sua região de overflow:
quando

Unidade 110 = (0000 0000 0000 0001) 2 = (0001)16


+ Maior positivo +3276710 = (0111 1111 1111 1111) 2 = (7FFF)16
110 + 3276710 = (1000 0000 0000 0000) 2 = (8000)16

Esse
Grafico 6.12resultado armazenado em short int é interpretado como um
complemento de dois (por iniciar com 1), portanto é um número negativo.

O complemento de dois
Na aritmética de ponto flutuante, um número iniciado pela unidade é um negativo armazenado como
complemento de dois, que precisa ser convertido de volta ao seu valor negativo original, fazendo
um complemento de dois. Então, vamos interpretar qual é o verdadeiro número armazenado por
110 + 3276710 = (1000 0000 0000 0000)2 = (8000)16:

(1000 0000 0000 0000)2



(0111 1111 1111 1111)2 → complemento de um
+1 → soma 1
–(1000 0000 0000 0000)2 = –(8000)16 = –(32768)10

Logo, 110 +3276710 = –(32768)10


60 CÁLCULO NUMÉRICO COMPUTACIONAL

Atenção! Cuidado com as operações com inteiros, pois podemos


achar que 110 +3276710 = (32768)10, mas estamos armazenando, na verdade,
o primeiro número negativo –3276810. Logo, não podemos ultrapassar os
limites dos tipos inteiros, porque os resultados obtidos trocam de sinal e
normalmente não existem avisos aos usuários, ou seja, podemos executar
algoritmos com números inconsistentes sem saber disso.

Existem outras formas derivadas da variável short int de 16 bits, como


long int, com 32 bits, e long long int, com 64 bits.

1.9 TIPOS DE ERROS EXISTENTES EM


REPRESENTAÇÕES DIGITAIS
É muito importante conhecer as possibilidades de erros das represen-
tações numéricas digitais executadas em calculadoras ou computadores
e entender as suas causas, para poder estabelecer a confiabilidade de um
algoritmo e de seus resultados.

A seguir, confira os principais tipos de erros que podem existir em representações


numéricas digitais.

1.9.1 Erros inerentes


Erros inerentes são aqueles existentes nos dados de entrada de um
algoritmo numérico. Decorrem, por exemplo, de medições experimentais,
de simulações numéricas etc.

1.9.2 Erros de arredondamento


Os erros de arredondamento ocorrem quando são desprezados os dígitos
menos significativos, que não são fisicamente confiáveis na representação
numérica, ou estão além da capacidade de armazenamento.
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 61

1.9.2.1 Arredondamento manual


Como já vimos, arredondamento é o processo de eliminação de
dígitos menos significativos de um número. O objetivo é sempre representar
o número com menor quantidade de dígitos significativos totais e ainda
minimizar os erros decorrentes dessa redução de significativos, conforme
tópico sobre arredondamento decimal na seção Complementando... ao
final deste capítulo.

Exemplo 1.36: represente os números listados, a seguir, com quatro dígitos


significativos:

69.348  69.35 → parcela descartada 0.8 é maior que 0.5 → +1 no dígito anterior.
69.34433  69.34 → parcela descartada 0.433 é menor que 0.500 → dígito anterior inalterado.
69.335  69.34 → parcela descartada é 0.5 e dígito anterior ímpar → +1 no dígito anterior.
69.345  69.34 → parcela descartada é 0.5 e dígito anterior par → dígito anterior inalterado.

No Exemplo 1.36, realizamos o arredondamento de forma ponderada,


baseado em critérios de minimização de erro gerado. Mas também podemos
realizar o arredondamento por cancelamento puro: quando a parte indese-
jada do número é simplesmente cancelada, independentemente do seu valor,
assumindo um erro de arredondamento global maior.

1.9.2.2 Arredondamento digital


O arredondamento de representações digitais, em calculadoras ou
computadores, acontece por limitação na capacidade de armazenamento,
especialmente em: Racionais ilimitados, Irracionais, na mudança de base e
em operações aritméticas.
A tradicional aritmética de ponto flutuante é aplicada a proble-
mas de natureza contínua. Devido às limitações de representação dos números
no computador, precisamos utilizar o arredondamento para representá-los
de forma discreta no mundo digital.

A seguir, vamos apresentar alguns exemplos de armazenamento digital.


A seguir, vamos apresentar alguns exemplos de armazenamento digital.
A seguir, vamos apresentar alguns exemplos de armazenamento digital.
62 CÁLCULO NUMÉRICO COMPUTACIONAL

1.9.2.2.1 Armazenamento de Racionais Ilimitados


1.9.2.2.1 Armazenamento de Racionais Ilimitados
1.9.2.2.1 Armazenamento de Racionais ilimitados
Exemplo 1.37: represente a fração (1 3)10 em F (10,10, −99, +99 )
Exemplo 1.37: represente a fração (1 3)10 em F (10,10, −99, +99 )
Exemplo 1.37: represente
(normalização usual:a fração
ponto(1/3) em F(10,
(vírgula)
10
10, –99,do
depois +99)1º(normalização
dígito
(normalização
usual: ponto usual:
(vírgula) ponto
depois do 1 o(vírgula) depois do 1º dígito
dígito significativo).
significativo).
significativo).
Solução:
Solução:
Solução:
(1 3)10 = (3.333333333333...
14 4244 3
−1
* 10 )10
(1 3)10 = (3.333333333333...
14 4t244
=10 3
−1
* 10 )10
t =10
(1 3)1010 ≠≠(3.333333333
(1/3) (3.333333333* 10
* 10) )
−1 –1
Representação arredondada
→ representação de(1(1/3)
arredondadade 3)
(1 3)10 ≠ (3.333333333 * 10−1 )1010 
10
Representação arredondada de (1 3)101010
Exemplo
Exemplo
Exemplo1.38:
1.38:represente
represente
1.38: represente
a fração
a fração decimal
a fração (1/10)((111010
decimal
decimal na))10variável
10
na variável
binária de
na variável
binária de 10,
16 bits F(2, 16 –15, F ( 2,10,
bits +15) IEEE −15, +15 ) IEEE 754.
754. 10
binária de 16 bits F ( 2,10, −15, +15 ) IEEE 754.
Solução:
Solução:
Solução:
(1 10 )10 (1=
= 1010 )2 (1.1001100110
14243 0110011...) 2 * 2 −4 
−4
dízima periódica
( )10 (
=1 10 =
1 1010 )2 (1.1001100110
14243
t =10 0110011...) 2 * 2 → dízima periódica
dízima periódica
Capítulo 1 – Sistemas de Numeração

(1 1010)10≅≅(1.1001100110)
(1.10011001102 )*22*–42−−44
t =10
Logo,
Logo,
Logo,(1/10)
( )10 (1.1001100110 )2 * 2
1 10 ≅

1.9.2.2.2 Armazenamento
1.9.2.2.2 de Irracionais
Armazenamento de Irracionais

O
O conjunto
conjuntodos
dosnúmeros
númerosIrracionais I compreende
Irracionais todas todas
I compreende as repre-
as
sentações por meio de dízimas não periódicas e infinitas, o
representações por meio de dízimas não periódicas e infinitas, oqual, unido
aos números
qual, Racionais
unido aos ℚ gera
números o conjunto
Racionais ℚ dos
geraReais ℝ (ℚ ∪ dos
o conjunto I), conforme
Reais ℝ
Figura 1.2.
(ℚ ∪ I) , conforme Figura 1.2.

Figura 1.2: Diagrama dos 1.2:


Figura Conjuntos Numéricos
Diagrama dos Conjuntos Numéricos

_
\
^ , ]
`

Fonte: Elaboração própria. Fonte: Elaboração própria

Existem representações que generalizam os números como


os Complexos ℂ. Um Complexo com parte imaginária nula


Fonte: Elaboração
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO própria
E ERROS NUMÉRICOS 63

Existem representações que generalizam os números como


os Complexos ℂ. Um
Os Complexos ℂ generalizam as representações
Complexo com dos nula
parte imaginária números.
Um Complexo
se torna ℝ, logo
com parte
um Real imaginária . se torna um Real ℝ, logo ℂ ⊃ ℝ.
ℂ ⊃ ℝnula

Exemplo 1.39: represente em F (10, 10, –99, +99) os seguintes Irracionais.


Exemplo 1.39: represente em F (10,10, −99, +99 ) os seguintes
Irracionais.
Solução:
Solução:
a) ππ =
a) = 3.141592653589...
3.141592653589...
π = (3.141592653589...)10 * 10 0 0
π = (3.141592653589...)10 10
* 10
*
0

π = (3.141592654)10 10 00
* 0
π ≅ (3.141592654) * 10
10 *
10

b)
b) 2 = 1.414213562373...
2 = (1.414213562373...)10 * 100
2 ≅ (1.414213562)10 * 100

1.9.2.2.3 1.9.2.2.3
Armazenamento com Mudança
Armazenamento demudança
com Base de base

Conforme vimos,
Conforme vimos, a arepresentação
representaçãode números
de númerosna basenabinária
base é
amplamente
binária utilizadautilizada
é amplamente em computadores, devido às suas
em computadores, vantagens
devido às suasna
representação de dados e na implementação de operações aritméticas.
Assim, toda grandeza física, expressa inicialmente em base decimal,
é armazenada nos computadores e operada em base binária, por isso são
necessárias conversões entre as bases decimal-binária e vice-versa, podendo
a primeira ser fonte de erro de arredondamento.

No Exemplo 1.40, apresentaremos um caso de erro, na sua forma percentual, do


armazenamento com mudança de base do Exemplo 1.38.

Exemplo 1.40: calcule o erro de arredondamento percentual ocorrido no


armazenamento da fração decimal exata (0.1)10 na variável binária de 16 bits
(2, 10, –15, +15) IEEE 754.
1.38.

Exemplo
Exemplo 1.40:
64 1.40: calcule
calcule oo erro erro de de arredondamento
arredondamento
CÁLCULO NUMÉRICO percentual
percentual
COMPUTACIONAL
Exemplo
Exemplo
Exemplo 1.40:
1.40:
1.40: calcule
calcule
calcule oo
o erro
erro
erro de
de
de arredondamento
arredondamento
arredondamento percentual
percentual
percentual
ocorrido
ocorrido no no armazenamento
armazenamento da da fração
fração decimal
decimal exata exata ((0.10.1))1010 na
0.1 na
ocorrido
ocorrido
ocorrido no no
no armazenamento
armazenamento
armazenamento da
da
da fração
fração
fração decimal
decimal
decimal exata
exata
exata ((( 0.1)10))10 na
na
na
variável
variável binária binária de de 16 bits ((2,10,
16 bits 2,10,−−15, 15)) IEEE
15,++15 IEEE 754.
754. 0.1
( ( ))
10
variável
variável
Solução: binária
binária de
de 1616 bits
bits 2,10,
2,10, −−15,
15, ++ 15
15 IEEE
IEEE 754.
754.
Solução:binária de 16 bits ( 2,10, −15, +15 ) IEEE 754.
variável
Solução:
Solução:
Solução:
Solução:
(0.1)1010 ==(0.00011001100110011....)
(0.1) (0.00011001100110011....)22   gerou
geroudízima → periódica
dízima
gerou dízima periódica
periódicabinária.
binária.
(0.1)
(0.1)
(0.1) == (0.00011001100110011....)
(0.00011001100110011....)
1010 = (0.00011001100110011....)  gerou
gerou dízima
dízima periódicabinária.
periódica
binária. binária.
2  gerou dízima periódica binária.
2 2
(0.1)101010==22−−4−−444** (1.1001100110
(0.1) (1.1001100110 0110011....)
0110011....) 
 antes
antes do
do arredondamento.
arredondamento.
14243
142430110011....)
(0.1)1010==22−4* * (1.1001100110 14
1424 243 3 22 
3 2 22  antes→ antes do
doarredondamento.
arredondamento.
(0.1)
(0.1)10 = 2 * (1.1001100110
(1.1001100110
14243
14243t t==10
14243 10
0110011....)
14
14
14
2424 3
0110011....)
arredondar
arredondar
24 3 antes do
antes do arredondamento.
arredondamento.
=10
t =t 10 arredondar
arredondar
(0.1)1010 ≅≅ 22−−4−−444**(1.1001100110)
(0.1)
≅≅
t =10
(1.1001100110) =
=
=
( (0.099975585
0.099975585
arredondar
(((0.099975585 )) 
)10))101010 
depois
depois do
do
(0.1)
(0.1) 222−4* **(1.1001100110)
(1.1001100110) 2 2= 0.099975585 depois
→depois dodo
22
≅ = depois do
arredondamento
arredondamento
(0.1)1010
10 (1.1001100110) 2 0.099975585 10
 depois do
arredondamento
arredondamento
arredondamento.
arredondamento
Nesse
Nesse caso,caso, podemos
podemos calcular
calcular oo erro
erro de
de arredondamento
arredondamento em em
Nesse
Nesse
Nesse
Nesse caso,caso,
caso,
caso, podemos
podemos
podemos calcular
calcular
calcular
podemos o erro
calcular oo
de
o erro
erro de
de arredondamento
arredondamento
arredondamento
erro de em
em
em uma calculadora
arredondamento em
uma
umacalculadora
calculadoradecimal,
decimal,pois poistemos
temosooValor
ValorExato VEoriginal
ExatoVE original
uma
uma
decimal, calculadora
calculadora
pois temosdecimal,
decimal,
o Valor pois
pois
Exato temos
temos
VE oo Valor
Valor
original e o Exato
Exato
Valor VE
VE original
original
Aproximado VA
euma calculadora
eooValor
Valor Aproximadodecimal,
Aproximado
pós-arredondamento, VA
ambos
pois temos o Valor Exato
VApós-arredondamento,
pós-arredondamento,
na base decimal:
VE original
ambos
ambos na
nabase
base
eeeoo Valor
oValor Aproximado
ValorAproximado
AproximadoVA pós-arredondamento,
VApós-arredondamento,
VA pós-arredondamento,ambos ambos
ambosna na base
nabase
base
decimal:
decimal:
decimal:
decimal:
decimal:
VE===(0.1)
VE
VE (0.1)
(0.1)1010
VEVE ==
VE = (0.1)
(0.1)
(0.1) 1010
−−44 10
VA== 22–4
VA −−44 (1.1001100110)
** (1.1001100110)
10
22 =
=(0.099975585)
(0.099975585)1010
VAVA = 2 * (1.1001100110)222===
VA == 22 −4***(1.1001100110)
(1.1001100110)
(1.1001100110) =(0.099975585)
(0.099975585)
(0.099975585)
(0.099975585)
2
101010
10

Erro Relativo % = VA – VE * 100% = – 0,02441%


VE
1.9.2.2.4
1.9.2.2.4 Armazenamento
Armazenamento de
de Resultados
Resultados de
de Operações
Operações Aritméticas
Aritméticas
1.9.2.2.4
1.9.2.2.4 Armazenamento
Armazenamento
1.9.2.2.41.9.2.2.4
Armazenamento de
de Resultados
Resultados de
de Operações
Operações Aritméticas
Aritméticas
Armazenamento de resultados de Aritméticas
de Resultados de Operações operações
Os
Osoperadores aritméticas
operadores lógicos
lógicoseearitméticos
aritméticosoperam
operamnúmeros
númerosarmaze-
armaze-
Os
Os
Os operadores
operadores
operadores lógicos
lógicos
lógicos eeearitméticos
aritméticos
aritméticos operam
operam
operam números
números
números armaze-
armaze-
armaze-
nados
nadosem em variáveis,
variáveis,
Osvariáveis,
operadores representadas
representadas
lógicos em
em
e aritméticos ponto
ponto
operamflutuante
flutuante e/ou
e/ou inteiras,
inteiras,
números armazenados em
nados
nados em variáveis, representadas em ponto flutuante e/ou inteiras,
nados em
em variáveis, representadas
representadas em
em ponto
ponto flutuante
flutuante e/ou
e/ou inteiras,
inteiras,
variáveis, representadas em ponto flutuante e/ou inteiras, e consequentemente
ficam com abrangência limitada conforme a notação adotada pela variável
utilizada para o armazenamento dos resultados. Vejamos os exemplos a seguir.

Exemplo 1.41: efetue a adição de a = 0.0165 e b = 10.51 em F(10, 4, –10, +10).

Solução:
Representação em ponto flutuante:

a = 1.650 * 10–2
b = 1.051 * 101
ação em ponto flutuante:

= 1.650 * 10−2CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 65


= 1.051 * 101
Agora, vamos implementar a adição de forma simplificada, sempre usando
mos implementar a adição de forma simplificada,
alinhamento pelo maior expoente:
sando alinhamento pelo maior expoente:
a = 0.001650 * 101
+b = 1.051 * 10
1

a+b =1.052650 * 101


a + b ≅ 1.053 * 101

Observe que o menor número a, quando alinhado pelo maior expoente


ve que o menor número a, quando alinhado pelo maior
(de b), gera três dígitos fora da faixa de abrangência de armazenamento,
e b), gera três
650,dígitos fora da faixa
que normalmente de abrangência
são armazenados comodedígitos de guarda durante a
nto, 650, queoperação
normalmente são armazenados
aritmética, como dígitos
mas são arredondados na representação final.
urante a operação aritmética, mas são arredondados na
o final. Exemplo 1.42: efetue a adição de a = (10.01) 2 e b = (0.0101) 2 em
F(2, 4, –15, +15).
a adição de a = (10.01)2 e b = ( 0.0101)2 em
1.42: efetue Solução:
5, +15 ) . Representação em ponto flutuante:

ação em ponto a = (1.001) * 21


flutuante:
2

b = (1.010)2 * 2–2
= (1.001)2 * 21
= (1.010 )2 * 2Vamos
−2
novamente implementar a adição de forma simplificada:
ovamente implementar a adição de forma simplificada:
a = (1.001)2 * 21
+b = ( 0.001010 )2 * 21
a+b =(1.010010 )2 * 21 59

a + b ≅ (1.010 )2 * 21

rve que o menorObserve


númeroque b, quando alinhado
o menor número pelo maior
b, quando alinhado pelo maior expoente
e a), gera 3(de a), gera
dígitos, 3 dígitos,
010, fora da 010, forade
faixa daabrangência
faixa de abrangência
de de armazenamento
que acabam
mento que acabam sendo
sendo arredondados.
arredondados.

atos ocorrem, geralmente, na soma de números com


as muito diferentes. Nesses casos, o número de
gera 3 dígitos, 010, fora da faixa de abrangência de
que acabam sendo arredondados.
66 CÁLCULO NUMÉRICO COMPUTACIONAL

ocorrem, geralmente, na soma de números com


muito diferentes. Nesses
Esses casos, geralmente,
fatos ocorrem, o númeronade soma de números com potências
ente podemuito
perder dígitos Nesses
diferentes. significativos, total ou
casos, o número de menor expoente pode perder
dígitos
e, frente ao númerosignificativos, total ou parcialmente,
de maior expoente. Ou seja, diante do número de maior
expoente. Ou seja, devido à faixa
xa limitada de abrangência dos registradores emlimitada de abrangência dos registradores
em ponto flutuante, o número menor perde dígitos significativos quando
nte, o número menor perde dígitos significativos
comparado com o número maior.
parado com o número maior.

Exemplo 1.43: efetue a subtração a – b com a = 1.351 e b = 1.369 em


: efetue aF(10,
subtração – b com a = 1.351 e b = 1.369
4, –10, a+10).
10, +10).
Solução:
Efetuando a subtração de forma simplificada, temos:
ubtração de forma simplificada, temos:
a = +1.351 * 100
− b =−1.369 * 100
a − b =−0.018 * 100
≅ −1.800 * 10−1
a −b =

o resultado final não sofreu arredondamentos, mas


Note que o resultado final não sofreu arredondamentos, mas também
Capítulo 1 – Sistemas de Numeração e Erros Numéricos
dígitos perdeu
significativos, pois as parcelas
dígitos significativos, e b têm a e b têm quatro dígitos
pois asa parcelas
ignificativos, e a subtração
significativos, a – b atem
e a subtração – b apenas dois.
tem apenas dois. Isso ocorre quando as
parcelas subtraídas têm valores próximos.
ndo as parcelas subtraídas têm valores próximos.
44: reescreva as expressões das soluções de equações
o grau de forma1.44:
Exemplo a minimizar
reescreva asperdas dedas
expressões dígitos
soluções de equações de segundo
os. grau de forma a minimizar perdas de dígitos significativos.

Solução:
+b* x+c =0 , temos que as suas raízes na forma
Para a * x2 + b * x + c = 0, temos que as suas raízes na forma convencional são:
al são:

−b ± b 2 − 4 * a * c
x1,2 =
2*a
vamente, por racionalização do numerador, obtemos:
−2 * c
x1,2 =
b m b2 − 4 * a * c
convencional são:
onal são: −b ± b 2 − 4 * a * c2 −2 * c −b ± b 2
x1,2 = −b ± b 2 − −−bb4±
± *ab *c
b 2 − 4*a*c
− 4x * a= *c x =
x = xx1,2 = 2*a
c 1,2 =2 * a E ERROS
1,2 1,2
CAPÍTULO −b 1±– SISTEMAS − 4 *DE
b 2 1,2 a *NUMERAÇÃO 22 ** aaNUMÉRICOS b m b2 − 4 * a * c 67 2
x1,2 =
Ou alternativamente, 2 *por
a racionalização do numerador, obtemos:
Ou alternativamente, por racionaliz
Ou
Ou alternativamente,
Ou alternativamente, alternativamente, por racionalização
Observe por
por racionalização quedoasnumerador,
racionalização duas do numerador,
do formas obtemos:
numerador, podem obtemos:
apresentar
obtemos: perda
ativamente, por racionalização − 2 *c
−2
Ou alternativamente, x1,2 = dopor
significação numerador,
racionalização
− 2*c −
diferentes obtemos:
cc do numerador,
−22 ** quando as parcelas obtemos:b e b 2 −x1,2 4 * =a * c forem
x1,2 = b m xx1,2b 2= =− 4 * a * c2
−2magnitudes b m 1,2bpróximas b msubtr
b2
m* a *bbc2 e− − estiverem sujeitas a uma operação de
*c
x1,2 =
2
−bb4m 44 ** aa ** cc
Observe que b m as b 2 −duas 4 * a *Assim, formas
c podem apresentar
recomendamos que perdas
sejam de
Observe utilizadas,
que as de duas emformas
conju
ObserveObserve que
Observeas as que
duas
que as
as formas duas
duas formas
podem podem
formas apresentar
podem apresentar
perdas de
apresentar perdas
perdas de
significação diferentes quando duas as expressões parcelas bpropostas eperdas − 4de *no
a * Exemplo
b 22 significação c2 forem de1.44, escolhendo o
ve que as
significação duas
significação
diferentes formas diferentes podem
quando quando
as apresentar
parcelas as parcelas
b e b − b 4e *ab c2 − forem
4
− 4 *de diferentes
a cb forem
cde quando
de as pa
magnitudes significação
próximas Observe diferentes
do queradicando
e estiverem as duas quando sujeitasformasde as a parcelas
acordo
podem
uma com b e ode
apresentar
operação
bsinal
* *
perdas a *de
subtração.
*
forem
(sign(b)),de de modo
significação
diferentes quando
magnitudes aspróximas
parcelas esujeitas
eebestiverem b 2 − 4asujeitas forema umamagnitudes
deoperação próximas
de e estiverem suje
magnitudes próximas
magnitudes
diferentes e estiverem
próximas
quando as parcelas
as parcelasestiverem b b e e b
* uma
a2 * c operação
sujeitas
− 4 * aa* umac fiquem
forem de
operação
de subtração.de subtração.
sujeitas
magnitudes subtração.
sempre
próximas à operaçã
Assim, recomendamos que sejam utilizadas, emAssim, conjunto, recomendamos que s
próximas Assim, e estiverem
Assim,
recomendamos
e estiverem
Assim, sujeitas
recomendamos
sujeitas
recomendamosa uma
a que
uma operaçãosejam
operação que de subtração.
sejam
utilizadas,
de subtração. utilizadas,
em em
conjunto, conjunto,
as duas expressões adição, nas
propostas no Exemplo duasque fórmulas, sejam
1.44, escolhendo utilizadas,
usando
as1.44,duasescolhendoumao em
expressões para
sinalconjunto,
obter x
propostas , e outra
no Ex
m,asrecomendamos
duas as duasdeAssim,
duas
expressões
as que
expressões
propostas
expressões sejam
recomendamos propostas
propostasutilizadas,
no Exemplo que
no
no em sejam
Exemplo
1.44,
Exemplo conjunto,
utilizadas,
escolhendo
1.44, em oconjunto,
escolhendo sinal o o as duas
sinal
sinal
1

do radicando acordo com


obter xnesse o sinal
, ouExemplo seja: de b (sign(b)), de modo que
ressões
do radicando do expressões
propostas
do de no
radicando
radicando acordo propostas
Exemplo
de com
de acordo
acordo 2 1.44,
o sinal com
com escolhendo
o sinal
de
o b1.44,
sinal de
(sign(b)),
de o do
escolhendo
bbsinal
radicando
de modo
(sign(b)),
(sign(b)),
o sinaldedo
de
de
modo
que
modo
acordo
radicando quede
que
com o sin
as parcelasacordo b e com b 2 − 4o *sinal
2
a * c2 de fiquem sujeitas sempre asque à operação
parcelas de
eedeb − 4 *de a * c fiquem
o
asde acordo
parcelas as b com
as parcelase bo bb−sinal 4ee * a bb*de
c2 − b44b**(sign(b)),
−fiquem aa(sign(b)), fiquem
c sujeitas
de
demodo modo
sujeitas
sempre que asà parcelas
sempre
operação àbboperação
2

parcelas ** c fiquem sujeitas 2 sempre à operação de


adição, nas duas fórmulas, usando uma − b −para sign ( b
obter) b − 4 a
, e duas c
outra parafórmulas,
4 *fiquem sujeitassujeitas sempre àsempre
xoperação de adição, xnas fórmulas, usandousando
* *
e b 2 −nas
badição, aduas
adição, * c nas fiquem duas = àpara operação adição,
xde nasx (Fórmula
duas
e outra tradicional)
duas xfórmulas,
fórmulas, usando 1 usando
uma uma obter para ,obter
e outra , para para
1
adição,
uma nas
para obter fórmulas,
, e outra usando
para obter uma
x , ou
2 para
seja:
a 1 obter x11 , e outra para
obter
duas x , ou seja: 1 2 *
obter x , ou seja:
obterfórmulas,
x22 ,obter
ou seja:
obter xx2usando
,, ou
ou seja: seja:
uma para obter x1 , e outra −2 * cpara 2
2 x2 = (Fórmula racionalizada)
seja: + −
−b − sign(b) b 2 − 4 * a * c2 (Fórmula tradicional)
2 b sign ( b ) b 2
4 a c
44 ** aa ** cc tradicional) x = −b − sign(b) b − 4 * a *
* *
x1 = −b − sign− (bbb)− −((4bb*)) a bb* c2 − (Fórmula
2

− − bsign
sign −
x = x = 2*a (Fórmula(Fórmula (Fórmula
tradicional) tradicional)
−b − sign(b1 ) b 2 − x411*=a * c2 * a tradicional)1
22 ** aa 2*a
= *(Fórmula
−2Exemploc tradicional)
1.45: considere os seguintes sistemas lineares: −2 * c
x2 =*a −2 * c − (Fórmula racionalizada) x =
−22 ** cc (Fórmula
x22 = b + sign xx2 = (Fórmula
racionalizada) racionalizada)
2 =(b) b 2 − 4 * a * c2 (Fórmula racionalizada)
(Fórmula racionalizada)
2 2
−2 * cb + sign +
(bbb)(Fórmula − ((4bb*))aracionalizada) +443**xaa2 **=
*bbxc21 − cc4 b + sign(b) b 2 − 4 * a * c
= + bsign
sign a)  − solução exata Sa = {1, 1}
b + sign(b) b 2 − 4 * a * c  x1 + 3.00001x2 = 4.00001
Exemplo 1.45: considere os seguintes sistemas lineares: Exemplo 1.45: considere os segui
Exemplo Exemplo
Exemplo
1.45: considere
Exemplo 1.45:
1.45:considere
1.45: considere
os seguintes
considere os
 x1os seguintes
os seguintes
x2sistemas
+ 3seguintes = 4sistemas sistemas lineares:
lineares:
sistemas lineares:
lineares:
1.45: considere b)  lineares: solução exata = Sb {10, −2}
 x1 +os 3 x2seguintes
= 4 sistemas x + 2.99999 = 4.00002 + =
 x1 + 3a)
a)  x2 = xx14+ + 33 xx2 = = 44  solução exata Sa = {1, 1a)
1 x 2 } = 11, 1 2
 x 3 x 4
s
a)  x1 + 3.00001
a)
a)  1
x2 = 2
4.00001 solução solução exata Sa
solução
solução = {1,Sa1Sa
exata
exata
exata }
Sa =x{{1,
= {1, 1} 1}}
x1 + 3 x2 = 4  x1 + 3.00001 x + x =
3.00001 4.00001 x = 4.00001  1 + 3.00001x2 = 4.00001
 x11 +solução
3.00001
2 22 =
xexata Sa = {1, 1}
4.00001
x1 + 3.00001x2 xx= 1+ 3 x2 = 4
2} x1 + 3 x2 =
4.00001 4
 1 + 3 x2 =
b)  xx14+ 3x =
1 + 3 x22 =
44 solução exata = Sb {10, −b)
x1 + 3 x2 =
b)  x + b)
b) 
2.99999
b)
4  x11 + 2.99999  x2.99999 x = 4.00002 solução solução
exata
solução exata
solução =Sb {
exata 10,
exata Sb =
=−
Sb 2} {
{x10,
Sb= {10, 10, −
−2}
2
–2} }
1 + 2.99999 x2 = 4.00002
 xx11 + 2 = xx2 =
2
+solução 4.00002 4.00002
2.99999 exata 2 = Sb {10, −2}
4.00002
=
x1 + 2.99999 x2 = 4.00002 61
Observe que o sistema de equações (b) pode ser derivado do sistema (a), 61
com uma pequena perturbação em dois de seus coeficientes, 61 devido
hipoteticamente a arredondamentos, e que provoque uma variação ao
coeficiente a22 de 3.00001 para 2.99999 e ao b2 de 4.00001 para 4.00002, da
ordem de 0.025%. Note, ainda, que essa pequena variação acarreta uma
variação enorme na solução do sistema (b) da ordem de até 900%.
68 CÁLCULO NUMÉRICO COMPUTACIONAL

Denominamos esses sistemas altamente sensíveis a variações nos seus coeficientes


de sistemas mal condicionados, cuja abordagem trataremos no Capítulo 2.

Exemplo 1.46: efetue a divisão a / b, com a = 1332 e b = 0.9876, em


F(10, 10, –99, +99).

Solução:
a / b = 1348.724179829890643...
Esse resultado está sujeito ao armazenamento em apenas 10 dígitos significa-
tivos e precisará ser arredondado:

a / b = 1348.724180
Dessa forma, o armazenamento limitado causará uma perda de dígitos
significativos e gerará um resultado aproximado.

Nas operações de divisão entre duas parcelas quaisquer, normalmente


são gerados resultados com um número de dígitos maior do que o limite
da representação em ponto flutuante.

1.9.2.3 Consequências dos erros de arredondamento


Vamos conhecer agora as principais consequências dos erros de
arredondamento.

1.9.2.3.1 Propagação de erros devido à perda de significação

A perda de dígitos significativos nas operações aritméticas é a principal


consequência dos erros de arredondamento, conforme exemplos já vistos
anteriormente.

A seguir, apresentaremos um exemplo de propagação de erros devido a perdas de


significação sequenciais.
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 69

Exemplo 1.47: para a função f(x) = 37500/(25 – x2), obtenha os valores de


f(x) em x = 4.999 e em x = 4.9990005 em uma calculadora científica com
representação de 10 dígitos.
Solução:
Calculando parcialmente os termos de f(x), temos para:

x = 4.999 → x2 = 24.99000100 → VE = 24.99000100


x = 4.9990005 → x2 = 24.99000600 → VE = 24.99000599900025

em que VE é o valor exato.

Observe que, para x = 4.9990005, o valor parcial de x2 sofre perda de dígitos


significativos, ficando com apenas 8 dígitos significativos, enquanto o valor
exato tem 16 dígitos exatos.

Para:

x = 4.999 → (25 – x2) = 9.999 * 10–3 → VE = 9.999 * 10–3


x = 4.9990005 → (25 – x2) = 9.994001 * 10–3 → VE = 9.99400099975 * 10–3

Observe agora que, para x = 4.9990005, o valor parcial de (25 – x2) também
sofre perda de dígitos significativos, ficando com apenas 7 dígitos significa-
tivos devido ao arredondamento, enquanto o seu valor exato tem 16 dígitos.
No cálculo de f(x) em uma única instrução, utilizando os dígitos internos de
guarda para ampliar a representação (para isso use diretamente os resultados
gerados na tela, não os redigite), temos:

x = 4.999 → f(4.999) = 3750375.038 → VE = 3750375.0375


x = 4.9990005 → f(4.9990005) = 3752250.975 → VE = 3753350.975455187

Por fim, observe que, para x = 4.9990005, o valor total de f(x) também sofre
perda de mais dígitos significativos, ficando com apenas 10 dígitos (limite
da calculadora), enquanto o valor exato tem mais de 16 dígitos exatos.
70 CÁLCULO NUMÉRICO COMPUTACIONAL

Uma variação de 0.00001% na variável independente x, que poderia


vir de um erro inerente do dado de entrada, propaga uma variação na
ordem de 0.05% no resultado final de f(x), ou seja, gera uma alteração
(erro) no resultado quase 5.000 vezes maior do que a alteração do
dado de entrada. Isso caracteriza uma instabilidade intrínseca a esse
modelo matemático que deve ser evitada, se o modelo tiver outra forma
possível, para minimizar a propagação de erros que sempre vão existir
nos dados de entrada.

1.9.2.3.2 Instabilidade numérica nos algoritmos

A acumulação sucessiva de erros de arredondamento, em um algoritmo


de repetição, pode conduzir a resultados absurdos, por exemplo, a função
f(x) = (n + 1) * x –1 é uma constante para x = 1/n, pois f(1/n) = (n + 1) *
1/n – 1 = 1 + 1/n – 1 = 1/n, mas gera valores absurdos a partir de pequenos
arredondamentos iniciais. Verifique essa afirmação sobre a desestabilização
de resultados implementando o Exercício 1.11 em computador.

Na próxima seção, apresentaremos o principal erro dos métodos de aproximação


numérica, que são decorrentes de truncamentos de cada tipo de aproximação.

1.9.3 Erros de truncamento


Os erros de truncamento são erros intrínsecos da aproximação dos
métodos numéricos. Ocorrem sempre que sustamos uma sequência de
cálculo infinita, tornando-a finita, por conveniência ou por incapacidade
de execução. Assim, ocorrem erros de truncamento, além dos erros de
arredondamento, em praticamente todos os métodos e algoritmos do cálculo
numérico, conforme veremos nos capítulos subsequentes.
f (1/ n ) = (1.48:
Exemplo n + 1)seja
* 1/ na−seguinte
1 = 1 + 1/ nexpansão
−1 = 1/ n em série infinita de Taylor e Maclaurin
Pg. 70
para a função exp(x) = ex:
exp ( x ) = e x
x x 2 x3 xn
ex = 1+ + + + ... + + ...
1! 2! 3! n!
pg. 71
x x2 x3 xn
f ( x0 + x) = f ( x0 ) + f ′( x0 ) + f ′′( x0 ) + f ′′′( x0 ) + ... + f ( n ) ( x0 ) + ...
1! 2! 3! n!
f ′( x0 = 0) = e0 = 1
Varios pontos (xi,yi), ao longo do livro, ficaram com a virgula grudada no 1º índic
(xi,...). Se possível, dar um pequeno espaçamento, local em vermelho: (xi , yi).

Pg.
CAPÍTULO 1 –23
SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 71
X β = ( a1a2 ..... ak . ak +1 ..... ak + n ) β
Sabemos que não é possível usar os infinitos termos dessa série para obter
um X = (a .
valorβ de e1 , então
x a 2 a ) β E
t β precisamos estabelecer um limite para o número de
......
Pg. 45
f (1/ n ) = ( n +
termos utilizados. Essa1 ) * 1/ n − + 1/ n −1 = 1/no
1 = 1limitação n número de termos gera um erro de
s
truncamento( a
Pg. 70 1 d2 tnaa a ) βd séried aproximadad4 dque d6 d7 ao
corresponde d8somatório
d9 ddos e1 e2 e3 e4
10 termos
......
1 2 3 5
exp ( )  
x
abandonados.= e x

Pg. 242
Podemos x representar
x x3 t díxde forma exata uma função f(x + x) por meio de
+ gitos+ ... significativos da mantissa f0 e polarizad
n
e x = 1 + + + + ...
expansão em série
X = (a . a a ) β
1! 2! 3! de Taylor
n ! E convergente, dada genericamente por:
β 1 2 ...... t β
Pg.
pg. 46
71
x x2 x3 xn
f (0x0 + 30
x) =1 f ( x0 ) 1+ f ′( x0 0
) + f ′′1( x0 ) 0+ f ′′′( x00 ) + ... + f (n)
x
0 0 n !0+ ... 0
( )
1! 2! 3! 0 1 0 0
f (sx0 = 0)
′ X = 101.1
=( e = 1)2
0
= 1 * 2

2
+ 0 * 21
+ 1 * 2 0
+ 1 * 2 −1
= 5.5
( )10 
f ′′( x = 0) = e t
0
=
= 10
1 d í gitos significativos
Expandindo a função e em torno de x = 0, temos:
0
36
x de f , depois do ponto e polariz
0
x x x 2 x3 xn
e = 1 + + + + ... + + ...
Pg. 71
f(x = 0)(15)
1! =102! (1111)
e=0 = 13! 2 n!
0
Pg. 73
f ′′((xx)0 38
= 0) = e0 = 1
acional
f ′( x)
f254
''(x0 =MP
Pg. 74
0) == +e0(= 1
0.1111111111)2 * 215 = ( 2−1 + 2−2 + 2−3 + ... + 2−10 ) * 215 = ( 32736 )10 ≅ 215
2 3 n
f ( x0 + 39 h h h h
Pn′( x0 ) ) ( 0 )
h + f x − h = f ( x0 ) + f ′( x0 ) + f ′′( x0 ) + f ′′′( x0 ) + ... + f ( n ) ( x0 ) + ...
1! 2! 3! n! ~
f(n) (x0 = M0) 0 (n)= e 0
0 = 1 0 0 0 h
0) − f ′( x ) + f ′′( x )
0 0h 2
0 h
0
3
0 0 h n
1 1 1 1
M f ( x= +=f ( xe0=
0) 1 0 1! 0 − f ′′′( x0 ) − ... + f ( x0 ) + ...
( n )
0 2! 3! n !

f ( n ) ( x= 0)= 75
Pg.
334 e= 0
1 2 3 n expoente mínimo I
0
x x x x
Logo,
f ′′( x0 )45
Logo, f (0 + x)2=e0+3x =1 + n+ + + ... + + O( x ( n +1) )
x x x x 2! (3!
1! n!
M 83 ==1f +(4) (0.4) 234.375
0+ x
f (0 + x) =ePg. +
s d1! dd2!d dd3! = + + ... + + O( x n +1) )
v = ( d
Se aproximamos
1 . d 2 3 1 23e 24
22
x )
2 com2 d n
3 apenas d
! 4 d
n5termos, d 6 destamos
7 d8 desprezando
d9 d10 e1 e2 e3 e4 e5
Pg. 85 apenas n etermos,
roximamosuma Se
ex com aproximamos comtermos apenas
estamos anpartirtermos, doestamos
desprezando desprezando a parcela
x
série infinita  de  termo n+1,    
série infinita449
(1234567890123456789012345
infinita de termos
de termos a partir do termo a partirt d í do)
gitos ≅ significativos
1.23456794679859
termo n
n+1, n + 2 + 1, da mantissa
e + 24 f e polarizado
1.234567890123456789012345e + 24 x n +1
x
Pg.91 s d Od( x d ) = d
( n + 1)
d6 + d7 d8 + ...d9 d10 d11 e1 e2 e3 e4
∂D((an +,1)b) xmn2⎧+1a x 3+ ax nx+42+ (2+n5 a−+1 1)!
O( x ) =
∂a1
=1⎪1)!
(nk +
(
= 2
11a +1 +12 a2 / T+ ... 1n −
t21=x1110+(nad22í+gitos
2
x32)!
k )
xnV= b1(n +
k ( ⎢ )( 1
− 1
⎡2)!
a11 a a12+ a / T
+ a2 nnxn = b2de ⎢fa,21depois
2 k )
a1n2 ⎤−2⎡x11 ⎤= 0⎡b1 ⎤

a2 n ⎥⎥ ⎢⎢x2 ⎥⎥ ⎢⎢b2 ⎥⎥e polarizado
⎪ a 2 + significativos a22 do ponto
A * X = B ⇒x⎨ x 2
x x ⇒ * = (1)
Logo, Pg.
e x 71
≅ 1 +m ⎪ n+ + + ... + ⎢ ⎥ ⎢ ⎥ ⎢ ⎥
x ∂xD(a,xb)x = 2 x1!x⎪aax 2x2!++xaa3 3!
2 3
⎩+( n11 1+ n2+ k ) +−
e x ≅ 1 + +Logo, + + + 2x /...
2T+
2 xn− 1
aVnnnk!xn =(b−n1) (⎢⎣aa1n1 + aan22 / Tk2 ) ann(⎥⎦1/⎢⎣Txkn2⎥⎦) =⎢⎣0bn ⎥⎦
−2

a2 3! e ≅ 1...
+ 
 +   
2!∂92
1! Pg. k=1!1 n !2! 3!
( n +1)
n!
Assim, ⎡oa11termo a12 O ( xa1n ) caracteriza a1n +1 ⎤ o erro de truncamento da
( n +174
)
m, o termo aproximação
479(
OAssim,
x ⎢) caracteriza
oatermo a nesseO(x acaso,(n + o
1) erro aou de ⎥ truncamento da
2 n +1 ⎥ seja,
) caracteriza o erro
o erro da aproximação
de truncamento em
da aproximação
imação nesse
] = ⎢⎢ 21 ou22seja, o 2nerro da
[ A Bcaso, aproximação em
nesse caso,
relação ao valor ou seja, o erro da aproximação
exato. ⎥
h em relação
h 2 ao hvalor exato. h n
3
f⎢ (ax0 + ah ) + f ( x0 a − h ) = f a( x0 ) ⎥+ f ′( x0 ) + f ′′( x0 ) + f ′′′( x0 ) + ... + f ( n ) ( x0 ) + ...
o ao valor exato. ⎣Para n1 nm2 = 10 : nn nn +1 ⎦ 1! 2! 3! n!
Pg. 100 h h2 h3 hn
i = n + f ( x0 ) − f ′( x0 ) + f ′′( x0 ) 20!− f ′′′( x0 ) − ... + f ( n ) ( x0 ) + ...
Max xfi =(2ami ,)n(+1x/)aii = f (20) (1) = (1!
−1)20 2! 3!
= 1.1601 * 10
12 n!
Lembre-se de que xx=1 representa o incremento (1 + 1)(20+1)de x entre o
proximação nesse caso, ou seja, o erro da aproximação em
lação ao valor exato.
72 CÁLCULO NUMÉRICO COMPUTACIONAL

Lembre-se de que x representa o incremento de x entre o


ponto inicial x0 Lembre-se de que
= 0 e o ponto x representa
final 0 + x. o incremento entre o ponto inicial
x0 = 0 e o ponto final 0 + x.

Observe naObserve
Tabelana1.1, a convergência
Tabela de de
1.1, a convergência e 1 pelo
e1 pelovalor
valor aproximado
1 1 1 1
ximado VA( n ) ≅ 1 + + + + ... + , em em função
função de n,comparado
de n, comparado comCapítulo
o valor
1 – Sistemas de Numeração
1! 2! 3! n!
exato ee==2.718281828459045...
o valor exato 2.718281828459045...
Tabela 1.1 – Convergência de e1 1.1 – Convergência de e1
Tabela

n VA(n) VA(n)–VA (n–1) VE = e Erro exato = |VA(n)–VE|


0 1.000000000000000 - 2.718281828459040 1.71828182845904
1 2.000000000000000 1.00000000000000 2.718281828459040 0.71828182845904
2 2.500000000000000 0.50000000000000 2.718281828459040 0.21828182845904
3 2.666666666666670 0.16666666666667 2.718281828459040 0.05161516179237
4 2.708333333333330 0.04166666666667 2.718281828459040 0.00994849512571
5 2.716666666666670 0.00833333333333 2.718281828459040 0.00161516179237
6 2.718055555555560 0.00138888888889 2.718281828459040 0.00022627290348
7 2.718253968253970 0.00019841269841 2.718281828459040 0.00002786020507
8 2.718278769841270 0.00002480158730 2.718281828459040 0.00000305861777
9 2.718281525573190 0.00000275573192 2.718281828459040 0.00000030288585
10 2.718281801146380 0.00000027557319 2.718281828459040 0.00000002731266
11 2.718281826198490 0.00000002505211 2.718281828459040 0.00000000226055
12 2.718281828286170 0.00000000208768 2.718281828459040 0.00000000017287
13 2.718281828446760 0.00000000016059 2.718281828459040 0.00000000001228
14 2.718281828458230 0.00000000001147 2.718281828459040 0.00000000000081
15 2.718281828458990 0.00000000000076 2.718281828459040 0.00000000000005
16 2.718281828459040 0.00000000000005 2.718281828459040 0.00000000000000
17 2.718281828459050 0.00000000000000 2.718281828459040 0.00000000000001
18 2.718281828459050 0.00000000000000 2.718281828459040 0.00000000000001

Fonte: Elaboração própria.


Nesse exemplo, podemos obter o resultado aproximado com
5 dígitos significativos
Nesse totaisobter
exemplo, podemos da seguinte forma:
o resultado aproximado com 5 dígitos
significativos totais da seguinte forma:
a) Preliminarmente, podemos estimar o número de dígitos
confiáveis como aqueles que permanecem constantes entre
uma aproximação com n–1 e outra com n parcelas, que pode
ser quantificado pelas diferenças em módulo, chamado
(n) ( n−1)
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 73

a) Preliminarmente, podemos estimar o número de dígitos confiáveis


como aqueles que permanecem constantes entre uma aproximação
com n – 1 e outra com n parcelas, que pode ser quantificado pelas
diferenças em módulo, chamado “critério de parada”, dado por
|VA(n) – VA(n – 1)|. Assim, se quisermos um resultado com 5 dígitos
(4 dígitos depois do ponto (vírgula)), poderemos interromper
a sequência com n = 8 termos, conforme a planilha desse
exemplo, cujo critério de parada fica inferior a 1 * 10–4, no caso
0.2480158730 * 10–4 (destacado em negrito).
= VA( n ) − VE apresentado na última coluna da
Erro exato
b) Idealmente, deveríamos avaliar o número de dígitos exatos
planilha calculando
desse exemplo, com VE
o erro disponível.
exato de cadaAssim, obtemos conforme
aproximação,
o mesmoErro resultado,
exato = com|VA(n)4 –dígitos exatos depois
VE| apresentado do ponto,
na última coluna da tabela
interrompendo a sequência com n = 7 termos, cujo Erro
desse exemplo, com VE disponível. Assim, obtemos o mesmo Exato
é inferiorresultado,
a 1 * 10−4 ,com
no 4 dígitos
caso exatos depois
0.2786020507 * 10do
−4
ponto, interrompendo a
(destacado
sequência
em negrito), com n = 7otermos,
mas raramente cujo erro
valor exato exato
VE está é inferior a 1 * 10–4, no
disponível.
caso 0.2786020507 * 10–4 (destacado em negrito), mas raramente o
c) O resultado que obtivemos com o critério de parada em (a)
valor exato VE está disponível.
é mais conservativo do que o resultado obtido com o erro
exato c)
emO(b),resultado
ambosquecomobtivemos
limite 1com
* 10 o
−4
, critério
pois emde(a)parada
temosem (a) é mais
conservativo do que o resultado obtido
resultado mais exato do que em (b). Normalmente, podemos com o erro exato em (b),
usar os ambos com
de limite 1 * em
10 um, poisprocesso
em (a) temos resultado mais
–4
critérios parada repetitivo
exato do que em (b). Normalmente, podemos usar os critérios de
para obtenção de resultados por aproximações numéricas
parada em um processo repetitivo para obtenção de resultados por
como referência para o erro, mas esse tema será abordado
aproximações numéricas como referência para o erro, mas esse
posteriormente
tema serápara cada método
abordado numéricopara
posteriormente apresentado ao numérico
cada método
longo deste livro.
apresentado ao longo deste livro.

ExemploExemplo 1.49: aproximações


1.49: aproximações numéricas numéricas
de derivadasde derivadas de funções. Por
de funções.
f ( x + h) − f ( x )
Por definição, f ′(fx'(x)
definição, ) é édada por, f ′( x) = lim
dada por,
h →0 h

Se não pudermos obter esse limite exato, podemos efetuar


Se não pudermos obter esse limite exato, podemos efetuar uma
uma aproximação numérica
aproximação numéricatomando
tomandooo incremento
incrementoh comoh como finito
finito e promovendo
e promovendo refinamentos
refinamentos de resultados
de resultados em razãoemdo hrazão do hAssim,
adotado. adotado.
podemos obter
Assim, podemosuma sequência de aproximações
obter uma sequência de sucessivas de f '(x), com
aproximações exatidão crescente,
sucessivas
usando h cada vez menores, mas não podemos chegar
de f ′( x) , com exatidão crescente, usando incrementos h cada a um h numericamente
vez
menores, mas não podemos chegar a um incremento h numericamente
−16
nulo (h ≅ O(10 ))para variáveis do tipo double), pois nesse caso, o
numerador do limite se torna nulo por perda de significação. Então,
omovendo refinamentos de resultados em razão do h adotado.
m, podemos 39 obter uma sequência de aproximações sucessivas
′( x) , com
740exatidão
0 crescente,
0 0 0 usando
0 0incrementos
0 0h cada
0 CÁLCULO 0 vez
1 COMPUTACIONAL
NUMÉRICO 1 1 1 1
ores, mas não podemos chegar a um incremento h numericamente 
−16
(h ≅ O(10 ))para variáveis do tipo double), pois nesse caso, o expoente mínimo I
nulo (h ≅ O(10–16) para variáveis do tipo double), pois nesse caso, o numerador
45
erador do limite se torna nulo por perda de significação. Então,
dos limite se torna nulo por perda de significação. Então, também precisamos
bém precisamos d d 2 do3 processo
d 4 d5 matemático
d6 d7 dde d9 d10 e1 e2 e3 e4 e5
quebrar1quebrar
o processo matemático 8 refinamentos
de refinamentos sucessivos, assumindo
ssivos, assumindo     
um erro de um erro de truncamento
truncamento de limite de limite tolerável.
tolerável.
t dígitos significativos da mantissa f e polarizado

s aproximações
Exemplo
xemplo 1.50: d 2 1.50:
d3 aproximações
d5 d6numéricas
d 4numéricas para d8 para
d9 derivada
d7 derivada ded2ª d11de 2 eordem,
ordem, a
e2 aepartir e4 e5
10 1 3
de três pontos
partir de três pontos vizinhos de f(x),
 com espaçamento h:
vizinhos de f ( x ) , com espaçamento h:
Capítulo 1 – Sistemas de Numeração e E

Capítulo 1 – Sistemas de Numeração e Er
t = 10 dígitos significativos de f , depois do ponto polarizado
eCapítulo
Capítulo 1 – Sistemas de Numeração 1e–Erros
Sistemas de Numeração e E
Numéricos
( x0 − h )
f 71
Pg. f ( x0 ) f ( x0 + h )
x −x h x 2
x 3
x0x n
x0 + h
e x ≅ 1 +0 + + + ... +
Podemos 1! 2!somar 3! a série n! de Taylor para f ( x0 + h ) com a de
Podemos
f ( xa0 série
Podemos − h )somar somar
: somar aa sériesérie de
de fTaylor
Taylor para ff (( xx0 ++ hh)) com a de
mos somar 74Podemos de Taylor a série deparaTaylor (para
x0 + f(x h )para com
+ h) com a de 0 a de f(x com – h):a de
ff (( xx0 −− hh)) :: 0 0
− h) : 0 h h2 h3 hn
f ( x0 + = h ) f ( x0 ) + f '( x0 ) h + f ''(h x0 ) h 22 + hf2 '''( x0 ) h33 h+3 ... + f ( n ) ( x0 ) hhnnn + ...
ff ( xx0 ++ h= )+=ffhf'('((2 xxx00)))+1!
hh)))+hf (ffx((0 xx−0 )h) + hf +′( xf0 )''(hx3+)f h′′2!( x0+) f( n'''(
+ f ′′′)( xh 3!n) ...+ +... +f ((fnn())n() x( x0)) hn ! ++...
0 ) h0 +
h ) f ( x0 +)f +( xf00 '(+x= + + ) x ++ ... ...
) + f ''(
0 x ) +0 f1!'''( x f ) 1!
''( x 0)
0 + ...
2! + f2!
f '''(
( x
x )
0 3!
0 3! ... + f ( x00 ) nn!! + ... 206
0
1!
0
2! 1! 0 2! 3! n !
++ h3! h 2 n !h 3
h n
+ f ( x0 ) −hf ′( x0 ) + f ′′h(2x0 ) − f ′′′( xh0 3) − ... + f ( n ) ( x0 ) h n + ...
f ( x0 − = h ) f ( x0 ) − f '( x0 ) h + f ''( 1!x ) 2 − 2! f '''( x0 ) h33 3! − ... + f ( n ) ( x0 ) hnnn! + ...
0 h2
f (x − = hh)) h ff ((xx0 )) −− ffh'('(xx0 )) ++ ff ''(
2 1!
h 3 2!
h −− ff( n'''( h3!
h −−...
n
++ ff ((nn))((xx0 )) hn ! ++...
h ) f ( x0 )f −( xf00 '(−x= ) + f ''(
0 x ) −0 f
1! '''( x ) ''(hxx00−)) ...
2! + f ) x
'''(
( xx00))) 3! + ...
... 0 n! ...
Resultando
Resultando em
0
1! em 0
2! 1! 0 3! 2! 0 3!
n ! n!
Resultando em
ando emResultando f ( x0 + h ) + f ( x0 − =
em h2
h ) 2 f ( x0 ) + 2 f ′′( x0 ) h 22 + 2 f (4) ( x0 ) h 44 + ...
h4
f ( xx0 ++ hh)) ++ ff ((xx0 −− = hh)) 22hff2 ((xx0 )) ++(4) 2 f ′′( x h)4 h2! ++ 22 ff (4) (4)( x ) h 4!
( x00 ) 4! ++...
h ) + f ( x0 f−(= h )0 2 f ( x0 ) + 02 f = ′′( x0 ) + 02 f 2 (fx′′0()x00 ) 2! + ... ...
Isolando a segunda derivada, 2! temos: 4! 2! 4!
Isolando aasegunda
Isolando derivada, temos:
do a segunda Isolando derivada,a segunda
segunda temos:
derivada,
derivada, temos: temos: h2
f ′′( x= 0 ) ( f ( x 0 + h ) + f ( x 0 − h ) − 2 f ( x 0 2) ) h 2
+ f (4)
( x 0 h 2 + ...
) 2
ff ′′′′((xx=
( f ( x0 + h) +0= (
0 )f ( x(0 f−(h
) f ( x + h ) + f ( x
x0)0 −+ 2h)f +( xf )()x00h− h+) − − 2 h ) − 2
(4) f ( x )h) h 2
2 + f (4) ( x ) h
(4)
f 2 (f x(0x)00 ) ) +h ...2+ f ( x200 ) 4! + ...
4! + ...
( 0 ) ) h + O(h ) 4!
0
f ′′( x= 0 ) f ( x + h ) + f ( x 0 − h ) − 2 f ( x04!
ff ′′′′((xx=0= )) (( ff ((xx0 ++ hh)) ++ ff ((xx0 −−2hh)) −− 22 ff2((xx0 )))) hh22 ++ O ((hh22))
( 0 O termo 0de segunda0 ordem
f ( x + h ) + 0 f ( x − h 0) − 2 f ( x ) ) 0 h + O ( h )
O(h2) representa o somatório dos
0 O
OO termo
termo
infinitos de
de segunda
termos segunda truncados ordem
ordem decorrentes representa
O(ho2))somatório
O(h 2
representa
da aproximação oo somatório
somatório em série dos
dos
mo de segunda ordem O(h 2
) representa dos
O
infinitostermo de segunda
termos ordem
truncados O(h 2
) representa
decorrentes dao somatório
aproximação dos infinitos
em série termos
os termosinfinitos
e truncados
podemos termosdefini-lo
decorrentes truncados como da decorrentes
erro de truncamento
aproximação daem aproximação
série da aproximação, em série
eetruncados
podemos
podemos
decorrentes
defini-lo
defini-lo como da aproximação
como erro
erro de
de
em série e podemos
truncamento
truncamento da
da aproximação,
aproximação,
defini-lo como
emos defini-lo como erro
erro de truncamento da aproximação, de truncamento da aproximação,
h2 h4
O(h ) = f ( x0 ) h 2 + f ( x0 ) h 44 + ...
2 (4)
2
(6)

(4) ( xh) h (6) ( x ) h


4 4! 6! + ...
Oh(2h 22) = f (4) + f (6)
O(h 2 ) = f (4) ( x0 )O(h+) f=(6)f( x0()x00 ) 4! + ...+ f ( x00 ) 6! + ...
O erro de truncamento 4! 6! 4!
da aproximação
6!
O(h2) pode ser reduzido
OOcom erro
erro h.de de truncamento
truncamento
Então, desprezando da
daO(h aproximação
aproximação
2esse termo O(h
O(h O(h 2) 2pode ser reduzido
2
) pode
), assumimos ser reduzido um
de truncamento da aproximação ) pode ser reduzido
com h. Então, desprezando esse termo O(h 2
), assumimos um
. Então, com erro h. Então,
de truncamento desprezando de 2ªO(h esse
ordem termoe temos O(huma ), assumimosaproximação um
2
desprezando esse termo 2
), assumimos um
erro
para de
erro de truncamento
f ′′de(truncamento
) dada
x0 2ª porede de 2ª
2ª ordem
ordem ee temos
temos uma uma aproximação
aproximação
e truncamento ordem temos uma aproximação
h2 h4
O(h1 )– =SISTEMAS
CAPÍTULO
2 (4)
f ( x0DE + f ( xE0 )ERROS
(6)
) NUMERAÇÃO + ... 75
4! 6! NUMÉRICOS
O erro de truncamento da aproximação O(h2) pode ser reduzido
com h. Então, O erro de truncamento
desprezando esse da aproximação
termo O(h2) pode um
O(h2), assumimos ser reduzido com h.
Então, desprezando esse termo O(h ), assumimos um erro de truncamento
2
erro de truncamento de 2ª ordem e temos uma aproximação
de 2a ordem e temos uma aproximação para f ''(x) dada por
para f ′′( x0 ) dada por
f ′′( x0 ) ≅ ( f ( x0 + h) + f ( x0 − h) − 2 f ( x0 ) ) h 2

.4 Medida de Erros1.9.4 Medida de erros

Podemos fazer a avaliação de erros numéricos se tivermos a disponibi-


Podemos fazer a avaliação de erros numéricos se tivermos a
lidade do valor exato VE para o resultado desejado. Dessa forma, podemos
ponibilidade do valor
calcular exato VE
qualquer erropara o resultado
numérico desejado.
por meio Dessa apresentadas
das formas
ma, podemos calcular qualquer
anteriormente usandoerro numérico
o valor por meio
aproximado dasVA
obtido formas
e o valor exato VE.
A representação dos erros numéricos em forma de erro relativo (ou percentual)
69
é mais representativa e usual.
Também podemos obter uma estimativa dos erros numéricos, em
resultados de algoritmos numéricos que não têm solução exata conhecida,
utilizando o próprio algoritmo numérico a fim de obter uma estimativa
de valores exatos, ou mais próximos do exato, mas precisaremos usar
mais recursos computacionais, como precisão dupla, para minimizar os
arredondamentos; e mais termos nas séries, mais repetições de cálculos,
entre outros, para minimizar os erros de truncamento.
No Exemplo 1.51, apresentaremos a estimativa de erro de arredon-
damento de um valor VA obtido por algoritmo executado com certa precisão
limitada. Nesse exemplo, podemos estimar um valor mais exato, que
denotaremos por VEe como sendo aquele obtido com o próprio algoritmo
numérico operando com mais precisão, como precisão duplicada, ou seja,
reavaliamos o valor obtido numericamente, no mesmo sistema de numeração
(normalmente binário), mas agora com precisão superior, e esses novos
resultados serão mais exatos.

Exemplo 1.51: estime o erro de arredondamento gerado no armazenamento


de x = (0.1)10 em uma variável binária de 32 bits usando recursos da própria
base binária.
76 CÁLCULO NUMÉRICO COMPUTACIONAL

Solução:
Se simularmos esse cálculo em linguagem C/C++, temos:

x = (0.1)10 armazenado em 32 bits (float) gera o decimal:


x = 0.100000001490116
e
xx = (0.1)10 armazenado em 64 bits (double) gera o decimal:
xx = 0.1000000000000000055511151

que também é um valor aproximado, mas tem o dobro de dígitos exatos em


relação a x.
Logo, podemos obter o erro de arredondamento estimado de x pela diferença
entre VA = x e VEe = xx (estimativa do valor exato):

Erro exato estimado = | VA – VEe |


= |0.100000001490116 – 0.10000000000000001| = 0.1490116 * 10–8

Observe que esse erro é calculado na própria base binária, portanto


usa valores decimais aproximados e mesmo assim gera um erro estimado
compatível com o próprio erro exato.

No Exemplo 1.52, apresentaremos a estimativa de erro de truncamento


de um valor VA obtido numericamente. Podemos estimar um valor mais
exato VEe como sendo aquele obtido com o próprio algoritmo numérico
operando com mais exatidão nas aproximações e mais termos na série
aproximadora. Por segurança, devemos estimar o valor mais exato VEe, em
precisão duplicada, visando minimizar os efeitos de erros de arredondamen-
tos sobre os erros de truncamento.

Exemplo 1.52: calcule o erro de truncamento da aproximação VA(n = 7) que


obtivemos no Exemplo 1.48 para n = 7 parcelas.
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 77

Solução:
O valor aproximado VA(n = 7) obtido com n = 7 é 2.718253968253970, e
sabemos que tem 5 dígitos exatos totais (4 decimais depois do ponto).
Podemos simular um valor exato VEe de referência operando com n maior.
Idealmente obtemos o valor exato com n → ∞, o que normalmente é inviável,
então precisamos estimar um número finito mínimo de parcelas, como
2n = 14 parcelas, gerando o seguinte resultado: 2.718281828458230.

Observe que esse valor VEe também é aproximado, no caso com 2n = 14


parcelas, mas contém bem mais dígitos exatos que o VA(n = 7) inicial. Esse VEe
tem 12 dígitos exatos totais.
Então,

VA(n = 7) = 2.718253968253970 (com n = 7)


VEe = 2.718281828458230 (VEeestimado com 2n = 14)
VEe = 2.718281828459040 (valor exato com infinitas parcelas, limitado a
16 dígitos significativos)

Logo,

Erro exato = | VA(n) – VE | = 0.2786020507 * 10–04


Erro exato estimado = | VA(n) – VEe | = 0.2786020426 * 10–04

Assim, podemos estimar o erro exato usando simulações do valor exato VEe,
mas precisamos otimizar os recursos computacionais necessários para essa
simulação. Observe que, se o valor exato estimado VEe for calculado por
VA com menos parcelas (mas n > 7), também teremos resultados razoáveis:

Erro exato estimado = | VA(n = 7) – VA (n = 14) | = 0.2786020426 * 10–04


Erro exato estimado = | VA(n = 7) – VA (n = 13) | = 0.2786019279 * 10–04
Erro exato estimado = | VA(n = 7) – VA (n = 12) | = 0.2786003220 * 10–04
Erro exato estimado = | VA(n = 7) – VA (n = 11) | = 0.2785794452 * 10–04
Erro exato estimado = | VA(n = 7) – VA (n = 10) | = 0.2783289242 * 10–04
Erro exato estimado = | VA(n = 7) – VA (n = 9) | = 0.2755731922 * 10–04
Erro exato estimado = | VA(n = 7) – VA (n = 8) | = 0.2480158730 * 10–04
78 CÁLCULO NUMÉRICO COMPUTACIONAL

Note que todas essas simulações do erro de truncamento de VA(n = 7) geraram


resultados com a mesma ordem de grandeza, portanto, para essa aproxi-
mação em série de MacLaurin, foi suficiente simular o valor exato, VEe,
com apenas n + 1 parcelas. Assim, o erro estimado | VA(n = 7) – VA (n = 8) | =
0.2480158730 * 10–04 foi da mesma ordem do erro exato.

Os erros estimados anteriormente foram “todos” inferiores ao


critério de parada que utilizamos no Exemplo 1.48, para n = 7 parcelas,
| VA(n) – VA (n – 1) | = 1.9841269841 * 10–04. Logo, podemos usar o critério
de parada como limite superior do erro de truncamento estimado, nesse
tipo de aproximação, considerando que, se o critério de parada já é aceito
como suficientemente pequeno, o erro exato será ainda menor.

Um cálculo com mais exatidão, para servir de estimativa do valor exato,


naturalmente exige mais recursos computacionais, mas deve ser aplicado
para validação dos resultados obtidos por algum critério de parada, conforme
veremos detalhadamente para cada tipo de aproximação numérica aplicada
ao longo deste livro.
Por fim, existem formas alternativas de estimar valores exatos do
resultado desejado que minimizam os erros numéricos de arredondamento
e/ou truncamento além das presentes no escopo deste livro. São elas:

a) simulações numéricas utilizando matemática intervalar: possibi-


.litam limitar o erro existente a um intervalo aritmético;
b) variável de comportamento estatístico: possibilita prever os limites
.do erro segundo um tratamento estatístico das variáveis envolvidas;
c) simulação do algoritmo em Sistemas de Computação Algébrica
.(SCA): possibilita recorrer a simulações com precisão ilimitada e,
.em alguns casos especiais, proceder à simulação exata do algoritmo;
d) aritmética discreta de corpos finitos: possibilita que todos os
.elementos de um corpo tenham uma representação na memória
.do computador, portanto não há erros de arredondamento, sendo
.possível utilizá-la especificamente para problemas discretos,
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 79

.como aqueles encontrados em criptografia, códigos de correção


.de erros, filtros digitais etc.; e

e) representação de números fracionários: baseada no padrão IEEE


.chamado de unum (universal number), possibilita uma série de
.vantagens na sua representação para evitar os arredondamentos,
.adicionando aos campos bit de sinal, expoente e mantissa, já
.conhecidos, mais três campos (utag): um bit que marca se o número
.é exato ou se está entre valores exatos (ubit), um campo para o
.tamanho do expoente e outro para o tamanho da fração, entretanto
.ainda não está difundida nas linguagens de programação comerciais
.(GUSTAFSON, 2015).

Saiba mais sobre essa inovadora proposta no livro The End of Error: unum computing, de
 John Gustafson, conhecido pela formulação da Lei de Gustafson.

1.10 CONCLUSÕES
O perfeito entendimento das causas dos erros numéricos, gerados
em calculadoras e computadores, é um fator decisivo para que você, como
analista numérico, possa fazer a escolha do método computacionalmente mais
eficiente e a validação dos resultados. Assim, para resolver um determinado
modelo matemático, o analista numérico deve se preocupar com:

a) a escolha de métodos de resolução com menor número de operações


aritméticas envolvidas; e
b) a escolha de uma linguagem de programação para implementar
o algoritmo que represente as variáveis envolvidas com precisão
suficientemente grande.

No final de todo o processo, o analista numérico deve ser capaz de:

a) obter uma solução de custo mínimo, ou seja, com menor demanda


de memória utilizada e menor tempo de processamento; e
80 CÁLCULO NUMÉRICO COMPUTACIONAL

b) dimensionar o grau de confiabilidade dos resultados obtidos como


solução do modelo matemático, ou seja, apresentar o resultado
obtido e o seu erro máximo.

Lembre-se de que obter resultados de algoritmos numéricos é


relativamente fácil, pois qualquer algoritmo compilado gera resultados
numéricos. Para assegurar que esses resultados são as respostas esperadas,
é necessária a estimativa dos erros numéricos associada à solução
aproximada do modelo matemático.

A estimativa dos erros numéricos de truncamento associada à solução aproximada


do modelo matemático será discutida ao longo de cada capítulo deste livro.
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 81

COMPLEMENTANDO...
Nesta seção, detalharemos os conceitos de alguns termos utilizados no Capítulo 1.

Arredondamento decimal
O objetivo de um arredondamento é representar o número com menor
número de dígitos significativos totais e ainda minimizar os erros decorrentes
dessa redução de significativos, seja qual for a base. Vamos detalhar esse
conceito através do exemplo a seguir.
Exemplo 1.53: represente os seguintes números decimais com 4 dígitos
significativos totais:

a) 32.4374 = 32.43 + 0.74 * 10–2


Solução:
Aqui precisamos definir o que fazer com a parcela 0.74 * 10–2, que
corresponde aos 2 dígitos menos significativos dessa representação.
Podemos aproximá-la para 1.00 * 10–2 ou para 0.00 * 10–2, e o critério
de escolha deve ser tal que o resultado vai gerar o menor erro no
número final arredondado, ou seja,
i) se 0.74 * 10–2 ≅ 1. * 10–2, o erro é 0.26 * 10–2; e
ii) se 0.74 * 10–2 ≅ 0. * 10–2, o erro é maior, 0.74 * 10–2.
Logo, 32.4374 = 32.43 + 0.74 * 10–2 ≅ 32.43 + 1. * 10–2 ≅ 32.44

b) 32.4324 = 32.43 + 0.24 * 10–2


Solução:
Aqui também precisamos definir o que fazer com a parcela
0.24 * 10–2, e aproximar 0.24 * 10–2 ≅ 0. * 10–2 gerará menor erro.
Logo, 32.4324 = 32.43 + 0.24 * 10–2 ≅ 32.43 + 0. * 10–2 ≅ 32.43
82 CÁLCULO NUMÉRICO COMPUTACIONAL

c) 32.4350 = 32.43 + 0.50 * 10–2


Solução:
Podemos aproximar a parcela 0.50 * 10–2 para 1.00 * 10–2 ou para 0.00
* 10–2, e nesse caso o erro gerado é o mesmo. Então, recorremos a

um critério de distribuição dos erros para esse grupo de números


que tenham fração 0.50, de modo que alguns números ganhem um
pouco (aproximando para 1.00 * 10–2) e outros percam um pouco
(aproximando para 0.00 * 10–2). Para isso, fazemos uma distribuição
estatística, de modo que 50% dos números ganhem um pouco e outros
50% percam um pouco. Isso foi padronizado com critério baseado no
dígito anterior à parcela a ser arredondada, que pode ser um número
par ou um ímpar, com 50% de chances em cada caso. Assim, para os
números com dígito anterior par, convencionou-se arredondar para
0.00 * 10–2, e para números com dígito anterior ímpar, convencionou-se
arredondar para 1.00 * 10–2. Nesse exemplo, arredondamos a parcela
0.50 * 10–2 para 1.00 * 10–2 (pois o dígito anterior 3 é ímpar).
Logo, 32.4350 = 32.43 + 0.50 * 10–2 ≅ 32.43 + 1. * 10–2 ≅ 32.44

d) 32.4450 = 32.44 + 0.50 * 10–2


Solução:
Nesse exemplo, arredondamos a parcela 0.50 * 10–2 para 0.00 * 10–2
(pois o dígito anterior 4 é par).
Logo, 32.4450 = 32.44 + 0.50 * 10–2 ≅ 32.44 + 0. * 10–2 ≅ 32.44

Precisão
Precisão é um conceito objetivo que estabelece a quantidade de algarismos
significativos que representam um número. A precisão de uma representação
digital, de uma variável, por exemplo, é definida como o número de dígitos
significativos totais da mantissa na base β de armazenamento; e precisão
decimal equivalente d baseada nos d significativos decimais equivalentes.
Assim, para variáveis de 32 bits padrão IEEE 754, com v = (–1)s(1.f)22e – 127,
temos t = 23 bits depois do ponto (vírgula), uma precisão binária total de
24 bits (1 + t) e precisão decimal equivalente de 7 a 8 significativos.
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 83

A precisão decimal d equivalente pode ser definida pela equivalência


direta da faixa de abrangência entre os dígitos mais e menos significativos
em cada base; pela equivalência direta entre os expoentes dos dígitos menos
significativos da mantissa em cada base; e pela verificação direta do número
de dígitos decimais exatos que podem ser armazenados.

Faixa de abrangência entre os dígitos mais e menos


significativos em cada base
Para variáveis de 32 bits padrão IEEE 754, temos um total de 24 bits de
precisão binária, pois existe um dígito implícito antes do ponto (vírgula), d1 = 1.
A mantissa total de dígitos significativos é dada por:
v = (d1.d2d3...d22d23d24)2, logo:

a) o dígito binário mais significativo está antes do ponto (vírgula),


d 1 = 1, que não é armazenado nos 32 bits, e equivale a:
Dmsb = (1.00000000000000000000000)2 = 1 * 20 = 1.0;

b) o dígito binário menos significativo está no 23o registro armazenado,


d24, pois temos t = 23 bits depois do ponto (vírgula) e equivale a:
Dlsb = (0.00000000000000000000001)2 = 1 * 2–23 = 1.1920928955 * 10–7

23o registro armazenado


O expoente decimal correspondente ao dígito binário menos significativo é considerado
 a representação da precisão decimal equivalente da variável no padrão IEEE. No Octave o
valor do bit menos significativo é armazenado na função eps.

Se somarmos esses dois valores, teremos a faixa de abrangência


representada pelos dígitos em binário ou em decimal:

Dmsb = 1 * 20 = 1.0 * 100 – 1o dígito decimal, antes


do ponto.
Dlsb = 1 * 2–23 = 1.1920928955 * 10 –7
– 7o dígito decimal, depois
do ponto.
Dmsb + Dlsb = (1.00000000000000000000001)2 – 24 dígitos binários totais
(sublinhados).
= (1.0000001 190928955)10 – 8 dígitos decimais totais
(sublinhados).
84 CÁLCULO NUMÉRICO COMPUTACIONAL

Podemos concluir que a precisão decimal é de até 8 dígitos decimais


equivalentes (limite máximo).

Para representações fora do padrão IEEE 754, como a antiga variável


de 16 bits, temos de considerar que o primeiro dígito binário também é
fixo, d1 ≠ 0 = 1, mas posicionado à direita do ponto (vírgula) e ocupa um
registro binário, que tem t = 10 bits significativos totais.
Nesse caso, o binário mais significativo seria:
Dmsb = (0.1000000000)2 = 1 * 2–1 = 0.5,
e o binário menos significativo seria:
Dlsb = (0.0000000001)2 = 1 * 2–10 = 0.009765625 = 9.765625e – 4,
cuja faixa de abrangência dos valores representados pelos dígitos, em
binário ou em decimal, é
= (0.1000000001)2 – 10 dígitos binários totais (sublinhados); e
= (0.5009765625)10 – 4 dígitos decimais totais (sublinhados).
Assim, podemos concluir que a precisão decimal é de até 4 dígitos
decimais equivalentes. Capítulo 1 – Sistemas de Numeração e Erro
Capítulo 1 – Sistemas de Numeração

Equivalência direta entre os expoentes dos dígitos


Equivalência direta entre os expoentes dos dígitos menos significativos
menos
Equivalência significativos
direta entre os expoentes dos dígitos menos significativos
Na representação de 32 bits padrão IEEE 754:
Na
Narepresentação
representação debits
de 32 padrão
32 bits IEEE IEEE
padrão 754: 754:
s e1 e2 e3 e4 e5 e6 e7 e8 d2 d3 d4 ... d23 d24
s e1 e2 e3 e4 e5 e6 e7 e8 d2 d3 d4 ... d23 d24
t = 23 dígitos binários significativos, da mantissa f
t = 23t =dígitos binários
23 dígitos significativos,
binários da
significativos damantissa
mantissa f
a sua menor representação binária possível é 2 (t = 23 é o –t

a sua menor representação binária épossível = 23é é2o número


–t
(t = 23 de
éo
a sua
número menor
de representação
bits depois do binária
pontopossível
(vírgula)2–t e(t representa o bit bits
número
depois do de bits
ponto depois
(vírgula) do pontoo bit
e representa (vírgula) e representa o bit
menos significativo).
menos significativo).
menos significativo).
NaNa representação
representação de uma
de uma calculadora
calculadora científica
científica decimal decimal
comumco-
Na representação de uma calculadora
d = 10 significativos): científica decimal comum
(ex.mum
para(ex.
d =para
10 significativos):
(ex. para d = 10 significativos):
s1 d1 d2 d3 d4 d5 d6 d7 d8 d9 d10 s2 e1 e2
s1 d1 d2 d3 d4 d5 d6 d7 d8 d9 d10 s2 e1 e2
t = 9 dígitos
t = 9 dígitos significativos da significativos
mantissa f, daapós f após o ponto
o ponto
mantissa
t = 9 dígitos significativos da mantissa f, após o ponto
O decimal equivalente a d10 é 10–(d–1) (d – 1 é o número de dígitos
O decimal equivalente a d10 é 10–(d–1) (d – 1 é o número de dígitos
decimais depois do ponto (vírgula) e representa o dígito menos
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 85

O decimal equivalente a d10 é 10–(d – 1) (d – 1 é o número de dígitos


decimais depois do ponto (vírgula) e representa o dígito menos significativo
da calculadora), então existe uma equivalência entre a representação binária
de t + 1 bits totais e a decimal de d decimais:

2–((t + 1)–1) = 10–(d – 1)


2–t = 101 – d
d = 1 + t * log (2)
d = 7.92368990 (para t = 23 bits, depois do ponto (vírgula))

Portanto, temos uma precisão decimal equivalente entre d = 7 e 8


decimais significativos, ou seja, uma calculadora científica de 8 decimais
seria suficiente para armazenar os 1 + t = 24 bits de forma exata.

Verificação direta do número de dígitos decimais


exatos que podem ser armazenados
Trata-se de um teste direto (experimentação numérica), no qual
podemos armazenar um decimal exato conhecido na variável que se deseja
testar a precisão decimal. Assim, se tomarmos os decimais conhecidos, a
seguir, e armazenarmos em uma variável de 32 bits padrão IEEE 754, usando
um tipo float no C, Java, entre outros, teremos:

a) (1/3) ≅ 0.333333343267441•
0.333333333333333...••

temos 7 decimais exatos
••
valor exato

b) (1234567890123456789012345) ≅ 1.23456794679859e + 24•


1.23456890123456789012345e + 24••

temos 7 decimais exatos
••
valor exato
86 CÁLCULO NUMÉRICO COMPUTACIONAL

c) (0.100000000)10 ≅ (0.100000001490116)10•
0.1000000000000000000000000••

temos 8 decimais exatos
••
valor exato

Assim, essa variável padrão IEEE 754 de 32 bits totais tem entre
7 e 8 dígitos decimais equivalentes. Isso significa que todos os números
armazenados neste padrão têm pelo menos 7 dígitos decimais significativos
“exatos”, e alguns têm até 8 dígitos “exatos”.

Também usamos o termo precisão para qualificar o número de


dígitos significativos convergidos em resultados aproximados por métodos
iterativos, quando a solução exata está indisponível.

Exatidão
Exatidão é um conceito subjetivo e diz respeito à forma que melhor
representa uma grandeza numérica, ou seja, uma representação é mais exata
quando tem o menor erro em relação ao seu valor exato. Então, usamos o
termo exatidão para qualificar resultados aproximados quando a solução
exata está disponível.
Por exemplo, se o valor de π exato (3.1415926535...) é representado por:

a) 3.14 → precisão de 3 dígitos decimais (erro = 0.0015926535),


π exato arredondado com 3 dígitos é o mesmo 3.14, então a exatidão
também é de 3 dígitos decimais;
b) 3.151 → precisão de 4 dígitos decimais (erro = 0.0094073465),
π exato arredondado com 4 dígitos é 3.142, então 3.151 tem apenas
2 dígitos decimais exatos 3.1;

c) 3.1415 → precisão de 5 dígitos decimais (erro = 0.0000073465),


π exato arredondado com 5 dígitos é 3.1416, então 3.1415 tem
apenas 4 dígitos decimais exatos 3.141.
CAPÍTULO 1 – SISTEMAS DE NUMERAÇÃO E ERROS NUMÉRICOS 87

Note que, se classificarmos esses números quanto à sua exatidão,


teríamos que: (a) está mais próximo do π exato do que (b); (b) é menos
exato do que (c); e (c) é o mais exato de todos.
Normalmente, os resultados mais exatos (com menores erros) são
obtidos com as representações mais precisas (com mais dígitos significativos
representados).

Você encontrará exercícios atualizados e revisados de todos os capítulos deste


livro no Caderno de Exercícios e Respostas disponível no link: <http://sergiopeters.
prof.ufsc.br/exercicios-e-respostas/>.
Faça o download do Caderno e reforce o seu aprendizado realizando os exercícios.
CAPÍTULO 2

SOLUÇÃO
COMPUTACIONAL
DE SISTEMAS
DE EQUAÇÕES
LINEARES

OBJETIVOS ESPECÍFICOS DE APRENDIZAGEM


Ao finalizar este capítulo, você será capaz de:
■■ executar a implementação computacional de métodos eli-
minativos para solver sistemas de equações lineares com
poucos coeficientes nulos, embora estes tenham problemas
de acúmulo de erros de arredondamento, especialmente os
sistemas mal condicionados; e
■■ executar a implementação computacional de métodos ite-
rativos clássicos para solver sistemas de equações lineares
com muitos coeficientes nulos.
f (1/ n) = ( n +1) *1/ n −1 = 1+1/ n −1 = 1/ n
Pg. 70
exp( x) = ex
x x 2 x3 xn
ex = 1+ + + + ... + + ...
1! 2! 3! n!
pg. 71
x x2 x3 xn
f ( x0 + x) = f ( x0 ) + f ′( x0 ) + f ′′( x0 ) + f ′′′( x0 ) + ... + f ( n ) ( x0 ) + ...
1! 2! 3! n!
f ′( x0 = 0) = e = 1
0

f ′′( x0 = 0) = e 0 = 1
x x 2 x3 xn
ex = 1+ + + + ... + + ...
1! 2! 3! n!
Pg. 73
f ′(x) Vamos estudar neste capítulo a implementação computacional de
f ′(x)métodos básicos para solver sistemas de equações lineares densos ou
Pg. 74 esparsos (com muitos coeficientes nulos), de acordo com métodos clássicos
h h2 h3 hn
f ( x0disponíveis
+ h ) + f ( x0 −na
h )literatura
= f ( x0 ) + f ,′(objetivando
x0 ) + f ′′( x0 ) resolver
+ f ′′′( x0os
) sistemas
+ ... + f ( n )que
( x0 ) surgem
+ ... nos
1!
modelos matemáticos abordados nos cursos de graduação. 2! 3! n ! ~
h h2 h3 hn
+ f ( x0 ) − f ′( x0 ) + f ′′( x0 ) − f ′′′( x0 ) − ... + f ( n) ( x0 ) + ...
Utilizamos a palavra "solver" em vez1! 2! o intuito de3!lembrá-lo de que devemos
de "resolver" com n ! escolher
 o método mais adequado para obter a solução de determinado problema matemático, assegurar a sua
Pg. 75 qualidade e não apenas reproduzir resultados.
f ′′( x0 )
Pg. 83 As obras Análise numérica, de Burden e Faires, e Numerical Mathematics and Computing, de Cheney e
v = ( d1. d 2Kincaid, 22 d 23 d 24 ) 2
d 3 … dsão excelentes referências para estudo dirigido.

Pg. 85
Um sistema de n equações
(1234567890123456789012345 lineares a ne +incógnitas
) ≅ 1.23456794679859 24 é toda expressão
do tipo:
1.234567890123456789012345e + 24
Pg.91
 a11 x1 + a12 x2 + ⋯ + a1n xn = b1  a11 a12 ⋯ a1n   x1  b1 
a x + a x + ⋯ + a x = b a a22 ⋯ a2 n   x2  b2 

A * X = B   21 1 22 2 2n n 2
  21 (1)
=
⋯ ⋮  ⋮  ⋮  (1)
*
 ⋮ ⋮ ⋮
 an1 x1 + an 2 x2 + ⋯ + ann xn = bn  an1 an 2 ⋯ ann   xn  bn 

Pg. 92
 a11 a12 ⋯ a1n ⋮ a1n +1 
emquea21 A
a22é a⋯ matriza2 n de 
⋮ acoeficientes,
2 n +1 
X é o vetor de incógnitas, B é o vetor
[ A Bde
] = termos independentes e n
 é a ordem do sistema. Dessas três notações,
⋮ ⋮ ⋯ ⋮ ⋮

a primeira 
apenas facilita o uso algébrico do sistema linear, a segunda é a
 an1 an 2 ⋯ ann ⋮ ann +1 
forma desenvolvida, e a terceira é a forma matricial que possibilita a sua
Pg. 100
i = n implementação computacional.
xi = ai ,n+1 / aii
Pg. 104
R = [ A * S − B]
que A é a matriz de coeficientes, X é o vetor de incógnitas e B é
etor de termos
VA( n=7) independentes. Dessas três notações, a primeira
92 o uso algébrico do sistema linear, eCÁLCULO
enas facilita a terceira possibilita
NUMÉRICO COMPUTACIONAL

VA 76
( n = 7)
ua implementação
Pg computacional.
A seguir,Aum exemplo
seguir, de sistema
um exemplo dede
de sistema equações lineares:
equações lineares com n = 3:
VA( n=7)
No capitulo 2 tentar manter uma alinhamento lateral esquerdo para as m
mesma 0.448 x1 + 0.832 x2 + 0.193 x3 = 1Pg 76
77 pagina, se possível.
 0.421x1 + 0.784 x2 − 0.207 x3 = 0 (2) (2)
92 VA( n=7)
VA −0.319
( n = 7) x1 + 0.884 x2 + 0.279 x3 = 0
77
 0.448 0.832 0.193   x1  1 
VA ( n = 7)
 0.421 0.784 − 0.207  *  x  =  0 
   2  VA ( n=7)
 − 0.319 0.884 0.279   x3   0 
No capitulo 2 tentar manter uma VAalinhamento
( n = 7) lateral esquerdo para as mat
mesma pagina, se possível.
 a11 a12 ⋯ a1n ⋮ a1, n +1 
  n equações de um sistema de
Podemos
 a21 também a2 n ⋮ a2, nas
a22 ⋯ armazenar +1 
[ A ⋮ B ] =lineares
92
equações através No capitulo
 de dados2 matricial
tentar manter umatalalinhament
⋮ ⋮ ⋯de uma ⋮ estrutura
⋮ única. Para
representação  matricial do sistema (1), mesma
vamos pagina,
 adotar se possível.
a estrutura em forma de
 0.448 0.832 ⋯ ann x1 ⋮ an,1n +1 
an1 an 2 0.193
matriz
 0.421 expandida, que consiste noarmazenamento da matriz de coeficientes
A[ A ⋮ B ] 0.784
concatenada 0.207  de
com a− coluna * x2 =
termos
    920 
independentes B, de forma que cada

linha
 − 0.319 0.884 0.279
dessa matriz expandida   x3   uma
 
 armazene  0 
 equação, conforme sistema (3):
95  0.448 0.832 0.193   x1  1 
aij  a11 a12 ⋯ a1n

⋮ a1,n +10.421
 0.784 − 0.207  *  x 2  =  0 
⋮ a2, n−+10.319 0.884 0.279   x3   0 
 
a a ⋯ a2 n
[ A ⋮ B ] =  21 22
100 

(3)
⋮ ⋮ ⋯ ⋮ ⋮
xi = ai , n +1 / aaii   a11 a12 ⋯ a1n ⋮ a1, n +1 
 n1 an 2 ⋯ ann ⋮ an , n +1   
 a21 a22 ⋯ a2 n ⋮ a2, n +1 
[ A
101
⋮ B ] [ A ⋮ B ] 
=
⋮ ⋮ ⋯ ⋮ ⋮ 
 
95
a) an1,
Note na matriz expandida que ai, n + 1 = bi , i = 1 2,a...,
n 2 n.⋯ ann ⋮ an , n +1 
Nos algoritmos,
anormalmente
ij j = 1expandida [ A ⋮ B ] será denotada e armazenada
a matriz
como única matriz  − 0.319
A. 0.884 0.279 ⋮ 0  (maior módulo está na linha i
100  0.421
 0.784 95− 0.207 ⋮ 0 
xi = ai , n +1 / aii i = 3  (0.448) 0.832 aij 0.193 ⋮ 1 
A solução de um sistema de equações lineares A * X = B é toda matriz
coluna 100 A * S = B. Quanto à sua solução S,
S que o satisfaça, isto é, tal que
101
b)
um sistema de equações lineares pode ser possível e determinado, quando S
xi = ai , n +1 / aii
a) único; possível e indeterminado, quando
for  − 0.319 0.884 0.279 existirem infinitas
⋮ 0  L1 ← L3 soluções S; e
j =1
impossível, quando
 não existir − 0.207S.⋮ 0 
uma solução (troca da linha L1 com
 −0.421 0.784 101
0.319 0.884 0.279 ⋮ 0  (maior módulo está na linha i=
 (0.448) 0.832 0.193 ⋮ 1  L ← L
 0.421
 0.784 a)− 0.207 ⋮ 0  3 1

versa) i = 3  (0.448) 0.832 0.193 ⋮ 1  j =1


 − 0.319 0.884 0.279 ⋮ 0 
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 93

Desconsiderando o método direto de Cramer devido à sua ineficiência,


os métodos de solução de sistemas de equações lineares podem ser agrupados
em três famílias:
a) Métodos eliminativos: nesta metodologia, transformamos a
matriz A do sistema A * X = B em uma matriz mais simples, porém
preservando a solução S do sistema original. Isso é sempre possível
quando fazemos uso das operações elementares sobre linhas da
matriz representativa do sistema. Tais operações são a troca de
linhas, a adição de linhas, bem como a multiplicação de uma linha
por uma constante não nula. Da álgebra linear sabemos que tais
operações não alteram a solução S do sistema, uma vez que uma
operação elementar sobre uma linha equivale a uma operação so-
bre a respectiva equação.
b) Métodos iterativos: nesta metodologia, para solver A * X = B,
inicialmente atribuímos um candidato X(0) para a solução S e
posteriormente geramos uma sequência recursiva de vetores coluna
X(k), k = 1, 2, ..., cujo limite, se existir, será a solução S procurada.
c) Métodos de otimização: nesta metodologia, partindo do sistema
A * X = B, geramos uma função matricial F(X) = XT * A * X –2 * BT * X
(em que T indica transposta) e tentamos obter o seu mínimo
funcional, que é sempre a matriz A–1 * B, justamente a solução S
do sistema linear.
Devido à complexidade algébrica dos métodos de otimização, que está fora do
escopo deste livro, não apresentaremos nenhum método dessa família.

O método de Cramer é um teorema da álgebra linear que fornece a solução de um sistema de equações
 lineares em termos de n + 1 determinantes. Para saber mais, consulte: <https://pt.wikipedia.org/wiki/
Regra_de_Cramer>. Acesso em: 26 set. 2016.

2.1 SOLUÇÃO ELIMINATIVA DE A * X = B


A solução eliminativa de A * X = B é normalmente utilizada em sistemas
lineares com matrizes densas (com poucos coeficientes nulos) e de ordem
n de porte médio (valor relativo ao processador utilizado).
A seguir, vamos apresentar alguns algoritmos de métodos eliminativos mais
comuns, avaliar os erros que afetam as soluções fornecidas, bem como a sua
complexidade computacional.
O método de eliminação de Gauss consiste em aplicar um
O método de eliminação de Gauss consiste em aplicar um
conjunto
94 de operações elementares em um sistema linear com o
conjunto de operações elementares em um sistema
CÁLCULO NUMÉRICOlinear com o
COMPUTACIONAL
objetivo de torná-lo um sistema de resolução mais simples. Usando
objetivo de torná-lo um sistema de resolução mais simples. Usando
esse conjunto de operações, podemos alterar sua matriz expandida,
esse conjunto de operações, podemos alterar sua matriz expandida,
de modo 2.1.1
que a Método de eliminação
matriz inicial de Gauss
seja transformada em uma matriz
de modo que a matriz inicial seja transformada em uma matriz
triangular, superior ou inferior, visando simplificar o sistema de
O método
triangular, superior de eliminação
ou inferior, de visando
Gauss consiste em aplicar
simplificar um conjunto
o sistema de
equações
de para
operações que a sua
elementares solução
em um possa
sistema ser
linearobtida
com o diretamente
objetivo de por
torná-lo
equações para que a sua solução possa ser obtida diretamente por
substituições
um sistema deretroativas
resolução mais ou sucessivas,
simples. Usando respectivamente.
esse conjunto de operações,
substituições retroativas ou sucessivas, respectivamente.
podemos
Esse alterar
processosua matriz expandida,também
de eliminação, de modo denominado
que a matriz dosescalona-
coeficientes
Esse processo
seja transformada de
em uma eliminação, também
matriz triangular, denominado
superior escalona-
ou inferior, visando
mento, é obtido através da aplicação sucessiva de operações elemen-
mento, é obtido
simplificar através
o sistema deda aplicação
equações parasucessiva
que a suade operações
solução possaelemen-
ser obtida
tares sobre linhas na matriz expandida, buscando anular elementos
diretamente
tares sobre linhaspor substituições retroativasbuscando
na matriz expandida, ou sucessivas, respectivamente.
anular elementos
não nulos para
Esse torná-la
processo uma matriz
de eliminação, triangular. Podemos associá-lo
escalonamento,
não nulos para torná-la uma matriztambém denominado
triangular. Podemos associá-lo
a um processo
é obtido atravésdedapivotamento
aplicação sucessivaparcial ou total que
de operações promove
elementares a troca
sobre linhas
a um processo de pivotamento parcial ou total que promove a troca
seletiva de expandida,
na matriz linhas (oubuscando
colunas)anular visando tomarnão
elementos pivôs
nulos(elementos
para torná-la
seletiva
uma de linhas
matriz (ou Podemos
triangular. colunas)associá-lo
visandoatomar um pivôsde
processo (elementos
pivotamento
das diagonais principais) com maior módulo possível, para evitar
dasparcial
diagonais
ou principais)
total que promove com a maior
troca módulo
seletiva de possível,
linhas (ou para
colunas) evitar
visando
a presença de pivôs nulos e minimizar a acumulação de erros de
a presença de pivôs nulos e minimizar a acumulação
tomar pivôs (elementos das diagonais principais) com maior módulo possível, de erros de
arredondamento.
para evitar a presença de pivôs nulos e minimizar a acumulação de erros de
arredondamento.
arredondamento.
Exemplo 2.1: resolva o sistema de equações lineares, a seguir,
Exemplo 2.1: resolva o sistema de equações lineares, a seguir,
pelo
Exemplométodo de eliminação
2.1: resolva o sistema de de Gausslineares,
equações (sem atrocas
seguir,depelolinhas
método de
pelo método
eliminação de de eliminação
Gauss (sem trocas delinhas
de Gausse/ou (sem trocas
colunas) de linhas
adotando operações
e/ou colunas) adotando operações aritméticas com apenas 4
e/ou colunas)
aritméticas com adotando
apenas 4 operações
dígitos aritméticas
significativos totais com
e apenas
arredondamento4
dígitos significativos totais e arredondamento ponderado, para
dígitos significativos
ponderado, totais eo arredondamento
para exemplificar efeito do acúmulo de ponderado, para
arredondamentos.
exemplificar o efeito do acúmulo de arredondamentos.
exemplificar o efeito do acúmulo de arredondamentos.
 0.448 x1 + 0.832 x2 + 0.193 x3 =1
 0.448 x1 + 0.832 x2 + 0.193 x3 =
 1
 0.421x1 + 0.784 x2 − 0.207 x3 =
 0
 0.421x1 + 0.784 x2 − 0.207 x3 =
 0

−−0.319 x1 + 0.884 x2 + 0.279 x3 =
0
 0.319 x1 + 0.884 x2 + 0.279 x3 =0
Solução:
Solução:
Solução:
Na forma matricial, temos:
Na forma
Na formamatricial,
matricial,temos:
temos:
 0.448 0.832 0.193   x1  1 
 0.448 0.832 0.193   x  1 
−0.207  *  x12  =
 0.421
0.421
0.784
0.784 −0.207  *  x2  = 0
0
 −0.319 0.884 0.279   x3   0 
 −0.319 0.884 0.279   x3   0 
o Computacional CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 95

E, naE,forma de matriz
na forma expandida,
de matriz temos: temos:
expandida,

 0.448 0.832 0.193 M 1


A =  0.421 0.784 −0.207 M 0 
 −0.319 0.884 0.279 M 0 

Processo de Triangularização
Processo de triangularização
O processo de triangularização deve seguir uma sequência
otimizada
O processo de passos deve
de triangularização k (que definem
seguir um algoritmo).
uma sequência Nessek
otimizada de passos
(quecaso,
definem
cada algoritmo).
umpasso Nesse caso, cada
k corresponderá passo k corresponderá
à utilização da linha i = kà
utilização da linha i =osk coeficientes
para eliminar para eliminarda
os coluna
coeficientes coluna joperações
j = kdausando = k usando
operações elementares sobre linhas.
elementares sobre linhas.

Os índices comumente utilizados para acessar um elemento de


Os índices
uma matriz comumente
aij são: utilizados
i, para acessar a linha para acessar
(1o índice); e j,um
paraelemento
acessar a
coluna
de(2uma
o
índice),
matriz aij são:
enquanto i, parak vai
o índice definiraoslinha
acessar passos
(1ºdoíndice);
algoritmo.
e
A i-ésima
j, paralinha é denotada
acessar por L(2º
a coluna i
j-ésima enquanto
, e aíndice), coluna é denotada
o índicepor Cj.
k vai
definir os passos do algoritmo. A i-ésima linha é denotada por
Li , e a j-ésima coluna é denotada por Cj.
Vamos acompanhar os passos de resolução do Exemplo 2.1 para depois estabelecê-
los na forma de algoritmo computacional.

Primeiro passo: definido pelo índice k = 1, usamos a primeira linha i = 1


Vamos acompanhar
(em negrito) para eliminarosa primeira
passos de resolução
coluna j = 1 das Exemplo
dolinhas abaixo2.1 para
da linha
i = 1.depois
Poderíamos estabelecer
estabelecê-los outrade
na forma ordem para computacional.
algoritmo as operações elementares
sobre linhas, mas vamos adotar um algoritmo genérico que independa dos
valores dos coeficientes e use o menor número de operações aritméticas
possível. Então,passo:
Primeiro nesse primeiro
definidopasso,
pelo substituímos
índice k=1, as linhas ia =primeira
usamos 2ei=3
pelo linha
resultado da subtração delas próprias com
i=1 (em negrito) para eliminar a primeira a linha i = 1 multiplicada
coluna j=1
Capítulo 2 – Solução Computacional de Sistemas
por um fator adequado, de tal modo que as suas colunas j = 1 sejam zeradas,
das linhas abaixo da linha i=1. Poderíamos estabelecer outra
logo:
ordem para as operações elementares sobre linhas, mas vamos
adotar
 0.448 um algoritmo
0.832 0.193 M 1  genérico que independa dos valores dos
 0.421
coeficientes e useM o0 menor
0.784 −0.207 L ← L2número de operações
− (0.421 / 0.448 ) L1 ⇒ L2 ← aritméticas
L2 − 0.9397 L1
  2
possível.
 −0.319 0.884 Então,
0.279 nesse
M 0  L3primeiro passo,
← L3 − ( −0.319 substituímos
/ 0.448 ) L1 ⇒ L3 ← L3as linhas
+ 0.7121 L1
i=2 e i=3 pelo resultado da subtração delas próprias com a
Observações:
linha i=1 multiplicada por um fator adequado, de tal modo que
Observações:
96 a) Na linha L3 , por exemplo, CÁLCULO NUMÉRICO COMPUTACIONAL

L3 ← L3 − (−0.319 / 0.448) L1 ⇒ L3 ← L3 + 0.7121 * L1 ,

Observações:
no elemento i=3 e j=1, teremos a seguinte operação de

Na linha La31, =por


a) eliminação: 3
a31 − (−0.319 / 0.448)
exemplo, L ← aL11 –(–0.319 / 0.448)L
3 3 1

a31 L=− ← + 0.7121 * L1, / 0.448)0.448 = 0 (na ausência de
3 0.319 − ( −0.319
no elemento i = 3 e j = 1, teremos a seguinte operação de eliminação:
arredondamentos).
a31 = a31podemos
Então, / 0.448)o afator
–(–0.319definir 11 multiplicativo sempre como
aa 31razão
= –0.319
entre o valor do coeficiente =
–(–0.319 / 0.448) 0.448 0 (na
que ausência
deve de arredon-
ser zerado eo
damentos).
valor do coeficiente pivô (diagonal principal) da linha
Então, podemos definir o fator multiplicativo sempre como a
correspondente
razão entre o valor ao passo, i=k. Esse mesmo
do coeficiente fator
que deve multiplicativo
ser zerado e o valor
deve ser aplicado na operação elementar sobre toda
do coeficiente pivô (diagonal principal) da linha correspondente a linha
ao passo,
i=3, i = k.asEsse
em todas suasmesmo
colunas fator
j. multiplicativo deve ser aplicado
na linhas
b) As operação2 e 3elementar sobre toda
sofrem alterações através da iadição
a linha = 3, em todas
dos as suas
termos
colunas j.
–0.9397 * L e 0.7121 * L , ou seja, se esses termos adicionais
1 1

b) tiverem
As linhasarredondamentos, serão levados
2 e 3 sofrem alterações atravéspara as linhas
da adição dos2 etermos
3
resultantes.
–0.9397 * L1 e 0.7121 * L1, ou seja, se esses termos adicionais tiverem
arredondamentos,
c) Como esses mesmosserãofatores
levados multiplicativos
para as linhas 2 edevem
3 resultantes.
ser
c) aplicados
Como essespara todasfatores
mesmos as colunas j das linhas
multiplicativos devemi=2sereaplicados
i=3,
épara
importante que sejam
todas as colunas determinados
j das linhas i = 2 e i =uma única vez, que
3, é importante
sejam determinados
armazenados e usadosumaem única vez,
todas as armazenados
colunas de cada elinha
usados
i. em
todas fatores
d) Esses as colunas de cada linhaaplicados
multiplicativos, i. previamente na linha
fatorese multiplicativos,
i=1, –0.9397
d) Esses 0.7121, sofreram–0.937
arredondamentos no quarto
e 0.7121, aplicados sobre a
dígito decimal
linha i = (quarto
1, sofreram dígito significativo),
arredondamentos no quartologo levarão
dígito decimal
(quarto
esse errodígito significativo),
no quarto logo levarão
dígito decimal esse
para as erro no
novas quarto
linhas 2 e dígito
3
decimal para as
geradas a seguir. novas linhas 2 e 3 geradas a seguir.

Aplicandoessas
Aplicando essas operações
operações elementares
elementares sobre
sobre as linhasailinhas i=2
= 2 e i = 3, e
zeraremos
ai=3,
coluna j = 1, conforme
zeraremos segue:
a coluna j=1, conforme segue:

0.448 0.832 0.193 M 1 


 0 0.002170 −0.3884 M −0.9397 

 0 1.476 0.4164 M 0.7121  19

Note que as linhas 2 e 3 foram alteradas pelos arredondamentos gerados,


mas, na coluna j = 1, os resultados teóricos previstos são exatos e nulos,
utacional

Note que as linhas 2 e 3 foram alteradas pelos arredondamentos


CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 97
Note
Note que as
que as linhas
linhas 2 e 3 foram alteradas pelos arredondamentos
gerados, mas, na2coluna
e 3 foram alteradas
j=1, pelos arredondamentos
os resultados previstos são exatos e
gerados, mas, na coluna j=1, os resultados previstossão
gerados, mas, na coluna j=1, os resultados previstos sãoexatos
exatosee
nulos,
logo não logo nãoefetuar
devemos é necessário
essas efetuar
operações essas operações
aritméticas, basta aritméticas,
atribuir esses
nulos,logo
nulos, logonão
nãoéénecessário
necessárioefetuar
efetuaressas
essasoperações
operaçõesaritméticas,
aritméticas,
basta atribuir
resultados nulos noesses
basta atribuir resultados
algoritmo. nulos
Se executarmos
esses resultados nulos
asno algoritmo.
operações
no algoritmo.
na coluna j = 1,
basta atribuir
teremos esses resultados
valores residuais nulos no algoritmo.
não exatos.
Segundo
Segundo passo:
Segundo passo:
passo: definido
definido
definido pelopelo índice
índice k=2, usamos
usamos
k=2, usamos aa segunda
segundaa segunda
Segundo passo: definido pelopelo
índiceíndice
k = 2, k=2,
usamos a segunda linha i = 2
linha
linha
(em
i=2
negrito) (em
i=2(em
linhai=2 (em negrito)
negrito)
negrito)
para para
para
eliminarpara eliminar
eliminar
eliminar
a segunda j =a2:segunda
aasegunda
coluna
segunda colunacoluna
coluna j=2:
j=2: j=2:

0.448
0.448 0.832
0.448 0.832 0.193MM M 11 1
0.193
0.832 0.193 

 00 0.002170
0.002170 −−0.3884 0.9397
0.3884 MM −−0.9397
 0.002170 −0.3884 M −0.9397 
 0   L − (1.476 / 0.002170) L2

 00 1.476 0.4604 MM 0.9397 
0.9397LL3←←
 0
1.476
1.476 0.4604
0.4604 M 0.9397  3 LL333−←
(1.476 0.002170
L3 −/ (1.476 ) L2
/ 0.002170) L2
←LL3−−680.2
LL3← 680.2LL2
3
L33 ← L3 −2680.2 L2
Observe que
Observe que oo fator
fator multiplicativo
multiplicativo na na linha
linha 22 éé muito
muito maior
maior
Observe
Observe
do que que
que o
que aa unidade,o fator
fator multiplicativo
multiplicativo
unidade, 680.2,
680.2, então na linha
então sofreu na
2 é linha
muito
sofreu arredondamentos 2 é
maior
arredondamentos muitoque maior
do no a
do no
unidade,
do que680.2,
primeiro entãodecimal
adígito
unidade,
dígito sofreu680.2,
arredondamentos
então
(quarto no primeiro
sofreu
dígito dígito fracionário
arredondamentos
significativo), logo no
primeiro decimal (quarto dígito significativo), logo
(quarto dígito significativo), logo levará esse erro para a nova linha 3, gerada
levará esse
primeiro esse erro
erro no
dígitono primeiro
primeirodígito
decimal dígito
(quartodecimal
dígito para aanova
novalinha
linha logo
significativo),
alevará
seguir: decimal para
3,gerada
gerada
levará
3, aaseguir:
esse seguir:
erro no primeiro dígito decimal para a nova linha
3, gerada
0.448
0.448 a seguir:
0.832
0.832 0.193 MM
0.193 11 
 00 0.002170
0.002170 −−0.3884
0.3884 MM 0.9397
−−0.9397
0.448 0.832 0.193 M  1
 00 00 264.6 MM 639.9
−−639.9
0.002170 −0.3884 M −0.9397 
264.6 
0
Observe
Observe tambémque
também queaalinha
linha 3 sofreueliminações
eliminaçõesduas
duasvezes,
vezes,
 0 0 264.6 M3 sofreu
−639.9 
nos passos
Observe k=1 eque
também k=2, e isso3 carateriza
a linha um processo
sofreu eliminações cumulativo
duas vezes,
nos passos k=1 e k=2, e isso carateriza um processo cumulativonos passos
kObserve
de 1 e k =também
= operações 2, earitméticas
isso carateriza
que com
acom um
linha processo
erros3 de
sofreu cumulativo
eliminações
dearredondamento.
arredondamento. de operações
duas vezes,
Nessa
de operações aritméticas erros Nessa
aritméticas
fase,passos com
osistema
sistema erros de arredondamento.
simplificado jáestá
está naformaNessa
formade fase,
dematriz o
matriz sistema simpli-
triangular
nos
fase, o k=1 e k=2,
simplificado e isso
já carateriza
na um processo cumulativo
triangular
ficado já está na forma de matriz triangular superior, que deve ser equivalente
superior,
de
superior, quedeve
operações
que deve serequivalente
equivalente
aritméticas
ser com ao
ao sistema
erros
sistema original
deoriginal apresentado Nessa
arredondamento.
apresentado
ao sistema original apresentado nesse exemplo, pois as operações elementares
nesse
sobre exemplo, pois as operações elementares sobre linhas
fase,linhas
nesse aplicadas
oexemplo,
sistema poisnãoaspodem
simplificado alterar
operações
já está asna
equações.
elementares
forma de sobre
matrizlinhas
triangular
aplicadas
aplicadas não
não podem alterar as equações.
superior,
Então, quepodem
deve alterar
ser as equações.
equivalente ao sistema original apresentado
Então,a solução
a soluçãodo sistema original:
do sistema original:
Então,
nesse aexemplo,
solução dopois sistema
as original:
operações elementares sobre linhas
 0.448 x + 0.832 x + 0.193 x =
1
aplicadas
 0.448 x11+não
0.832podem
x22+ 0.193alterar
1 as equações.
x33 =
 0.421x1 + 0.784 x2 − 0.207 x3 =
0
Então, x1 + 0.784 x2 −
 0.421a 0.207 x3 =
0 original:
−0.319 x solução
+ 0.884 x +do sistema
0.279 x =0
−0.319 x 1+ 0.884 x 2+ 0.279 x 3 =
 1 2 3 0
 0.448ser
deveria x1 +a0.832
mesmax2 +do
0.193 x3 =
sistema 1de equações simplificado a
deveria
 ser a mesma do sistema de equações simplificado a
 0.421x1 + 0.784 x2 − 0.207 x3 =
seguir: 0
seguir:
 −0.319 x + 0.884 x + 0.279 x =
 1 2 3 0
Capítulo 2 – Solução Computacional de Sistemas de Equaçõe

98 CÁLCULO NUMÉRICO COMPUTACIONAL


Capítulo 2 – Solução Computacional de Sistemas de Equ

0.448 x1 + 0.832 x2 + 0.193 x3 = 1


 deveria ser a mesma do sistema de equações simplificado a seguir:
 0 x1 + 0.002170 x2 − 0.3884 x3 = −0.9397
 0 x1 +x1 + 0.832 x02x+2 + 264.6 x3 x= 639.9
 0.448 0.193 3 = 1

 0 x1 + 0.002170 x2 − 0.3884 x3 = −0.9397
Processo

de Retrosubstituição Sucessiva
 0 x1 + 0 x2 + 264.6 x3 = 639.9
Realizamos o processo de retrosubstituição sucessiva a partir da
Processo
última equação,de determinando
Retrosubstituição Sucessiva
a última incógnita e substituindo-a
Processo de retrossubstituição sucessiva
na Realizamos
equação anterior, e assim
o processo de sucessivamente
retrosubstituiçãoaté obtermos
sucessiva todas da
a partir
Realizamos
as última
incógnitas. o processo de retrossubstituição sucessiva a
equação, determinando a última incógnita e substituindo-a partir da última
equação, determinando a última incógnita e substituindo-a na equação
na equação anterior, e assim sucessivamente até obtermos todas
anterior, e assim sucessivamente até obtermos todas as incógnitas.
Primeiro passo: note que o valor de x3 pode ser diretamente
as incógnitas.
obtido a partir
Primeiro passo: da
noteequação 3,de
que o valor uma vezserque
x3 pode essa equação
diretamente obtido a partir
independe
Primeiro
da equação de 1
e
3,xuma
passo: x :
note
vez
2 que
que o
essa valor
equaçãode x pode
independe
3
ser
de xdiretamente
e x :
1 2
obtido a partir da equação 3, uma vez que essa equação
0 x1 + 0 x2 + 264.6 x3 = 639.9 x3 = 639.9 / 264.6 x3 = 2.418
independe de x1 e x2:

Segundo 0 x1 +passo:
Segundo 0passo: posteriormente,
posteriormente,
x2 + 264.6 x3 = xpodemos
639.9 podemos obter
obter
3 = 639.9 / 264.6
os os valores
valores de xde
x3 = 2.418 2
e x1 das
x2 eequações 2 e 1, respectivamente:
x1 das equações 2 e 1, respectivamente:
Segundo passo: posteriormente, podemos obter os valores de
x =
e (–0.9397
x2 = (x−220.9397 – (–3884x
− (−equações
x1 das 0.3884 x3 ))23/e))0.002170
/ 0.002170
1, xx2 2==–0.2529
respectivamente: (com xx3 == 2.418)
–0.2529 (com 2.418)
3
x1 = (1 – 0.832x2 – 0.193x3) / 0.448 x1 = 1.660 (x3 =2.418 e x2 = –0.2529)
x1 =
x2(1=−(0.832 x2 −−0.193
−0.9397 (−0.3884
x3 ) / x0.448 x1 = 1.660
3 )) / 0.002170 x2 =(x–0.2529
3
=2.418(com
e x2 = x–0.2529)
3
= 2.418)
Portanto, a solução obtida para o sistema do Exemplo 2.1, com precisão de
Portanto,
apenas 4adígitos
solução obtida paraé:o sistema do Exemplo 2.1, com
significativos,
x1 = (1 − 0.832 x2 − 0.193x3 ) / 0.448 x1 = 1.660 (x3 =2.418 e x2 = –0.2529)
precisão de apenas 4 dígitos significativos, é:
SPortanto,
= { 1.660,a–0.2529, 2.418 }
solução obtida para o sistema do Exemplo 2.1, com
S = { 1.660, –0.2529, 2.418 }
precisão de apenas 4 dígitos significativos, é:
Lembre-se deS que
= { essa solução
1.660, S foi 2.418
–0.2529, obtida}de um sistema simplifi-
Lembre-se que essa solução S foi obtidadedearredondamentos,
cado, cujos coeficientes já sofreram acúmulo um sistema e não
do sistema original.
simplificado, cujos coeficientes já sofreram acúmulo de
arredondamentos,
Lembre-se que eessa não do sistema
solução S foi
original.
obtida de um sistema
Se a matriz dos resíduos R = [A * S – B] de cada uma das equações do
simplificado, cujos coeficientes já sofreram acúmulo de
sistema linear proposto fosse obtida para aferição da solução, deveríamos
arredondamentos, e não do sistema original.
ter valores nulos, mas normalmente obtemos valores residuais, não nulos,
decorrentes dos arredondamentos acumulados. Por exemplo, se substituirmos
Se os resíduos= ( R A * S − B ) de cada uma das equações do
sistema linear proposto fossem obtidos para aferição da solução,
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 99
deveríamos ter valores nulos, mas normalmente obtemos valores
residuais, não nulos, decorrentes dos arredondamentos acumulados.
Por exemplo,
a soluçãose substituirmos
S em cada equaçãoa original
soluçãodo S em cada equação
Exemplo original
2.1, teremos os seguin-
tes resíduos
do Exemplo 2.1, em módulo:
teremos os seguintes resíduos:

=
R1 | 0.448 x1 + 0.832 x2 + 0.193 x3 −=
1 | 0.0000588 ≅ 0.00006
=
R2 | 0.421x1 + 0.784 x2 − 0.207 x3 − 0=
| 0.0000604 ≅ 0.00006
R3 =| −0.319 x1 + 0.884 x2 + 0.279 x3 − 0 | =0.07848 ≅ 0.08

O resíduo
O resíduo dadaequação
equação 33ficou
ficoualto, equivalente
alto, ao primeiro
equivalente dígito decimal
ao primeiro
(0.08 ≅ 0.1). Seria esperado um resíduo no quarto dígito decimal, pois temos
dígito decimal (0.08 ≅ 0.1). Seria esperado um resíduo no quarto
uma precisão de 4 dígitos significativos. Esse erro decorre principalmente
dígitodos
decimal, pois temos
arredondamentos uma
dos precisão
fatores de 4 dígitos
multiplicativos significativos.
de cada linha. No próximo
Esse erro decorre principalmente dos arredondamentos
exemplo, vamos aplicar uma metodologia para reduzir esse dosresíduo.
fatores
Para comparação,
multiplicativos de cada linha.tambémNo podemos
próximocalcular
exemplo,o erro de arredondamento
vamos aplicar
estimado
uma forma de sobre
reduzircada xi da
esse solução usando uma estimativa do valor exato
resíduo.
da solução Sexato. Nesse método, temos somente erros de arredondamento
Para comparação, também podemos calcular o erro de
associados à solução, então o seu valor exato estimado pode ser obtido
arredondamento estimado
usando variáveis com mais sobre cadacom
precisão, xi da solução
mais usando
de 4 dígitos uma
significativos,
estimativa domenos
para ter valorarredondamentos.
exato da solução NaSsolução,
exato
. Nesse método,
a seguir, usamostemos
o mesmo
algoritmo
somente erros aplicado no Exemplo 2.1,associados
de arredondamento mas operamos com as variáveis
à solução, então o double
de 16 dígitos significativos, gerando os seguintes
seu valor exato estimado pode ser obtido usando variáveis com resultados:
mais precisão, com mais de 4 dígitos
Sexato = {1.561414494051542, significativos,2.418590333334499}
–0.199881764024819, para ter menos
arredondamentos. Na solução, a seguir, usamos o mesmo algoritmo
aplicado noOs resíduos2.1,
Exemplo dessa
massolução exatacom
operamos estimada, obtidadouble
as variáveis com precisão
de
double, são:
16 dígitos significativos, gerando os seguintes resultados: Capítulo 2 – Solução Computacional de Sistemas
Rexato = {00000000000e+00, 1.11022302462e–16, 5.68434188608e–14}
Sexato = (em
{1.561414494051542,
notação científica) –0.199881764024819, 2.418590333334499}
Os resíduos dessa
EEososerros solução
estimados,
erros estimados, exata
Erro = | estimada,
Erro S=–| SSexato obtida
– S|,exato
são:|, são:com precisão
double, são:
Erro x1 =| 1.660 − 1.561414494051542 | = 0.098585505948458 ≅ 0.1
Rexato =Erro x2 =| −0.2529 − (−0.199881764024819)
{00000000000e+00, 1.11022302462e–16, | = −5.68434188608e–14}
0.053018235975181 ≅ 0.05
Erro x3 =| 2.418 (em − 2.418590333334499
notação científica) | = 0.000590333334499 ≅ 0.0006

Perceba
Perceba quequeos erros de arredondamento
os erros acumulados
de arredondamento no processo no
acumulados de
eliminação foram propagados também para o primeiro dígito
processo de eliminação foram propagados também para o primeiro decimal, nos
valores de x1 e x2 , e, para o quarto dígito, no valor do x3. Observe que os
dígito decimal, nos valores de x1 e x2 , e, para o quarto dígito, no valor
do x3. Observe que os arredondamentos afetam toda a solução, pois
em um sistema de equações não temos como dizer que um valor
em3 um sistema de equações não temos como dizer que um
m
emsistema
um sistema de equações
de equações nãonãotemostemos como como dizer
dizer quequeum umvalor
valor
de x é mais exato do que outro. Assim, a solução está afetad
édemais exatoexato
x é 100
mais do que outro.
do que Assim,
outro. Assim, aCÁLCULO
solução
a solução está
NUMÉRICO afetada
está afetadanono
COMPUTACIONAL
primeiro dígito.
primeiro
eiro dígito. dígito.
Podemos afetam
arredondamentos resumir
toda aosolução,
algoritmo
pois desistema
eliminação
emeliminação
um de equações gaussian
PodemosPodemos resumirresumir
o o algoritmo
algoritmo de de
eliminação gaussiananono
gaussiana
seguinte
não temosformulário:
como dizer que um valor de x é mais exato do que outro. Assim,
seguinte formulário:
inte formulário:
a solução está afetada no primeiro dígito.
Podemos resumir o algoritmo de eliminação gaussiana no seguinte
Triangularização:
formulário:
Triangularização:
iangularização:
k=1,...,n–1
k=1,...,n–1
Triangularização: (define(define
o passo o passo
k) k)
1,...,n–1 (define o passo k)
i=k+1,...,n
k =i=k+1,...,n
1, ..., n–1 (define(define
linhas
(define linhas
o passo i a zeradas)
i ak) serem serem zeradas)
i=k+1,...,n (define linhas i a serem zeradas)
= k +j=k+1,...,n+1
i j=k+1,...,n+1
1, ..., n (define linhas i)
(define(define
colunas colunas
j operadasj operadas
em cadaem cada
linha i) linha
j=k+1,...,n+1 (define
j = k + 1, ..., n + 1 colunas
(define j operadas
colunas j) em cada linha i)
a  a  a  a 
a= aaij=
ij  a − ik  akj ik (corresponde
ij   aij − akj (correspondeaa Li ←aLiL−ai ←ikLi −Lk)) ik
(corresponde  Lk )
a= aij −  ik  akjakk  (corresponde
akk  a Li ← Li −  ik akkLk )  akk 
Retrosubstituição:
Retrosubstituição:
ij
 akk   akk 
etrosubstituição:
i=ni=n
Retrossubstituição:
i=n x =a
i=n i xii,n +=1 /aai ,nii+1 / aii(corresponde à resolução
(corresponde da última
à resolução daequação)
última equa
x
i=n–1,= a
...,
i , n +1 / a (corresponde à resolução da última equação)
i=n–1,
i
xi = a...,
i, n+1 1 ii
1
/a ii (corresponde à resolução da última equação)
i=n–1, ..., 1
i = n – 1, ..., 1  n 
=xi  ai ,n +1− ∑ aij * nx j  / aii (corresponde à resolução
 = xi n  aij,=ni++11 − ∑ a / aii (corresponde à resolução
 ij * x j da i-ésima equação)
=xi  ai ,n +1 − ∑ aij * x j j/= ia+1ii (corresponde
(corresponde
 à da
à resolução resolução
da i-ésima i-ésimaequação)
equação)
 j = i +1  da i-ésima equação)

No próximo exemplo,
No próximo vamos
exemplo, vamos implementar
implementar o processo deopivotação
processoparcialde pivotação
visando
No evitar linhas com
próximo possíveis zeros
exemplo, na diagonal
vamos principal de cada linha
implementar i = k e ainda de pivotaç
o processo
parcialminimizar
próximo visando
exemplo, errosevitar
de linhas com
arredondamento
vamos possíveis
acumulados.
implementar zeros na diagonal
o processo principal
de pivotação
parcial
de visando
cada linha visando
i=k evitar
e aindalinhas com possíveis
minimizar erros zeros na diagonal princip
de arredondamento
rcial evitarPivotação
2.1.1.1 linhas com possíveis
parcial zeros na diagonal principal
de cada
acumulados. linha i=k e ainda minimizar erros de arredondamen
cada i=k e parcial
linhaA pivotação aindaconsiste
minimizar
em: erros de arredondamento
acumulados.
umulados. a) no início de cada passo k das eliminações, escolher para a o ele-
kk
mento de maior módulo entre os coeficientes aik, i = k, k + 1, ..., n; e
b) trocar as linhas k e i, se necessário.
kk a
kk
o elemento de maior módulo entre os coeficientes
ik aik ,
77 i = k, ik+1,...,n; e
= k, k+1,...,n; e
CAPÍTULO b)2trocar as linhas
b) trocar
– SOLUÇÃO k e i,kse
as linhas
COMPUTACIONAL i,necessário.
eDE se necessário.
SISTEMAS DE EQUAÇÕES LINEARES 101
VA( n=7)
Exemplo Exemplo 2.2: 2.2:
resolva o sistema
resolva o sistema de equações
de equações lineares, a seguir,
lineares, a seguir,
VApelo
( n = 7)
Exemplo método
pelo de eliminação
2.2: resolva
método sistemade
deoeliminação deGauss com
equações
de Gauss pivotamento
lineares,
com a seguir, parcial
pivotamento peloparcial
método
utilizando
de eliminação
utilizandooperações
Gaussaritméticas
deoperações comaritméticas comcom
pivotamento 4parcial
dígitos significativos
utilizando
4 dígitos operações
significativos
earitméticas
arredondamentocom 4 dígitos
e arredondamento
significativos
ponderado.
ponderado.
e arredondamento
Esse sistema
Esse
ponderado.
é o mesmo
sistema do Esse
Nosistema
capituloé o 2 tentar
mesmo do manter
Exemplo uma
2.1, alinhamento
apenas com as lateraléem
equações
o mesmo
esquerdo
outra
do as mat
para
ordem.
Exemplo
mesma 2.1, apenas
pagina, 2.1,
Exemplo com
se possível. as equações em outra
apenas com as equações em outra ordem. ordem.
 −0.319 x1 + 0.884
 −0.319
x2 + 0.279
x1 + 0.884 x3 =
x2 + 0.279 x03 = 0
92 
0.421
  0.421 x1 + 0.784 x
x1 + 0.784
2 − 0.207 x
x2 − 0.2073 = 0
x3 = 0
 0.448
 x + 0.832 x + 0.193 x = 1
 0.448
  0.448 0.832
1 0.193
x1 + 0.832
2 x1 3 x31 =
x2 +0.193 1
 0.421 0.784 − 0.207  *  x  =  0 
 Solução:
Solução:   2  
 −Solução:
0.319 0.884 0.279   x3   0 
Na forma
Na forma dedematriz
Na forma matriz expandida,
expandida,
de matriz temos:
temos:
expandida, temos:
 −0.319  a110.884
a12 ⋯ 0.279 a1n M ⋮0  a1, n +1 
 −0.319
 0.884 0.279 M 0

A = A0.421  a 0.784a −⋯ a
0.207 M ⋮
0 a  
=B] =0.421
[ A ⋮0.448  21 0.784 22 −0.207
2n M 2,0n +1 
  0.448 0.832 0.193 M 1  
 ⋮0.832 ⋮ ⋯
0.193 ⋮ M ⋮
1
 
 ande1 an 2 ⋯ ann ⋮ an , n +1 
ProcessoProcesso
Processo de Triangularização
de Triangularização
triangularização
[ AAntes
⋮ B]
de promover o processo de triangularização, devemos
Antes de promover o processo de triangularização, devemos
Antes de promover o processo de triangularização, devemos escolher e
95 escolherescolher e reposicionar a melhor linha i=k possível.
reposicionar aemelhor
reposicionar
linha i =akmelhor
possível.linha i=k possível.
aij
PrimeiroPrimeiro passo: definido pelopelo
índice a pivotação
k=1,k=1, parcial
Primeiro passo:passo:
definidodefinido
pelo índice k índice a pivotação
= 1, a pivotação
100deve redefinir a melhor linha i=1, correspondente ao primeiro
parcial
parcial deve rede-
finirdeve
a melhor linha i a= melhor
redefinir linha i=1,ao
1, correspondente correspondente
primeiro pivô (kao primeiro
= 1). Para tal:
pivô (k=1). Para tal:
+1 / aii (k=1). Para tal:
xi = ai , npivô

101
a) Localizamos oo maior
a) Localizamos
a) Localizamosmaior módulo
módulo
o maior
da coluna,jj=1
da coluna, = 1nesse
nessecaso,
caso, entre
entre os
coeficientes destacados emmódulo
negrito:da coluna, j=1 nesse caso, entre
os coeficientes destacados
os coeficientes em negrito:
destacados em negrito:
a)
j =1 j =1
j =1
 −0.319 0.884 0.2790.279 0 0
 −− 0.319 0.884
0.319 0.884 0.279  ⋮ 0
(maior i=
 0.421  −  (maior módulo está namódulo
linha i=3) está na linha
 
 0.784
0.421
0.421 0.7840.207
0.784 −0.207

0  0  ⋮(maior
0.207 0  (maior
módulo está na linha i=3)
módulo está na linha i = 3)

i = 3 i =(0.448) 0.8320.832
0.1930.1931  1  
3  (0.448)
i = 3  (0.448) 0.832 0.193  ⋮ 1 
 

b)
 − 0.319 0.884 0.279 ⋮ 0  L1 ← L3
 0.421 0.784 − 0.207 ⋮ 0  (troca da linha L1 com L

 (0.448) 0.832 0.193 ⋮ 1  L3 ← L1
versa)
a)
j =1
102  − 0.319 0.884 0.279 ⋮ 0  (maiorCÁLCULO NUMÉRICO Capítulo 2 – Solução Computacional de Sistemas de Equ
COMPUTACIONAL
Capítulo 2 – Solução Computacional de Sistemas de Equa
módulo está na linha i = 3 )
 0.421 0.784 
− 0.207 ⋮ 0  Capítulo 2 – Solução Computacional de Sistemas de Equ

i = 3  (0.448) 0.832 0.193 ⋮ 1 
b) Trocamos
b) Trocamos
Trocamoslinhas,linhas, entre
entreaaalinha
linhas,entre linha ii=3,
= 3,com
linhai=3, com omelhor
melhorcoeficiente,
coeficiente, e
b) com oomelhor coeficiente,
b) b)eeaTrocamos
linha i =i=1:
1:linhas, entre a linha i=3, com o melhor coeficiente,
aalinha
linhai=1:
0.319
e −a0.319 0.884 0.279 ⋮ 0  L1 ← L3
linha i=1:
−−0.319
0.421
0.884 0.279 00LL1←
0.884
0.784 −0.279
0.207 ⋮ 0  1
←LL3
3 (troca
(troca da
(trocada linha
dalinha L1 com
L1 Lcom
linha com L
e 3 e vice-
L3 eLvice-versa)

 − 0.421 0.784 0.207 000 L1 ← L3 (troca da linha L1 1com L3 3e
−0.207
0.319 0.884 − 0.279
 (0.448)
0.421 0.784
0.832 0.193 ⋮ 1  L3 ← L1 vice-versa)
vice-versa)
(troca da linha L1 com L3 e
 (0.448)
0.421
(0.448) 0.832
0.784
0.832 0.207 110LL3←
−0.193
0.193 ←LL1
versa)
 3 1 vice-versa)
 (0.448) 0.832 0.193 1  L3 ← L1
c) Geramos
Geramosaaamatriz
c) Geramos
c) matrizpivotada:
matriz pivotada:
pivotada:
c) Geramos a matriz pivotada:
207
(0.448)
(0.448) 0.832 0.193 MM 11
0.832 0.193

 (0.448)
0.421 0.784 0.207 MM 01
0.832 −0.193 
 0.421 0.784 −0.207 M 0 
−−0.319
0.421 −0.279
0.784 0.279
0.319 0.884
0.884 0.207 MMM 000

 −0.319 0.884 0.279 M 0 
Observe que,
Observe que, na
na pivotação
pivotação parcial, apenas
apenastrocamos
parcial,apenas trocamosaaaordemordemdas
Observe que, na pivotação parcial, trocamos ordem
equações
Observe mudando-as
que, mudando-as de
na pivotação de linhas.
parcial, apenas trocamos a ordem
dasdas equações
equações mudando-as de linhas.
linhas.
das equações mudando-as de linhas.
d) Depois
d) Depois
d) Depois da da pivotação,
da pivotação, procedemos
pivotação,procedemosprocedemos àà eliminação
àeliminação
eliminação gaussiana
gaussiana
gaussiana
d)correspondente
Depois
correspondente da
correspondente ao pivotação,
ao primeiro
ao primeiro procedemos
primeiro passo passo
passo (k à eliminação
(k=1):
= 1):
(k=1): gaussiana
correspondente ao primeiro passo (k=1):
(0.448)
(0.448) 0.832 0.193 MM 11
0.832 0.193

 0.421(0.448)
0.421 0.784
0.784 0.207 MMM 001 LL2←
0.832 −0.193 ←LL2−−(0.421/
(0.421/0.448)
0.448)LL1⇒ ⇒LL2← ←LL2−−0.9397
0.9397LL1
−0.207
  0.421 0.784 −0.207 M 0 L2 ← L2 − (0.421/ 0.448) 1L ⇒ L2 ← L2 − 0.9397 1L

−−0.319
0.319 0.884 0.279 MM 00 LL3←
0.884 0.279 ← L − (−0.319 / 0.448) L ⇒ L ← L + 0.7121
 3 2 L3 3−2 (−0.319 / 0.448) L111⇒ L323← L323+ 0.7121L111
 −0.319 0.884
e)Geramos
Geramos novamatriz
matriz 0  L3 ← L3 − (−0.319 / 0.448) L1 ⇒ L3 ← L3 + 0.7121L1
0.279 M escalonada:
e) nova escalonada:
e)
e) Geramos
Geramos nova
(0.448) nova
(0.448)
matriz0.193
0.832matriz
escalonada:
escalonada: 
 0.832 0.193 MM  11
 (0.448)
0 0.002170 −0.3884 M −0.9397 
0.002170
0.832 − 0.3884
0.193 MM −0.9397
1

 0
 000 1.476
0.002170
1.476 −0.4164 0.9397
−0.7121
0.3884 MMM 0.7121
0.4164 
 0 1.476 0.4164 M 0.7121 
Segundopasso:
Segundo passo:definido
definidopelo
peloíndice
índicek=2,k=2,aapivotação
pivotaçãoparcial
parcial
Segundo
deve
deve passo:
redefinir
redefinir definido
aamelhor
melhor pelo
linha
linha índice
i=2,
i=2, k=2, a pivotação
correspondente
correspondente parcial
aosegundo
ao segundo
deve
pivô
pivô redefinir
Segundo passo:
(k=2).
(k=2). atal:
melhor
Paradefinido
Para tal: linha
pelo índice k =correspondente
i=2, ao segundo
2, a pivotação parcial deve redefinir
a melhor
pivô linha
(k=2). i = tal:
Para 2, correspondente ao segundo pivô (k = 2). Para tal:
a)Realizamos
a) Realizamos aa buscabusca parcial
parcial dodo maior
maior módulo
módulo dada coluna
coluna j=2j=2
a) Realizamos
a)(busca
Realizamos
(busca
a
a partir
busca
a busca parcial do maior
parciallinha,
dasegunda
segunda do maior
linha,
módulo da
módulo
emnegrito,
negrito,
coluna j
da acoluna
pois
= 2
aprimeira
(busca
j=2
primeira
a partira partir da
da segunda linha, em em
negrito, pois
pois a primeira linha já foi
(buscajáafoi
linha
linha partir
foi da segunda
usada para anularlinha,
anular aa em negrito,
primeira pois ano
coluna primeira
no passo
usadajápara usada
anular apara
primeira coluna primeira
no passocoluna
anterior e passo
não pode
linha já foinão
anterior usada paraseranular
usadaaanovamente
primeira coluna no passo
ser usadaeenovamente
anterior não pode
pode ser
para usada
anular novamente para anular
para
segunda coluna, anular
uma vezaaque
anterior coluna,
segunda
alteraria
segunda ecoluna
não uma
acoluna, pode
uma serzerada):
vez
j = 1vez
já usada
que
que novamente
alteraria
alteraria colunapara
aacoluna anular
zerada):a
j=1jájázerada):
j=1
segunda coluna,
j = 2 uma vez que alteraria a coluna j=1 já zerada):
j=2
 (0.448)
 (0.448) j=2
0.832
0.832 0.193 MM
0.193 11  (maior módulo em i=3)
 (0.448)  (maior módulo em i=3)
 00 0.832 −−0.3884
0.002170
0.002170 0.3884 1 
0.193 MMM −−0.9397
0.9397
  (maior módulo em i=3)
ii==33 000 −0.4164
(1.476) 0.4164
0.002170
(1.476) 0.9397
−0.7121
0.3884 MMM 0.7121

i = 3 0 (1.476) 0.4164 M 0.7121 
(busca a partir da segunda linha, em negrito, pois a primeira
linha já foi usada para anular a primeira coluna no passo
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 103
anterior e não pode ser usada novamente para anular a
segunda coluna, uma vez que alteraria a coluna j=1 já zerada):
j=2
tacional
 (0.448) 0.832 0.193 M 1  (maior módulo em i=3)
 0 0.002170 −0.3884 M −0.9397 
utacional 
utacional
i = 3  0 (1.476) 0.4164 M 0.7121 
utacional
b) Trocamos linhas, entre a linha i=3 e a linha i=2:
 (0.448) linhas,
b) Trocamos
b) Trocamos 0.832
linhas, entre linhai i=3
entreaa0.193
linha linha ii=2:
=M 3 ee aa1linha = 2:
b) Trocamos linhas, entre a linha Mi=3
−0.3884 e a linha
−0.9397  Li=2:
b) Trocamos
0 0.002170 2 ← L3
(0.448) linhas, 0.832entre 0.193
a linha Mi=3 e a1 linha  i=2:
 (0.448) 0 (1.476)
0.832 0.4164
0.193 MM 0.7121
−0.193
0.3884 M −0.9397
1  L3 ← L2
(0.448) 0
0
0.002170
0.832
0.002170 − 0.3884 M −
1
0.9397   L2L←←L3L
 0
c) Geramos a0.002170
matriz escalonada:
(1.476) −0.4164 0.9397   L32 ← L23
0.3884 M −0.7121
2 3
 0 (1.476) 0.4164 M 0.7121  L3 ← L2 
 (0.448)
c) Geramos 0 a
0.832
(1.476)
matriz
0.193 M M 0.7121
0.4164
escalonada:
1  L3 ← L2
c)Geramos
Geramos 0.4164 M 0.7121 
c) 0 aamatriz
(0.448) a matriz
c) Geramos
matrizescalonada:
(1.476) escalonada:
0.832 escalonada:
0.193 M 1 
 (0.448)
0
0 0.002170
0.832
(1.476)
−0.3884
0.193 MM −0.9397
0.4164
1 
(0.448) 0.832 0.193 MM 0.7121 1 
 0 0 (1.476) 0.4164 M 0.7121 
0 0.002170 − 0.3884 M − 0.9397
 0 que,
Observe (1.476) 0.4164 0.7121
no Exemplo 2.1, o pivô antigo,
0.002170 −0.3884 M −0.9397
M   a22 = 0.002170,
  0 0.002170 − 0.3884 M − 0.9397   multiplicativo
era um valor pequeno e gerava um fator
Observe que, no Exemplo 2.1, o pivô antigo, a22 = 0.002170,
Observe que,
elevado,
Observe que, no
680.2, no Exemplo
que 2.1, um
carregava
Exemplo 2.1, o pivôerro antigo, aa22 ==0.002170
de arredondamento ,
era
Observe um que,
valor nopequeno
Exemplo e 2.1, o opivô
gerava pivô
um antigo,
fator
antigo, 0.002170,
amultiplicativo
= 0.002170
22 22 ,
era eraprimeiro
um 680.2,
um valor pequeno e gerava um fator multiplicativo
no
elevado,
era um valor
valor pequeno
dígito e gerava
quefracionário
carregava
pequeno e gerava um erro
(quarto
um fator
um demultiplicativo
significativo).
fator arredondamento elevado,
multiplicativo
680.2,elevado, que680.2,
carregava um erro deum
que carregava arredondamento
erro de arredondamento no primeiro
d)noelevado,
Procedemos
dígito
primeiro680.2,dígito
fracionário
quefracionário
carregava (quarto
a triangularização,
(quarto
um
significativo).
errosignificativo).
de arredondamento
correspondente ao segundo
no primeiro dígito fracionário (quarto significativo).
no
passo primeiro
(k=2): dígito fracionário (quarto significativo).
d) Procedemos a triangularização, correspondente ao segundo
d)passo
d) Procedemos
d) Procedemos
(0.448)(k=2):
Procedemos 0.832aaatriangularização,
triangularização,
triangularização,
0.1930 M correspondente
1correspondente
correspondente
 aoao aosegundo
segundo
segundo passo
(k =0 2):(k=2):
passo (k=2): 
passo
(0.448)
(1.476)
0.832 0.1930 M
0.4164 M 0.7121
1 
(0.448)
00 0.002170 − −0.9397
0.3884 MMM 0.7121  L3 ← L3 − (0.002170 /1.476) L2
(0.448)
0.832
(1.476)
0.832 0.1930
0.4164
0.1930 M 1 1  
 0 0 (1.476) −0.4164
0.002170 0.7121 LL3 3←
0.4164 MM M −0.7121
0.3884 0.9397 − 0.001470 L2 /1.476) L
L3 − (0.002170
 0 (1.476) 2


 00
Agora 0.002170 − 0.3884 M −0.9397 
0.9397,  éL
−0.3884a M =−1.476 L −
← ← L −
3 0.001470 (0.002170
L2
−3 (0.002170 /1.476)
L2 L2
o0.002170
novo pivô, 22
L33um L3valor /1.476)
maior e gera
L L−3 − 0.001470
0.001470 L L2
um fator
Agora multiplicativo
o novo pivô, a22 =menor,
1.476 , é0.001470,
um
3
valorque,
maior
2
nesse caso,
e gera
Agora
Agora
sofreu
o novo
o pivô,
novo a
pivô,
arredondamentos
= 1.476, é
=1.476
no
um
sexto, é valor
um maior
valor e gera
maior um
e fator
gera
um fator
Agora o novo 22 1.476
pivô, aa22=menor,
multiplicativo é dígito
, 0.001470, fracionário
um valor que, nessee(quarto
maior caso,
gera
multiplicativo menor, 0.001470,
22
que, nesse caso, sofreu arredon-
um fator
sofreu
um fator multiplicativo
significativo), logo levará
arredondamentos
multiplicativo menor,
no apenas 0.001470,
sexto0.001470,
menor, dígito que,para
essesfracionário
erros
que, nesse
nesse caso,
acaso,
nova
(quarto
damentos no sexto dígito fracionário (quarto significativo), logo
sofreu3apenas
linha
sofreu
levará arredondamentos
gerada,
significativo), conforme
logo levará
arredondamentos
esses erros no
no
para sexto
segue:
apenas
a sexto
nova dígito
esses
dígito
linha fracionário
erros
3 gerada, para
fracionário a (quarto
conforme nova
(quarto
segue:
linha significativo), logo levará
3 gerada,logo
significativo), levará
conforme apenasesses
segue:
apenas esseserroserrospara
paraa anova
nova
 (0.448) 0.832 0.1930 M 1 
linhalinha 33gerada,
gerada,conforme
conformesegue:
segue: 
(0.448) 0 (1.476)
0.832 0.4164 MM 0.7121
0.1930 1 
 00 
(0.448) 0
(0.448) (1.476)
0.832
0.832 −
0.4164
0.1930
0.1930 1 1 
−0.9412
0.3893 MMMM 0.7121
 0 −0.4164 0.7121 
0.4164 MM M −0.7121
 00 0
(1.476)
(1.476) 0.3893 0.9412

Agora a nova linha i=3 ficou com valores próximos aos
 00 00 −−0.3893
0.3893 M M −− 0.9412
0.9412  
Agora
anteriores à eliminação deste passo, ou seja, a linha i=3aos
a nova linha i=3 ficou com valores próximos foi
104 CÁLCULO NUMÉRICO COMPUTACIONAL

Capítulo 2 – Solução Computacional de Sistemas de Equ


A nova linha i = 3 ficou com valores próximos Capítulo222aos
Capítulo
Capítulo anteriores
–––Solução
Solução
SoluçãoComputacional
ComputacionalàdedeSistemas
Computacionalde Sistemas
Sistemasdede
de Equaç
Equa
Equa
eliminação deste passo, ou seja, a linha i = 3 foi pouco alterada.
Processo de
Processo de Retrosubstituições
retrossubstituições Sucessivas sucessivas
Processo
Processode deRetrosubstituições
RetrosubstituiçõesSucessivas Sucessivas
O sistema
sistema de deequações
equaçõessimplificado
simplificado do do Exemplo
Exemplo 2.2, 2.2,
gerado a partir
gerado a do
OOprocesso
sistema
sistemade dede equações
equações
eliminação simplificado
simplificado do
do Exemplo
Exemplo 2.2,
2.2, gerado
gerado aa
partir do processo degaussiana,
eliminação é: gaussiana, é:
partir
partirdo doprocesso
processode deeliminação
eliminaçãogaussiana,
gaussiana,é:é:
0.448 x1 + 0.832 x2 + 0.193 x3 = 1
0.448xx111++0.832
0.448 0.832xx ++ 0.193 0.193xx = = 11
 0 x1 + 1.4762x222 + 0.41643x333 = 0.7121
 000 xx111++1.476
1.476xx222++0.4164
0.4164xx333= =0.7121
0.7121
x1 + 0 x2 − 0.3893 x3 = −0.9412
 00xx +
 111 + 00xx222−−0.3893
0.3893xx333= =−−0.9412
0.9412
Note
Noteque quepodemos
que podemos obter diretamente o valor
de xde de x3 a partir da 3,
Note
Note que podemosobter
podemos obter
obter diretamente
diretamente
diretamente o valor
oovalor
valor dea partir
3 xx aapartir
da equação
partirda
da
equação
e posteriormente 3, e posteriormente
os de x2 e x1 a partiros dedos e x1 a partir
x2 valores obtidos 333 dos valores
anteriormente.
equação
equação 3,3, ee posteriormente
posteriormente os de xx222ee xx111aa partir
os de partir dos dos valores
valores
obtidos anteriormente.
obtidos
obtidosanteriormente.
anteriormente.
x3 = –0.9412 / (–0.3893) x3 = 2.418
x3 = –0.9412 / (–0.3893) x3 = 2.418
x2x=x (0.7121
== –0.9412
–0.9412– 0.4164
/ / x3) / 1.476
(–0.3893)
(–0.3893) x2 = –0.1997
xx ==2.418
2.418
x2 = (0.7121 – 0.4164 x3) / 1.476
333
x2 = –0.1997
333
x1x= (1 – 0.832
x222 ==(0.7121 x –
(0.7121––2 0.41640.193 x ) / 0.448
0.4164xx333)3)//1.476
1.476 x 1
= 1.561
xx222==–0.1997
–0.1997
x1 = (1 – 0.832 x2 – 0.193 x3) / 0.448 x1 = 1.561
xx111==(1 (1––0.832
0.832xx222––0.1930.193xx33)3)//0.448
0.448 xx111==1.561
1.561
Portanto, a solução do sistema dado
Portanto, a solução do sistema dado no Exemplo 2.2 é: no Exemplo 2.2 é:
Portanto,
Portanto,aasolução soluçãodo dosistema
sistemadado dadono noExemplo
Exemplo2.2 2.2é:é:
S = { 1.561, –0.1997,S 2.418 }
= { 1.561, –0.1997, 2.418 }
SS=={{1.561,
1.561,–0.1997,
–0.1997,2.418 2.418}}
Os resíduos
Os resíduos R = [A= (R* S –A B]* Sdessa
− B )solução
dessa são:solução são:
OsOsresíduos
resíduos= =((RR AA***SS−−BB ))dessa dessasolução
soluçãosão: são:
R1 =− | 0.319 x1 + 0.884 x2 + 0.279 x3 − 0 | = 0.0001282 ≅ 0.0001
RR111 =−
=− 0.319xx111++0.884
| | 0.319 0.884xx222++0.279
0.279xx333−−00 | | = = 0.0001282≅≅0.0001
0.0001282 0.0001
= R2 | 0.421x1 + 0.784 x2 − 0.207 x3= −0 | 0.0000902 ≅ 0.0001
=
= 0.421xx ++ 0.784
RR222 | | 0.421 0.784xx −−0.207
0.207xx= =
−−00| | 0.0000902
0.0000902≅≅0.0001
0.0001
R3= | 0.4481x111 + 0.8322x222 + 0.1933x333 − 1 | = 0.0001484 ≅ 0.0001
RR3=3=
3
0.448xx111++ 0.832
| | 0.448 0.832xx222++0.193
0.193xx333−−11 | | ==0.0001484
0.0001484≅≅0.0001
0.0001
Pelos resíduos informados, observamos que a solução obtida no
Pelos
Pelosresíduos
resíduosinformados,
informados,observamos
observamosque queaasolução
soluçãoobtida
obtidano
no
ExemploPelos2.2 está mais
resíduos próxima da
informados, exata do que
observamos queaasolução
obtidaobtida
no Exemplo
no Exem-
Exemplo
Exemplo2.2 2.2está
estámais
maispróxima
próximada daexata
exatadodoque
queaaobtida
obtidanonoExemplo
Exemplo
2.1,plo
pois os resíduos
2.2 está mais próximaestão
dano quarto
exata porquedígito decimal,
os resíduos estão enquanto no
no quarto dígito
2.1,
2.1,fracionário,
pois
pois os
os resíduos
resíduos estão
estão
diferentemente no
no quarto
quarto
do Exemplo dígito
dígito decimal,
decimal, enquanto
2.1, em quedígito.enquanto no
no
os resíduos chegavam
Exemplo 2.1 os resíduos chegavam ao primeiro
Exemplo
Exemplo 2.1
2.1
ao primeiro os
os resíduos
resíduos
dígito. chegavam
chegavam ao
aoprimeiro
primeiro dígito.
dígito.
Nesse caso, também podemos calcular o erro de arredondamento
Nesse
Nessecaso,
caso,também
tambémpodemos
podemoscalcular
calcularooerro
errode
dearredondamento
arredondamento
comparando a solução obtida com precisão de 4 dígitos a uma solução
comparando
comparandoaasoluçãosoluçãoobtida
obtidacom
comprecisão
precisãodede44dígitos
dígitosaauma
umasolução
solução
mais precisa obtida com o mesmo algoritmo usando precisão double:
mais
maisprecisa
precisaobtida
obtidacomcomoomesmo
mesmoalgoritmo
algoritmousando precisãodouble:
usandoprecisão double:
S = { 1.561414494051471, –0.199881764024781, 2.418590333334500 }
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 105

Nesse caso, também podemos calcular o erro de arredondamento


omputacional comparando a solução obtida com precisão de 4 dígitos a uma solução mais
precisa obtida com o mesmo algoritmo usando precisão double:

Sexato = { 1.561414494051471, –0.199881764024781, 2.418590333334500 }

Observe que os erros estimados, Erro = [ S – Sexato ], são:


Observe que os erros estimados, Erro = |S – Sexato|, são:

Erro x1 =| 1.561 − 1.561414494051471 | =


0.000414494051471 ≅ 0.0004
Erro x2 =| −0.1997 − (−0.199881764024781 ) | = 0.000181764024781 ≅ 0.0002
Erro x3 =| 2.418 − 2.418590333334500 | =
0.000590333334500 ≅ 0.0006

Agora, perceba que os erros estimados de S também foram


Agora, perceba que os erros estimados de S também foram menores
menores
no Exemplono 2.2
Exemplo 2.2 comparcial,
com pivotação pivotação parcial,
ou seja, ou seja,
a solução S coma solução
pivotaçãoS
com pivotação
parcial acumulouparcial
menos acumulou menos erros de arredondamento.
erros de arredondamento.

Com o processo de pivotamento parcial:


Com o processo de pivotamento parcial:
a) eliminamos
a) eliminamos possíveispivôs
possíveis pivôsnulos,
nulos,caso
casohaja
hajapossibilidades
possibilidades de
troca de linhas;
de troca de linhas; ee

b) b) conseguimos
conseguimos uma uma reduçãonos
redução nosefeitos
efeitoscumulativos
cumulativosde de erros
erros de
de arredondamento
arredondamento(diminuição
(diminuiçãodada perda
perdade de
significação), pois os
significação),
novos pivôs são os maiores possíveis de cada coluna, gerando
pois os novos pivôs são os maiores possíveis de cada
menores fatores multiplicativos, cujos arredondamentos ocorrem
coluna, gerando
em dígitos menosmenores fatores multiplicativos, cujos
significativos.
arredondamentos ocorrem em dígitos menos significativos.

Na próxima seção, vamos implementar o processo de pivotação total visando


obter soluções computacionalmente mais estáveis em relação às perturbações
introduzidas por arredondamentos.
Na próxima seção, vamos implementar o processo de pivotação total
visando
2.1.1.2
obterPivotação total
soluções computacionalmente mais estáveis em relação
às perturbações introduzidas por arredondamentos.
Alternativamente, podemos implementar o método de eliminação de Gauss
usando a pivotação total, que é computacionalmente um pouco mais eficiente,
induzindo normalmente a um menor erro de arredondamento acumulado, de
forma aPivotação
2.1.1.2 obter soluções
Total um pouco mais estáveis em relação às perturbações

Alternativamente, podemos implementar o método de eliminação


Capítulo 2 – Solução Computacional de Sistemas
Capítulo 2 – Solução Computacional de Sistemas de Eq
Capítulo 2 – Solução Computacional de Sistemas
106 CÁLCULO NUMÉRICO COMPUTACIONAL

No pivotamento
No pivotamento total,
total, ou completo,
ou completo, procuramos
procuramos o elemento
o elemento de maior
de maior
No pivotamento total, ou completo, procuramos o elemento de maior
módulo
introduzidas
módulo entre entre
portodos
todos os elementos
arredondamentos.
os elementos disponíveis
No pivotamento
disponíveis na matriz
na matriz total, decompleto,
ou coeficientes
de coeficientes
módulo
procuramos entre todos
o elemento os
de elementos disponíveis na matriz de coeficientes
promovendo
promovendo trocastrocas demaior
de linhas linhasmódulo
e colunas.
entre todos
e colunas. Para
ParaPara
os elementos
avaliar
avaliar
disponíveis
as consequências
as consequências
promovendo
nadessas
matriz de trocas
coeficientes de linhas
promovendo e colunas.
trocas avaliar
de linhas as consequências
e colunas. Para avaliar
dessas trocas
trocas de de linhas
linhas e e colunas,
colunas, devemos
devemos interpretar
interpretar os os elementos
elementos
asdessas
consequências dessas trocas de linhas e colunas, devemos
trocas de linhas e colunas, devemos interpretar os elementos interpretar os
da matriz
daelementos
matriz expandida
expandida como como
termostermos
das das equações
equações do do sistema,
sistema, assim:
assim:
da matrizdaexpandida
matriz expandida
comocomo termostermos
dasdas equaçõesdo
equações dosistema,
sistema, assim:
assim:
a) a) a de
a) aa troca
trocatroca
de de significa
linhas linhas
linhas significa
apenas
significa apenas
trocar
apenas trocar
atrocar
ordem a ordem
anaordem na na
apresentação
a) aapresentação
troca de linhas significa
das equações; e apenas trocar a ordem na
das equações; edas equações;
apresentação e
apresentação das equações; e
b) a troca
b) a troca
troca de colunas
de colunas
colunas significa
significa trocartrocar a ordem de apresentação
b) a b) adasde
troca de significa
colunas trocar
significa aaordem
trocar
ordem
a
deapresentação
de
ordem
apresentação
de das
apresentação
incógnitas incógnitas
do do
sistema.
das incógnitas do sistema.sistema.
das incógnitas do sistema.
Exemplo
Exemplo 2.3: resolva
2.3:resolva
resolva o sistema
o sistema de equações
de equações lineares,
lineares, a seguir,
ausando
seguir,
Exemplo 2.3:
Exemplo 2.3: o sistema
resolva de equações
o sistema lineares,
de equações a seguir,
lineares, pivo-
a seguir,
taçãousando
usandototal, pivotação
pivotação
operações total,
total,
aritméticasoperações
operações
com aritméticas
aritméticas
4 dígitos com com
4
significativos 4arredon-
dígitos
dígitos
e
usando pivotação total, operações aritméticas com 4 dígitos
significativos
damento ponderado.
significativos e arredondamento
e arredondamento ponderado.
ponderado.
significativos e arredondamento ponderado.
 0.448 x1 + 0.832
x1 + 0.832 x2 + 0.193
x2 + 0.193 x3 =1x3 =1
 0.448
 + + =
  0.448 x 0.832
x1 + 0.784
x 0.193
x2 − 0.207
x 1
x3 =
 0.421 0
1 2 3
 0.421 x1 + 0.784 x2 − 0.207 x3 =0
 0.421 x1 + 0.784 x2 − 0.207 x3 =0
 −0.319 x1 + 0.884 x2 + 0.279 x3 =0
−0.319
 −0.319 x1 + 0.884 x2 + 0.279
x1 + 0.884
x3 =
x2 + 0.279
0
x3 = 0

Solução:
Solução:
Solução:
Solução:
Na forma
Naforma
forma de matriz expandida, temos:
Na Na dede
forma matriz
matriz expandida,
expandida,
de matriz temos:
temos:
expandida, temos:
 0.448
 0.448 0.8320.832
0.1930.193
M 1 M 1
  0.448
=  0.421 0.832 0.193
−0.207 M 10
A = A0.421
 0.7840.784
−0.207 M 0 M 
A =  − 0.421 0.784 −0.279
0.207 MM 00
 0.319
 −0.319 0.8840.884
0.279 M 0  
 −0.319 0.884 0.279 M 0 
Primeiro
Primeiro passo:
passo: na pivotação
na pivotação total,
total, correspondente
correspondente ao primeiro
ao primeiro
Primeiro passo: na pivotação total, correspondente ao primeiro
pivô
Primeiro
pivôpivô (k=1):na pivotação total, correspondente ao primeiro pivô (k = 1):
passo:
(k=1):
(k=1):
a) a) Buscamos
a) Buscamos
Buscamos oomaioro maior
módulo
maior módulo
móduloentre entre
todos
entre todos os da
os elementos
todos elementos
da deda
matriz
os elementos
a) Buscamos
coeficientes:
matriz o maior módulo
de coeficientes: entre todos os elementos da
matriz de coeficientes:
matriz de coeficientes:
j =2j =2
j=2
 0.448 0.4480.8320.832 M 1M 1
0.1930.193
 0.421 0.448
0.421 0.832
0.784 0.193
−0.207  M 0
M 1
 −
0.207 MM 00
 0.784 0.207 M 0
0.421
3 − 0.784 −0.279
i 3=
= i−0.319 0.319
0.8840.884
0.279 M 0 
i 3  −0.319 0.884 0.279 M 0 
=
x1 x1 x x2 x3 x 3
x1 2 x2 x3
(o coeficiente
(o coeficiente de maior
de maior módulo móduloestá está na coluna
na coluna 2 elinha
j = 2 ej =na na linha
(o coeficiente de maior módulo está na coluna j = 2 e na linha
i = 3, iem em negrito).
= 3,negrito).
utacional
utacional CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 107

(o coeficiente de maior módulo está na coluna j = 2 e na linha


Observe que foi acoplada uma linha adicional, embaixo da
i = 3, em negrito).
matriz
Observede coeficientes,
que foi acopladapara o armazenamento
uma linha adicional, embaixo da ordem de de
da matriz
apresentação dasoincógnitas
coeficientes, para armazenamentoenvolvidas.
da ordem Então, inicialmentedas
de apresentação
incógnitas
temos envolvidas.
a ordem naturalEntão, inicialmente
das incógnitas x1 , xtemos
1 2
2
e x3 , ana
3
ordem natural
primeira,
das incógnitas x
segunda e terceira 1
, x e x ,
2colunas.
3
na primeira, segunda e terceira colunas.

b) Efetuamos
b) Efetuamos aa troca
trocade
delinhas
linhaseecolunas:
colunas:
 0.448 0.832 0.193 M 1  L11 ← L33
 0.421 0.784 −0.207 M 0 

 −0.319 0.884 0.279 M 0  L33 ← L11
x11 x22 x33
C11 C22
↑ ↑
C22 C11

com LL333eevice-versa,
Trocamos aa linha L11 com
1
colunaCC11 1com
vice-versa, eeaacoluna comCC22 2 e
evice-versa.
vice-versa.

c) Geramos
c) Geramos aa matriz
matrizpivotada:
pivotada:

0.884 −0.319 0.279 M 0


0.784 0.421 
 −0.207 M 0
0.832 0.448 0.193 M 1 
x22 x11 x33

Note que,nono
Note que, processo
processo de pivotamento
de pivotamento total, adeordem
total, a ordem de
apresentação
das incógnitas x
apresentação dasi
envolvidas foi alterada para
incógnitas xi envolvidas foi x , x e x
2 alterada
1 3
. para
i
x2 , x1 e x3 .
2 1 3

Segundo passo: no processo de triangularização, correspondente


ao primeiro passo (k=1), temos:
0.884 −
0.884 −0.319 0.279 MM 00 
0.319 0.279
0.784 0.421 −0.207 M 0  L ← L − (0.784 / 0.884) L ⇒ L ← L − 0.8869 L
0.784 0.421 −0.207 M 0  L22 ← L22 − (0.784 / 0.884) L11 ⇒ L22 ← L22 − 0.8869 L11
0.832
0.832 0.448
0.448 0.193 MM 11  L
0.193 L33 ←
←LL33 −
− (0.832
(0.832 // 0.884) L11 ⇒
0.884) L ⇒LL33 ←
←LL33 −
− 0.9412
0.9412 L
L11
xx22 xx11 xx33

0.884 −
0.884 −0.319
0.319 0.279
0.279 0 
MM 0
 0 
 0 0.7039
0.7039 −
−0.4544 M 0
0.4544 M 0 
x2 x1 x3
Note que, no processo de pivotamento total, a ordem de
108 Note que, no das
apresentação processo de pivotamento
incógnitas xi envolvidastotal, a COMPUTACIONAL
ordem para
foi alterada
CÁLCULO NUMÉRICO
de
xapresentação
2
, x1 e x3 . das incógnitas xi envolvidas foi alterada para
x2 , x1 e x3 .
Segundopasso:
Segundo passo:nono processo
processo de triangularização,
de triangularização, correspondente
correspondente ao primeiro
Segundo
passo
ao passo:
(k = 1),
primeiro no processo
temos:
passo de triangularização, correspondente
(k=1), temos:
ao primeiro passo (k=1), temos:
0.884 −0.319 0.279 M 0 
0.784
0.884 −0.319 0.279 M 0 
0.421 −0.207 M 0 L2 ← L2 − (0.784 / 0.884) L1 ⇒ L2 ← L2 − 0.8869 L1
0.784 0.421 −0.207 M 0  L2 ← L2 − (0.784 / 0.884) L1 ⇒ L2 ← L2 − 0.8869 L1
0.832 0.448 0.193 M 1 L3 ← L3 − (0.832 / 0.884) L1 ⇒ L3 ← L3 − 0.9412 L1
0.832 0.448 0.193 M 1 
x2 x1 x3
L3 ← L3 − (0.832 / 0.884) L1 ⇒ L3 ← L3 − 0.9412 L1
x2 x1 x3
0.884 −0.319 0.279 M 0
Capítulo 2 – Solução Computacional de Sistemas de Equ
0.884 −0.319 0.279 M 0 
 0 0 0.7039 − 0.4544 M 0
0.7039 −0.4544 M 0 Capítulo 2 – Solução Computacional de Sistemas
 0 0.7482 −0.06959 M 1
 0 0.7482 −0.06959 M 1 
x2 x1 x3
Terceiro
x2 passo:
x1 na
x3 pivotação total, correspondente ao segundo

pivô Terceiro
(k=2): passo: na pivotação total, correspondente ao segundo
pivôpasso:
Terceiro (k=2):na pivotação total, correspondente ao segundo pivô (k = 2):
a) Buscamos o maior módulo entre os elementos da matriz, a
a) Buscamos
partir
a) Buscamos da segunda
o maioro maior
linha
módulo emódulo
segunda
entre osentre os elementos
coluna:
elementos da amatriz,
da matriz, partir a
partir da
da segunda 2 segunda
j =linha e segundalinha e segunda coluna:
coluna:
0.884 −0.319j = 2 0.279 M 0
 0 0.884 0.7039 −0.319−0.4544 0.279M 0  M 0 
  
i = 3  0  00.7482 0.7039
−0.06959−0.4544M 1  M 0 
i = x3  0 x 0.7482 x −0.06959 M 1 
2 1 3
x2 x1 x3
(elemento de maior módulo localizado na coluna j=2 e linha
(elemento de maior módulo localizado na coluna j = 2 e linha i = 3).
i=3). (elemento de maior módulo localizado na coluna j=2 e linha
i=3).
b)
b) Efetuamos
Efetuamos somente
somente troca de
de linhas,
linhas, uma
uma vez
vez que,
que,na
nacoluna,
coluna, a
matriz
a matrizjá já
está
b) Efetuamos naturalmente
está pivotada:
somente troca
naturalmente de linhas, uma vez que, na coluna,
pivotada:
a matriz já está naturalmente pivotada:
0.884 −0.319 0.279 M 0
 0 0.884 −0.319
0.7039 −0.4544 M 0  M L20 ← L3
0.279
   L ←L
 0  00.74820.7039 −0.4544
−0.06959 M 1  M L30← 22 3

x2 0 x1 0.7482 x3−0.06959 M 1  L3 ← L2


x x x3
c) Geramos a2 matriz1 pivotada:
c) Geramos a matriz0.279 pivotada:
0.884 −0.319 M 0
 0 0.884 0.7482 −0.06959 M 1  M 0 
− 0.319 0.279
  
 0  00.70390.7482 −0.06959
−0.4544 M 0  M 1 
x2 0 x1 0.7039 x3 −0.4544 M 0 
x2 x1 x3
b) Efetuamos somente troca de linhas, uma vez que, na coluna,
b) Efetuamos −jásomente0.279
troca deM linhas, uma vez que, na coluna,
a 0.884
matriz 0.319
está naturalmente 0 pivotada:
amatriz já está naturalmente pivotada:
0 0.7039 −0.4544 M 0  L2 ← L3
CAPÍTULO 2  0.884 −−0.319 109
0.884 0.319 M 0  DE EQUAÇÕES LINEARES
0.279DE SISTEMAS
– SOLUÇÃO COMPUTACIONAL
 0 0.06959M M0 1  L3 ← L2
0.7482 −0.279
 00 −0.4544 M M0 0 L L←
0.7039 −0.4544 2 ←
L3 L3
 x2 0.7039 x1 x3  2
 00 −0.06959M M1 1 L3 L←
0.7482 −0.06959
0.7482 3 ←
L2 L2
c) Geramos
c) Geramos a matriz
axmatriz pivotada:
pivotada:
xx2 2 x
11 x3x3

c) 0.884 −a0.319
c) Geramos
Geramos amatriz 0.279
matrizpivotada:M 0
pivotada:
 0 0.7482 −0.06959 M 1 
0.884
0.884 −−0.319 0.279 M M0 0 
0.319 0.279
 00 0.7039 −0.4544 M 0 
 0x 0.74820.7482 −0.06959
−0.06959M M1 1 
x1 x3
 00 2 0.7039 −
0.7039 0.4544
−0.4544 M M0 0 

Quarto passo: xx2 no xprocesso
2 1x1 x3xde triangularização, correspondente
3

Quarto passo:
ao segundo
Quarto passo: no processo
passo
no (k=2),de
processo detriangularização,
temos:
triangularização, correspondente
correspondente ao segundo
Quarto passo: no
passo (k = 2), temos: processo de triangularização, correspondente
ao
ao segundo
segundo
0.884 passo
−0.319passo(k=2),
(k=2),temos:
0.279 temos:
M 0
 
0
0.884 0.319 −0.279
−0.7482 0.06959 M M 01 
 0.884 −0.319 0.279 M 0
 0
 0 −0.4544 M M 1 0 L3 ← L3 − (0.7039 / 0.7482) L2
0.7039 −0.06959
0.7482
0.7482 −0.06959 M 1 
 0x −0.4544 M 0 L3L← ←L L− −
 0 2 0.7039x1
0.7039 −
x3
0.4544
(0.7039
0.9408/ L0.7482) L2
M 0 L33 ←3 L33 − (0.70392/ 0.7482) L2

x2
0.884 x1
−0.319 x3
0.279 M 0L3 ← L3 − 0.9408L2
x2
0.884 x1 x3 L3 ← L3 − 0.9408L2
0 −0.7482
0.319 0.06959 M M 0 1  
−0.279
0.884 −0.319 0.279 M
−0.06959 1  
0
 00 0.7482
0 −0.3889 M M −0.9408
 00x 0.7482
0x −−0.3889 1  
0.06959 M M −0.9408
x3 
 0 2 01 −0.3889 M −0.9408
utacional x2 x1 x3
mputacional x2 x1 x3
3

Quinto passo:
Quinto passo: nono processo
processo de retrosubstituição,
de retrossubstituição, temos:temos:
Quinto passo: no processo de retrosubstituição, temos:
0.884 −0.319 0.279 M 0 
−0.319
0.884 0.279 M

0 

 00 0.7482 0.06959
0.7482 −0.06959 M M 1 1 
 00 00 −0.3889M −M0.9408
−0.3889  
−0.9408

xx22 x1x1 x3 x3

Retornando à àforma
Retornando formadede
equações
equações(note a nova
(note ordem
a nova das das
ordem
incógnitas): à forma de equações (note a nova ordem das incógnitas):
incógnitas):
Retornando
0.884 x − 0.319 x + 0.279 x =
0
0.884 x22 − 0.3191 x1 + 0.279 3
x3 = 0
0 x2 + 0.7482 x1 − 0.06959 x3 = 1
0 x + 0.7482 x1 − 0.06959 x3 = 1
0 x22 + 0 x1 − 0.3889 x3 = − 0.9408
0
 x2 + 0 x1 − 0.3889 x3 = − 0.9408
x3 = – 0.9408/(–0.3889) x3 = 2.419
xx3 == (1
– 0.9408/(–0.3889)
+ 0.06959 x ) / 0.7482 x3 = 2.419
x1 = 1.561
1 3
xx1 == (0
(1 ++0.319
0.06959 ) / 0.7482
x – x0.279
3 x ) / 0.884 x1 = 1.561
x2 = –0.2002
2 1 3
x2 = (0 + 0.319 x1 – 0.279 x3) / 0.884 2
x = –0.2002
Neste ponto, precisamos reordenar a solução sabendo que a
incógnitas):
incógnitas):
incógnitas):
incógnitas):
0.884 x2 − 0.319 x1 + 0.279 x3 = 0
 1100.884 −−0.319 + + 0.279 =
= CÁLCULO NUMÉRICO COMPUTACIONAL
0 x2   0.884
0.884 xxx − 0.319
0.319
+ 0.748222x21 − 0.06959 xxx +
111 x3 = 1 xx3x33=
0.279
0.279 000

0 x +  0000xxx2x212
 +++0.7482
0.7482
0.7482
− xx1x11−x−−30.06959
0.3889 0.06959
0.06959
= =
=
xx3x33=
− 0.9408 111
 2

000xx2x22+++ 000xx1x11 −−−0.3889
0.3889
0.3889xx3x33==
= −−−0.9408
0.9408
0.9408

x = – 0.9408/(–0.3889) x = 2.419
3 x3 = – 0.9408/(–0.3889) x3 3= 2.419
x1 = (1 +x xx ===––– 0.9408/(–0.3889)
0.9408/(–0.3889)
0.9408/(–0.3889) 1.561xx3x33===2.419 2.419
2.419
x10.06959
3= x3) / 0.7482
33 (1 + 0.06959 x3) / 0.7482 x1x1= =1.561
x2 = (0 + x11==(0
xx2x0.319
1=
(1
=(1(1 ++0.06959
–0.06959
0.06959
+x+0.319
0.279 xx3)x)33)/)/0.884
x1 –x0.279 //0.7482
0.7482
x0.7482
) / 0.884 x2x2= =–0.2002 –0.2002 xx1x11===1.561
1.561
1.561
1 3 3
xx2x22===(0
(0
(0+++0.319
0.319
0.319xx1x11–––0.279 0.279
0.279xx3x)33))///0.884
0.884
0.884 xx2x22===–0.2002
–0.2002
–0.2002
Neste ponto, precisamos reordenar a solução sabendo que a
Neste
Neste ponto, precisamos
ponto, precisamos reordenar a solução
reordenar sabendosabendo que a ordem queaadas
ordem das Neste
Neste ponto,
ponto,
incógnitas precisamos
precisamos
obtidas reordenar
reordenar
na retrosubstituição aaasolução
solução
soluçãoé {x2 , xsabendo sabendo
, x3}, queque a
incógnitas obtidas na retrossubstituição é {x2, x1, x3}, enquanto
1 a solução
ordem
ordem
ordem das
das incógnitas
das incógnitas obtidas obtidas xna
na xretrosubstituição
retrosubstituição ééé{x{x },
{x22,2,x, x1x1,1,x, x3x},
33},
enquanto
ordenada é S =incógnitas
a solução {x1, x2, x3} =éobtidas
ordenada na
S = {x1,–0.2002,
{1.561, 2
, retrosubstituição
3
} = 2.419}.
{1.561, –0.2002,
enquanto
enquantoaaasolução
2.419}. enquanto solução
soluçãoordenada ordenada
ordenadaéééSSS==={x {x1,11,x, x2x,22,x, x3x}33}}==={1.561,
{x {1.561, –0.2002,
{1.561,–0.2002, –0.2002,
resíduos R = [A S – B] dessa solução são:
Os2.419}.
2.419}.
2.419}. *
Os resíduos =( R A * S − B ) dessa solução são:
OsOs resíduos
Osresíduos
resíduos ==(=((RRR AAA**S*SS−−−BBB)))dessa dessa solução
dessasoluçãosoluçãosão: são:
são:
=
R1 | 0.448 x1 + 0.832 x2 + 0.193x3 − 1= | 0.0005
=
R2 =
|==
RRR
0.421
111 x1| |+|0.448
0.448
0.448xx1x1x1+2++−0.832
0.784 0.832xxx2x232++−+0.193
0.832
0.207 | xx3x33−
0.193
00.193
= −−1=
1=
1=
0.0003 | || 0.0005
0.0005
0.0005
−=
R3 =| =R=
RR222 x|1||+0.421
0.319 0.421xx1xx11+2+++0.784
0.421
0.884 0.784xxx2x322−−−−0.207
0.784
0.279 00.207 −=
3−− 0=
xx3x30.0003
0.207
| = 0=
0| || 0.0003
0.0003
0.0003
R333 =| −Erro RR =
=||−−0.319
0.319xx ++0.884
0.884xx ++0.279
0.279xx −−00 || =
=
= x| 1S11+–0.884 22+ 0.279 x 333− 0 | =
0.319 0.0003
0.0003 0.0003
E os erros estimados, Sexato x|,2obtidos foram:
E os erros estimados, Erro =Erro [ S –==S||exato ], obtidos foram: foram:
EEEos
os erros
oserros
erros estimados,
estimados,
estimados, Erro
Erro = | SSS–––SSSexato |,|, obtidos
obtidos foram:
exato|, obtidos foram:
exato
Erro x1 =| 1.561 − 1.561414494051471 | =0.000414494051471 ≅ 0.0004
Erro x2 =Erro
−Erro
| Erro xx1x11==|=−|| (1.561
0.2002 −
1.561
1.561 | = −0.000318235975219
−−−1.561414494051471
0.199881764024781)
1.561414494051471
1.561414494051471 | || === ≅ 0.0003 ≅≅≅0.0004
0.000414494051471
0.000414494051471
0.000414494051471 0.0004
0.0004
Erro x3 =Erro
| Erro
2.419
Erroxxx22== −
|=|−|−− 2.418590333334500 | = 0.000590333334500
0.2002−−−((−(−0.199881764024781)
0.2002
0.2002 ≅ 0. 0006
0.199881764024781)| || ===−−0.000318235975219
−0.199881764024781) 0.000318235975219≅≅≅0.0003
−0.000318235975219 0.0003
0.0003
2

Erroxx3x33==|=|| 2.419
Erro
Erro 2.419 −−−2.418590333334500
2.419 2.418590333334500
2.418590333334500| || = =
= 0.000590333334500≅≅≅0.0.
0.000590333334500
0.000590333334500 0.0006
0006
0006
Os resultados obtidos com pivotação total no Exemplo 2.3
são equivalentes Os aos resultados
obtidosobtidos
com com pivotação
pivotação parcial total
no no Exemplo
Exemplo 2.2, 2.3 são
OsOs resultados
Osresultados
resultados obtidos
obtidos
obtidos com pivotação
compivotação
com pivotação total no
totalno
total Exemplo
noExemplo
Exemplo2.3 2.3
2.3
equivalentes
considerando os aos obtidos
resíduos e os comestimados.
erros pivotação parcial no Exemplo 2.2,
Estatisticamente, considerando
temos
são
são
os equivalentes
sãoresíduos
equivalentes
equivalentes aos
aos
e os erros obtidos
aosobtidos
obtidoscom
estimados. com
com pivotação
pivotação
Estatisticamente,parcial
pivotaçãoparcial
parcial
temos no
no
no Exemplo
Exemplo
Exemplo
poucos 2.2,
2.2,
tipos2.2,
de
poucos considerando
tipos de
considerando
considerando sistemas
os
os que
resíduos
resíduos
os resíduos tême
e solução
os
os erros
erros melhor
estimados.
estimados.
e os erros estimados. com pivotação
Estatisticamente,
Estatisticamente,
Estatisticamente, temos
temos
temos
sistemas que têm solução significativamente melhor com pivotação total em
total empoucos
relação
poucosà tipos
relação à sua
tipos solução
de
de sistemas
sua solução com
sistemas pivotação
que têm
que têm
com pivotação parcial.
solução melhor com pivotação
solução melhor com pivotação
parcial.
poucos tipos de sistemas que têm solução melhor com pivotação
total em
totalem
total relação
relaçãoàààsua
emrelação sua solução
suasolução com
soluçãocom pivotação
compivotação parcial.
pivotaçãoparcial.
parcial.
2.1.1.3 Quantitativo de soluções de A * X = B

As soluções dos sistemas de equações lineares podem ser classificadas


segundo três possibilidades distintas:
a) Sistema determinado: quando o sistema de equações tem
solução única, a matriz de coeficientes é não singular, isto é, o seu
determinante é não nulo. Ocorre quando todas as equações do
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 111

sistema são linearmente independentes, ou seja, nenhuma equação


é combinação linear de outras.
b) Sistema indeterminado: quando o sistema de equações tem infinitas
soluções, a matriz de coeficientes é singular, ou seja, o seu deter-
minante é nulo. Ocorre quando temos um sistema de equações
lineares cujos coeficientes possuem alguma relação de dependência,
por exemplo, uma equação é gerada a partir da combinação linear de
outra(s), ou já temos menos equações do que incógnitas. Podemos
concluir que a(s) equação(ões) gerada(s) a partir da combinação
linear de outras existentes não acrescenta(m) informação(ões)
nova(s) ao conjunto de equações do sistema. Dessa forma, o sistema
se comporta como se tivesse menos equações do que incógnitas,
deixando alguma(s) incógnita(s) livre(s) de equações próprias
que restrinjam o(s) seu(s) valor(es). No método de eliminação
de Gauss, podemos constatar esse fato observando que, no final
do processo de eliminação, uma ou mais linhas inteiras da matriz
expandida se anula(m), inclusive o(s) correspondente(s) termo(s)
independente(s) se anula(m).
c) Sistema impossível: quando o sistema de equações não tem solução
alguma, a matriz de coeficientes também é singular. Ocorre quando
alguma equação do sistema é impossível de ser satisfeita. Por exemplo,
se alguma equação do sistema é gerada a partir da combinação
linear “parcial”, de apenas um dos lados de duas outras equações,
então geramos uma equação inconsistente. No método de Gauss,
podemos constatar esse fato observando que, no final do processo
de eliminação, uma ou mais linhas da matriz de coeficientes se
anulam, mas o termo independente não se anula. Na prática, significa
ter uma equação com todos os coeficientes de x nulos e com um
termo independente não nulo, o que é impossível de ser satisfeito.

O algoritmo de retrossubstituição adotado neste livro tratará das três


possibilidades de solução.
Nas possibilidades (b) e (c), os elementos nulos podem não ser
necessariamente iguais a zero, mas podem assumir valores residuais.
O algoritmo de retrosubstituições adotado neste livro tratará dessas
ONas
algoritmo de retrosubstituições
possibilidades adotado nulos
(b) e (c), os elementos neste podem
livro tratará dessas
não ser
possibilidades.
O algoritmo de retrosubstituições adotado neste livro tratará dessas
necessariamente iguais a zero, mas podem assumir
possibilidades.
112 valores
CÁLCULO residuais.
NUMÉRICO COMPUTACIONAL
possibilidades.
Um sistema
O algoritmo possível de adotado
de retrosubstituições resolver, mas
neste livroindeterminado,
tratará dessas se
Um sistema possível de resolver, mas indeterminado, se
comporta Um sistema
Umconforme
sistema
possibilidades. possível
o exemplo
possível a seguir:
de resolver,
de resolver, masmas indeterminado,secomporta-se
indeterminado,
comporta
conforme conforme o
o exemplo exemplo
a seguir: a seguir:
comporta conforme o exemplo a seguir:
 0.448 x + 0.832 x + 0.193 x =
1
Um sistema
 0.448
1 possível
x1 + 0.832
2 de 3resolver,
x2 + 0.193 x3 =1 mas indeterminado, se
0.421
0.448 x ++ 0.784
0.832 x x + − 0.207
0.193
comportaconforme o exemplo a seguir:
11 2 2 x3 =
x31= 0
0.421
0.421 x1 + 0.784 x2 − 0.207 x3 = 0
0.421 xx11 ++0.784
0.784x2x−2 − x3=
0.207
0.207 x30 0 (com =
= L3 L2 )

0.448 x1 +x0.832
0.421 + x2 + x
0.784 0.193
− x3 =
0.207 =1x 0 (com =
L L2 )

0.421x1 + 0.784 x2 − 0.207=
1 2 x 0 0 (com =
3 L3 = LL2)2 ) 3
0.421x1 + 0.784 x2 − 0.207 3x3 =
Se aplicarmos a eliminação gaussiana, chegaremos à seguinte
0.421
 Se aplicarmos
x1 + 0.784 x2 −a0.207
eliminação
= gaussiana,
x3 0 (com =
L3 L2 )chegaremos à seguinte
Se aplicarmos
matriz triangular a eliminação
superior na gaussiana,
forma chegaremos
expandida: à seguinte
matriz
Se
Se aplicarmos
triangular
aplicarmos
a eliminação
asuperior
eliminação
gaussiana,
nagaussiana,
forma chegaremos
expandida: à seguinte matriz
chegaremos à seguinte
matriz triangular superior na forma expandida:
triangular superior na forma expandida:
matriztriangular
0.448 0.832 0.193
superior 1 
M expandida:
na forma
0.448
0
0.448 0.8320.832 0.193 0.193
0.002170 −0.193
M  1 
0.3884M M M −1 0.9397
0.448
 0 0.832 1   
 000 0.002170
0.002170
0 0−0.3884
−−0.3884 M 0−0.9397
M M −M 0.9397   
  0.002170 0.3884 −0.9397  
 00 0 00 0 00 0M M 0M0  0 
(usando aritmética exata em i=3)

(usando
(usando
(usando
(usando aritmética
aritmética
aritmética
aritmética emexata
exata
exata
exata em
i em em
i=3)
= 3)i=3) i=3)
Observe que a terceira linha, ou equação, foi completamente
Observe
Observe
Observe queque
que aaque
terceira linha,
aa terceira
terceira
terceira linha, ouequação,
linha,
ou equação, foifoi
oucontribuindo
equação, completamente
foi completamente
completamente
eliminada no segundo
Observe passo, k=2,
linha, não
ou
eliminada no segundo passo, k=2, não contribuindo mais
equação, foi mais
completamente
com com
a a
eliminada
eliminada
eliminada
solução no no
segundo segundo
no segundo
passo, passo,
k = passo,
2, k=2,
não não
k=2,contribuindo
não
contribuindo mais mais
contribuindo
com a com
soluçãoa
mais do com a
sistema.
solução do sistema.Logo,
do sistema. Logo,temos
temosum umsistema
sistema efetivo
efetivo deden=2n=2 equações,
equações,
solução
soluçãodo
Logo, sistema.
dotemos Logo,
um
sistema. temos
sistema
Logo, um sistema
efetivo
temos de
um 2efetivo
n =sistema de
equações, masequações,
n=2
efetivo com
de trêsequações,
n=2 incógnitas:
mas
mas com
com três
três incógnitas:
incógnitas:
mas
mascom
com
três incógnitas:
0.448 xtrês incógnitas:
+ 0.832 x + 0.193 x = 1
0.448 x11 + 0.832 x2 2 + 0.1933x3 = 1
x1 + 0.002170
00.448 x1 + 0.832 xx2 − 0.3884 x3 1= −0.9397
+ 2 +− 0.193+ 3 =
x0.193
0 x  0.448
+ x
0.002170
0 x11 + 0 x2 + 0 x3 =
 1 0.832
x 2 0
x
0.3884
2 x 3
x
= 3−= 1
0.9397
00 xx +x0.002170
0 + x2 − 0.3884
0.002170
1 + 10 x2 + 0 x3 =
1 x
02 − x3 =
0.3884 −0.9397
x = −0.9397

0.448 x01 +
3
0 
x + x 0.832
+ 0 x x= 2 +0 0.193 x3 = 1
 10 x1 +2 0 x2 + 3 0 x = 0
⇒ 0 x1 + 0.002170
0.448 x1 + 0.832 x2x− + 3
0.193xx33=
0.3884 =−10.9397
2
  0.448 x + 0.832 x
x1 + 0.832 + 0.193 x = 1
⇒ 0 x1 0.448
+ 0.002170 2 + 0.193
x2 2 − x0.3884 x3 = x3−= 1
0.9397
1 3

⇒0 x1 + 0.002170 x2 − 0.3884 x3 = −0.9397


Assim,
⇒ 0x o nosso algoritmo
+ 0.002170 x2 − 0.3884 dax3função
= retrosubstituição deve tratar
−0.9397
  1

sistemas com  uma linha a menos do que o número de incógnitas,

Assim,
ou seja,
ouma
nosso algoritmo da função retrosubstituição deve tratar
Assim, o nossoequação
com algoritmosendo da função combinação linear deve
retrosubstituição de outra(s),
tratar
sistemas Assim,
com uma
Assim,
o nosso
linhaalgoritmo
a menosdada
do função oretrosubstituição
que retrossubstituição deve tratar
número de incógnitas,
sistemas com umaolinha
nosso aalgoritmo
menos do quefunção deve tratar siste-
o número de incógnitas,
ousistemas
seja,
mascom
comcom
uma
uma uma linha
equação
linha asendo
a menos menos odo que de
do quecombinação
número o incógnitas,
número
linear de de incógnitas,
ououtra(s),
seja, com uma
ou seja, com uma equação sendo combinação linear de outra(s),
ou seja,
equaçãocom uma
sendo equação linear
combinação sendodecombinação linear de da
outra(s), cujo coeficiente outra(s),
diagonal
principal da última linha e o seu termo independente sejam numericamente
nulos. Desse modo, se esses coeficientes tiverem valores nulos ou residuais,
devido aos arredondamentos, então atribuiremos um valor escolhido para
o xn, pois o algoritmo de retrossubstituição inicia com o cálculo do xn. Além
disso, a linha que se torna nula será a última, sempre que a pivotação for
aplicada; e, se o método não tiver pivotação associada, algum pivô poderá
se tornar nulo antes, ainda dentro do algoritmo de eliminação.
queretrosubstituição
de se torna nula seráinicia
a última,
comsempre
o cálculoquedoa pivotação for aplicada;
xn . Além disso, a linha
e,
quesese
o método
torna nula não tiver
será pivotação
a última, associada,
sempre algum pivô
que a pivotação forpoderá se
aplicada;
tornar
e, nulo antes,
se o método
CAPÍTULO 2 nãoainda
– SOLUÇÃO dentro do associada,
tiver pivotação
COMPUTACIONAL algoritmo algum
DE SISTEMAS de eliminação.
DE pivô poderá se 113
EQUAÇÕES LINEARES

tornar Já
nulo
umantes, ainda
sistema dentro do
impossível dealgoritmo
resolver sedecomporta
eliminação.
conforme
o exemplo
Já umaJásistema
seguir: impossível de resolver se comporta conforme
um sistema impossível de resolver se comporta conforme o exemplo
o exemplo a seguir:
a seguir:
0.448 x1 + 0.832 x2 + 0.193 x3 = 1

 0.448xx11 +
0.421 0.832xx22 −
+ 0.784 0.193xx33 =
+ 0.207 10
=
0.421x + 0.784 x − 0.207 x = 50
0.421x11 + 0.784 x22 − 0.207 x33 =
 0
0.421x + 0.784 x − 0.207 x = 50
 difere
(L3 1
de L2 somente
2
pelo
3
termo independente)
(L3 difere
(L3 diferededeL2L2
somente
somente pelopelo
termo independente)
termo independente)
Se aplicarmos a eliminação gaussiana, chegaremos à seguinte
matrizSe
expandida:
Se aplicarmos
aplicarmos a eliminação
a eliminação gaussiana,chegaremos
gaussiana, chegaremos à seguinte
seguinte matriz
matrizexpandida:
expandida:
0.448 0.832 0.193 M 1 
 0 −0.193
0.3884 M −0.9397 
0.448 0.002170
0.832 1 
 0 
 0
0.002170 −0.3884
0 0.9397 
M −49.0603
 0 0 0 M 49.0603 
(usando aritmética exata em i=3)
(usando aritmética exata
(usando i = 3)
emem
Observearitmética exata
que a terceira i=3) ou equação, foi parcialmente
linha,
eliminada no
Observepasso
que que
Observe amas
k=2,
a terceiraficou com
linha,
terceira linha, ouum
ou valor foi
equação,
equação, não
foinulo no termo
parcialmente
parcialmente eliminada
independente:
eliminada no passo
no passo k = 2, k=2, mas ficou
mas ficou com um com umnão
valor valor não
nulo nonulo
termonoindependente:
termo
independente:
0.448 x1 + 0.832 x2 + 0.193 x3 = 1

0
 x1 + 0.002170
0.448 x1 + 0.832xx22 −+0.3884 =
1−0.9397
0.193 xx33 =
0 x + 0 x + 0 x =
0 x11+ 0.002170
 2 x3 2 −49.0603
0.3884 x3 = −0.9397
0 x + 0 x + 0 x = 49.0603
 1
Lembre-se que o algoritmo da função retrosubstituição também
2 3
Lembre-se de que o algoritmo da função retrossubstituição também deve
deve levar
levar emconta
em
Lembre-se queessa
conta possibilidade
o algoritmo
essa da de
possibilidade de
ter ter
função o coeficiente da diagonal
retrosubstituição
o coeficiente também
da diagonal principal da
principal
deve levar da
em
última última
conta
linha linha numericamente
essa possibilidade
numericamente nulo,
de ter
nulo, enquanto oenquanto
o coeficiente o seu
da termo é não
diagonal
seu termo independente
nulo.
independente
principal daPortanto,
última anulo.
última
é nãolinha equação desse
Portanto,
numericamente sistema
a última é impossível
nulo,equação
enquanto desse de
o seu ser satisfeita,
sistema
termo
pois nãode
éindependente
impossível possui
ser solução,
é não ou seja,
satisfeita, poisuma
nulo. Portanto, não das equações
possui
a última do sistema
solução,
equação é “inconsistente”.
ou seja,
desse uma
sistema
Nesse caso, o algoritmo não tem como tratar um sistema inconsistente. Como
é impossível de ser satisfeita, pois não possui solução, ou seja, uma
alternativa, podemos apenas interromper o algoritmo, ou atribuir um valor NaN 3
(Not a Number) para o vetor solução, indicando solução como conjunto vazio.
3
O símbolo IEEE NaN é um resultado para operações indefinidas como (Inf - Inf), (0/0) e para quaisquer
 operações envolvendo NaN.
114 CÁLCULO NUMÉRICO COMPUTACIONAL

Neste capítulo e ao longo desta obra, vamos apresentar todos os algoritmos


(compactados) no Caderno de Algoritmos, que disponibilizamos no link <http://
sergiopeters.prof.ufsc.br/algoritmos-livro/>, indicando o título do algoritmo corres-
pondente ao método ou exemplo apresentado. Aproveite este momento para fazer o
download deste Caderno e conferir o primeiro algoritmo, disponibilizado no arquivo
Cap2ElimGauss.m, sobre eliminação gaussiana com pivotação parcial ou total
aplicado ao Exemplo 2.3.

Nos algoritmos exemplos deste livro, usamos principalmente o software livre GNU Octave,
 compatível com MathLab®, disponível em: <https://www.gnu.org/software/octave/>.

No algoritmo de eliminação de Gauss, o processo de pivotação, total


ou parcial, está inserido antes da etapa da eliminação. No processo de esca-
lonamento, as operações nas colunas envolvem algebricamente todos os j,
for j = 1: n + 1, pois são operações sobre as linhas i inteiras; mas a operação
na coluna j = k tem resultado conhecido, uma vez que sabemos que esse
resultado exato é sempre nulo. Assim, essa operação aritmética conhecida
foi suprimida no algoritmo, for j = k + 1: n + 1, e atribuímos o resultado nulo
conhecido para a coluna j = k depois do encerramento do for j. Além disso,
as operações nas colunas j à esquerda de k (j = 1: k) envolveriam somente
operações com coeficientes nulos, que também são desnecessárias e por isso
também são suprimidas.
Sobre os Exemplos 2.1, 2.2 e 2.3 que desenvolvemos, algumas consi-
derações são importantes e merecem destaque:

a) Os resíduos encontrados servem de parâmetros para validar uma


solução, ou seja, servem para verificar o número de dígitos exatos
da solução, mas não para sistemas mal condicionados, nos quais
não basta calcular os resíduos, como veremos mais adiante.
b) Os erros calculados nos exemplos capturam somente os erros de
arredondamento da solução, pois não temos erros de truncamento
envolvidos no método de eliminação gaussiana.
c) As soluções com menores erros de arredondamento acumulados
foram obtidas com pivotação parcial.
lados foram obtidas
d)d)
Para com pivotação
Para minimizar
minimizar parcial.
o o efeito
efeito cumulativo
cumulativo dos dos erros
erros dede
arredondamento,
d) Para minimizar arredondamento, podemos
podemostentar
o efeito cumulativo dos modificar
tentar erros deasasoperações
modificar operações
elementares
arredondamento,
CAPÍTULO 2elementares
– SOLUÇÃO do processo
podemosdotentar
processo
COMPUTACIONAL de
modificar
DE escalonamento
de escalonamento
SISTEMAS DE EQUAÇÕES da seguinte
as operações da seguinte115
LINEARES
forma:
elementares do forma:
processo de escalonamento da seguinte
forma: i) i)Substituímos
Substituímosa alinha
linhaa aser
sereliminada
eliminadapelo
peloproduto
produtoentre
entre
d) Paraa minimizar
própria
o efeito
linha
cumulativo
e eo oelemento
dossubtraído
pivô
erros de arredondamento,
podemos tentar modificar as operaçõessubtraído
i) Substituímos aa própria
linha a linha
ser eliminada elemento
pelo pivô
produto entre dodoproduto
elementares produto
do processo
a própriade entre
linha e oaelemento
entre alinha
escalonamentolinhadodo
dapivô
pivô
pivô e eo oelemento
elemento
subtraído
seguinte forma: a aser
sereliminado.
do produto eliminado.Por
Por
entre a linhaexemplo,pivô ese
exemplo, sea alinha sofre
La3Lser sofre a aseguinte
Poroperação
seguinte operaçãodede
do
Substituímos aolinha alinha
elemento
ser eliminada
3
eliminado.
pelo produto entre a própria
se eliminação
exemplo,linha aeliminação
elinha L3do
o elemento doelemento
sofreelemento a31a com
a seguinte
pivô, subtraído
31
com odo
pivô
o pivô
operação dada
primeira
de
produto entre alinha
primeira linha
linha do
eliminação doa no nopasso
elemento
pivô 11e o passok=1,comtemos:
temos:
a ser eliminado. Por exemplo, se a linha L3 sofre
o pivô da primeira linha
11 elemento
a a 31
k=1,
a seguinte
a11 no passo k=1, temos:operação de eliminação do elemento a31 com o pivô da
L3La311←no
primeira linha passoa31
ka = 1, temos:
← L3L−3 − 31L1L1
a a11a11
L3 ← L3 − 31 L1
a11
Sabendo que o objetivo dessa operação é anular o elemento
Sabendo que o objetivo dessa operação é anular o elemento
a , objetivo
podemos
Sabendo que 31oaSabendo modificá-la
que o objetivo
dessa
, podemos desde
operação
modificá-la dessaque
desde mantenhamos
operação
é anular
que é anularooresultado
o elemento
mantenhamos resultadoa31  ,
oelemento
31
podemos
a31 , podemosnulo modificá-la
nulonanaprimeira
modificá-la desdecoluna.
primeira que desde que
Assim, mantenhamos
Assim,sese o resultado
mantenhamos
coluna. o resultado nulo
na primeira coluna. Assim, se
nulo na primeira coluna. Assim, se
a31a31 a31a31
L3L− − L 1L = =0 ,
0 para
,, para
para jj =
=
j 1,
=1, a
1, a
31 − − a11a = =00
a31 3
a11a11 1 a31 31
a11a11 11
L3 − L1 = 0 , para j = 1, a31 − a11 = 0
a11 Então, podemos multiplicar
a
Então,
Então, podemos
podemos multiplicaressa
multiplicar 11
essaequação
equaçãopelo peloelemento
elementopivô
elemento pivô a11,
pivô
utacional Então, podemos resultando
a11a , multiplicar
resultando em
, resultandoessa uma
ememuma forma
umaforma
equação alternativa equivalente
peloalternativa
forma elemento que
equivalente
alternativapivô mantém
que o
equivalenteque
utacional
resultado nulo para primeira coluna da matriz. Mas esse processo
11
mantém
a11 , resultando em uma
mantém o oresultado nulo
nulopara
forma alternativa
resultado para primeira
primeiracoluna
equivalente que dadamatriz.
sem divisões exige uma multiplicação a coluna
mais em cadamatriz.
linha,
Mas
mantém o resultado
Mas esse
esse
aumentando processo
nulo para
processo sem
o número divisões
primeira
semtotal exige
coluna
divisões uma
da matriz.
exige
de operações uma multiplicação
multiplicaçãoa a
aritméticas:
mais
Mas esse processo
maisem cada
sem
em linha,
divisões
cada aumentando
linha, exige oonúmero
uma multiplicação
aumentando número totaladede
total operações
operações
a11 ** L33 − a31 * L1 = para
0 para j = 1 , a11 * a31 − a31 ** a
a =
= 00
mais em cadaaritméticas:
linha,
11
aumentando o número total de operações
aritméticas: 31 31 11
11

aritméticas: Com essa forma alternativa de aplicar as operações de eliminação,


Com essa forma alternativa de aplicar as operações operações
temos um menor acúmulo de erros de arredondamento, pois não
de eliminação,
haverá temosdoum
divisões ao longo menor
processo acúmulo sendo
de eliminação, de
de erros
erros de
de
necessária
apenas uma divisãopois
arredondamento, no final
não do processo
haverá de retrossubstituições,
divisões ao
ao longo
longo dodo37
no momento de determinar as incógnitas xi. Mesmo assim, esse
processo de eliminação,
procedimento sendogerar
alternativo pode necessária apenas
erros por perdauma
uma divisão
divisão
de significação,
especialmente quando temos
no final do processo pivôs de grande magnitude
de retrosubstuituições, no momentoou quando
momento de
de
o número de equações é elevado. Nesses casos, ocorre um acúmulo de
determinar
operações deas incógnitas xsobre
multiplicação i
. Mesmo assim,
as linhas doesse procedimento
procedimento
sistema, amplificando
seus valores epode
alternativo podendo até erros
gerar atingirpor
a região de overflow,
perda sobretudo
de significação,
significação,
nas últimas linhas da matriz escalonada.
especialmente quando temos pivôs de grande magnitude magnitude
ou quando o número de equações é elevado. Nesses
Nesses casos,
casos,
ocorre um acúmulo de operações de multiplicação
multiplicação sobre
sobre
as linhas do sistema, amplificando seus valores
valores ee podendo
podendo
atingir a região de overflow, sobretudo nas últimas
últimas linhas
linhas da
da
116 CÁLCULO NUMÉRICO COMPUTACIONAL

2.1.2 Método de Gauss-Jordan


O método de Gauss-Jordan consiste em transformar a matriz dos
coeficientes, que compõe a matriz expandida, em identidade. Então, depois
de transformada, a última coluna dessa matriz expandida será a solução
de A * X = B. Essa transformação é obtida através da aplicação sucessiva
de operações elementares sobre linhas buscando a eliminação de todos os
Capítulo 2 – Solução Computacional de Sistemas de Equações Lineares
coeficientes da respectiva coluna, exceto o da diagonal principal. Também
podemos associar esse métodoCapítulo
a um2 processo de pivotamento parcial ou total.
– Solução Computacional de Sistemas de Equações Lineares
Capítulo
Capítulo 2 – 2Solução
– Solução Computacional
Computacional de Sistemas
de Sistemas de de Equações
Equações Lineares
Lineares
da Inversão Não
de Matrizes
detalharemos o algoritmo desse
Capítulo 2método
– Solução aqui porquede ele
Computacional necessita
Sistemas do Lineares
de Equações dobro
de operações aritméticas em relação ao método de eliminação gaussiana e, por
conseguinte, acumula mais arredondamentos.
versão
étodo
rsão de
de Matrizes
inversão de matrizes, multiplicamos o sistema
ão dede Matrizes
Matrizes
nversão de inversa
la matriz MatrizesA–1 de A:
o de inversão 2.1.3
de matrizes, Método da inversão
multiplicamos de matrizes
o sistema
de inversão
inversão dede matrizes,
matrizes, multiplicamos
multiplicamos o o sistema
sistema
atriz
do de inversa
inversão A–1de(de
–1A
−1
A *A:X ) = A multiplicamos
matrizes,
−1
( B ) de matrizes, o sistema
iz inversa
inversa A–1A deNo de A:
A:método de inversão multiplicamos o sistema A * X = B
atriz inversa pela A deinversa
matriz
–1
A: −1 A de A: –1
1A ( A * X )−1=−1A ( B )
−1
zando A ( A * X ) = A ( B()B )do produto matricial, o sistema
−aA (
1 −associatividade
A * X ) = A
A−1 ( A * X ) = A−1 ( B )
oassociatividade
a associatividade dodo produto
produto matricial,
matricial, o sistema
o sistema
ssociatividade do −1 produto−1matricial, o sistema
o a associatividade (Utilizando
A * Ado ) X produto
a=associatividade
A * B matricial, do produto
o sistemamatricial, o sistema resulta em:
( IX) X=−1A=−1A*−B1 * B
( A( * A)−1X) X=) =AX−A1 =−*1BA* −B−11 * B
1 (−1A* A* A
−1
−A

( A I * XA)=X−1A= A* B * B
( I ()IX)( X=) =A−A1 * B* −B1
nto, podemos ( IX)−X1=−obter
1=
A−A 1
* Bo vetor de incógnitas X apenas
*B
X X= = A A* B* B–1
do a matriz inversa X = AA −1 pelo vetor de termos independentes
*B
de podemos
odemos
um métodoobterobter o o
vetor
eficiente vetor de incógnitas
deincógnitas
quando incógnitas
dispomos Xdaapenas
apenas
inversa da
demos obter o –1vetor de Portanto, podemos obter X Xapenas
o vetor de incógnitas X apenas multiplicando
matriz
podemos
triz
so inversa
inversa
contrário, aA A A
obter
matriz pelo
teremos
–1 pelo
ovetor
inversa vetor
vetor
odeA –1
de
custo de
de
pelo termos
incógnitas
termosvetor
adicional independentes
de termos X apenas
independentes independentes B. Trata-se de um
da determinação
iz inversa –1
pelo vetor termos independentes
m método
matriz
método método
inversa eficiente
eficiente eficiente
Aquando
–1 quando
pelo
quando quando
vetor dispomos
dispomos
de termos
dispomos da da inversa
inversa
independentes dada matriz A; caso contrário,
étodo eficiente dispomos dada inversa
inversa dada
ontrário,
m método teremos
teremos oocusto
custo adicional
adicional da da
determinação
determinação dadainversa.
rário,
mos
ário, teremos
obter
teremos aeficiente
matrizo custo
oPodemos
custo quando
inversa adicional
adicional de dispomos
A de
da davárias damaneiras.
determinação inversa
determinação
obter a matriz inversa de A de várias Aqui,maneiras. Aqui, vamos
ontrário,
o próprio teremos o custo adicional da determinação
usarmétodo
o própriodemétodo escalonamento
de escalonamento de Gauss-Jordan
de Gauss-Jordan aplicado à matriz
obter aaumentada
matriz inversa AAde A],,de várias maneiras. Aqui,
rter
matriz a matriz
a matriz inversa
aumentada
inversa de[de MA Ide
de várias
conforme
conforme
várias maneiras.
o oExemplo
maneiras. ExemploAqui,
Aqui, 2.4.2.4.
róprio
obter
prio a método
matriz
métododedeescalonamento de
inversa escalonamento
de A de várias
escalonamentodedeGauss-Jordan de Gauss-Jordan
maneiras.
Gauss-Jordan Aqui,
io método
z aumentada
róprio método [ A I ] , conforme o Exemplo 2.4.2.4.
IMde escalonamento de Gauss-Jordan
2.4: resolva M
aumentada
mentada [ A[oAM sistema de equações
, conforme
]I, ]conforme lineares,
o Exemplo
o Exemplo 2.4. a seguir,
izmétodo
aumentada [ A M I ] ,de
da inversão conforme
matrizes. o Exemplo 2.4.
Utilize o processo
resolva
solva
amento o
o sistemasistema
parcialdepara de de equações
equações lineares,
lineares,
evitarlineares,
pivôs nulos a seguir,
a seguir,
e diminuir o
lva o sistema equações a seguir,
doodo
resolva
deda da inversão
o sistema de de matrizes.
equações
inversão de matrizes. Utilize o processo
arredondamentos. Utilize
lineares, o processo
a seguir,
vamos usar o próprio método de escalonamento de Gauss-Jordan
aplicado à matrizde
No método aumentada
inversão de M I ] , conforme
[ Amatrizes, o Exemplo
multiplicamos 2.4.
o sistema
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL
A * X = B pela matriz inversa A de A: –1 DE SISTEMAS DE EQUAÇÕES LINEARES 117
Exemplo 2.4: resolva o sistema de equações lineares, a seguir,
usando A−1 ( A * X ) de −1
( B)
= Amatrizes.
Exemploo2.4: método
resolvadao inversão
sistema de equações Utilize
lineares, o processo
a seguir, usando o
de pivotamento parcial para evitar pivôs nulos e diminuir
método da inversão de matrizes. Utilize o processo de pivotamento parcial o
Utilizando a associatividade do produto matricial, o sistema
acúmulo
para evitarde arredondamentos.
pivôs nulos e diminuir o acúmulo de arredondamentos.
resulta em:
3 x1 + 1.5 x2 + 4.75 x3 = 8
7 ( A * A) X = A * B
 −1 −1
4 x1 + 2 x2 + 3 x3 =
2 x + 5 x + 3x = −12 ( I ) X = A * B
−1
 1 2 3

Solução: X = A−1 * B
utacional Solução:
utacional Agora,
Agora, adotamosoperações
adotamos operaçõesaritméticas
aritméticascom com4 4dígitos
dígitossignificativos
significativos e arre-
Portanto, podemos obter o vetor de incógnitas X apenas
edondamento
arredondamento ponderado. ponderado.
Assim, na Assim,
formana forma matricial,
matricial, temos: temos:
multiplicando a matriz inversa A–1 pelo vetor de termos independentes
B. Trata-se
 3 1.5 de4.75 um método
 x1   eficiente
8  quando dispomos da inversa da
 3 1.5 4.75  x1   8 
= teremos
matriz4 A;2caso 3contrário,
 **  xx2  =  7 o custo adicional da determinação
 4 2 3   2  7 
da inversa.
2 5 3   x3   −12 
 2 5 3   x3   −12 
Podemos
Para a geração obter da amatriz
matrizinversa
inversa de de A,
A de várias maneiras.
adotamos um método Aqui,
vamosPara a
usargeração
o próprio da matriz
método inversa
de de A, adotamos
escalonamento um método
Para
prático a geração da matriz
clássico: geramos inversa de A,
a matriz adotamos
aumentada AdeM IGauss-Jordan
um[método ] prático clássico:
composta
prático
aplicado
geramos clássico:
à matriz
a matriz geramos
aumentada
aumentadacoma matriz aumentada
] ,composta
conforme
[ A aM Imatriz [oAmatriz
da Exemplo composta
M II] da 2.4.
A mesma
concatenada
da matriz A concatenada identidade
com a matriz
da matriz identidade I dacom
A concatenada mesma de A:
ordemidentidade
a matriz I da mesma
ordem de A:
ordem de2.4:
Exemplo A: resolva o sistema de equações lineares, a seguir,
 3 15 . 4.75 M 1 0 0
usando
 3 15 . o4método
.75 M 1 da 0 inversão
0 de matrizes. Utilize o processo
4 2 3 M 0 1 0
 pivotamento parcial para evitar pivôs nulos e diminuir o
de
42 5
2 3 M 0 1 0
3 M 0 0 1
acúmulo
2 5 de 3 arredondamentos.
M 0 0 1
 
Através
Através
Através
de
3 x1 + 1.5de
de
+operações
x2 operações
4.75 x3 =
operações
8elementares
elementares
elementares
sobre
sobre linhas,
linhas,
sobre
transformamos
transformamos
linhas, transformamos
a matriz
A
a4matriz
na A
matriz na matriz
identidade identidade
I, e I, e consequentemente
consequentemente a matriz a matriz
identidade inicial
x1 + 2 xA2 na
a matriz + 3matriz
x3 = 7 identidade I, e consequentemente a matriz
transforma-se
identidade inicial na inversa A . Trata-se
–1
transforma-se de um procedimento
na inversa A . Trata-se de
–1 análogo
um ao
2 x1 é+ utilizado
que
identidade5 x2 +inicial=
3 x3no −12
transforma-se
método de na inversamas,
Gauss-Jordan, A–1. nesse
Trata-se deestendido
caso, um
procedimento análogo ao que utilizamos no método de Gauss-
para 2n colunas.análogo ao que utilizamos no método de Gauss-
procedimento
Solução:
Jordan, mas, nesse caso, estendido para 2n colunas.
Jordan,
Agora, mas, nesse
adotamos caso, estendido
operações aritméticaspara colunas.
com 42ndígitos–1 significativos
A seguir, vamos apresentar os passos para a obtenção de A .
e arredondamento ponderado. Assim, na forma matricial, temos:
A seguir, vamos apresentar os passos para a obtenção de A–1.
A seguir, vamos apresentar os passos para a obtenção de A–1.

Primeiro passo: utilizando o método de pivotação parcial,


Primeiro passo: utilizando o método de pivotação parcial,
correspondente ao primeiro pivô (k=1):
correspondente ao primeiro pivô (k=1):
a) Buscamos o maior módulo da coluna j=1:
Jordan, mas, nesse caso, estendido para 2n colunas.

A seguir, vamos apresentar os passos para a obtenção de A–1.


118 CÁLCULO NUMÉRICO COMPUTACIONAL
A seguir, vamos apresentar os passos para a obtenção de A–1.

Primeiro
Primeiro passo: utilizando
passo: utilizando o método deopivotação
métodoparcial,
de pivotação parcial,
correspondente
aoPrimeiro passo:
correspondente
primeiro pivô utilizando
(k = 1): o método
ao primeiro de pivotação parcial,
pivô (k=1):
correspondente ao primeiro pivô (k=1):
a) Buscamos
a) Buscamos o maioromódulo
maior módulo daj coluna
da coluna = 1: j=1:
a) Buscamos
j = 1 o maior módulo da coluna j=1:
j = 1 3 1.5 4.75 M 1 0 0 
i =3 2 (4)
1.5 4.75
2 M 31 M0 0 0 1 0 

i = 2 (4)  22 
53 M 30 M1 0 0 0 1 
 2
(elemento M 0 0 1  da coluna j=1 está na segunda linha i=2)
5 de3maior
(elemento de maior módulo
módulo da coluna j = 1 está na linha i = 2)
(elemento de maior módulo da coluna j=1 está na segunda linha i=2)
b) Trocamos linhas:
b) Trocamos
b) Trocamos linhas:
linhas:
4.75 M 1 0 0  L1 ← L2
 3 1.5

 3 (4)1.5 4.75
2  LL ← L
M 31 M0 0 0 1 L1 0←
(4)  2   22 1

  2 53 M 30 M1 0 0 0 L2 1←  L1
 2 (troca
5 da3linha 0 1L 2 e vice-versa) Capítulo
M 0L1 com 2 – Solução
Capítulo Computacional
2 – Solução de Sistemas
Computacional de de
de Sistemas Equ
Capítulo 2 – Solução Computacional de Sistemas de Equ
(troca da linha L com L e vice-versa)
(troca da linha L 1 com L 2 e vice-versa)
1 2

c)
c) Geramos
c)
c) Geramos
Geramos aaa matriz
Geramos matriz pivotada:
a matriz
matriz pivotada:
pivotada:
pivotada:
4 4 2 2 3 3M 0M 01 10  
4  2 3 M 0 1 0 0
3 15
. 
3
 3  15 . 4.75
15
. 4. MM 1
4.75
75 1M 10
0 00
0 0
2 2 5 5 3 3M 0M 00 01  
2 5 3 M 0 0 1 1
Segundo
Segundo
Segundo passo:
passo: no
passo: processo
nono processo
processo de normalização
dede normalização
normalização do primeiro
dodo primeiro
primeiro pivô
pivô
pivô
Segundo
(k=1), passo:
temos:no processo de normalização do primeiro pivô (k = 1), temos:
temos:
(k=1),
(k=1), temos:
 4 4 4 2
2 2 3 3 3 MM 0 0M 01
1 100  0L ←
L11 L
←1 ←
L // 14
L11 L 4/ 4
 3 31.51.54.75  
 3 1.5 4.75 4.75 MM 11M 10
0 000  0 
 2 2 5 5 3 3 M 0M 
2 5 3 M 0 00
0 011 1 
1 10.50.50.75 M 0M 00  
1  0.5 0.75 M 0
0.75 0..25
0.250
25 0 0
3 315.. 15
. 4 
 3 15 4..75
4.75
75 MM 11M 1 0 0 0 0 0 0
2   
2 2 5
5 5 3 3 3 MM 0 0M 0 0 0 0 1 1 1
Terceiro
Terceiro passo:
Terceiro
passo: no
passo: processo
nono processo
processo de diagonalização,
dede correspondente
diagonalização,
diagonalização, correspondente
correspondente
ao primeiro
aoao
primeiro passo
primeiro passo
passo (k=1), temos:
(k=1),
(k=1), temos:
temos:
1
1 10.5
0.50.50.75 MM 0
0.75
0.75 0M 00.25 0  0 
0.250
0.25
   
 2 5  3 M 0 0 1 
 1 0.5 0.75 M 0 0.25 0
1 0.5  30.7515  
1 0.5  0.75. MM 0 0.25
04.75
0.25M 10
0 0 0
CAPÍTULO
 3 15 . 2–24SOLUÇÃO
.755M 1COMPUTACIONAL
 0 DE SISTEMAS DE EQUAÇÕES LINEARES 119
3 15
.  4 .75 M 1 3 00 M 00
0 1
 
2 5
2 5 Terceiro
3 M 0
3 M 0passo:
0 1
0 no1processo de diagonalização, correspondente
Terceiroao
Terceiro passo:
passo: nono
primeiro processo
processo de diagonalização,
passode(k=1),
diagonalização, correspondente
temos: correspondente ao primeiro
Terceiro passo: no processo de diagonalização, correspondente
passo (k = 1), passo
ao primeiro temos: (k=1), temos:
ao primeiro
1 0.5passo (k=1),
0.75 M 0 temos:
0.25 0 
1 0.5  30.75 0  L2 ← L2 − 3 L1
1.5MM 0 0  0
0.25
M 10
1 0.5  0.75 04.75
0.25
 3 1.5  24.755 M 1 3 0M 0 0  L02 ← 1L2 L− 3← L
 3 1.5  4.75 M 1 0 0  L2 ← L2 −33 L11 L3 − 2 L1
 2 5 3 M 0 0 1  L3 ← L3 − 2 L1
2 5 1 3 0.5M 00.750M 0 1  0.25
L3 ← L30−  2 L1
1  
0−0.75 0 
0.5 00.750 M 0 2.50.25 M 1 0
1 0.5  0.75 M 0 0.25
0 0 0 2.54 M 11.5−0.75
0 0  2.5 M 1 −0.75 M 0 0 0−0.5 1 
0 4 1.5 M 0 −0.5 1 
0 4 Quarto 0 −0.5
1.5 Mpasso: 1
na pivotação parcial, correspondente ao segundo
Quarto pivô
passo: na pivotação parcial, correspondente ao segundo
(k=2):
Quarto passo: na pivotação parcial, correspondente ao segundo
Quarto
pivô passo: na pivotação parcial, correspondente ao segundo pivô (k = 2):
(k=2):
pivô (k=2): a) Buscamos o maior módulo da coluna k=2 (a partir da segunda
a)
a) Buscamos
Buscamos oomaior
maior
linha, módulo
poismódulo dada
a primeiracoluna k =k=2
coluna
linha 2 (a
já partir
(a
foi dada
partir segunda
utilizada linha, de
segunda
no processo
a) pois
Buscamos o maior módulo da coluna k=2 (a partir da segunda
linha,a primeira linha já foi
pois a primeira
eliminação):
utilizada
linha já foi no processo
utilizada node eliminação):
processo de
linha, pois a primeira linha já foi utilizada no processo de
eliminação): =
eliminação): 2
j
j = 21 0.5 0.75 M 0 0.25 0 
j=2
1 0.5  0.75 M 0 0.25 
1 0.5 00.750 M 0 2.50.25 M 1 00−0.75 0 
0 2.5 M 1 −0.75
0−0.5 1 
0 M 0 0
mputacional
 0 i =03 02.5(4)M 1 1.5−0.75
i = 3 0 (o(4) 1.5 de
elemento M 0maior 1  da coluna j=2 está na linha i=3).
−0.5módulo
i = 3 0 (o(4) 1.5 de
elemento −0.5
M 0maior 1  da coluna j = 2 está na linha i = 3).
módulo
omputacional (o elemento de maior módulo da coluna j=2 está na linha i=3).
(o elemento de maior módulo da coluna j=2 está na linha i=3).
b) Trocamos
b) Trocamos linhas:
linhas:

b)
1Trocamos
0.5 0.75 linhas:
M 0 0.25 0  (troca da linha
0 0 2.5 M 1 −0.75 0  L2 ← L3 L2 com L3 e vice-
1 0.5 0.75 (troca da linha
0 (4) 1.5 M 0 −0.5 1  L3 ← L2
M 0 0.25 0
versa)
2.5 M 1 −0.75 0  L2 ← L3 L2 com L3 e vice-
0 0
(troca
c) da linha
0Geramos
(4) LM2 com
a matriz
1.5 −L0.5
e vice-versa)
0 pivotada:
3 1  L3 ← L2 versa)

1Geramos
c)
0.5 0.75 M 0 0.25 0 
c) Geramos a matriz pivotada:
a matriz pivotada:
 
1.5 M 0 −0.5 1 
0 4
 1
 0 0 0 .5 02..75 75 00
5 MM10 −00..25
0 4 1.5 M 0 −0.5 1 

 0Note
0
que2a.5pivotação parcial eliminou um pivô nulo.
M 1 −0.75 0 

Quinto Note queque


Note
passo: ano
pivotação
aprocessoparcial
pivotação eliminou
parcial
de um um
eliminou
normalização pivô nulo.
dopivô nulo. pivô
segundo
(k=2), temos:
Quinto passo: no processo de normalização do segundo pivô
 0 0 0 4 1
2...5 0 −−00..75
5 MMM 1 0 
5 1
 0 4 1 5 0 −0.5 1
0
 0 0 2 .5 M 1 − 0 . 75 0 
0
 Note 2.5 M 1 −0.75 0 
que a pivotação parcial eliminou um pivô nulo.
120 Note que a pivotação parcial eliminou umNUMÉRICO
CÁLCULO pivô nulo.
COMPUTACIONAL
Note que a pivotação parcial eliminou um pivô nulo.
Quinto passo: no processo de normalização do segundo pivô
Quinto
Quinto passo:
passo: no
no processo
processo dede normalização
normalização dodo segundo
segundo pivô
(k=2),
Quinto
(k=2),
temos:
passo:
temos: no processo de normalização do segundo pivô (k = pivô
2), temos:
(k=2), temos:

11 0
0..5
5 0
0..75
75 MM 0 0.25 0 
1 0.5 00.75 M 0
0 0.25
0.25 0 
0
0 0 11 0..375
375 MM 00 −
−0 125 0
0..125 25
0..25
0 1 0.375 M 0 − 0.125 0.25
0 0 00 2
2..5
1 − 0.75
5 MM 1
1 − 0.75 0 
0 
Sexto
Sexto passo:
passo:nono processo
noprocesso
processo de diagonalização, correspondente
Sexto passo: de de diagonalização,
diagonalização, correspondente
correspondente ao segundo
ao
ao segundo
segundo
passo passo
(k = 2),passo (k=2), temos:
temos:(k=2), temos:
1 1 0.5
0.5 0.75
0.75 MM 0
0 0.25
0.25 0  L
0 L1 ← ←LL11 −
− 0.5
0.5 L
L22
0 1 0.375 M 0 −0.125
 1

0.25
 
0
0 0
0 2.5
2.5 MM 1
1 −
−0.75
0.75 0  L
0 L333 ←
←LL333 −
−00L
L222

1 1
1 0
0 0.5625
0.5625 MM 0
0 0.3125
0.3125 −0.125
−0.125
0.125 Capítulo 2 – Solução Computacional de Sistemas de Equ
Capítulo 2 – Solução Computacional de Sistemas de Equ
0  Capítulo 2 – Solução Computacional de Sistemas de Equ
 0 0 1
1
1 0.375
0.375
0.375 MMM 0
0
0 −
−0.125
−0.125
0.125 0.25 
0.25
0.25
0 0 2.5 1 − 
0 0 2.5 MM 1 −0.75
0.75
−0.75
0
0 
0
 0 0 2.5 M 1 
Sétimo
Sétimo passo: no processo de normalização do terceiro pivô
Sétimo passo:
passo: nono processo
processo de
de normalização
normalização do do terceiro
terceiro pivô
pivô
(k=3),
Sétimo
(k=3), temos:
passo:
temos: no processo de normalização do terceiro pivô (k = 3), temos:
(k=3), temos:
1 0
0 0.5625
0.5625 MM 0
0 0.3125
0.3125 − −0.125
0.125
0 0.5625 M 0 0.3125 −0.125
1
1
 0 0 1
1 0.375
0.375 MM 0
0 − −0.125
0.125 0.25 
0.25
 0 1 0.375 M 0 −0.125 0.25 
0 0 2.5
2.5 MM 11 − −0.75 0
0  L ←L
L3 ← L3 // 2.5
 0
0
0
0 2.5 M 1 −0.75
0.75
0  L33 ← L33 / 2.5
2.5
1 0 0.5625 MM 0 0.3125 −−0.125 
1
1 0
0 0.5625
0.5625 M 0 0 0.3125
0.3125 − 0.125
0.125
0 0 1 0.375 M 0 −
1 0.375 0.125
−0.125 0.25 
0 1 0.375 MM 0 0 − 0.125 0.25
0.25 
0 0 1 0.4
MM 0.4 −
− 0.3 0 
0 0 0
0 1
1 M 0.4 0.3
−0.3 0
0 
Oitavo
Oitavo passo:
passo: no processo de diagonalização, correspondente
Oitavo passo:nono
Oitavopasso: processo
noprocesso
processo de
de
de diagonalização,
diagonalização,
diagonalização,
correspondente
correspondente
correspondente ao terceiro
ao
ao terceiro
terceiro passo
passo (k=3),
(k=3), temos:
temos:
ao terceiro
passo (k = 3),passo
temos:(k=3), temos:
1 0 0.5625 M 0 0.3125 −0.125  L 1 ← L 1 − 0.5625 L3
1
1 0
0 0.5625
0.5625 MM 0 0.3125 −
0 0.3125 0.125
−0.125 L11 ←
L ←LL11 −
− 0.5625
0.5625 L
L33
0 1 0.375 M 0 − 0.125 0.25  L 2 ← L 2 − 0.375 L
0 1 0.375
0.375 MM 0 0 − −0.125 0.25 
0.25 L ← L − 0.375 L3
0 1 0.125 L22 ← L22 − 0.375 L33
0 0 1 MM 0.4 −
−0.3 0 
0
0 0
0 1
1 M 0.4
0.4 −0.3
0.3 0
0 
1 0 0 MM −
0 −0.225 0.4812 −
0.225 0.4812 0.125
−0.125
0 M −0.225 0.4812 −0.125
1 0
1 0
0 0 1
1 0 MM −
0 0.15 −
−0.15 −0.0125
0.0125 0.25 
0.25
0 1 0 M −0.15 −0.0125 0.25 
0
0 0
0 1
1 MM 0.4
0.4 −
−0.3
0.3 0
0 
ao terceiro passo (k=3), temos:

1 01 0.5625
0 0.5625 M 0 M 0.3125
0 0.3125 −0.125  L1 ←
−0.125 − 0.5625
 LL11 ← L3 L
L1 − 0.5625

CAPÍTULO
0 1 0.375 M 0 0.125 0.25  DE EQUAÇÕES LINEARES
 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS
− L ← L − 0.375 L
3
121
 0 1 0.375 M 0 −0.125  2  L22← L2 − 0.375
0.25 L3
3

0 00 01 M1 0.4M 0.4−0.3 −0.3 0 0 


 
1 01 0 0M −00.225
M −0.2250.4812 −0.125
0.4812 
−0.125 
0 1 0 M −0.15 −0.0125 0.25  
 0 1 0 M −0.15 −0.0125 0.25
 
0 00 1 0M 10.4M 0.4 −0.3 −0.3 0  0 

Então,
Então,
Então,
Pg. 110
−0.225 −0.125
 0.4812
 −0.225 0.4812 
−0.125 
−1 R−1= [ A * S − B]
  
A = A =−0.15 −0.0125 0.25
Pg.  −0.15 −0.0125
115
0.25
 
 0.4a 0.4 −0.3 −0.3 0  0 
a31 − 31 a11 = 0
a11
Paraobter
Para obter oo vetor
vetor solução
solução x, efetuamos
X, efetuamos o produto
a multiplicação entre
entre A–1Ae–1B,elogo:
Pg. 121 obter o vetor solução x, efetuamos o produto entre A e
Para –1

B, logo: B, logo: ⎡ −0.225 0.4812 −0.125⎤ ⎡ 8 ⎤ ⎡ 3.069 ⎤


= ⎢ −0.15 −0.0125
X = A−1 * B0.4812 0.25 ⎥ * ⎢ 7 ⎥ = ⎢ −4.288⎥
 −0.225 ⎢ −0.125
 −0.225 0.4812 −0.125   8   
8 ⎥3.069
 ⎢  3.069
⎥ ⎢  ⎥
−1 
= AX =* BA = * B  ⎢
⎣ 0.4 
− 0.3    0 ⎥
⎦ ⎢⎣−12⎥⎦ ⎢ 1.100 ⎥
⎣ ⎦
 −=0.15 −0.0125  *   7*  =7 −4.288
−1 0.25 0.25
Pg.  −0.15 −0.0125
122 =  −4.288
 
 0.4 0.4 −0.3 −0.3 0  0 −  12− 121.100   
( L * U ) que
Observe X =a B
troca de linhas efetuadas   1.100
 na pivotação parcial não afeta a matriz
inversa )eXnão deve alterar a ordem dos elementos do termo independente.
( L *U
ObserveObserve
=B
que a,que
como
troca L
a troca
* X ) = B.
de(Ulinhas
de efetuadas
linhas na pivotação
efetuadas parcial
na pivotação parcial
Então,
Pg. 140a solução do sistema é a seguinte:
não nãoafetaafeta a matriz inversa e não deve alterar a ordem dos
k −1 a matriz inversa e não deve alterar a ordem dos
1⎛ ⎞
Selementos
= { 3.069, aik − ∑
lik = elementos
⎜ do termo
–4.288, lrkindependente.
lir *1.100
do ⎟ } independente.
termo Então, a solução
Então, do sistema
a solução do sistema
lkk ⎝ ⎠
é a seguinte:
é a seguinte:
r =1

APg. 141
vantagem desse método de inversão de matriz sobre a eliminação gaussiana
vez que U = LT .
éuma
a possibilidade S = {S3.069,
de reuso da –4.288,
= {matriz
3.069, 1.100
inversa A–1
–4.288, }para}outros sistemas com
1.100
Pg. 143
a mesma matriz A de coeficientes e com diferentes vetores B de termos
t
r2 = r2 − 2 d1
independentes.
r1
t
0 = 0− 2 0
Or1algoritmo do método de inversão de matrizes necessita de quase
Pg. 144 de operações aritméticas que o método de eliminação gaussiana,
o triplo
⎡por
r1 conseguinte
d1 acumula mais barredondamentos.
1 ⎤
Por isso, só vale o
⎢esforço
0 r2 d 2
computacional se a matriz inversa
b2 ⎥⎥
resultante puder ser reutilizada
⎢muitas vezes.
⎢ ⎥
⎢ ⎥
⎢ 0 ri −1 di −1 bi −1 ⎥
⎢ A seguir, vamos0 apresentar
ri dmétodos
i
que
bi ⎥fazem uso de decomposição de matrizes
⎢ em vez de eliminação. ⎥
⎢ ⎥
⎢ 0 rn bn ⎥⎦

t
ri = ri − i di −1
ri −1
2.1.4
122Método de Decomposição LU (de Crout) CÁLCULO NUMÉRICO COMPUTACIONAL

Matrizes quadradas não singulares podem ser decompostas


no produto
2.1.4 Método
de duas matrizes triangulares L eLU
de decomposição U, (de
em queCrout)
L é uma
matriz triangular inferior e U é uma matriz triangular superior, de
Matrizes quadradas não singulares podem ser decompostas no produto
modo que A = L * triangulares
de duas matrizes U. L e U, em que L é uma matriz triangular inferior
e U éAlém disso,triangular
uma matriz se atribuirmos
superior,valores
de modofixos
que Aaos = Lelementos
* U. da
Além disso, se atribuirmos valores fixos aos elementos
diagonal principal, seja na matriz L (lii = 1, método de Doolitle) ou da diagonal
na principal,
U (uii = 1, seja na matriz
método L (lii = essa
de Crout), 1, método de Doolittle)
decomposiçãoCapítulo será ouúnica.
na
2 – Solução U (uii =de Sistemas
Computacional 1, de Equações
método de Crout), essa decomposição será única.
Para
Paraaasolução
solução de podemos
deAA* *XX==B,B,podemos decompor
decompor A, segundo
A, segundo o método o
método de Crout,
de Crout, em: em:
tal que L * U = A. Então, o sistema A * X = B torna-se (L * U ) * X = B.
 l11 0 0 1 u12 u1n 
Também
l podemos associar
0 o 1produto das matrizes L e U,
 l22 0
 u2 n 
(L * U )L*=X= B, como L * (U
21
(4)
 * X ) = B.
eU= (4)
M M L M M M L M 

Considerando Ul * X = C (vetor auxiliar C desconhecido),
ln1 ln 2 nn  0 0 1 
resolvemos primeiro L * C = B determinando C e, depois, U * X = C
tal que L *X.
determinando U = A. Então, o sistema A * X = B torna-se (L * U ) X = B.
Também podemos associar o produto das matrizes L e U, (L * U ) X = B,
como L (U * X ) = B.
Considerando U * X = C (vetor auxiliar C desconhecido), resolvemos
A vantagem do método de decomposição LU sobre o método de
primeiro L * C = B determinando C e, depois, U * X = C determinando X.
eliminação gaussiana é a possibilidade de reuso das matrizes
L e U decompostas para outros sistemas que usem a mesma
matriz A A devantagem
coeficientesdo emétodo vetores B LU
de decomposição
com diferentes sobre o método
de termos
de eliminação gaussiana é a possibilidade de reuso das matrizes L e U
independentes.
decompostas para outros sistemas que usem a mesma matriz A de
coeficientes e com diferentes vetores B de termos independentes.

Vamos exemplificar a determinação dos elementos de L e U


Vamos exemplificar a determinação dos elementos de L e U para uma
para uma matriz 3 por 3 na qual a multiplicação das matrizes L * U
matriz 3 x 3 na qual a multiplicação das matrizes L * U pode ser usada para
pode ser usada
definir para definir
os valores de lij e uos emvalores delijaije, pois
funçãode uij em função de
o resultado ij
,
doaproduto
ij
pois o Lresultado do produto
* U é a matriz * U é a matriz A original, logo:
A original,L logo:

 l11 0 0  1 u12 u13   a11 a12 a13 


l 0  * 0 1 u23  =  a21 a23 
 21 l22 a22
l31 l32 l33  0 0 1   a31 a32 a33 

Então, nesse exemplo, o produto L * U gera 9 equações lineares


com 9 incógnitas, uma para cada elemento da matriz:
 l11 0 0  1 u12 u13   a11 a12 a13 
l 0  * 0 COMPUTACIONAL
1 u23  = DE 
 21 l222 – SOLUÇÃO
CAPÍTULO a21SISTEMAS
a22 aDE23EQUAÇÕES
 LINEARES 123
l31 l32 l33  0 0 1   a31 a32 a33 

Então,Então,
nessenesse exemplo,
exemplo, o produto L * UL gera
o produto * U gera 9 equações
9 equações lineares com
lineares
com 9 9incógnitas,
incógnitas, uma
uma para
paracada
cadaelemento dada
elemento matriz:
matriz:
 l11 * 1 + 0 * 0 + 0 * 0 l11 * u12 + 0 * 1 + 0 * 0 l11 * u13 + 0 * u23 + 0 * 1   a11 a12 a13 
 l *1 + l * 0 + 0 * 0 l * u + l *1 + 0 * 0 l * u + l * u + 0 *1  =  a23 
 21 22 21 12 22 21 13 22 23   a21 a22
l31 * 1 + l32 * 0 + l33 * 0 l31 * u12 + l32 * 1 + l33 * 0 l31 * u13 + l32 * u23 + l33 * 1  a31 a32 a33 

al Podemos obterobter
Podemos de forma direta
de forma diretaa asolução
solução desse sistemadede
desse sistema equações
al
al equações usando
usando os seguintes
os seguintes passos:passos:
al
Passo k=1: resolvemos as equações correspondentes à primeira
Passo
coluna j=1k da = 1:matriz
resolvemos
*1 + 0 * 0 + 0 * 0 =
La * U =asA:equações
ll11 =
correspondentes à primeira coluna
j ll= 11 1
11 * 1 da
+ 0 matriz
* 0 + 0 L
* 0*= U a=
11 A:
11 11 = aa11
11
ll11 **11++ 0l * 0* 0++00* 0* 0= =a11a ⇒ ll11 == aa11
l1121 **1 + 0l22* 0* 0++00* 0* 0=
21 22 =a11a21 ⇒ l1121 = a1121
21 21
ll21 **11 ++ ll22 ** 00 ++ l0 * *00== aa21 ⇒ ll21 = = aa21
21 45
l31
31 * 1 + l32 * 0 + l033* *00=
32 33 = aa2131 ⇒ l31
31 31 = a31
31
l31 * 1 + l32 * 0 + l33 * 0 =
21 22
a31 21
l31 = a31
21

l 1
Para 31a primeira
* + l32 * 0 + l
linha
33 * 0 = a
i=1 (à 31 direita l31 =da a31diagonal principal), temos:
Para a primeira linha i=1 (à direita da diagonal principal), temos:
ParaPara a primeira
a primeira linhalinha i=1i =(à1direita
(à direitada dadiagonal
diagonal principal),
principal),temos:
temos:
Para l11a*primeira
u12 + 0*1 +linha 0*0 = a12 (à direita
i=1 u12 =da a12diagonal
/ l11 principal), temos:
l11 *u12 + 0*1 + 0*0 = a12 ⇒ u12 = a12 / l11
ll11 u12 + 00**1u+ 0*00*= a12a13 ⇒ uu12 = aa12 // ll11
13 + 23 + 1= 13 =
*u
l11
*
*u + 0 *1u + 0+*0 *=
1 =
a a ⇒ u13 = a13
13 / l11
11 13
l11 *u1312 23
+ 0*u23 + 0*1 = 12 13
a13 ⇒ u12 13 = a12
13 / 11
l11
Passo u13 +resolvemos
l11 *k=2: 0*u23 + 0*1 = aas
13 equações
u13 = a13 / l11
correspondentes à segunda
Passo k=2: resolvemos as equações correspondentes à segunda
Passo
coluna
Passo k=2:
j=2k resolvemos
(a2:partir
= da as
resolvemos equações
diagonal
as equações correspondentes
principal): correspondentesà àsegunda segunda coluna
coluna
Passo k=2: j=2 (a partir
resolvemos da as diagonal
equações principal):
correspondentes à segunda
coluna
j = 2 j=2 (a partir
(a partir da diagonal
da diagonal principal):
principal):
coluna l21 * uj=2 +(al22partir
* 1 + 0 *da 0= diagonal
a22 l= a22 − l21 * u12
principal):
l21 * u1212 + l22 * 1 + 0 * 0 = a22 ⇒ l= a22 − l21 * u12
22
ll31 u
21 * u12
* + l
12 + l32 1 + 0
22 * 1 + l33 * 0 =
* * 0 = a ⇒
a2232 ⇒ l= l=
22
a32
a 22 −− ll31 u12
21 ** u
* u12 + l32 * 1 + l0 = −
22
l31 33* *00= a a 32 l=
32
32 a 32 l31 * u12
12
* u12 + l32 * 1 + l33 * 0 = a2232 ⇒ l= − l31
21 22 22 22 21
l31 32 a32 * u12
* u12 + l32 * 1
Paral31a segunda + l33 *i=2
linha 0= (àa direital= a32 − l31 * u12
da diagonal principal), temos:
Para a segunda linha i=2 (à32direita32da diagonal principal), temos:
ParaPara a segunda
a segunda linha
linha i=2i =(à2direita
(à direita dada diagonalprincipal),
diagonal principal),temos:
temos:
Paral a segunda linha
* u13 + l22 * u23 + 0 * 1 =
i=2 (à direita
aa23 ⇒ uu= da diagonal
((aa23 − principal),
l21 * u13 ) / l22 temos:
l21 * u13 + l22 * u23 + 0 * 1 = 23 ⇒
= 23
23 − l21 * u13 ) / l22
l2121 * u 13 + l 22 * u 23 + 0 * 1 = a 23 ⇒ =
u 23
23 ( a 23 − l21 * u13 ) / l22
Passo l u + l
13 resolvemos u + 0 1 = a 23 ⇒
=
u ( a − l21 * u13 ) / l22 à terceira
3: resolvemosaaasequações equações correspondentes
21 k=3:
* 22 * 23 * 23 23
Passo
Passo k=3: k =resolvemos equações correspondentes
correspondentes à terceira à terceiracoluna j = 3
Passo
coluna
(a partirk=3:
j=3 resolvemos
(a
da partir
diagonal da a equações
diagonal correspondentes
principal): à terceira
coluna
Passo j=3 (a
k=3: partir
resolvemos daprincipal):
diagonal
a equações principal):
correspondentes à terceira
coluna j=3 (a partir da diagonal principal):
coluna j=3 (a partir da diagonal
13 + l32 * u23 + l33 * 1 = aa33 ⇒ principal):
l33 = ((aa33 − (l31 * u13 + l32 * u23 ))
ll31 *u
31 * u13 + l32 * u23 + l33 * 1 = ⇒ l33 = 33 − (l31 * u13 + l32 * u23 ))
l31 * u13 + l32 * u23 + l33 * 1 = a33
33 ⇒ 33 l = ( a33 − (l31 * u13 + l32 * u23 ))
E não l u
temos
* + l u
32linhas
* + l 1 =
à33à direita
* a ⇒ l
dadiagonal =
diagonal ( a − (l31 * u13 + l32da
33 principal * u23 ))
última
E 31não
E não
13
temostemos linhas
23
linhas direita33 da
à direita
33
da diagonal principal
principal da última linha.
da última
E não
linha. temos linhas à direita da diagonal principal da última
linha.
E não temos linhas à direita da diagonal principal da última
linha.
Resumindo:
Resumindo:
linha.
luna j=3 (a partir da diagonal principal):
l31 * u13 + l32 * u23 + l33 * 1 =
a33 ⇒ l33 =
(a33 − (l31 * u13 + l32 * u23 ))
l31 * u13 + l32 * u23 + l33 * 1 =
a33 ⇒ l33 =
(a33 − (l31 * u13 + l32 * u23 ))
124 CÁLCULO NUMÉRICO COMPUTACIONAL
não temos linhas à direita da diagonal principal da última
não temos linhas à direita da diagonal principal da última
ha.
ha. Resumindo:
sumindo:
sumindo:
k=1 k=1
k=1 l11 = a11
l = a11
21 = a21
l11 u12 = a12 / l11
l21 = a21 u12 = a12 / l11
l31 = a31 u13 = a13 / l11
l31 = a31 u13 = a13 / l11
k=2 k=2
k=2 l=
l2222 =aaa2222−
l= −l21
l21**uu1212
22 − l21 * u12
22
l=
l3232 =aaa3232−−−ll31
l31**uu1312 =
u (a − l * u ) / l Capítulo 22 –– Solução
Capítulo Solução Computacional
Computacional de
de Sistemas
Sistemas de
de
l= u2323 =((aa2323−−ll2121**uu1313))/ /l22
l22
32 32 31 * u13 =
u 23 23 21 13 22
k =3
k=3
k=3 kll33= =
3 aa33 −−ll31 **uu13 −−ll32 **uu23
=
l3333 = a3333 − l3131* uo1313algoritmo
Então, − l3232 * u2323 de decomposição segue esta sequência de
cálculos:
= C1 , Então, o algoritmo de decomposição segue esta sequência de cálculos:
⎡a)
1 determinamos
4 ⎤ ⎡ x1 ⎤a) determinamos ⎤ os elementos
os⎡ xelementos
1⎤ ⎡ −0.1516 ⎤ da primeira
da primeira colunacoluna
de L e dadeprimeira
L e da
⎢ ⎥ ⎢ primeira ⎥ elinha ⎢ x de
⎥ U;⎢ e
7 0.5 ⎥⎥ ⎢ x2 ⎥ linha −0.1667 de U;
⎢ 2⎥ 0.3248 ⎥⎥
* ⎢ ⎥ ⇒ ⎢
= b) determinamos os=elementos da segunda coluna de L e da
1.333⎥ ⎢ x3 ⎥b) determinamos
⎢0.1667 ⎥ os ⎢ xelementos
3
⎥ ⎢ −1.898 ⎥
da segunda coluna de L e da segunda
⎥ ⎢ ⎥ ⎢ segunda ⎥ linha ⎢ de ⎥ U⎢e assim sucessivamente.

1 ⎦ ⎣ x4 ⎦ linha ⎣1.549de U; ⎦ e assim ⎣ x4 ⎦sucessivamente.
⎣1.549 ⎦
Obtidos L e U, devemos resolver L* C = B determinando C por
Obtidos L e U, devemos resolver L * *C = B determinando C por
substituições
substituições sucessivas sucessiva à frente:
à frente:

 {Xb11 (k ) }k =0 não depende do valor



vergência para la11 solução
0 0  S= c11 lim
11
     
 l21 l22 0  ** c22  = b(0)22 
X . Portanto, a escolha do X
(0) 21 22 adequado afeta apenas a
l31
31 l32
32 33 
l33  c33  b33 
dade de iterações necessárias. Quanto mais próxima a solução
l11
ada X (0) estiver * c1 = bsolução
11 * da 11 exata S , mais c11 = ( b11 rápida
) l1111 será a

1

21 ** c11 + l22
l21
rgência (se convergir). 22 ** c22 = b22 ⇒ c= 22
( b22 − (l2121 ** c11 ) ) l2222
l * c + l * c + l * c = 
 31
31 * 11 32 * 22
32 33 * 33
33 b33
c33 = ( b33 − (l3131 ** c11 + l3232 ** c22 ) ) l3333

Note
Note queque o cálculo
o cálculo de C,de , do sistema
doCsistema L * C = B, , segue
C = Bo
L** segue mesmoaformato
mesmo
sistemaformato
do⎧⎨cálculo = 3cálculo dos elementos de U. Uma vez obtidos L, U e C,
x1 + 2 x2do
dos , do Exemplo
elementos 2.11,
de U. Uma vezque nãoL, tem
obtidos U e C,diagonal
devemos resolver
x
devemos − 3 x resolver
= −2
U ⎩* X1 = C2determinando U X = C determinando X por retrosubstituições
* X por retrossubstituições sucessivas:
*

sucessivas:
ante e mesmo assim converge, as equações iterativas são:
− 2x2 1 u12
12 13   x11 
u13 c11 
     
Note β 1 2B, segue k k +1 k +n β
Note que
que o o cálculo
cálculo de C,, do
de C do sistema
sistema L C=
L** C = B, segue a a mesmo
mesmo
formato do
formato do cálculo
cálculo dosdos elementos X
Pg. 23
de U=
deβ U
elementosFigura (a1 . vez
.. Uma
Uma
estilizada
ados
vez at )βmatemáticos
obtidos
obtidos
2 ...... dois
E
βLL,, UU ee CC,, que mais influe
devemos
devemos resolver X β = (aXX1por
C determinando . a2retrosubstituições
...... a )
t β β
E 125
resolver U X=
U** X =C
X = (a a a .a a )
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES
determinando por retrosubstituições
Pg. β23 ..... .....
sucessivas:
sucessivas: 1 2
(a1a2 ...... at )β
k k +1 k +n β

11 uu12 uu13   x1  cc11 


13   x1 
(Xa1a2=...... (aat )βa ..... a . a E ..... a )
0 1 u  *  x  = c  X ββ24= (a1 .1 a22...... at k)β βk +1 k + n β
12
Pg.
0 1 u23  *  x2  = c2 
23 2 2

00 00 11   xx3  cc3  Pg. 24


   3  3
(X a βa = ( a
...... a
a1
1
..
) a
a22 ......a
...... at )
t )
β β ββEE
11 ** xx1 + xx ++ uu xx =  xx1 =2c
= − ((tuu β xx + + uu xx )) E
 β = (a1 . a2 ...... at )β β
+ uu12 ** 2 13 ** 3 1 cc c −
 1 12 2 13 3 1
00 ** xx11 + xx +
=
X = cc − − ((uu xx ))
11 11 12 ** 22
12 13 ** 33
13

+ 11 ** 22 23 + uu xx == cc ⇒ ⇒36 xx=
* 23 ** 33
(axx1a==2 ......
cc at ) β
23 * 33 22 22 22
0 * x + 0 * Pg.  24 23
xx ++ 11 xx =cc
0 * x11 + 0 * 22 ** 33 33 = 36
(15) (1111)
al 33 33
=
( . )βLsobrepostas
s operações de pivotação, uma vez que a diagonal de U2 é unitária
X a 1 acolunas Léaeetunitária
10
s operaçõesSugerimosde
Sugerimos
não precisa ser armazenada:
pivotação,
Sugerimos usar
usar ousar uma
o vez
armazenamento
armazenamento que
o armazenamento a
(15)
Pg. diagonal =
das
β 10 = (1111)
24das de U
colunas
colunas
das L
2 ......
U
U βe UE sobrepostas
sobrepostas
2
não precisa
na
na mesma naser
mesma armazenada:
área
mesma
área de
de área memória
memória de memória de
de A, o
A,de
o83 que
A, ootimiza
que que otimiza
otimiza o
o armazenamento
o armazenamento
armazenamento ee e as
as operações de pivotação, uma vez que a diagonal de U é unitária
( . ...... a )
aoperações de pivotação, uuma vez36que a diagonal de U é unitária E e não precisa
e anão
a11
precisa
a13   l11
13 ser armazenada:
u12  X
83 = a a β
 a11 aser 13 
12 armazenada:  ⇒ l11 l 12 u13  v =β ( d1. 1d 2 d23 .....t dβ22 d 23 d 24 ) 2
12 13
11 a 12 a l 11 u 12 u 13

 a21 a23  
 a21 aa22a aa23a ⇒ all21 ll22 l ul 23u u36
 (15)10 = (1111)2
v= ( d1. d 2 d 3 ..... d 22 d 23 d 24 ) 2
21 22
22 23 21
21 22
22 23
23

 a31   
 31 a32a a33a al31 ⇒l32l l33l  u115
31 32
32 11 33
33 12 13 31
31 32
32 11 33
33 12 13

83
 21 22 (15) = (1111)
23   21 22 23  4
4
De uma  a31forma a geral,
a 
33  para
para
 l sistemas
l
 31 sistemas l 115 de 10 ordem
33  de ordem n, teremos o
n, 2 teremos o
De uma forma 32 geral, 32
Por exemplo, se a linha L3 sofre a seguinte op
v =exemplo, o( dpivô
1 . dda dse d 22 linha ao11)seguinte
dL23 dsofre
eguinte formulário:
eguinte formulário: 3 ..... 1
passo k =op
De uma De uma forma forma geral, geral, para paracom
83
Porsistemas
sistemas de2ordem
de
primeiraa linha
ordemn,n,teremos teremos
3
24
o
2a seguinte
no

seguinte
formulário: com o pivô da primeira linha a11 no passo k = 1
Primeiroformulário:
Primeiro passo: k =1
passo: k =1
v = ( d1. d 2 d 3 ..... d 22 d 23 d 24 ) 2
115
125
Primeiro passo: k = 1
lii11 = aii11 Ɐ125
Por 1,2,3,...,n se a linha L sofre a seguinte op
i =exemplo,
li1 = ai1 passo: k =1
Primeiro Ɐ∀ i(trocar 1, 2,por
= 1,2,3,...,n esse)
3, ..., n 3
115 = 2,3,...,n
n primeira linha a11 no passo k = 1
u11 jj = a11 jj / l11 Ɐcomj
u1 j = a1 j / l11 Ɐ = o2,3,...,n
∀ j(trocar 2,pivô
3,por...,da
esse)
li1 =11ai1 141 Ɐ i = 1,2,3,...,n
Segundo passo: passo: =2,3,...,n–1 Por exemplo, se a linha L3 sofre a seguinte op
Segundo Segundo j =
u1 passo: kk =2,3,...,n–1
a1 j /kl11= 2, 3, ..., n –125 141
1 Ɐ j = 2,3,...,n
jj − −11
com
U =o LTpivô da primeira linha a11 no passo k = 1
aijij − ∑ U ii(trocar k por
+ 1,esse)
...,eenjj =
j −1
Segundo
l=
l=
ij
a − ∑
passo:
lirir ** urjrj k =2,3,...,n–1
l * urj


∀ ==
= Lk,
k,
k,T k+1,...,n
k+1,...,n
k
=e k j = k
154
ij
ij ij rr =
r =1
=11 ir 125
141 Ɐ i = k, k+1,...,n e j = k
j −1
1 l= ij aij iii−−−−111∑ lir * urj 154
= uijij 1  aijij − ∑rl=irir1 ** urjrj  ⱯA
∀ seguir,
j(trocar k +vamos
= k+1,...,n por enapresentar
i = k = k métodos alternativos para
1, ...,esse)
= uij lii  aij − ∑ lir * urj  Ɐ j = k+1,...,n
equações com e i =e k inúmero
grande de incógnitas, mas con
A
U seguir,
= LT vamos apresentar métodos alternativos para
r =
=1
liiii  r 1
r =1 i −1
1 141

equações Ɐ jcom grande enúmero i = k de incógnitas, mas con
Terceiro e
Terceiro
Terceiro e último passo:
=
último uije último passo:
lii   aijpasso:∑
−k=n
k=n
r =1
lirk *=unrj 
154

= k+1,...,n

U = LT
−11
jj −
l=
Terceiro aijij − ∑ j −1
e último lirir ** urjrj passo: k=n i=j=n
l=ij
ij
ij aij − ∑ rr = =11
l ir * urj iA=seguir,
j = n vamos apresentar métodos alternativos para
r =1 j −1 154
equações com grande número de incógnitas, mas con
l=
ij aij − ∑ lir * urj i=j=n
O método de Crout com pivotação gera vamos
erros menores métodos
do
O método de Crout com pivotação gera erros apresentar
A seguir, alternativos para
r =1
menores do
ue sem pivotação. O efeito da pivotação equações
sobre ocom grande
método denúmero
Crout de incógnitas, mas con
ue sem pivotação. O efeito da pivotação sobre o método de Crout
126 CÁLCULO NUMÉRICO COMPUTACIONAL

O método de Crout com pivotação gera erros menores do que sem


pivotação. O efeito da pivotação sobre o método de Crout é análogo ao seu
efeito sobre o método de Gauss, apresentado na seçãoCapítulo
anterior,
Capítulo ouComputacional
2 – Solução seja,
2 – Solução reduzde Sistemas
Computacional de Equaçõe
de Sistemas de Equ
o acúmulo de erros de arredondamento, conforme o Exemplo 2.5.
Capítulo 2 – Solução Computacional de Sistemas de Equ

Exemplo 2.5: resolva o sistema, a seguir, pelo método de Crout com pivo-
as as
equações),
equações),
tamento usando
parcialusando4 dígitos significativos
4 dígitos
(é imprescindível incluir o(s)e arredondamento
significativos e arredondamento
vetor(es) B do sistema na
ponderado.
ponderado.
troca de linhas usando
da pivotação para não alterar as equações), usando 4 dígitos
as equações), 4 dígitos significativos e arredondamento
significativos
 ponderado.
0.448
0.448 e
x1 +x10.832arredondamento
x2 +
+ 0.832 x20.193 x3 =
+ 0.193 x31=ponderado.
1
 
 0.421 x1 +x10.784
0.421 x2 −
+ 0.784 x20.207 x3 =
− 0.207 x32=
2
 0.448 x1 + 0.832 x2 + 0.193 x3 =
 −0.319
 1
  x1 +x10.884
−0.319 x2 +
+ 0.884 x20.279 x3 =
+ 0.279 x30=
0
 0.421x1 + 0.784 x2 − 0.207 x3 = 2
Observações:
 −0.319 x + 0.884 x + 0.279 x =
Observações:
 1 2 3 0

Observações:
a) o(s) vetor(es)
a) o(s)
Observações: de de
vetor(es) termos independentes
termos B será(ão)
independentes colocado(s)
B será(ão) colocado(s)
à direita da da
à direita matriz para
matriz queque
para seja(m) pivotado(s)
seja(m) juntamente
pivotado(s) juntamente
a) o(s)
a) o(s) vetor(es) de termos independentes
independentes BBserá(ão)
será(ão)colocado(s)
com comas vetor(es)
linhas
as dede
linhas A; termos
de eA; e colocado(s) à
direita
à direitadada
matriz
matrizpara queque
para seja(m) pivotado(s)
seja(m) juntamente
pivotado(s) com as
juntamente
b) no
b) noalgoritmo,
algoritmo,
linhas de A; os
e valores
os da da
valores matriz
matrizdecomposta
decompostaL eLUe serão
U serão
com as linhas de A; e
armazenados na na
armazenados própria área
própria de de
área memória de de
memória A. A.
b) no
b) no algoritmo,
algoritmo, ososvalores
valoresda damatriz
matrizdecomposta
decompostaL eL Ue serão
U serão
NaNa sequência
sequência do Exemplo
armazenados
do Exemplo
armazenados na 2.5, os
naprópria
própriavalores
área
2.5, osárea da matriz
dedememória
valores memória
da matriz decomposta
dededecomposta
A.A. L L
e Uetambém
U também são escritos nana
mesma matriz A, sendo diferenciados
Na
Na sequênciasão
sequência doescritos
Exemplo
do Exemplo
mesma
2.5, matriz
os valores
os valores A, sendo
da
da matriz diferenciados
matriz decomposta LL e U
decomposta
dada matriz
matriz A original
A da
original seguinte
da seguinte forma:
forma:
A, sendo da matriz A
etambém
U também são escritos na mesma
são escritos matrizmatriz
na mesma diferenciados
A, sendo diferenciados
original da seguinte forma:
da matriz A original
a) representação
a) representação emda
em seguinte
negrito:
negrito: forma:
valores
valoresnovos
novosjá decompostos
já decompostosemem
a)
L eLrepresentação
U; e e
e U; em negrito: valores novos já decompostos em L e U; e
a) representação em negrito: valores novos já decompostos em
b) b) representação
representação normal:
b) representação valores
normal:
normal: originais
valores
valores da
originais
originais matriz
dada A.
matriz
matriz A.A.
L e U; e
b)a11
 a11a12 a12 a13 a13 normal: valores originais da lmatriz
representação 11 l11u12 u A. u 
12 13 u13 
a  a  
 21aa21 22a22a23a 
depois da
dadecomposição
depois
23  depois da
decomposição LU
decomposição →→→
LULU  l21 l21l22 l22 u23u23 

11 a12 a 13   l11 u12 u13 
 a31 a31a32a32a33a33   l31 l31 l32 l32 l33 l33 
 a21 a22 a23  depois da decomposição LU →  l21 l22 u23 
Solução:
Solução:  a31 a32 a33   l31 l32 l33 
Solução:
Primeiro
Primeiro passo:passo: nana decomposição
decomposição LULU (método
(método dede Crout),
Crout),
Solução:
Primeiro passo: na decomposição LU (método de Crout), correspondente
correspondente
correspondente
ao primeiropasso: aoao
passo primeiro
(k =primeiro
1): passo (k=1):
passo (k=1):
Primeiro na decomposição LU (método de Crout),
correspondente
a) Definimos
a) Definimos aao a primeiro
primeira
primeira passo
coluna (k=1):
da da
j=1j=1
coluna matriz
matriz li1 lpara
L, L, i=1,2,3:
i1 para i=1,2,3:

→ l→
i1 =
a) Definimos
2, 3,
li1a=i1 ai1 i=1,i=1, 2, ...,
a primeira
n coluna
3, ...,(Ln equivale à coluna
(L equivale original
j=1 daà matriz
coluna de A)
original de A)
L, l para i=1,2,3:
i1
Solução:
Primeiro passo:COMPUTACIONAL
CAPÍTULO 2 – SOLUÇÃO na decomposição LU
DE SISTEMAS (método
DE EQUAÇÕES de Crout), 127
LINEARES
correspondente ao primeiro passo (k=1):

a) Definimos
a) Definimos aa primeira coluna jj=1
primeira coluna = 1dadamatriz
matrizL,L,lil1i1 para
para i=1,2,3:
i = 1, 2, 3:
→→ li1 =li1a=i1 ai1, i=1,
i = 1,2,2,3,3,...,
..., nn (L
(Lequivale
equivale à coluna
à coluna original
original de A) de A)

 0.448 0.832 0.193  1


 0.421 0.784 −0.207  2

 −0.319 0.884 0.279  3
mputacional C1
omputacional
mputacional ↑
C1
resultando em
resultando em
resultando em 0.193  1
(0.448)resultando em
0.832
 0.421 0.784 −0.207  2
(0.448)
(0.448) 0.832
0.832 0.193 0.193 11
−0.421
0.319 0.784 −−0.207
0.884
0.421 0.784 0.207 2
0.279 32
  
−−0.319
0.319 0.884
0.884 0.279 0.279 33

b) Observamos que a pivotação parcial deve ocorrer depois do
b)cálculo dos valores
Observamos de lij na parcial
queaapivotação
pivotação coluna
parcialdeve deveeocorrer
j=k antes do
ocorrer cálculo
depois do
b) b)Observamos
Observamos que que a pivotação parcial deve ocorrer depoisdepois do
do cálculo
dos valores
cálculo dos ij da
uvalores
de lvalores linha
de jl l=ij i=k,
na parado
coluna que j=kcada
ee anteselemento
antes ulkkij  ,da
do cálculo
cálculo
dos cálculo
valoresdos ij
na coluna de ij k na coluna
e antes cálculo
j=k dos do
valores
que
linha dosiacaba
dos de ser
=valores
k, para
valores uijcalculado
uque da linha
cada elementonai=k,
diagonal
para
lkk, queque principal,
que
acaba cada
de serseja não nulo
elemento
calculado  ,
lkklkk ,na
ij da linha i=k, para cada elemento
eque
também
que
diagonal acaba tenha
de
principal,
acaba de ser o maior
sercalculado
calculado
seja não nulo módulo
nadiagonal
na diagonal
e tambémpossível. tenha
principal,Para
principal,o seja
maioro primeiro
seja não
não nulo
módulo
nulo
passo
possível.
eetambém(k=1),
também o aprimeiro
Paratenha
tenha pivotação
oomaior
maiorpasso poderia
módulo
módulo ser
(k = 1),possível. feita Para
a pivotação
possível. ainda
poderia
Para ooantes do
ser feita
primeiro
primeiro
ainda antes
cálculo do cálculo
de li1 , apois
passo (k=1),
(k=1), de l
li1=ai1i1 
a pivotação
pivotação , pois
. A poderia l
matriz
poderia = a . A matriz
, parcialmente
lijser
i1ser
l
feita ainda
ainda , parcialmente
calculada
antes do do
passo i1 feita ij antes
calculada
(em (em
negrito), negrito),
jápois
del li1, ,pois já
se lencontra se encontra
pivotada
=ai1. .AAmatriz
matriz pivotada
neste neste
exemplo: exemplo:
cálculo
cálculo de i1
li1=a
i1 i1
l lij, ,parcialmente
ij
parcialmente calculada
calculada
(emnegrito),
(em
(0.448) negrito),
0.832 jájáse
se0.193
encontra
encontra pivotadaneste
 1pivotada nesteexemplo:
exemplo:
 0.421 0.784 −0.207  2
(0.448)
(0.448) 0.832 0.832 0.193 0.193 11

 −0.421
0.319
0.421 0.884 0.784 −0.279 0.207 2
−0.207 32
  0.784 
c)−−0.319
0.319 0.884
Definimos 0.884
a primeira 0.279
0.279  3i=1
linha 3 da matriz U, u para j=2,3:
1j
c) Definimos a primeira linha i = 1 da matriz U, u
U,1juupara j = 2, 3:
c)c)Definimos
→Definimos
u1 j = a1 j / la11aprimeira
primeiralinha linha damatriz
i=1da
j=2,3,...,n
i=1 matrizU, para
1 j para j=2,3:
j=2,3:
1j

→→uu1 j==aa1 j/ /l l11 j=2,3,...,n


→ u1j1 j= a1j1 /j0.832
(0.448) l1111, j = 2, 3, ..., nj=2,3,...,n
0.193 1 L1 ← L1 / l11
(0.448)
0.421 0.784 0.832 −0.193 
0.193  121 LL1 ←
0.207 ← LL1/ /l l11
(0.448) 0.832 

 −0.421
0.421 0.784 − 0.207  322
1 1 11
0.319 0.884
0.784 −0.279
0.207
 
−0.319 0.884 0.279  33
 − 0.319 0.884 0.279
resultando em
resultandoem
resultando em
(0.448) 1.857 0.4308  1
 0.421 0.784 −0.207  2
(0.448)
(0.448) 1.857 0.4308 11
1.857 0.4308
−0.319 0.884 0.279  3
(0.448) 0.832 0.193  1 L1 ← L1 / l11
0.421
(0.448) 0.832
0.784 0.193  21 L1 ← L1 / l11
−0.207
 
128 0.421
−0.319 0.784
0.884 −0.207 32
0.279 CÁLCULO NUMÉRICO COMPUTACIONAL

 −0.319 0.884 0.279  3
resultando em
resultando emem
resultando
(0.448) 1.857 0.4308  1
0.421
(0.448) 0.207  21
1.857 −0.4308
0.784

0.421 −0.207 32
0.784 0.279
−0.319 0.884 
 −0.319 0.884 0.279  3
Segundo passo: na decomposição LU, correspondente ao
Segundo
segundo passo:
passo na decomposição LU, correspondente ao
Segundo passo: na (k=2):
decomposição LU, correspondente ao segundo passo (k = 2):
segundo passo (k=2):
a)Definimos
a) Definimosaacoluna
colunaj j=2
= 2 da
da matriz
matriz L, para
L ,li2li 2para 2, 3:3:
i =i=2,
a) Definimos a coluna j=2 da matriz L , li 2 para i=2, 3:
j −1 Capítulo 2 – Solução Computacional de Sistemas de E

→ l=
ij aij − ∑j −1lir * urj (i = k,(ik=+k,1,k+1,
..., n...,
e j n= ek)Capítulo
j = k)2 – Solução Computacional de Sistemas de E
→ l= ij aij − ∑ lir * urj
r =1 (i = k, k+1, ..., n e j = k)
r =1
 0.448 1.857 0.4308  1
 0.448 1.857 − 0.207 
0.4308 1
 0.421 0.784 2
 −0.421
0.319 0.784
0.884 0.207 
−0.279 2
3
 −0.319 0.884
C2 0.279  3
C↑2
C2 − ↑
li1 * u12
C2 − li1 * u12
resultando em
resultando em
resultando1.857
em
 0.448 0.4308  1
 0.448 0.4308  1
 0.421 0.002203 −0.207  2
1.857
 −0.421 0.207  2
−0.279
 0.319 0.002203
1.476 3
 −0.319 1.476 0.279  3
Observe que a pivotação parcial, correspondente ao segundo
Observe que
pivô (k=2), a pivotação
deve parcial,do
ocorrer depois correspondente ao segundo
cálculo dos valores de lij
Observe que a pivotação parcial, correspondente ao segundo pivô
pivô (k=2), j=k
deve ocorrer
do depois do
doscálculo dos
uij valores lij
dei=k,
(kna coluna
= 2), e antes
deve ocorrer depois cálculo
do cálculo valores
dos valores dal linha
de ij
na coluna
j=nakcoluna
conforme doecálculo
j=k antes do
e antesmencionado nocálculo
dos item dos
(b)
valores uij valores
do primeiro
da =dak,linha
linhauiijpasso. i=k,
conforme
conforme mencionado no Primeiro
item (b) do primeiro passo.
mencionado
b) Procedemos nocom
itema busca
(b) do parcial dopasso.
maior módulo da coluna
b) Procedemos com a da
j=2 (busca a partir busca parcial
segunda do maior módulo da coluna
linha):
b) Procedemos com a busca parcial do maior módulo da coluna
j=2 (busca a partir da segunda linha):
j=0.448
2 (busca a1.857
partir da0.4308
segunda linha):
 1
 0.448 − 0.207  1
 0.421 0.002203
1.857 0.4308 2
 −0.421 
0.207  2
−0.279
 0.319 0.002203
(1.476) 3
 −0.319 (1.476) 0.279  3
Maior coeficiente em módulo encontrado na linha i=3.
Maior coeficiente em módulo encontrado na linha i=3.
c) Trocamos linhas:
na coluna j=k e antes do cálculo dos valores ij da linha i=k,
pivô (k=2), j=k
deve ocorrer depois do cálculo dos valores lij
dei=k,
na coluna
conforme e antes
mencionado donocálculo
item (b) dosdovalores
primeiro da linha
uijpasso.
na coluna mencionado
conforme j=k e antes do nocálculo
item (b) dosdovalores
primeiro da linha i=k,
uijpasso.
CAPÍTULO 2b) – Procedemos com
SOLUÇÃO COMPUTACIONAL a busca parcial
DE SISTEMAS DEdo maior
EQUAÇÕES módulo
LINEARES da coluna 129
conforme mencionado no item (b) do primeiro passo.
b) Procedemos com a da
j=2 (busca a partir busca parcial
segunda do maior módulo da coluna
linha):
b) Procedemos com a busca parcial
j=2 (busca a partir da segunda linha): do maior módulo da coluna
 j=2 (busca 1.857
0.448 a partir da segunda
0.4308  1 linha):
 0.448 0.421 0.002203 −0.207  1
1.857 0.4308 2
 0.448 0.421 1.857
0.002203 0.4308
−  1
 0.319
 −0.421 (1.476) 0.279  2
0.207 3
 −0.319 0.002203
(1.476) − 0.207  2
0.279
104  3

Maior
 Maior − coeficiente
0.319 coeficiente
(1.476) ememmódulo
módulo
0.279 encontrado
encontrado
3 nanalinha
linhai =i=3.
3.
Maior coeficiente em módulo encontrado na linha i=3.
2 = ( 0.7121 – 0.4164 x3 ) / 1.476 = − 0.1997
c)xMaior Trocamos linhas:
coeficiente em módulo encontrado na x2linha i=3.
c) Trocamos linhas:
c) Trocamos linhas:
c)xTrocamos 0.448
= (1 – 0.832
1.857
x
linhas: –
0.4308  1
0.193 x3 ) /0.448 x1 = 1.561
 10.448
0.421 1.857
0.002203 2 0.4308
− 0.207  1 2 L ← L
 0.448  2 3
105  −0.421
 0.319 0.002203
1.857
(1.476) 0.207  1
0.4308
−0.279 2
3 L ←L
L32 ← L23
0.421 0.002203 − 0.207  2 L ← L
 −0.319 (1.476) 0.279  3 L3 ← L23 2

Erro = [ S −(1.476)
−resultando
0.319 exato ]
Sem 0.279  3 L3 ← L2
resultando em
resultando
 resultando 0.448 em em
1.857 0.4308  1
110  −0.448
 0.448 0.319 1.857
(1.476) 0.279  1
0.4308 3
 −0.421 1.857
0.319 0.002203
(1.476) 0.4308 
 1
−0.279
0.207  2 3
mputacional
Erro
− =
0.319[ S − S
(1.476)
exato
 0.421 0.002203 −0.207  2 ] 0.279 3
 0.421 0.002203 −0.207  2
mputacional
113

d) Definimos a linha i = 2 da matriz U, u2j para j = 3:


d) Definimos a linha i=2 da matriz U, u2 j para j=3:
L3 difere de L2
1 i −1


=
d) Definimos
uij 
lii 

aaij −linha
r =1
* urjda matriz
liri=2 (j
 (j = k U,

=u2k+1,
+ 1, n ...,
j para
..., e j=3: e i = k)
i n= k)
129 1 i −1

→ uij
= a − ∑ lir * urj  (j = k+1, ..., n e i = k)
0.448lii  ij1.857
 0.448 0.4308
  1

 0.319 1.857 r = 1 0.4308  1
−−0.319 (1.476) 0.279  3 L2 ← ( L2 − l21 * u1 j ) / l22
(1.476) 0.279 3 L2 ← ( L2 − l21 * u13 ) / l22
 0.448 1.857
0.421 0.002203 −0.207  12
0.4308
 −0.421
0.319
0.002203 − 0.207  2
(1.476) 0.279  3 L2 ← ( L2 − l21 * u1 j ) / l22
 resultando em
 0.421 0.002203 −0.207  2
132
 0.448 em
resultando 1.857 0.4308  1
resultando em 0.2821  3
Erro = [ S −(1.476)
 −0.319 Sexato ]
 0.448 1.857
0.421 0.002203 −0.207  12
0.4308
 −0.319 0.2821  3
134
 (1.476)
Terceiro passo: na
 0.421 decomposição
0.002203  2correspondente ao terceiro
−0.207 LU
li 2
passo (k=3):
Terceiro passo: na decomposição LU correspondente ao terceiro
135
passo a) Definimos a coluna j=3 da matriz L, li 3 para i=3:
(k=3):

a)li 3Definimos
j −1
→al=coluna
a − j=3l da* umatriz(iL,=lij=n)
ij ij ∑ ir
3 para i=3:
rj
 0.448 resultando

1.857 em  1
0.4308 
 −0.319 0.448 1.857  0.4308  1
  −(1.476)
0.448
0.319
0.2821
resultando 0.2821  1
3
1.857em 0.4308
(1.476) 3
130
0.421 0.002203 
−0.207  0.2821
2
− 0.319 (1.476)
1.857 −0.207
 0.4480.002203
 0.421 3 CÁLCULO
 2
0.4308 1 NUMÉRICO COMPUTACIONAL
 −0.319
 0.421 0.002203
(1.476)− 0.207 

0.2821 2

Terceiro passo: na decomposição  3 ao terceiro
LU correspondente
Terceiro passo: na decomposição LU
 0.421 0.002203 −0.207  2 correspondente ao terceiro
passo (k=3):
Terceiro
Terceiro passo:
passo: na decomposição
na decomposição LU correspondente
LU correspondente aopasso
ao terceiro terceiro
(k = 3):
passo (k=3):
passoa) (k=3):
Terceiro passo:
Definimos nada
aj=3 decomposição
coluna j = 3 daL,matrizLUL,correspondente
li=3:para i = 3: ao terceiro
a) Definimos a coluna matriz li 3 para
a) Definimos a coluna j=3 da matriz L, i3li 3 para i=3:
passo (k=3):
a) Definimosj −a1 coluna j=3 da matriz L, l i3 para i=3:
aij − ∑
j −1
→ l= rj j −(i
lir a*aucoluna (i= =
j =j=n)
n) (i = j=n)
ij − ∑ lir * urj
a)
ij Definimos
→r =l= 1 j=3 da matriz L, li 3 para i=3:
aij − ∑
1ij
→ l= ij r =1 lir * urj (i = j=n)
 0.448 1.857 0.4308  r =11 j −1
 −0.319  0.448
 −(1.476)
0.448
→ l=
1.857
0.2821
1.857
ij aij − ∑
0.4308lir * u1rj
3 r =1  1
0.4308
(i = j=n)
 0.319 (1.476)  0.2821 3
 0.421 0.002203 −0.207  0.2821
2 0.4308  3
 −0.421
0.319 (1.476)
 0.4480.002203 1.857 −0.207  2  1
 −0.319
 0.421 C(1.476)
0.002203 − 0.207  2 3


3
C30.2821 

 0.421 0.002203 C↑3−0.207  2
C3 − l31 * u13 − l32 * u23↑ C
C3 − l31 * u13 − l323 * u23
resultando em C3 − l31 * u13 − ↑
l32 * u23
resultando em
resultando
resultando emem C − l * u − l * u
 0.448 1.857 0.4308  3 1 31 13 32 23
 −0.319  0.448 1.857  0.4308  1
(1.476)
0.448 resultando em 0.4308
0.2821
1.857 3  1
 −0.319 (1.476)  0.2821
 0.421 0.002203 −0.3890  0.2821
2  3
 −0.421
0.319
 0.448 (1.476)
0.002203
1.857 −0.3890
0.4308  3
2 1
Logo,   
0.421 0.002203 −0.3890  2 3

 −0.319 (1.476)
Logo, 0.2821 
 0.448 Logo,
0 0.421 0.002203
0  −0.3890
 1  2
1.857 0.4308 
 
Logo, 0.448 0  0  1 1.857 0.4308 

L =  −0.319  0.4481.476
L =  −0.319 Logo, 1.476
00  e 0 0 0 e 1 1 0.2821  0.4308 
0 1.8571 0.2821
 

 0.421
L = 0.002203
−0.421
0.319 −1.476 
0.3890 
0.002203 − 0 00 e 0  0 1 1  0.2821 
0.3890

  0.448 0   0 1 0 1.857 1 0.4308  
L =0.421
 −0.319
0.002203
1.476 −0.38900  e  0 Capítulo 0 2 – Solução
1   de Sistemas de
Computacional Equ
  0 1 0.2821 
 0.421 0.002203 −0.3890  0 0 1 

Decomposta
Decomposta aamatriz
matriz vamos
A,A,vamos agora
agora obter
obter a solução
a solução do sistema
do sistema através da
através da solução de dois sistemas
solução de dois sistemas triangulares: triangulares:

 0.448c1 + 0 c2 + 0 c3 =1
L * C = B ⇒ −0.319c1 + 1.476c2 + 0 c3 =
0
 0.421c + 0.002203c − 0.3890c =2
 1 2 3

Observe queoovetor
Observe que vetorBBdo
dosistema
sistema também
também trocou
trocou de linhas
de linhas em da
em razão
pivotação:
razão da pivotação:

b1  1  b1  1 
b  =  2  L ← L    
 2   2 3 ⇒ b3  =  0 
       
L*C = B ⇒
 0.421
 
 −0.319 11 + 1.476
c1 + cc0.002203 cc222−+0.3890c3 0=
c332 =
0
 0.421 1 + 0.002203c2 − 0.3890c3 = 2
0.421cc11 ++ 0.002203
 0.421 0.002203cc22 −− 0.3890
0.3890cc33 =
22
=

Observe
Observe
CAPÍTULO que que o vetor
2 – SOLUÇÃO B do
o vetor B sistema
do sistema
COMPUTACIONAL DEtambém
também trocou
SISTEMAS DE deLINEARES
trocou
EQUAÇÕES linhas
de linhas em em 131
Observe que o vetor B do sistema também trocou de linhas em
razão razão da pivotação:
da pivotação:
razão da pivotação:
b1 b 1  1  b1 b 1  1 
b b=111  2  1L ← L b = b111  1 
 
⇒  bb3 0=
 bb2  =  22 L 2 ← L3 ⇒  00
2 2 3 3
= L ← L ⇒ =
b3 b220  0L3 ← 22
L← b2 b22  2 
33  33
b3  0 L 2 L
 33    L33 ← L22 b22   2 
3 2

Aplicando substituições
Aplicando substituições sucessivas sucessivas à frente, a partir
à frente, de cde
a partir , temos:
1 c , temos:
Aplicando substituições sucessivas
Aplicando substituições sucessivas à frente, a partir de c1, temos: à frente, a partir de c111, temos:
c1 =c(1)/0.448
= (1)/0.448 c1 =c2.232= 2.232
c111 = (1)/0.448 c111 = 2.232
c2 =c(0–(–0.319
= (0–(–0.319 c )/1.476
1 c )/1.476
c = 0.4824
⇒ ⇒ 2 c = 0.4824
c222 = (0–(–0.319 c111)/1.476 ⇒ c222 = 0.4824
c3 =c(2–(0.421
= (2–(0.421 c +0.002203
1 c +0.002203
c ))/(–0.3890)
2 c ))/(–0.3890)
c = –2.723
3 c = –2.723
c333 = (2–(0.421 c111 +0.002203 c222))/(–0.3890) c333 = –2.723

Resolvendo
Resolvendo
Resolvendo
Resolvendo
1x1+ 1x1.857 x2 +0.4308
+ 1.857 x2 +0.4308 x3 =x32=.232
2.232
 11xx111 ++ 1.857
1.857 x
x +0.4308
+0.4308 x
x =
= 22..232
232
X *=XC= ⇒
U *U 
C ⇒ 0 x + 1 x + 0.282122
0 x1 + 1x2 + 0.2821x3

1 2 x3 =330.4824
= 0.4824

U ** X = C 0 x+0 x011x+ 1+x22 +10.2821
0 x + 1x + 0.2821 x
x33 = =
=
−2.723 0.4824
0.4824
  1 0x + 2 0 x + x3 1x = −2.723
00xx1 + + = −
 11 + 0 x22 +
0 x 1 x = −2.723
2 3
1x33 2.723
E aplicando
E aplicando o processo de retrosubstituições
o processo sucessivas
de retrosubstituições sucessivas a partir
a partir
E aplicando o processo de retrosubstituições sucessivas a partir
de xde:
E3 aplicando
x: o processo de retrossubstituições sucessivas a partir de x3:
de x333:
x3 =x–2.723
= –2.723 x3 =x–2.723
= –2.723
x333 = –2.723 x333 = –2.723
x2 =x(0.4824 –0.2821
= (0.4824 –0.2821x )
3 x )
⇒ x = 1.251
⇒ 2 x2 = 1.251
x222 = (0.4824 –0.2821 x333) ⇒ x22 = 1.251
x1 =x(2.232
= –(1.857
(2.232 x2 +x0.4308
–(1.857 + x3))x ))
0.4308 x1 =x1.082= 1.082
x111 = (2.232 –(1.857 x222 + 0.4308 x333)) x111 = 1.082

Então, a solução
Então,
Então, aasoluçãoobtida
solução obtida é:
é: é:
obtida
Então, a solução obtida é:
S = {1.082, 1.251,S–2.723}
=S{=1.082, 1.251, –2.723 } }
{ 1.082, 1.251, –2.723
S = { 1.082, 1.251, –2.723 }
Para determinar o erro da solução anterior, obtemos a solução exata calculada
com 16 dígitos significativos e pivotação parcial, resultando em:
5
Sexato = {1.08321566094182, 1.25034738133745, –2.72315874287407}
exata
exatacalculada
calculadacom com16 16dígitos
dígitossignificativos
significativosee pivotação pivotaçãoparcial,
parcial,
129
Erro=
resultando
resultando em:S − S exato :
em:
 0.448
132 1.857 0.4308  1 CÁLCULO NUMÉRICO COMPUTACIONAL
=
Erro − x1 | 1.082
0.319 (1.476)− 1.08321566094182 L2 ← ( |L2 − l21 ≅
0.279  3 1.25034738133745, 1.22e − 03
* u13 ) / l 22
 =
SSexato = { 1.08321566094182, 1.25034738133745, –2.72315874287407
{ 1.08321566094182, –2.72315874287407 }}
exato
 =
Erro 0.421
x2 | 0.002203 − 0.207  2
1.251 − 1.25034738133745 | ≅ 6.53e − 04
Daí
Daío
Daí
Erro
132 xoo erro
erro
3 erro
= dede
de
| −2.723 −arredondamento
arredondamento
arredondamento da
da| solução
da solução
(−2.72315874287407) solução
≅ 1.59S será:
e − 04SS será:
será:
==
=
Erro
Erro
Erro
Erro = [ S −SSS− S − Sexato
− SS] ::
Podemos ver que os erros da solução S obtida com pivotação
exato exato

==
Erro
Erro 1.082−−1.08321566094182
xx11 || 1.082 1.08321566094182 || ≅≅1.22
1.22ee−−03
03
parcial
134
=
=
Erro
Erro
são compatíveis
1.251−−1.25034738133745
xx22 || 1.251 com
1.25034738133745 ||
a precisão
≅≅ 6.53
de 4 dígitos significativos
6.53ee−−04
04
adotados,
lErro
Erro
i2 xx33 =
=||−−2.723
2.723embora na primeira
−−((−−2.72315874287407)
2.72315874287407) || ≅≅1.59equação
1.59ee−−04
04 ainda ocorra uma
propagação
135
Podemos
Podemosver
Podemos ver
ver de
que
que
que erros
osos
os para
erros o solução
da da
erros
erros terceiro
solução
da solução SSdígito
S obtida com fracionário.
obtida
obtida pivotação
com parcial são
com pivotação
pivotação
compatíveis
parcial
lparcial são com a precisão
sãocompatíveis
compatíveis de 4aadígitos
com
com significativos
precisão
precisão de
de44dígitos
dígitosadotados, embora na
significativos
significativos
i3
primeira
Exemplo equação ainda ocorra uma propagação de erros para o terceiro
adotados,2.6:
adotados,
136
resolva
embora
embora naos
na três sistemas,
primeira
primeira equação
equação a seguir,
ainda pelo método
ainda ocorra
ocorra uma de
uma
dígito fracionário.
Crout com pivotamento
propagação
propagação
li 4
de
de erros
erros para parcial
para oo terceiro(édígito
terceiro imprescindível
dígito fracionário. incluir o(s)
fracionário.
vetor(es)
Exemplo 2.6:
Exemplo
B do sistema
resolva os trêsna troca
sistemas, de linhas
a seguir, peloda pivotação)
método de Croute com com
pivotamento parcial (é imprescindível incluir o(s) vetor(es) B do de
Exemplo
150 2.6:
2.6: resolva
resolva os
os três
três sistemas,
sistemas, aa seguir,
seguir, pelo
pelo método
método de
sistema
4Crout
dígitos significativos:
Crout
na ( Acom
troca
Cond )com pivotamento
pivotamento
de1linhas
>> da pivotação)parcial
parcial
e com(é
(é4imprescindível
imprescindível incluir
incluir o(s)
dígitos significativos: o(s)
vetor(es)
vetor(es) BB do do sistema
sistema na na troca
troca dede linhas
linhas dada pivotação)
pivotação) ee com com
173x + 2 x + 3 x + 4 x =  x + 2 x + 3 x + 4 x =1  x + 2 x + 3 x + 4 x4 =−1

4Erro
4 dígitos
1 (6) 2 significativos:
dígitos 1
X = X significativos:
(6) 3 4 1 2 3 4 1 2 3
− S = {6.588168e − 03, 8.453478e − 04, 2.489952e − 02}
 x + 2 x − 3x − 4 x =  x + 2 x − 3x − 4 x =  x + 2 x − 3x − 4 x =
 1 2 3 4 0  1 2 3 4 0  1 2 3 4 0

174  
11 1  xx−
− xxx111 ++022xxx222+++332xx3x3 +3++44x3x44x=4 =
=
 11 +x+122+xx202 ++x332xx+33 +2+4x43xx4+4 =
31x14 =
= 1xx11 ++2−2xxx221+++330xx33x++2 4+4xx244 x=

3 + 3 x4 =
=−−11 1
X(12)
xx + + 22xx −− 33x
x 1−= 4{0.999754544313626,x − − 44 xx == 00 xx ++ 22 xx
2 0.999648218060907,
1x − 42x − 3 − − 33 xx − − 44 xx ==0 0
x3 + x0.999924062782415 xx +
+
 22 xx −
− 33 xx
−2 1  x1 2− }4 x23 − x3 4+ x4 = −− 44x x =
= 00
x22 − x3 3+ x4 4 =  1 4 = 2
1 2 3 4 1 2 3 44 1 2 3 4
 1 2
−−xx11 ++00 xx22 ++22xx33 ++33xx44 =
= 11 −−xx11 ++00 xx22 ++22xx33 ++33xx44 ==11 −−xx11 ++00 xx22 ++22xx33 ++33xx44 =
= 11 208

 
 

 xx11 −−44xx22 −− xx33 ++ xx44 = = 22  xx11 −−44xx22 −− xx33 ++ xx44 =
= −−22  xx11 −−44xx22 −− xx33 ++ xx44 = = 22

Observe que esse exemplo demonstra a real aplicação do método de


Observe
decomposiçãoqueLU, esse exemplo
que ocorre demonstra
quando a real
vários sistemas têm aaplicação
mesma matriz do
Observe
Observe que esse exemplo demonstra a real aplicação do
de
método deque
coeficientes A,esse exemplo
mas com
decomposição LU,demonstra
diferentes
quevetores aquando
ocorrede real aplicação
termos independentes do B.
vários sistemas
Portanto,
método
método de com
de as mesmas matrizes
decomposição
decomposição LU,
LU, que Locorre
e U, quando
que ocorre decompostas
váriosde
quando vários A, podemos
sistemas
sistemas
têm a mesma
resolver os três sistemas de coeficientes A, masCapítulo
matrizdiferentes. com diferentes
2 – Solução Computacional de Sistemas de Equ
têm
têm aa mesma
mesma matrizmatriz de coeficientes A,
de coeficientes A, mas
mas com
com diferentes
diferentes
vetores
vetores de
vetores de termos
de termos independentes
termos independentes
independentes B.B.
B. Portanto,
Portanto,
Portanto, comcom
com as as mesmas
as mesmas
mesmas
matrizes
Agora, vamos
matrizes
matrizes LL eeegerar
L U,decompostas
U,
U, decompostas
uma matriz de
decompostas dede
com A,A,
A, os podemos
coeficientes
podemos
podemos resolver
das os
resolver
resolver os trêsA
incógnitas
os três
três
independentes,
concatenada para que, na pivotação
1 2 3 parcial, a troca de linhas
com os três vetores B , B , B de termos independentes, para
sistemas
sistemas diferentes.
sistemas diferentes.
diferentes.
que, na pivotação
corresponda parcial,de
a trocas a troca de linhas corresponda a trocas de equações:
equações:

A : B 1, B 2, B 3 A : B
Agora,
Agora,
 1 2 vamos
vamos
3 4 gerar
gerar
    
: 1 1 uma
uma
− 1 matriz
matriz
 1 2com
com
3 os
os
4  coeficientes
coeficientes
:  1 1 −1 das
das
Agora,
 1 2 −vamos
incógnitas   gerar

A−concatenada    uma
4 :  0  0   0 com matriz
 com  os  coeficientes  das
incógnitas
3A concatenada  ouos
com  1três
os três2vetores
vetores
−3 −4 BB: ,,BB0 ,, BB0 dede0termos
termos
11 22 3
3
 
incógnitas
− 1 0 2 A3concatenada
 :  1   1   1  com −os
1 três
0 2vetores 1 ,B
3  : B 1 ,B
1 de termos
1 2 3
         
 1 − 4 −1 1  :  2   − 2  2   1 −4 −1 1  :  2 −2 2

Solução:
Primeiro passo: k=1
 11 22 A 33 44  :::  B 11 , B 11 ,− B  11 22 A 33 44  ::: 11 11B −
1 2 3
− 11 −11
 1 2 −33 −44 :  10  10  −01  11 22 −33 −44  :: 10 10 −01
 1 2 − 3 − 4 :  0  0   0  ou  1 2 −3 −4  :  0 0 0 
CAPÍTULO −23 −34 :COMPUTACIONAL
−11 022 – SOLUÇÃO  10  10   10  DE ouSISTEMAS
 −11 02 DE−2EQUAÇÕES
3 −34  :: LINEARES
10 10 10  133
− 1 0 2 3 : 1
− 1 0 2 3  :  1   1   1  1 1 ou −
 −1 0 2 33  :: 11 11 11 
1 0 2
 11 −− 44 −
− 11 11  :  22  −
− 22  22   11 −−44 −
−11 11  ::  22 −
−22 22 
 1 − 4 − 1 1 : 2
     − 2 2  1 −4 −1 1  :  2 −2 2 
Solução:
Solução:
Solução:
Solução:
Primeiro passo:
Primeiro
Primeiro passo: k = 1k=1
passo: k=1
Primeiro passo: k=1
a) a)
a) Definimos
Definimos
Definimos aa primeira
a primeira coluna
coluna
primeira coluna 1 dada
j = j=1
j=1 matriz
damatriz
matriz li1 ll(ii1 =(i=1,2,3,4),
L, L,
L, 1, 2, 3, 4),
(i=1,2,3,4),
a) Definimos
que é
que igual à a primeira
matriz A coluna
original: j=1 da matriz L, l i1
(i=1,2,3,4),
que éé igual
igual àà matriz A original:
matriz A original: i1
que é igual à matriz A original:
 11 22 33 44  ::  11   11   − −11
 11 22 −333 −444  :::  10   10   −01
 11 2 − −  00   00   00 
 − 002 −23 −34  ::
−11 2 3 :  11   11   11 
 −1 0 2   12   −12   12 
 11 −
−44 −
−11 113  :::
  2   −2   2 
1 −4 −1 1  :  2   −2   2 
b) Lembramos que a pivotação parcial, correspondente ao
b) Lembramos
b) Lembramos queque a pivotação
a pivotação parcial,
parcial, correspondente
correspondente ao primeiroao
b) Lembramos
primeiro pivô que a pivotação
(k=1), deve parcial,
ocorrer correspondente
depois do cálculo ao
dos
primeiro
pivô pivô ocorrer
(k = 1), deve (k=1), deve
depoisocorrer depois
do cálculo do cálculo
dos valores dos
de lik. Nesse
primeiro
valores de pivô (k=1),caso,
.. Nesse deve matriz
ocorrer depois do cálculo dos
caso, de llikikjá
a matriz
valores caso, aapivotada:
se encontra
Nesse matriz jájá se
se encontra
encontra pivotada:
pivotada:
valores de lik. Nesse caso, a matriz já se encontra pivotada:
 ((11)) 22 33 44  ::  11   11  − − 11
 (11) 22 −33 −44 ::  10  10  −01
 11 22 − − 3 − 4 :  0  0   0 
3 −4 : 0 0 0
−− 1 0 22 33  ::  11   11   11 
1 0
−11 −04 −21 13  ::  12  −12  12 
 1 − 4 − 1 1  :  2  − 2  2 
 1 − 4 − 1 1  :  2   − 2  2 
c)
c) Definimos
Definimos aa primeira
primeira linha i=1 da
linha i=1 da matriz U, uu1j (j=2,3,4),
matriz U, (j=2,3,4), que
que
c) c)
Definimos Definimos
éé igual à amatriz
primeira
a primeira
A linha
linha
dividida i =pelo
i=11 dada matriz
pivômatriz
l U,
= u1ju(j1j1j =(j=2,3,4),
U,
1: 2, 3, 4), que
queé
igual igual à
à matriz matriz A
A divididadividida pelo pelopelo
pivô lpivô pivô l
= 1:
11 = 1:
é igual à matriz A dividida 11
11
l11 = 1:
 ((11)) 22 33 44  ::  11   11  − 1
− 1 
 (11) 22 −33 −44 ::  10  10  −01
 1 2 − 3 − 4 :  0  0   0 
− 1 2 −3 −4 : 0 0 0
− 11 00 22 33  ::  11   11   11 
− 1 0 2 3  :  1   1   1 
 11 − − 44 − − 11 11  ::  22  −
− 22  22 
 1 − 4 − 1 1     − 2  2 
: 2

Segundo passo: k = 2
a) Definimos a segunda coluna j = 2 da matriz L, li2 (i = 2, 3, 4), que
é igual à matriz A menos um somatório de produtos cruzados da
sua linha e coluna, conforme demonstramos ao lado das matrizes:
i2
a) que que
Definimoséé igual
igual a segunda à matriz
matriz
àsegunda AAmenos
coluna menos j=2 da
um um somatório
matriz
somatório L, l (i=2, dede
(i=2, produtos
3, 4),
4),
a)a) Definimos
Definimos a asegunda coluna
coluna j=2 j=2da da matriz
matriz L,L,li2li2i2(i=2, 3,produtos
3, 4),
que
queéé éigual
cruzados igual da ààsuamatriz linha A menos ecoluna,
coluna, um somatório
conforme de produtos
produtos
demonstramos
134 cruzados
que igualda à sua matriz
matriz linha emenos
AAmenos umum
CÁLCULO
somatório
conforme
somatório de produtos ao ao
demonstramos
de
NUMÉRICO COMPUTACIONAL
cruzados
lado
cruzados dasda da sua
matrizes:
dasua linha
linhaeeecoluna,
sualinha coluna,
coluna,conforme conforme demonstramosao
conformedemonstramos
demonstramos ao
cruzados
lado das matrizes: ao
lado
ladodasdas matrizes:
dasmatrizes:
matrizes:
lado
1 22 33 44 : :  11  1 1 −1−1
1 2 3 44 : : 1111−−11  
 11 1 2002 3−−333 4−−  :  1   1   −1 0= 0=2 −2(1−*(21)* 2 )
 1 1 00 0 −−33 −−4444: :::00000000000 0  00== 222−−−(1((11* *2*2)2))
=
1  − 3 − 4 :  0  0   0  , que
, emem 0
queque2 = 20= −0(−1(*−21)* 2 )
−1 22 22 33 :: 1111  1 ,1,em em que
−−11−1 22 2 222 333 :: : 111111111, ,em 
em que 2 2= = 00−−−(−((−1−11* *2*2)2))
 1 ( −−66)) −−11 11  :: 22 −2−2 2 −6−44=− 11* *2−
 6−−(=−(4 42())1−*(21)* 2 )
 11 1 ((−−(66−))6 )−−1−11 111 :: : 222−−2−22222  2  − −66=− =−4 − ( 1 *2
)
       
b)
b)
b)b)
b)
Observamos
Observamos
Observamos
Observamosque
Observamos queque
que
que aapivotação
pivotação
pivotação
aaapivotação
pivotação parcial,
parcial,
parcial,
parcial,
parcial,
correspondente
correspondente
correspondente
correspondente
correspondente ao ao ao ao
ao
b) Observamos
segundo
segundopivô
segundo
segundo que
pivô
pivô
pivô
pivô a (k=2),
pivotação
(k=2),
(k=2),
(k=2), parcial,
deve
deve
deve deve ocorrer
ocorrer correspondente
ocorrer
ocorrer depois
depoisdepois doao do segundo
cálculo
cálculo
do cálculo dos dosdos
dos
cálculo
segundo (k=2), deve ocorrer depois do cálculo dos
pivô (k = 2), deve ocorrer
.Nesse
Nessecaso,depois
caso, do
aalinhacálculo
linha dos valores
44éé4trocada de
com l . Nesse
caso,
valoresde
valores
valores
valores
a linhade
valores dedellikll..ikNesse
de .Nesse
Nesse
4 éik liktrocada
ik
caso,
caso,
comcaso, a alinha
alinha
alinha
2,linha
4em é trocada
trocada
A 4e B:
é trocada comcom
com aikaalinha
linha
com a2,2,linha
a linha
linha 2, 2, 2,
em
em AA
em A
AeeeB: eB:B:
B:
em A e B:
 111 1 1 2222 3333 4444 :: :: 11111111−−1−11−1
  1 (2−6 ) −31 14  : :21−21 2−1
1 (((−−−666))) −−−111 111 :: : 22 2−−22−222 2 
 111
1−1 (2222 ) 2222 3333 :: ::111111111111
−11
−6 −1 1 :  2   −2  2 
−− 
−111 020 −− 23 −−443  0 1 
   : :0101
 11 00 −−33 −4−4 : :000 0000  
3  : 0  
0
0 −3a segunda
1 Definimos −4  : 0linha   0i=2 0da matriz U, u (j=3, 4), que é
c)c)
c) Definimos
Definimos aasegunda
segunda linha
linha
i=2
i=2 da
  da matrizU,U,u2ju2j2j(j=3,
matriz (j=3,4), queé é
4),que
c) Definimosigual à matriza segundaA menos linha
um i=2 da matriz
somatório de U, u2j (j=3,
produtos 4), que é
cruzados
c) c) Definimos
igual àà matriz
Definimos
igual matriz a Asegunda
a segunda menos
Amenos linha um linha
ium somatório
da i=2
= 2somatório matrizdadematriz
U,de produtos
uprodutos
(j = U,
3, u
4), (j=3,
que
cruzadosé 4), que é
cruzados
igual igual
daa sua
da à matriz
matriz
linha eA,A menos
coluna,
menos um
respectivamente,
um somatório
somatório de ede
2j
produtos
dividido
produtos
2j
pelo
cruzados cruzados
pivô
dada sua
igual suaàlinhalinha
matriz ee coluna,
coluna,
A menos respectivamente,
respectivamente,
um somatório eedividido
dividido pelopivô
pelo
de produtos pivô
cruzados
dalda lda
l22sua
sua
==
=linha
–6,
–6,
–6, linha
conforme
e
conforme
conforme
e
coluna,coluna, demonstramos
dividido
demonstramos
demonstramos
respectivamente,pelo ao
ao lado
pivô
ao l
lado
lado
= e
das
das
22das
dividido
–6,matrizes:
conforme
matrizes:
matrizes:
pelo pivô
22 sua linha e coluna, respectivamente, e dividido pelo pivô
demonstramos
22
abaixo: demonstramos ao lado das matrizes:
l = –6, conforme
221 2 3 4  : 1   1   −1
 11l22 =22 –6, conforme33 44  : : demonstramos
1111−−11  ao lado das matrizes:
1 ( −6
 11 −−626 0.6667 ) 0.6667 0.5 : 2 −2 2 
4 : : : 221−−22122 −
 
  −1 2 (( )) 0.66673 0.5
2
0.5
3  : 1 1 1  
1
−−1111 − 1 12 −1
 ( 2226 ) 0.6667 22 3 330.54: : :1:12111−21
  1 0 −3 −4  : 0 0 0  
−111 (0− 026 ) 0.6667 0.5
−−332 −−443 : : :0:012001−
  0201 2 
 em que      
 −11que
em
em que 02 −32 −43 : : 01  0 1  0 1

 0.6667 = [−1 − (1 * 3)] / (−6)      
em 1 que
0.6667
0.6667 0[[−−11−−((1−1*3*33)])]//(−
== −4
6) :  0   0   0 
0.5 = [1 − (1 * 4)] / (−6)(−6)
em
em
0.5 que
0.5 =
=que
[1−−=((1[1−**1
[1 44)])]//((−−66))
0.6667 − (1 * 3)] / (−6)
Terceiro passo: k=3
Terceiro
Terceiro
0.5 passo:
0.6667= [1 −=([1−*k=3
passo: 4−)](/1(*−36)]
1k=3 ) / (−6)
a) Definimos a terceira coluna j=3 da matriz L, li3 (i=3,4):
a)
0.5
a) = [1 − (1 * 4a)]
Definimos
Definimos (−6) coluna
a terceira
/terceira colunaj=3 j=3da damatriz
matrizL,L,li3li3(i=3,4):
(i=3,4):
Terceiro passo:
1 2 3 k=34  : 1   1   −1
 11 1 22−6 0.6667
33  : : : 11211−2−−121 
440.5
Terceiro passo: k=3
a) Definimos a terceira
 : 2coluna j=3 da matriz L, li3 (i=3,4):
 11 −−66 0.6667 0.5 −−222 2 
 0.6667 0.5  :
 −1 2 3.667 3 :  1 1 1  
2     
a)−−1Definimos 3 a terceira
4  :  1 coluna 1  −1j=3 da matriz L,
1 2 3.667 33  : : 111111  
1 22 3.667 li3 (i=3,4):
  1 0 ( −6) −4  : 0 0 0  
−6 0.6667 0.5 : 2 −2 2
 11 11 002 ((−−6)3 −−444 :: :00100100 −1
6)
 −1 3.667 3  : 1   1   1 
0.6667 0.5  :  2  −2  2 
2
 1 −6
 −11 0 ( −6) −4 : 0 0 0
2 3.667 3  :  1   1   1 
     
em que
CAPÍTULO 2 0.6667 = [COMPUTACIONAL
– SOLUÇÃO −1 − (1 * 3)] / (DE
−6SISTEMAS
) DE EQUAÇÕES LINEARES 135
0.5 =
[1 − (1 * 4)] / (−6)

Terceiro
Terceiro passo:
passo: k = 3 k=3
a) a) Definimos
Definimos a terceira
a terceira colunacoluna j=3 daL,matriz
j = 3 da matriz 4):li3 (i=3,4):
li3 (i = 3,L,
1 2 3 4  : 1   1   −1
1 −6 0.6667 0.5  :  2   −2   2  Capítulo
Capítulo 2 2– –Solução
Capítulo 2Solução C
Com
– Soluçã
     Capítulo 2 – Solução Com
 −1 2 3.667 3  : 1   1   1 
     
1 0 ( −6) −4  : 0   0   0 
em que
em que
m que
eem que
3.667 = 2 − ((−−11** 33++ 22**0.6667
0.6667))
3.667 == 22−−((−−11* *33++2 2* 0.6667
3.667
* 0.6667)
)
−6 =−3 − (1 ** 33++ 00** 0.6667
0.6667))
−6 =− 3 − (1 * 3 + 0 * 0.6667)
−6 =−3 − (1 * 3 + 0 * 0.6667)
b) Observamos que a pivotação parcial, correspondente
b) Observamos que
b) Observamos
b) Observamos
b) Observamos queaaapivotação
que a pivotação
que
pivotação
parcial,
pivotação parcial,
correspondente
parcial,
parcial,
correspondente
ao terceiro
corresponde
correspondente
terceiro
terceiro
pivô pivô (k=3),
pivô depois
(k = 3), ocorre ocorre
(k=3),doocorre depois
depois
cálculo dos do
do
valores cálculo
lik. Nessedos
decálculo dosvalores
caso, valore
terceiro
terceiro
a linha 4 é pivô
pivô
trocada (k=3),
(k=3),
com a ocorre
ocorre
linha 3, em A depois
depois
e B: do do cálculo
cálculo dos dos valo
valores
l . Nesse caso, a linha 4 é trocada com a linha 3, em A e B
lik . Nesse caso, a linha 4 é trocada com a linha 3, em A e B
llikikik.. Nesse
Nessecaso,
caso,aalinha
linha4 4é trocada
é trocada com
com a linha
a linha 3, em
3, em A
A e B:
 11 22 33 44  :: 11 11 −−11
 11 −226 0.6667
33 4 4 : : 11 1 1  −1 − 1
 1 −6 0.6667 0.5 0.5:: 22−−2222 
−6 0.6667
 111 −006 0.6667
((−−66)) 0.5 44::: : 2002−020−22002 
−−0.5
((−−66) ) −−4 4: : 000 00 0 
 11 020 3.667
−−1 2 3.667 33 :: 11 1111 
 −11 22 3.667 3.667 3 3 : : 11 1 11 1 
c) Definimos aa terceira linha i=3da
i=3 matriz U,uu3j3j(j=4):
U,
c) c)
Definimos
c)
Definimos
Definimosa terceira
a
terceira
linha i =linha
terceira
linha
3 da matriz da
da umatriz
U, matriz
(j = 4):U, (j=4):
(j=4):
Definimos a terceira linha i=3 da matriz uU, i=3 3j
3j u3j (j=4):
 11 22 3 4  : 1   1   −1
 3 4  : 1   1   −1
 11 −226 0.6667
33 0.54 :: :121−121−
4  1
21−
 11 −−66 0.6667
0.6667 0.5 0.5 :: 22−−2222  
 1 −06 0.6667( −6 ) 1.333 0.5 : : 02 0 − 2 0 2
 111 000 ((−−−666)) 1.333 1.333:: 000000  
− 1 2 3.667( ) 1.333
−11 22 3.667
3.667
3 : :101 010 
3 :: 11  11  11  

 −1 2 3.667 3
em  que 3   : 1  1  1 
em que
emque
que
em
1.333que
em =[−4 − (1 * 4 + 0 * 0.5)] / (−6)
=[[−−44 −−((11**44++00**0.5
1.333 =
1.333 0.5)])]//((−−66))
1.333 =[−4 − (1 * 4 + 0 * 0.5)] / (−6)
Quarto passo: k=4
Quarto passo: k=4
Quarto passo: k=4
Quarto passo: k=4
a) Definimos a quarta coluna j=4 da matriz L, li4 (i=4):
a) Definimos
Definimos aa quarta
quartacoluna
colunaj=4 j=4da damatriz
matrizL,L,li4li4(i=4):
(i=4):
a) 1Definimos
2 3 a quarta coluna j=4
4  : 1   1   −1 da matriz L, l i4
(i=4):
 1 2 33 44  :: 1111−−11
 que
em     
 −1 2 3.667 3  : 1   1   1 
136 1.333
em =[−4 − (1 * 4 + 0 * 0.5)] / (CÁLCULO
que −6) NUMÉRICO COMPUTACIONAL
1.333 =[−4 − (1 * 4 + 0 * 0.5)] / (−6)
Quarto passo:
Quarto passo: k = 4 k=4
Quarto passo: k=4
a) a) Definimos
Definimos a quartaa coluna
quartaj = 4coluna L, li4da
da matrizj=4 (i = matriz
4): L, li4 (i=4):
a) Definimos
1 2 3a quarta
4 coluna j=4 da matriz L, li4 (i=4):
 : 1   1   −1
     
 11 (2−6 ) 0.6667
3  : 1: 12 −−12  2 
4 0.5
 1 −6 0.6667 0.5  :  2  −2   2   
 1 ( 0) ( −6 ) 1.333
  :  0   0 0
 1 0  : 0: 01   01  1 
 −1 2 ( −3.667
6 ) 1.333
1.112
    
 −1 2 3.667 1.112  : 1   1   1 
emque
em que
em que
1.112 = 3 − (−1 * 4 + 2 * 0.5 + 3.667 * 1.333)
1.112 = 3 − (−1 * 4 + 2 * 0.5 + 3.667 * 1.333)
Observe que a decomposição LU é feita uma única vez e a
Observe
Observe queque a decomposição
a decomposição umaéúnica
LU é feitaLU feitavez,
uma única
e agora vez e agora
podemos
podemos aplicá-la
aplicá-la aos três aos três
sistemas, fazendo sistemas,
as substituições fazendo
para cada B: as substitu
podemos aplicá-la aos três sistemas, fazendo as substituições
para
Apara cada
cada B:
* X = B1
B:
nal
A * X = B2
A *A * X 1= B 1
A * X = B3 X= B
A *A * X
B2= B
2
Primeiro sistema – A * X =1 B : 1 X=
Primeiro sistema – A * X = B :
1* A XB3pivotado),
= Btemos
3
ResolvendoL L* C* C
Resolvendo =B=1 (observe que A
B1 (observe foiXBpivotado),
que
B 1=
*foi temos

1 0 0 0 l22c=1 a22 −l121* u12 c1  1 


1  c    c   
 −6 0 0 l32 =2 a32 − l312 * u12  2 u 23 =(−a0.1667
23 − l21* u13 ) / l22
= ⇒   =
1 0
*
−6 k = 03  c3  0  c3 0.1667 
         
 −1 2 3.667 1.112 l33c=4 a33 − l131 * u13 − l32c*4u23 1.549 

Ex. 2.6
ResolvendoUU* X* X
Resolvendo == , temos
C1,Ctemos
1
Resolvendo U * X = C1 ,
⎡11 22 33 44 ⎤ ⎡xx11 ⎤ ⎡11 ⎤ ⎡xx11 ⎤ ⎡−−0.1516
0.1516⎤
⎢0 1 0.6667 0.5 ⎥ ⎢x ⎥ ⎢-0.1667  ⎥  
⎢ xx2 ⎥ ⎢0.3248 ⎥

⎢0 1 0.6667 0.5 ⎥* ⎢ x22⎥ = ⎢ −0.1667 ⎥ ⇒⇒ ⎢ 2 ⎥ = = ⎢0.3248 ⎥
=  
⎢00 00 1.333⎥ ⎢xx33⎥ ⎢0.1667 ⎢x33 ⎥ ⎢−−1.898 
*
11 1.333 0.1667  ⎥ x
 1.898 ⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ x4 ⎥ ⎢1.549 ⎥
⎣00 00 00 11   xx4  1.549
⎦ ⎣ 4 ⎦ ⎣1.549  ⎦ ⎣ x4 ⎦ ⎣1.549 ⎦
Segundo sistema – A * X = B2:
Pg. 86Resolvendo L * C = B2, temos
   11    1  
0 1 0.6667 0.5   x  -0.1667   x  0.3248 
1 2 3 4  **  x122  = 1  ⇒  x122  =  −0.1516 
0  x3  0.1667  x3   −1.898 
 DE EQUAÇÕES
0 2 –1SOLUÇÃO
CAPÍTULO 1.333 x3 0.3248 137
0 1 0.6667 0.5  *  x32  = -0.1667  ⇒  2  = 
COMPUTACIONAL DE SISTEMAS LINEARES

0
0 00 0
1 1
1.333 
 
 x
x344 
 
1.549
0.1667 
 
 x
x4
4 
 
 1.549
−1.898 
3
         
0 0
Segundo
Segundo 0sistema
sistema –1 A–*AX**x=X4 B=2: B1.549
22
:   x4  1.549 

Resolvendo
Segundo L L* C** C
Resolvendosistema =B =– ,B
Atemos
2 22
,* temos
X = B 2:
Resolvendo
1 0 0 L * C 0= B , temos
2
c11  1 c11  1 
 1 −6         
 1 0
0
0 0  ** cc122  =  −12  ⇒ cc122  = 10.5
0

1 0 −6 0  c3   0   c   0.1667 
 1 −6 0 0  c32   −2  ⇒ c32  = 0.5
3
= 
 −11 0
2 3.667
−6 1.1120  cc344   1
*
0  cc344  0.3495
0.1667 
         
 −1 2 3.667* *1.1122  22 c4  1  c4   0.3495 
Resolvendo UU X* X
Resolvendo == C ,Ctemos
, temos
Resolvendo
1 2 3 U*X 4 =C2,x11temos  1   x11   −0.5498 
0 1 0.6667 0.5   x  0.5   x  0.5247 
1 2 3 4  **  x122  = 1  ⇒  x12  =  −0.5498 
2
 x   −0.2992 
0 0 0.6667
0 1 1 0.5   xx332  0.1667
1.333 0.5  x332 0.5247
0 0 0 1  * x = 0.3495  ⇒ x = 0.3495 
 
0 0 1 1.333  x344  0.1667   x344   −0.2992 
         
0 0 0 1 – A * xX4 = B330.3495   x4   0.3495 
Terceiro sistema * :
Terceiro
Resolvendosistema – A * X33 = B3:
L ** C –= AB*, Xtemos
Terceiro sistema = B 3:
Resolvendo
Resolvendo L * C = B3, temos
0 L * C 0= B , temos
3
1 0 c11   −1 c11   −1 
 1 −6    2    
0 0  ** cc122  =
0 c −0.5
 1 0 0  −1 ⇒ c122  =  −1 
1 0 −06 0  cc33  0  c3   −0.1667 
c3 −0.5
 1 −6 0 * 2 =  2  ⇒ c2  = 1.449 
 −11 0
2 3.667
−6 1.112 0  cc344  1
 0    
c34   −Capítulo
4 0.1667 
2 – Solução Computacional de Sistemas de
         
 −1 2 3.667 1.112  c4  1 c4  1.449 

Resolvendo UU* X* X
Resolvendo ==C3,Ctemos
3
, temos

1 2 3 4   x1   −1   x1   −0.8504 
x   x  
0 1 0.6667 
0.5   2   −0.5 
 2  0.1742 
 * =  ⇒ =
0 0 1 1.333  x3   −0.1667   x3   −2.098 
         
0 0 0 1   x4  1.449   x4  1.449 

Confiraoo algoritmo
Confira algoritmode decomposição LU, de Crout,
de decomposição LU, aplicado ao Exemplo
de Crout, 2.6 deao
aplicado três
sistemas lineares com opção de pivotação parcial, no link <http://sergiopeters.prof.
Exemplo 2.6 de três sob
ufsc.br/algoritmoslivro/> sistemas lineares com opção de pivotação
o título Cap2LUCrout.m.
parcial, no link http://sergiopeters.prof.ufsc.br/algoritmoslivro/ sob o
título Cap2LUCrout.m.
138 CÁLCULO NUMÉRICO COMPUTACIONAL

No algoritmo de decomposição LU, de Crout, o processo de pivotação


parcial está inserido depois do cálculo dos valores de lik e imediatamente
antes do cálculo dos valores de ukj.
Na Tabela 2.1, retomamos o número de operações em ponto flutuante
envolvidas em cada um dos métodos numéricos diretos apresentados até
este momento.

Tabela 2.1 – Comparativo entre as operações em ponto flutuante em métodos diretos

Métodos Ordem do número de operações

Gauss O(2n3 / 3)
Gauss-Jordan O(4n3 / 3)
Inversão O(8n3 / 3)
Crout O(2n3 / 3)
Fonte: Elaboração própria.

Essa ordem do número de operações aritméticas define a complexi-


dade do algoritmo de um método numérico. Os métodos de inversão de
matrizes e Gauss-Jordan são computacionalmente os menos eficientes, pois
envolvem o maior número de operações aritméticas, enquanto os métodos
de Gauss e Crout são os que envolvem o menor esforço computacional,
porém todos são de ordem O(n3) operações aritméticas.

Tabela 2.2 – Comparativo do número de operações em ponto flutuante realizadas pelos


dois métodos mais eficientes

Operações Método de Crout Método de Gauss

Adição e subtração (2n3 + 9n2 – 5n – 6) / 6 (2n3 + 3n2 + n – 6) / 6


Multiplicação (2n3 + 3n2 – 5n) / 6 (2n3 + 3n2 – 5n) / 6
Divisão (n2 + n) / 2 (n2 + n) / 2
Total (4n3 + 15n2 – 7n – 6) / 6 (4n3 + 9n2 – n – 6) / 6

Fonte: Elaboração própria.

No método de Crout, temos um pouco mais de adições e subtrações


do que no método de Gauss, mas é uma diferença de ordem inferior, 6n2, e
as outras operações são de mesmo número.
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 139

Assim, quando temos que resolver vários sistemas com a mesma matriz
de coeficientes A e com m diferentes vetores de termos independentes do
tipo A * Xm = Bm, podemos:

a) Utilizar o método de Crout para obter as matrizes decompostas


L e U uma única vez e efetuar as m substituições sucessivas
L * Cm = Bm e U * Xm = Cm tantas vezes quantas forem necessárias
para obter as respectivas soluções Cm e Xm, correspondentes a cada
Bm. Nesses casos, temos apenas um custo de (2 * n2 – n) operações,
referente à substituição dupla para obter cada solução Xm, e um
custo de armazenamento de duas matrizes, L e U que podem ser
sobrepostas em uma única matriz, conforme feito no algoritmo de
decomposição LU, de Crout, apresentado.

b) Obter a matriz inversa A–1 uma única vez e aplicar apenas o produto
final Xm = A–1 * Bm para cada sistema m. O custo dessa etapa de
operações do produto da inversa é igual ao das duas substituições
sucessivas com as matrizes L e U, e custo de armazenamento de
uma única matriz.

c) Aplicar o método de eliminação de Gauss a uma


Capítulomatriz estendida
2 – Solução Computacional de Sistemas de
com todas as colunas de B , incluindo-as conforme esta matriz
m Capítulo 2 – Solução Computacional de Sistem

com dados do Exemplo 2.6:

 1  12 123 234 34M 1M4 11M 11−11−1−1


 1  112 22−3 −3−34 −M44 0MM 010 010 −01 
  1  12 2−3 −−34 −M4 0M 00 00  0 
 −1−10 02 23 3M 1M 11 11  1  
  −11 −−104 0−21 213 M3M 21M −112 121  1
 1  −4 1 −1−41 −1M 21 −M2 22 − 2  2 
 1 −4 −1 1 M 2 −2 2 
1 12 123 23 34 4 M4 M 1M 1 1 1 1 1 −1 −1 −1 
0 −016−2−64 −34 −3 −43 M MM 1 11 1 −1 
−3 −3 −3 3 3  3  
⇒  0 −6 −4 − 3 M 1
⇒ 000 −0−64 −−44 −8 −−83 M MM −1 −11 −3 3 
⇒0 ⇒  −1 −1 1 1 1  1  
 0 0
 00 00 −04 1.1111...−4 −8 −8 M −1 −
MM 1.7222...1 − 1 − 1  
0.3888... 1.6111... 
0  0 00 01.1111... M 1.7222...
01.1111...
1.1111... 0.3888...
M 1.7222... 1.6111...
0.3888...  
1.6111...
 0  0 0 M 1.7222... 0.3888... 1.6111...  
Depois de obter a matriz triangularizada dos coeficientes,
Depois de obter a matriz triangularizada dos coeficientes,
que também
Depois de obteré auma matriz
matriz U triangular
triangularizada superior, efetuamos
dos coeficientes, que também
que também é uma matriz U triangular superior, efetuamos
éasuma matriz U triangular superior,
retrosubstituições sucessivas U * X =mB para efetuamos
m m
as retrossubstitui-
obter a
assucessivas
retrosubstituições sucessivas X=mBcorrespondente
para obter aa
m
ções U * Xm = Bm para obter U*X
a solução
solução X m correspondente a cada B m escalonado, com
solução 2 X correspondente a cada B escalonado, com
m m
custo de n operações, como nas seguintes soluções, aqui
custo de n2 operações, como nas seguintes soluções, aqui
obtidas em precisão double:
Depois de obter a matriz triangularizada dos coeficientes,
140 que também é uma matriz U triangular superior,
CÁLCULO NUMÉRICO efetuamos
COMPUTACIONAL
as retrosubstituições sucessivas U * X m = B m para obter a
solução X m correspondente a cada B m escalonado, com
Bm escalonado,
cada custo de n2 operações, de n2 operações,
com custocomo como soluções,
nas seguintes nas seguintes
aqui
soluções, aqui obtidas em precisão double:
obtidas em precisão double:
 −0.150000 − 0.50000 − 0.850000 
 0.325000 0.525000 0.175000 
X = 
 −1.900000 − 0.300000 − 2.100000 
 
 1.550000 0.350000 1.450000 

Nesse caso, não há possibilidade de reuso da matriz


Nesse caso, não há possibilidade de reuso da matriz triangulari-
triangularizada, como podemos fazer com a matriz decomposta
zada, como podemos fazer com a matriz decomposta ou com a
ouinversa.
matriz com a matriz inversa.
Essa última Essa metodologia
metodologia pode serpode ser indicada
indicada para
parasistemas
resolver resolverdesistemas de equações
equações lineares
lineares que quedentro
estejam estejamdedentro
um
processo
de um iterativo que iterativo
processo atualiza os coeficientes
que atualiza osdascoeficientes
equações do das
sistema a cadado
equações iteração,
sistemanão havendo
a cada necessidade
iteração, não havendode armazenar
necessidade
a matriz transformada para reuso posterior.
de armazenar a matriz transformada para reuso posterior.

2.1.5 Método de Cholesky


2.1.5 Método de Cholesky
No caso particular de sistemas com matrizes de coeficientes simétricas
e positivas Nodefinidas,
caso particular
podemosdeobter sistemas com matrizes
uma simplificação simétricas
no método de e
nal
decomposição
positivas definidas, para obter as matrizes Lobter
podemos e U, chamado de método de no
uma simplificação Cholesky
método
nal
(O(n 3
/ 6) operações).
de decomposição para obter Com esse método, podemos obter a matriz U diretamente
as matrizes L e U, chamado de método
nal
pela transposta de L, ou seja, U = LT, (A = L * LT), segundo as seguintes equações:
de Cholesky ( O(n / 6) operações). Com esse método, podemos
3

obtera)
a)aoperações
matriz Uno
operações primeiro
primeiropasso:
diretamente
no kk=transposta
pela
passo: =11 de L, ou seja, U = LT ,
( A =a)a) operações
* L ), segundo
T
Loperações no primeiro passo: kequações:
as seguintes k == 11
l11 = a11 no primeiro passo:
= aa11
lll1111 =
i1 = a 11
i1 /l 11 ∀i= 2,3,..., n
= aai1 // ll11
llii11 = ∀i= 2,3,..., n
b) operações i1 =
11 nos passos: k 2,3,...,∀n i−=
1 2,3,..., n
b) operações
b) operações nos
b) operações nospassos
nos passos:
=
passos: =
1/2
2,3,..., nn −−11k = 2, 3, ..., n – 1
intermediários:
kk 2,3,...,
 k −1
1/2
= lkk  akk − ∑ l 2 1/2
 kk−−11 kr 
r =1 l22 
=
=llkkkk aakkkk −− ∑ lkrkr 
 rr==11 k −1
1 
= lik 1  aik − ∑ l * lkr 
kk−−11 ir
l1  r =1 l * l 
=
= llikik kk  aaikik −− ∑ lirir * lkrkr  ∀ i = k + 1,..., n
ll kk   ∀ i = k + 1,..., n
k = n∀ i = k + 1,..., n
r==11
c) operações kk no rúltimo passo:
mo
c) operações
c) operações no
no último
último passo: k = n
1/2 passo: k = n
de
mo
mo  n −1
2 1/2
ky,
de lnn  ann − ∑
= n−11 lnr 1/2
de  n− 
 
lkk  akk − ∑ lkr2 
=
 r =1 
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 141
1 k −1

= lik 
lkk 
aik − ∑
r =1
lir * lkr 
 ∀ i = k + 1,..., n
c)
c) operações
operações nono último
últimopasso:passo:kk==nn
goritmo
1/2
de
 n −1

holesky, lnn  ann − ∑ lnr2 
=
por  r =1 
motivos
O método de Cholesky também é utilizado para verificar
amente O método de Cholesky também é utilizado para verificar eficientemente
eficientemente se uma dada matriz simétrica A é positiva definida ou
imimos se uma dada matriz simétrica A é positiva definida ou não; pois, na
U para não; pois, na decomposição
decomposição anterior, se nãoanterior, se não
aparecerem aparecerem
radicandos radicandos
negativos, então a
as essa negativos, então aématriz
matriz simétrica positivasimétrica
definida. é positiva definida.
cisa ser
enada.
No algoritmodedeCholesky
Noalgoritmo Cholesky, o, processo
o processo
dede pivotaçãonão
pivotação nãopode
podeserser
aplicado, para não alterar a simetria da matriz, conforme podemos
aplicado, para não alterar a simetria da matriz, conforme podemos conferir
no arquivo Cap2LUCholesky.m do Caderno de Algoritmos.
conferir no arquivo Cap2LUCholesky.m do Caderno de Algoritmos.
No algoritmo de Cholesky, por motivos estritamente didáticos, temos a opção de imprimir a matriz U
 para visualização, mas essa matriz U nem precisa ser armazenada uma vez que U = LT.

Na sequência, vamos apresentar metodologias para solver sistemas


representados
Na sequência,em matrizes
vamos do tipo
apresentar banda. para solver sistemas representados
metodologias
em matrizes do tipo banda.

2.1.6
2.1.6 Solução Solução
de Sistemas comde sistemas
a Matriz com a matriz
de Coeficientes de
do Tipo Banda
coeficientes do tipo banda
Alguns modelos matemáticos envolvem sistemas deComputacional
Capítulo 2 – Solução equações de Sistemas de Equaç
Alguns modelos matemáticos envolvem sistemas de equações lineares
lineares especias
especias deste tipo:
deste tipo:

 a11 a12 0 0 L 0 0   x1   b1 
a a22 a23 0 L 0 0   x2   b2 
 21    
0 a32 a33 a34 L 0 0   x3   b3 
     
 M M O O M M  *  M  =  M  (4a) (4a)
 M M O O M   M   M 
     
0 0 L L a( n −1,n − 2) a( n −1,n −1) a( n −1,n )   xn −1  bn −1 
0 0 L L 0 a( n ,n −1) a( n ,n )   xn   bn 

NesseNesse
sistema, a matriz
sistema, dos coeficientes
a matriz AéA
dos coeficientes constituída de de
é constituída apenas
apenas três
três faixas dedeelementos
faixas nãonulos:
elementos não nulos:a afaixa
faixa
dada diagonal
diagonal principal
principal e as supra
e as faixas
faixas supra e infradiagonal. Esse tipo de sistema é denominado de
tridiagonal e, para solvê-lo, é natural considerarmos que:
 
Nesse sistema, a matriz dos coeficientes A é constituída de apenas
três142
faixas de elementos não nulos: a faixa da diagonal
CÁLCULO principal
NUMÉRICO e as
COMPUTACIONAL

faixas supra e infradiagonal. Esse tipo de sistema é denominado de


tridiagonal e, para solvê-lo, é natural considerarmos que:
e infradiagonal. Esse tipo de sistema é denominado de tridiagonal e, para
solvê-lo,
a) éNão
natural considerarmos
é necessário que: toda a matriz A, mas apenas
armazenar
as suas
a) Não três faixas;
é necessário bem toda
armazenar comoa matriz
é desnecessário
A, mas apenaso as
uso datrês
suas
bidimensionalidade
faixas; para armazenar
bem como é desnecessário o sistema,
o uso da mas apenas
bidimensionalidade para
armazenar o sistema,
quatro vetores mas apenas quatro
unidimensionais, vetores unidimensionais,
obtendo-se considerável
obtendo-se
economia de considerável
memória economia de memóriaquando
no armazenamento no armazenamento
a ordem
quando a ordem n for elevada. Por exemplo, se
n for elevada. Por exemplo, se n = 10 , na representação
6 n = 106, na
representação matricial teríamos que reservar n2 = 1012 posições
matricial teríamos que reservar n 2 = 1012 posições de
de memória para a matriz A; já na notação vetorial seriam apenas
memória para a matriz A; já na notação vetorial seriam
3n = (3 * 106), obtendo-se uma economia de 99.9997% na demada
apenas 3n = (3 * 106 ), obtendo-se uma economia de 99.9997%
de memória. Assim, o sistema dado pela eq. (4a) será representado
na demada
conforme de memória.
a equação Assim, o sistema dado pela eq. (4a)
a seguir:
será representado conforme a equação a seguir:

 r1 d1   x1   b1 
t r2 d2  x  b 
2   2   2 
 t3 r3 d3   x3   b3 
     
 O O O  *  M  =  M  (4b)
(4b)
 O O O   M   M 
     
 tn −1 rn −1 d n −1   xn −1  bn −1 
 tn rn   xn   bn 

Observe que no sistema (4b) não existem os elementos t1 e
Observe que no sistemacomputacional
dn. Na implementação (4b) não existem os elementos
desse t1 e dn. Na
tipo de sistema,
implementação computacional
podemos atribuir quaisquer desse tipopara
valores de sistema,
t1 e dn , podemos
uma vez atribuir
que
quaisquer valores para t1 e dn, uma vez que não serão utilizados.
não serão utilizados.

Para solver o sistema dado pela eq. (4b), a eliminação gaussiana é


uma metodologia eficiente, uma vez que anula apenas os elementos da faixa
infradiagonal. Assim, temos os seguintes passos:
sPara
ara solver o sistema dado

solver o sistema dadopela eq.eq.
pela (4b), a eliminação
(4b), gaussiana
a eliminação 
gaussiana
t = 10 dígitos significativos de f , depois do ponto e polarizado
metodologia
a metodologia eficiente, uma
eficiente, umavezvez
que anula
que anulaapenas os os
apenas elementos
elementos
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 143
infradiagonal.
xa
71 infradiagonal. Assim,
Assim, temos
temosos os
seguintes
seguintes passos:
passos:
′( x0 = 0) = e0 = 1
eiro
meiro passo:
passo: = eliminação
k =k 1, dodo
1, eliminação t 2: t 2:
. 143 Primeiro passo: k = 1, eliminação do t2:
b1 b1  Pg. 110
d1 d1  r1 d1 ⋮ b1 
t r d
Pg.
  ← L − 2 Lt2 t 110
 L ← L − t2 L R = [ A * S − B]
r2 r2d 2 d 2 b2 b2L2 L 2 ← 2 L2 − ⋮ 1 L1b
 2 2 2 R =r [ A
1 r1
* S −2 B] 2 2
r1
1
Pg. 115
3 t3 r3 r3 d 3 d 3 t3 r3 d3 M M  Pg. 115 ⋮ ⋮  a
O OO OO O a  a31 − 31 a11 = 0
 ⋱ ⋱ ⋱   a31 − 31⋮ a11 = 0 a11
O OO O O O ⋱ ⋱   a  Pg. 121
⋱ ⋮
t t r r d d b b 
11
Pg. 121  ⎡ −0.225
n −1 n −1 n −1 n −1 n −1 n −1 n −t1nn−−11  rn −1 d n −1 ⋮ bn −1  ⎡ −0.225 0.4812 −0.125 −1 ⎤ ⎡ 8⎢ ⎤ ⎡ 3.0
 tn tn rn rn bn bn  t  X = A * B = −0.15
n X r =n A−⋮1 * bBn = ⎢ −0.15 −0.0125 0.25 ⎥ * ⎢ 7 ⎥ = ⎢ −4.2
 ⎢
⎢ ⎥ ⎢ ⎢⎣ ⎥ 0.4⎢
b1 b1 
⎢⎣ 0.4 0 ⎥⎦ ⎢⎣− 12 ⎥⎦ ⎢⎣ 1.1
−0.3 Pg. 122
d1 d1  r1 d1 ⋮ b1 
   Pg. 122  ( L *U ) X = B
2 r2d 2 d 2
 0 r2 d 2 ( L * U⋮ ) bX2 = B
b2 b2 
( L * U ) X = B , como L
3 t3 r3 r3 d 3 d 3  t3 r3 d3 M M  ( L * U⋮ ) X⋮ = B , como L (U * X )Pg. = B140 .
 O  
O OO OO ⋱ ⋱ ⋱   Pg. 140  ⋮
 1⎛ k −1

O OO  OO O ⋱ ⋱  ⋱ ⋮1 ⎛  k −1
⎞ lik =
lkk ⎝⎜ a ik − ∑ lir * lrk ⎟
   lik = ⎜ aik − ∑ lir * lrk ⎟ r =1 ⎠
tn −1tn −1rn −1rn −1d n −d1 n −1bn −t1bn−n1−1  rn −1 d n −1 l⋮kk b⎝n −1  r =1 ⎠ Pg. 141

 tn tn rn rn bn bn  tn Pg. rn 141 ⋮ bn  uma vez que U = LT .
uma vez que U = L . T
Pg. 143 206
quais
s quais devemdevem  r ser dseroperadas
operadas apenas apenas asPg. ascolunas
143
colunas
⋮ ⋮ b1b1  de de r e
r b e : b : t2
Nas quais devem ser operadas apenast as colunas de r2 e b2: r2 = r2 − d1 e
1 1 2 2 2 2

t2 t2  0 r t td r2 =⋮r2⋮ b−2bd2= 2 
d1 d − t2 0t2 r1
−r2 − d1 ed1be= 2 b=
2b2 − b22 2−b12,22bpois
1,, pois
pois d 2ddnão não é
não alterado,
é é alterado,
alterado, r d = d − , e
0 , e
nenhuma outra coluna
r1 r1  ⋱ t3r1 r⋱r13 d⋱
2 2
⋮ ⋮ ⋮ ⋮1 
2 2 2 2
r1 r1 t
3
t 0 = 0− 2 0
 linha i = 2 é alterada, pois 0 = 0 − 2 0.
da r1
0 ⋱ ri −1 ⋱
i =di2i −=1é2alterada, ⋮ ⋮bi −1   t2 t2
uma outra
nhuma outra  coluna
coluna da⋱ linha
da linha é alterada, poisr1pois 0= 0=0 −0 − ti0 . 0 . Pg. 144
 ⋱ ti ⋱ri ⋱ di Pg. ⋮144 ⋮ bi  Li ← Li −r1 r1 Li −1
  ri −1 ⎡ r1 d1
ndo passo:
gundo passo: generalizando
generalizando t
para
n
⋱ para
1 r⋱
um
n 1um ⋱
⎡d
passon
⋮ d⋮1k⋮bnqualquer
Segundo passo: generalizando para um passo k qualquer que⎢b0altera
r passo
1 k1 
qualquer que que 1 ⎤ r apenas
− − 1 − −
⎢ d2
 tt ⎢r0r ⋮ ⋮
r b b 
d  b ⎥2
aera apenas a a linha
linha =i =
apenas a linha i= k + 1, temos: ⎢
 i k k ++1 ,1, temos:
temos: nn n n 2 n 
n 2 ⎢2 ⎥
g. 191 ⎢ ⎢ ⎥
 r1 d1 b1 b1  ⎢ ⋮ b1  ⎢ ⎥ 0 ri −1 di −1
1 d1
(α ) = 0 0 r d   ⎢ ⋮ b  0 ri −1 d i −1 b
⎢ i −1 ⎥ 0 ri
r2d 2 d 2
2. 216  2 2 b2  b2  2  ⎢b ⎥
⎢ 0 ri di
g(O ) =O − fO( x) f ′⋱ ( x)) ⋱ M⋱M  ⎢ ⋮ ⋮  ⎢ ⎥ i
O xO xO ⎢ ⎥
 ⎢ 
g. 220 0 0ri −1 ri −1di −1di −1
 0 bir−i1−b1i −1 di −1 ⎢ ⋮ bi −1  ⎣
  ti ⎣ ti ti 0 rn bn ⎥⎦ t
′( x0 ) = ln( ti xti) +
0 i1 i i

biti bi i rii i d ii −  L ← Li − Li −1
ri −1 ri −1 ⋮ i −1bi t  i
r r d di L L ←
L L − L L
  
i −1
r ri = ri − i di −1
32 O OO OO O M M ⋱ ⋱ r⋱ i 1 ri −1
i = ⋮ri −⋮  d i −1
i −
 r
′( x) = e x − 1  tn tnrn rn bn bn  tn rn ⋮ bn 
i −1
aux = i
t
 t
′′( x) = e x aux = i ri −1
g. 191 ri −1 Pg. 149
36(α ) = 0
′( x ) = 2 x
Pg. 149 | det( A) |
. 216 | det( A) | || det( A) ||= n << 1
Capítulo 2 uma vez que U =deLSistemas . de Equações Lineares
uma vez que U = LT . Capítulo 2––Solução
SoluçãoComputacional
Computacional de Sistemas
Capítulo de Equações
2 – Solução Linearesde Sistemas de Equ
Computacional
Pg. 140 Pg. 143
Pg. 143
1 t⎛2 k −1
⎞ t2
Capítulo 2 – Solução Computacional de Sistemas de Equações Lineares
144
l
r2ik ==r
matriz triangularizada
2 − ⎜
lkk r⎝1
a
d 1
ik − ∑
r =1
lir * alrkseguir:


r2 = r2 − CÁLCULO
d1 NUMÉRICO COMPUTACIONAL
r1
oss aa matriz
matriz Pg. triangularizada
Então, 141t2geramos a matriz aa seguir: triangularizada t a seguir:
0 = 0triangularizada
− b0  seguir: 0 = 0− 2 0
uma vez r1 1que U = L . T
r1
mos a matriz Então, triangularizada
geramos a matrizatriangularizada seguir: a seguir:
Pg.
Pg. r1 144 d1b bb1 
143 b1Pg.  144
r1 d1 2t2b1  ⋮ b1  b 
r020 = rrr22−Md db d221b1  2 ⎡r1 d1 b1 ⎤
r21 2  ⋮ b2  ⎢
O  2
O OMb2O 
M ⎢ 0 r2 (5) d2 b2 ⎥⎥
Odi −1  ⋱ bit⋱ −21 
M⋱   ⋮ ⋮  
di −1 0 = 0 − 0 0b0i −ri1M−1ri −d1 i −1 di −1  ⎢ (5) (5)(5)⎥
−O1 d r b ⋮ bi −1  bi −1  (5)
−1ri i −d1i b i −1   ⎢ ⎥
0ri −1 rdi i −1 Pg. bbi 0i −1 0 ri rdi i di⋮ bi  bi ⎢
1
d i 0(5)ri −1 di −1 bi −1 ⎥
0O rO dO 144 
i
M bi  ⋱ ⋱ ⋱ ⋮ ⋮ 
0 O
i
Ori O
i
⎡ r1di dO M b   O O O b1 M⎤⎢ 0 ri di bi ⎥
1   ⎢ ⎥
0 O ⎢ 0rn O r bn d M  i
0 rn ⋮ bn 
0 r b b ⎥⎢ ⎥
O ⎢0O r2nO ti bn M
b2 n 2 ⎥n

0 r
r⎢i = ri − n di −1n  ⎥⎣ 0 rn bn ⎥⎦
⎢ 0 r r b n  ti ⎥ t
i −n1
tti i t
oeficientes
os coeficientes Em
Em ⎢ são
que
que ti os r
os 0i= novos
novosrii −− i −1di i −1 e b=
t
dcoeficientes
coeficientes são
são −b1 , , ddi −i 1−1 e
bii−1−⎥ri==i tribii i−− e b= bi − i bi −1,, para
aux = são ri= rir− ti d i −1 e b= −
1 i b t i
os coeficientes i⎢= 2, 3,
para são
rii −1=..., n. ri=0 nr.i i−
2,3,..., −r1 r t dd
i i −1i i i −1
e bi= ⎥i ri −1 i ir−rii−1−11
i bi bi −ri −t1i bi −1 ,
ri −1
nvos. coeficientes
Pg. ⎢ 149 são ri= ri −ri −1 di −1 e b= ⎥bi − ri −1 tbi i −1 ,
n. ⎢ algoritmo
Assim, podemos gerarri −1 um
i
algoritmo ⎥aux r=i −1 simples para efetuar a
gerar
mos., n .gerar um um A) ||algoritmo
| det( A ) | simples
1simples
para para efetuar ri −apara
Assim,
||⎢det( podemos
= n gerar
<< um 0 algoritmo
r b ⎥efetuar
simples 1a efetuar a triangularização
mos
amos gerar
matriz ⎣ um algoritmodasimples
triangularização
dematriz
coeficientes. matriz
Genericamente, ndepara efetuar
coeficientes.
n ⎦Pg. a
149paraGenericamente,
para para
ão da gerar da
matriz umde coeficientes. ∏
de
algoritmo
t
coeficientes.
α i Genericamente,
Genericamente,
simples para efetuar paraai = 2, 3, ..., n. (equivalente a
ão da matriz | det( A) |
akαrik==a=1ride coeficientes.
ni n–id=1i(equivalentetemos: Genericamente, a k = 1 até n −Apara1) ),
||=temos:
i = 2,3,..., até
alente
uivalente
ção da matriz i
− até
k1de atén1),
−1 − 1 ), temos:
=ri1−1coeficientes. n − 1 ), temos: Genericamente, || det( para n
<< 1
uivalente Pg. 154 a k = 1 até n − 1 ), temos: ∏ αi
equivalente a kti = 1 até n − 1 ), temos: t
X
aux (0)
= ti ti aux = i i =1
Pg. aux157 =ri −1 = ti
aux riα−1 i
aux ri −=1 ri −1ti
Pg. 149 aux =r
−1 A) |
ri= ri − aux * di154 Pg.
−1
ri= ||rri=det( rAi )−||=aux | det(
ir
i − aux * d ii*− −1d
− << 1 X (0)
ri=r= ri r−−aux n 1 i
* d i −1
1
b= bi − aux Pg. * b157
aux ∏ *αd i −1
i i −1
b= bi − aux
b = i b i− aux
i *b * b i
i −1
i
b=i b − auxi =i1−*1b
i = rib, d− eaux
αb
Com *b
b1 inalterados na primeira linha.
i −1
i
i 1 i 1 i −1
nalterados
erados Então,
na na
Pg. primeira primeira linha.
linha.
154por retrosubstituições sucessivas aplicadas sobre as
nalterados
Com
inalterados (0)na
rna ,primeira
dprimeira linha.
e b1 inalterados
linha. na primeira linha.
trosubstituições
X
equações sucessivas aplicadas sobre as obtemos:
porsimplificadas, dadassucessivas
pela eq.as(5),
1  1
ubstituições
1
Então, sucessivas aplicadas
retrossubstituições sobre aplicadas sobre as equações
trosubstituições
plificadas,
Pg. 157
etrosubstituições
dadas sucessivas
sucessivas
pela eq. (5), aplicadas sobre
aplicadas sobre as
obtemos: as
simplificadas,
cadas, dadas pela dadas
eq. (5),(5), pela eq.
obtemos:(5), obtemos:
xn = bn / rn
plificadas, dadas
mplificadas, dadaspela pelaeq. eq. (5),obtemos:
obtemos:
xn = bn / rn
xn =xibxn=/nr−n 1, n − 2,..., 2,1 , temos:
n n==bnbn/ /rnrn
Para
− 2,..., 2,1 , temos:
...,
−n − 2,1
2,...,,2,1
temos:
2,..., Para i = n – 1, n – 2, ..., 2,x=
, temos:
2,1 , temos:
(bi − di * xi +1 ) / ri
i1, temos:

x= (b − d * x ) / r
x=i x= bii −(Dessa
(iix= i i
b(dibi−i *−dxdiiforma,)ixi+/+i11+r1)i )/obtemos
+i*1*x
i
/riri a solução do sistema tridiagonal com o
mínimoa de
ma, obtemos operações
solução possíveis
do sistema manipulando
tridiagonal com oapenas os elementos
obtemos
ma,obtemos
ma,
ações não anulos.
obtemossolução
possíveis do do
aasolução
solução sistema
dosistema
manipulando tridiagonal
sistema tridiagonal
tridiagonal
apenas com
com
com
os elementoso oo
rações
ações possíveis
s possíveis Nesses
possíveis manipulando
manipulando apenas
apenas
casos, o pivotamento
manipulando apenas os
os os elementos
elementos
de linhas ou colunas não deve ser
elementos
aplicado, pois isso alteraria a estrutura em forma de banda da matriz.
os, o pivotamento de linhas ou colunas não deve ser
asos, o pivotamento de linhas ou colunas não deve ser
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 145
utacional
mputacional

Dessa forma, obtemos a solução do sistema tridiagonal com o mínimo


de operações possíveis manipulando apenas os elementos não nulos.
Esses
Essessistemas
sistemas nunca
nunca
Nesses casos, têm têm diagonal
o pivotamentodiagonal principal
principal
de linhas nula,
nula,
ou colunas pois
pois
não são
deve sistemas
são
sersistemas
aplicado,
pois isso
resultantes alteraria
de a
modelos estrutura em
matemáticos forma de
de banda da
discretização
resultantes de modelos matemáticos de discretização de domínios matriz.
de Esses sistemas
domínios
nosnunca
nosquaistêm
quaissãodiagonal
são principalum
relacionados
relacionados nula,
um pois
ponto
pontosão sistemas
central
central i,resultantes
i, com com seus
seusdevizinhos
modelos
vizinhos
matemáticos
anterior de discretização
i –i1–e1posterior i +i 1, de
comodomínios
nono nos
método quais
das são relacionados
diferenças finitasum
anterior e posterior + 1, como método das diferenças finitas
ponto central i, com seus vizinhos anterior i – 1 e posterior i + 1, como no
(BURDEN;
(BURDEN;
método das FAIRES,
FAIRES,
diferenças2011),
2011),
finitasquequenãonão
(BURDEN; fazfaz
parte
parte
FAIRES,dodoescopo quedeste
escopo
2011), deste
não livro.
faz livro.
parte
Esse
Esse
do escopo algoritmolivro.requer
algoritmo
deste requer apenas
apenas 8n8n operações,
–7–7 operações, sendo
sendo 5(n5(−n1)− 1)
operações Esse
operações paraalgoritmo
para requere apenas
a eliminação
a eliminação 3(n +8n1+operações
–1)–1)
e 3(n –17operações
operações,
para sendo 5(n – 1) ope-
o procedimento
para o procedimento
rações
dede para a eliminação
retrosubstituições.
retrosubstituições. e 3(n – 1) + 1 operações para o procedimento de
retrossubstituições.
Exemplo
Exemplo2.7: resolva o sistema dede
equações, a seguir, dedeforma
Exemplo 2.7:2.7: resolva
resolva o sistema
o sistema equações,
de equações, a seguir,a seguir, forma
de forma otimizada:
otimizada:
otimizada:
11− 1− 1 0 0 0 0 0 0M M 0 0 
1  1 − 1 0 0 
 1 1 − 1 0 0M M 1 1 

00 1 1 − 1− 1 1 1 0 0M M 2 2 
   
00 0 0 − 1− 1 1 1 1 1M M− 1−1
00 0 0 0 0 − 1− 12
 2M M− 2−2

Solução:
Solução:
Solução:
a) a)
a) Triangularização
Triangularização baseada
Triangularização nopivô
baseada
baseada no pivô
no k k==k1 1=
pivô opera a linha
1 opera
opera a linha
a linha 2:i 2:
i =i = = 2:

11 −1−1 0 0 0 0 0 0M M0 0 
1 1 −1 0 0  1 1
 1 1 −1 0 0M M1 1L2 L← L − L
2 ←2 L2 − 1 L1
1 1
00 1 1 −1−1 1 1 0 0M M2 2 
   
00 0 0 −1−1 1 1 1 1M M−1−1
00 0 0 0 0 −1−12 2M M−2−2 

11 − 1− 1 0 0 0 0 0 0M M 0 0 
0 2 − 1 0 0 
 0 2 − 1 0 0M M 1 1 

00 1 1 − 1− 1 1 1 0 0M M 2 2 
   
00 0 0 − 1− 1 1 1 1 1M M− 1−1
00 0 0 0 0 − 1− 12
 2M M− 2−2 
  2 2
1
1
0 1 −1 0 M 2
1
 
146 0 0 −1 1 1 M −1 CÁLCULO NUMÉRICO COMPUTACIONAL
0 0 0 −1 2 M −2 

1 − 1 0 0 0 M 0 
0 2 − 1 0 0 M 1 
 
0 1 − 1 1 0 M 2 
 
0 0 − 1 1 1 M − 1 Capítulo
Capítulo 22 –– Solução
Solução Computacional
Computacional de
de Sistemas
Sistemas de
de
Capítulo 2 – Solução Computacional de Sistemas de
0 0 0 −1 2 M − 2 

b) Triangularização baseada no pivô k = 2 opera a linha i = 3:


b) Triangularização baseada no pivô 2 opera a linha 3:
b) Triangularização baseada
b) Triangularização no pivô
baseada k = kk2 =
no pivô opera
= a linha
2 opera i = 3:ii =
a linha = 3:

1 −1 0 0 0 M 0
10 −21 0 0 0
−1 0 0
M 0
M 1 
0 2 −1 0 0 M 1
0 1 1
−1 1 0 M 2  L33 ← L33 − 1 L22
0 1 −1 1 0 M 2  L ← L3 − 2 L2
0 0 −1 1 1 M −1 3 2
0 0 −1 1 1 M −1
0 0 0 −1 2 
M −2 
0 0 0 −1 2 M −2 
1 − 1 0 0 0 M 0 
1 − 1 0 0 0 M 0 
0 2 −1 0 0 M 1 
0 2 −1 0 0 M 1 
0 0 − 0.5 1 0 M 15 . 
0 0 − 0.5 1 0 M 15 . 
0 0 −1 1 1 M − 1
0 0 −1 1 1 M −1
0 0 0 −1 2 M − 2
0 0 0 −1 2 M − 2
c) Triangularização baseada no pivô k = 3 opera a linha i = 4:
c) c) Triangularização
Triangularização baseada
baseada no pivô
no pivô k = k3 = 3 opera
opera a linha
a linha i = 4:i = 4:
1 −1 0 0 0 M 0
1 −1 0 0 0 0
0 2 −1 0 0 MM 1 
2 −
0 0 −0.5 10
0 1 0 MM 1
0 1.5
0 0 −0.5 1 0 MM 1.5 (−1)
0 0 −1 1 1 −1  L44 ← L44 − (−1) L33
0
0 0 0 −1 1 1 MM −1  L ← L4 − (−0.5) L3
0 0 0 −1 2 −2  4 (−0.5)
 0 −1 2 M −2 
1 −
1 −11 0
0 0
0 00 MM 0 0 
0 1 −1 0 0 0 M 0 
0 2
2 −
−11 0
0 00 MM 1 1
0 2 −1 0 0 M 1 
0 − 0 .
0 0 − 0.5 1 0
0 5 1 0 MM 15 .. 
15
0 0 − 0.5 1 0 M 15 . 
0
0 0 0 0
0 − 1
−1 11 MM − −4 4
00 0 0 −1 1 M − 4
0 00 0
0 −
−11 2
2 MM −−2 2
0 0 0 −1 2 M − 2
d) Triangularização baseada no pivô k=4 opera a linha i=5:
d) Triangularização baseada no pivô k=4 opera a linha i=5:

1 −1 0 0 0 M 0
 
0 0 − 0.5 1 0 M 15 . 
 
0 0 0 − 1 1 M − 4
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 147
0 0 0 − 1 2 M − 2

d) Triangularização
d) Triangularização baseada
baseada no pivô
no pivô k = k=4 opera
4 opera a linha
a linha i =i=5:
5:

1 −1 0 0 0 M 0
0 2 −1 0 0 M 1 

0 0 −0.5 1 0 M 1.5
 
omputacional 0 0 0 −1 1 M −4 
(−1)
omputacional 0 0 0 −1 2 M −2  L5 ← L5 − L4
(−1)

1 − 1 0 0 0 M 0 
1 −1 0 0 0 M 0 
0 2 −1 0 0 M 1 
0 2 −1 0 0 M 1
0 0 − 0.5 1 0 M . 
15
0 0 − 0.5 1 0 M . 
15
0 0 0 −1 1 M − 4
0 0
0 0 0 −1 1 M − 4
0 0 1 M 2 
0 0 0 0 1 M 2 
e) Retrosubstituições:
e) Retrossubstituições:
e) Retrosubstituições:
 1 x5 = 2
−1 x5 =+2 =
−11 xx4 + 11 xx5 = −4
−4
−0.5 x3 + 1 x4 =
4 5
1.5
−0.5 x3 + 1 x4 =
2 x − 1x = 1
1.5
 2 x2 − 1 x3 = 1
 1 x1 − 1 x2 =
2 3
0
 1 x1 − 1 x2 = 0

Então, a solução obtida é:


Então,
Então, a solução
a solução obtida
obtida é: é:
S = { 5, 5, 9, 6, 2 } (temos uma solução exata, pois não houve arredondamentos).
S = {5, 5, 9,S6,=2}
{ 5, 5, 9, 6, 2 } (temos uma solução exata, pois não houve arredondamentos).
(temos uma solução exata, pois não houve arredondamentos).

No algoritmo de Gauss para matriz tridiagonal (Cap2tridiagonal.m), apresentado


Não devemos
no Caderno
utilizar a pivotação
de Algoritmos,
no
os valores no
algoritmo
de talgoritmo
de Gauss otimizado
e dn foramdepreenchidos
para
pelo símbolo
Não devemos utilizar a pivotação 1 Gauss otimizado para
matriz
NaN (Nottridiagonal, paracompletar
a Number), para não alterar
as n a sua tridiagonalidade,
posições dos vetores ti e di , conforme
e também
matriz tridiagonal,
para chamar atenção para não alterar aexistem
sua tridiagonalidade, conforme
apresentamos no que esses valores
algoritmo sobnãotítulo no sistema de equações
Cap2tridiagonal.m doe não
seu
podem ser utilizados,
apresentamos no mas poderia ser
algoritmo sobqualquer
títulooutro valor numérico, comodo
Cap2tridiagonal.m o zero.
seu
Caderno de Algoritmos.
Caderno de Algoritmos.

No Algoritmo de Gauss para Matriz Tridiagonal, os valores


No Algoritmo de Gauss para Matriz Tridiagonal, os valores
de t1 e dn foram preenchidos pelo símbolo NaN (Not a Number), para
de t1 e dn foram preenchidos pelo símbolo NaN (Not a Number), para
completar as n posições dos vetores ti e di , e também para chamar
completar as n posições dos vetores ti e di , e também para chamar
148 CÁLCULO NUMÉRICO COMPUTACIONAL

CapítuloCapítulo
2 – Solução Computacional
2 – Solução de Sistemas
Computacional de
de Sistem
Capítulo 2 – Solução Computacional de Sistemas de

Podemos estender esses métodos específicos para matrizes bandas com


mais faixas, como a matriz pentadiagonal. Também podemos generalizar
qualquer
qualquer
a otimização
qualquer matriz
de
matriz esparsa
métodos
matriz
esparsa não estruturada
eliminativos
esparsa
nãonão em
para qualquer
estruturada
estruturada em em faixas
faixas propondo
matriz
faixas propondo
propondo um
um um
esparsa não
estruturada
algoritmo
algoritmo
algoritmo propondo
que
queque armazene um
armazene
armazene algoritmo
as que
as alterações armazene
as alterações
alterações as
necessárias alterações
necessárias
necessárias em
em emumnecessárias
um umsistema
sistema
sistema
em
ao um sistema ao longo de cada passo do método eliminativo, na forma de umConfira outr
Confir
ao longo
ao longode
de cada
de cada passo do
do método
passo do método eliminativo,
eliminativo, na
na forma
na formade
de um
de Confira outr
longo cada passo método eliminativo, forma um exem-exem-
um mapeamento de índices de cada um desses passos, e, depois, aplicando o exem-
mapeamento
mapeamento
mapeamento de
de índices
de índices
índices de cada
de cada
deesse
cada um
um umdesses
desses passos,
desses passos,
passos, e,
e, depois, aplicando
e, depois,
depois, aplicandoplos
aplicando de
plos d
método de eliminação com mapeamento predefinido para operar apenas plos de
o método
o método
oosmétodo de eliminação
de eliminação
de eliminação
coeficientes não com
comcom
nulos necessários esse
essepor mapeamento
esse mapeamento
mapeamento
quantas predefi
vezespredefi nido
predefi
forem para
nidonido
paraparamatrizes
necessárias.
matrizes
matriz
esparsas
espars
operar
operar apenas
operar apenas
apenas os
os coefi
coefi cientes
os coefi cientes
cientes não
nãonão nulos
nulos necessários
nulos necessários
necessários por quantas
porpor quantasesparsas
quantas não estru-
não e
não estru-
vezes
vezes forem
vezes necessárias.
forem
 forem necessárias.
Temos um exemplo necessárias.
de sistema com matriz pentadiagonal no Exercício 2.19. turadas em
turada
turadas em
algoritmo
algorid
algoritmo d
Confira outros exemplos de matrizes esparsas não estruturadas em faixas e um algoritmo de escalonamento mentomento
otim
mento otim
otimizado genérico para suas soluções na seção Complementando... ao final deste capítulo. para suas
A para sss
A seguir,
seguir, vamos
A seguir,
vamos apresentar
vamos
apresentar uma
apresentar característica
umauma inerente
característica
característica aa alguns
inerente
inerente a alguns
alguns para suas
seçãoseção
Comp
seção Comp
sistemas
sistemas lineares
sistemas
lineares que,
lineares combinada
que,que, com
combinada
combinada erros
comcom de
de arredondamento
erroserros de arredondamento
arredondamento nos
nos nos ao final
ao des
fin
A seguir, vamos apresentar uma característica inerente a alguns sistemas lineares ao final des
coeficientes do
que,coeficientes
combinada
coeficientes sistema,
do erros
do com
sistema, pode
sistema,
de afetar
pode aa confiabilidade
afetar
arredondamento
pode afetar anos da
confiabilidade
coeficientes
confiabilidade solução.
dasistema,
da do solução.
solução. pode
afetar a confiabilidade da solução.

2.1.7
2.1.7 Sistemas
2.1.72.1.7 Lineares
Sistemas
Sistemas
Sistemas Mal
Lineares
Lineares Condicionados
lineares
Mal Mal mal condicionados
Condicionados
Condicionados
Consideremos
Consideremos o seguinte
o sistema linear:
Consideremos
Consideremos o seguinte
seguinte sistema
o seguinte linear:
sistema
sistema linear:
linear:
+ 33x1xx+2 =
 xx11 + =
3x442 = 4
  2
x + 3.00001
x1 + 3.00001 =
xx22 = 2 =
x4.00001
4.00001
 x11 + 3.00001 4.00001
cuja solução
cujacuja cuja
solução exata
solução
solução éé SS =
exata
exata exata éé S{{ =1,
= {11 1,
1,{1, }.
1}.1 }.
}.
Tomemos
Tomemos
Tomemos agora
agora um
agora
um um sistema
sistemasistemade
de equações,
de equações,
equações, derivado
derivado
derivado do
do sistema
do sistema
sistema
dado, Tomemos
que
dado, sofreu
que agora
uma
sofreu um
pequena
uma sistema
pequena de equações,
perturbação
perturbaçãoemderivado
dois de
em dois do
seus sistema
coefi
de seus dado,
cientes,
coeficientes,
dado, que sofreu uma pequena perturbação em dois de
que sofreu uma pequena perturbação em dois de seus coeficientes, impondo seus coefi cientes,
impondo
impondo uma variação
uma variação ao
aoacoefiao ciente aa22 de 3.00001 para 2.99999 ee e
impondo
uma umaao
variação variação
coeficiente coefidecoefi
cienteciente
3.00001 para
22
de de 3.00001
a222.99999
3.00001 b2para
para
e ao 2.99999
2.99999
de 4.00001
ao
ao bbao
para de
b2 4.00001
de 4.00001
2 4.00002,
para
de 4.00001
parapara
conforme 4.00002,
4.00002,
segue:
22
4.00002, conforme
conforme
conforme segue:
segue:
segue:
2

 xx11 ++ 33x1xx+2 =


3 x442 =
= 4
  2
 xx11 + 1 + 2.99999
+ x2.99999
2.99999 xx2 =
2 = 2 =
x4.00002
4.00002
4.00002
cuja solução
cujacuja
cuja exata
solução
solução
solução exata éé SS=
=
exata
exata
= éé {{S 10, −
10,{10, }}−..2 } .
− 22–2}.
{ 10,
Note
Note que
Note essa
queque pequena
essaessa variação
pequena
pequena em
em dois
variação
variação coefi
em dois
dois cientes,
coeficoefi da
da ordem
cientes,
cientes, da ordem
ordem
de
de 0.025%,
0.025%, acarreta
de 0.025%, uma
acarreta
acarreta variação
umauma enorme
variação
variação na
na solução
enorme
enorme do
do sistema
na solução
solução da
do sistema
sistema da da
ordem de
de 900%.
ordem
ordem de 900%.
900%.
Classifi
Classifi camos
Classifi
camos esses
camos
esses sistemas
esses altamente
sistemas
sistemas sensíveis
altamente
altamente aa variações
sensíveis
sensíveis a variações
variações
Pg. 140
1⎛ k −1

utacional
CAPÍTULO 2 l–ikSOLUÇÃO
lkk ⎝
ik − ∑
= ⎜ aCOMPUTACIONAL
r =1
lir * lrk ⎟DE SISTEMAS DE EQUAÇÕES LINEARES

149
Pg. 141
uma vez que U = LT .
NotePg.que
Imagine essa pequena
agora
143 que essas variação
pequenasem dois coeficientes,
variações são da ordem ade
devidas
0.025%,
erros deagora acarreta tuma variação
arredondamento, enorme naestão
que certamente solução do sistema
presentes ematodosda ordem os
Imagine r = que
r − 2essas pequenas
d variações são devidas
de 900%. 2 2 1
erros de métodos diretos, no
arredondamento,
Classificamos
r1 armazenamento
que certamente
esses sistemas estão
e presentes
manipulação
altamente
dos coefi
ematodos
sensíveis os cientes
variações nos seus
métodosdas equações.
diretos, no t2
Então,
armazenamento nesses ecasos, podemos
manipulação obter
dos coefi soluções
cientes irreais
coeficientes0 =como0 − 0sistemas mal condicionados.
dos sistemas r1
originais,
das equações. Então,
Imagine nesses
agora queuma
casos, vez
podemos
essas queobter
pequenas as soluções são são
soluções
variações obtidas
irreais
devidas a errosemde
sistemas Pg.
arredondamento, 144
simplifiuma cados,
quevez por operações
certamente sucessivas detodos
eliminação ou
dos sistemas originais, que as estão
soluçõespresentes em
são obtidas em os métodos

diretos,cados, r d
no armazenamento e manipulação b ⎤
dos coeficientes
sistemasdecomposição,
simplifi ⎢ 0 rque
1
por inevitavelmente
1
operações acumulam
sucessivas
1
de pequenasdas
⎥ eliminação ou equações.
alterações
Então, nesses casos,
⎢ inevitavelmente d podemos obter soluçõesb ⎥irreais dos sistemas originais,
nos coefi
decomposição, cientes
que
2
das matrizesacumulam
2
simplificadas. 2
pequenas alterações
uma vez que ⎢ as soluções são obtidas em sistemas ⎥ simplificados, por operações
nos coeficientes Pordas
sucessivas ⎢isso,
de é necessário
matrizes
eliminação simplifi
ou tomar
cadas.cuidados
decomposição, ⎥ especiais na resolução
⎢ 0 ri −1 di −1 bi −1 ⎥ inevitavelmente acumulam
que
desses
Por isso,sistemas,
pequenasé necessário
⎢alteraçõesdevido nos0à coeficientes
tomar grande sensibilidade
cuidados especiais danasolução em relação a
resolução
ri di das matrizes
bi ⎥ simplificadas.
variaçõesPor
desses sistemas, nos
devido seus
⎢ isso, coefi
àégrande cientes.
necessário Então,cuidados
tomar
sensibilidade devemos primeiramente
⎥especiais
da solução identifi
na resolução
em relação a car
desses
sistemas, ⎢devido à grande sensibilidade da ⎥
solução em relação a variações
variaçõesonos
sistema de⎢ equações
seus coefi cientes. Então, mal condicionado, de preferência
devemos rprimeiramente
bn ⎥⎦
antescar
identifi de resolver
nos seus ⎣coeficientes. Devemos 0primeiramente identificarcomo:sistema de
o
n
o sistemaode
sistema.
equações Para maltal, podemos recorrer
condicionado,
ti
a algunsantes
de preferência critérios,
de resolver
equaçõesrmal condicionado, de preferência antes de resolver o sistema. Para
o sistema. Para tal, i = ri −
podemos drecorrer
i −1 a alguns critérios, como:
tal, podemos
a) Se orecorrer ri −1 a alguns
determinante dacritérios,
matriz Acomo:for considerado pequeno; ou
se o t
a) Se o determinante
aux
a) Se o=determinante
i
determinante da matriz normalizado de considerado
for considerado
da Amatriz A for A, denotado
pequeno; porou|| det( A
pequeno; , o
ou) ||se
r
for pequeno:
determinante
se o determinante i −1 normalizado
normalizado dedeA,A, denotadopor
denotado por || det( A) ||,,for pequeno:
Pg. 149
for pequeno: det(AA) )| | 
| |det(
O símbolo << det(AA))||||= n n
=
||||det( <<11
<<
(6a)
(6a)
representa
<< || =
det( A) ||
| det( A) |
<<∏∏1 ααi i
muito menor. n i =i1=1 (6a)
or.
αi ∏α i =1
i
n
Pg.
Em 154
Em que α i =
(0)
∑a 2
ij ∀ i ∈ {1, 2,..., n},, e αii mede
mede aa magnitude
magnitude de
X n i =1
Em que α i =157
cada
Pg.
de linha
cadai =1
linha ∑
aij2i e∀deve
i ∈ {1,
ser2,...,
i e deve
n} , e αsobre
calculado
ser calculadoi mede a magnitude
a matriz
sobre original.
a matriz original.
Então,i se
Então,
de cada linha ||sedet (A)
e deve ser ||calculado
|| det(<<1, o sistema
A) ||<< , o éaconsiderado
1sobre sistema émalconsiderado
condicionado.
matriz original.
Na prática, adotamos um limite conservativo, por exemplo, se
Então, ||mal ||condicionado.
sedet (A) det(
|| <A)0.01, , oNasistema
||<< 1consideramos prática, é adotamosconsiderado
conservativamente
um limite
que o sistema
conservativo,
mal condicionado.
A por exemplo,
Na se
prática,e podemos
* X = B é mal condicionado adotamos ) ||<um
|| det( Aadotar 0.01 ,limite
consideramos
as devidas precauções.
conservativamente
conservativo, por exemplo, se que o ) ||<
|| det( A sistema A * X = B é mal
0.01, consideramos
 Os símbolos <<
condicionado
conservativamente queee >>podemos
representam,adotar
respectivamente,
o sistema as X muito
= B menor
A *devidas e muito maior.
precauções.
é mal
b) Se o número
condicionado e podemosde condicionamento
adotar as devidas Cond ( A) for considerado
precauções.
grande,
b) Se o número ou seja:
de condicionamento Cond ( A) for considerado
O símbolo >>
grande, ou seja: A = A
representa
>>
Cond ( ) ∞
* A−1

>> 1 (6b)
muito maior. Cond ( A ) = A ∞ * A−1 >> 1 (6b)
Então, se Cond∞
( A) >> 1 , o sistema é considerado mal
or.
condicionado.
Então, se Cond A >> 1 , o sistema é considerado mal
mal condicionado. Na prática, adotamos um limite
conservativo, por exemplo, se || det( A) ||< 0.01, consideramos
150 CÁLCULO NUMÉRICO COMPUTACIONAL
conservativamente que o sistema * A X =B é mal
condicionado e podemos adotar as devidas precauções. Capítulo 2 – Solução Computacional de S

b) oSenúmero
b) Se o número de condicionamento
de condicionamento Cond
Cond ( A) (A)
for for considerado
considerado
grande, ou
grande, ou seja:
seja:
mbolo >> Capítulo 2 – Solução Computacional de Sistemas de Equações Lineares
esenta Cond ( A )A= norma
A ∞ * infinita
A−1 >>de A, denotada por A , é(6b)
1 (6b) ∞
definida da

seguinte forma: A norma infinita de A, denotada por A
to maior.
Então, seseCond (A)(>>
Cond A )1,>> 1 , o sistema
o sistema éforma:
éseguinte considerado
considerado mal
mal condicionado.
condicionado. || A || , édefinida
n
A norma infinita de A,infinita
A norma denotada
de A,por A ,por
denotada é definida da da seguinte
A ∞ =∞Max ∑ a∞ij   n 
forma:
seguinte forma: 1≤i ≤ n
 j =1  A ∞ = Max ∑ aij 
1≤i ≤ n
 j =1 
 n
e corresponde  ao maior valor entre as somas dos módulos dos
A ∞ = Max ∑ aij  e corresponde ao maior valor entre as somas
1≤elementos
i≤n
 j =1 de  cada linha da matriz A. Também, para efeitos
práticos, podemos estabelecer elementos que,de secada ( A) >da100matriz
Condlinha , então A. Tam
e correspondeeaocorresponde
maiorovalor sistema entre
ao Aas
maior*X = B édos
somas
valor práticos,
módulos
conservativamente
entre as somas podemos estabelecer
dosdos módulos
mal dosque, se Cond
condicionado.
elementos de elementos
cada linhadeda cada
matriz matriz A.
linhaA.daTambém, o sistema
Também,
para efeitos *X =
Apara B é conservativamente
efeitos práticos, m
A dificuldade de aplicação
se (Cond(A)desse último critério está na obtenção
práticos, podemos podemos estabelecer
estabelecer que, se que,
Cond −A
A ) > 100 >, então 100, então o sistema
1 dificuldade de aplicação desse último critéri
do Avalor
* X =da B ématriz inversa
conservativamente
o sistema A * X = B é conservativamente mal condicionado. A , cujo
mal custo
condicionado. é aproximadamente o triplo
do valor
do custo do método de eliminação gaussiana, enquanto da matriz inversa A−1 , cujo custo é aproxim
o primeiro
A aplicação
dificuldadedesse de aplicação desse
docritério
custo último
do
estámétodo critério deestáeliminação
na obtençãogaussiana,do
A dificuldade de critério precisa último
apenas do determinante na obtenção de A, que podemos obter enq
valor da matriz −1inversa A , cujo custo é aproximadamente o triplo do custo do
–1
r da matriz inversa através A do , cujo custo éda
produto critério precisa
aproximadamente apenas
o triplo do determinante de A, qu
método de eliminação gaussiana,diagonal
enquanto noprincipal primeiro critério da matriz triangularizada
precisa apenas
o do método de eliminação gaussiana, através
enquantodo produto o primeiro da diagonal principal da matri
do determinante
(no método de de A, que
Gauss, podemos
det( Aobter
) = ∏através aii , emdo que produto da diagonal
os aii são n elementos da
precisa apenas do determinante de A, que podemos obter
principal da matriz triangularizada (no (no
métodométodoi =1 dede Gauss, det( A) = ∏ aii ,,em
Gauss, em que os aii
do produto dadiagonal diagonalda principal
matriz da
A matriz triangularizada
triangularizada) ou através do
i =1 produto da
que os aii são elementos da diagonal da matriz A triangularizada) ou através
diagonal
n
principal da diagonal
matriz da matriz A de
L decomposta triangularizada) ou atravé
do produto
todo de Gauss, det(da = ∏ aii ,principal
A)diagonal em que da
os matriz
a são Lelementos
decomposta da deAA(no
(nométodo
método LU, de
n diagonal ii
principal da matriz L decomposta de A (n
Crout, det( A) = ∏ lii * 1,,em
i =1
LU, deCrout, emque queososlii lsão são elementos
nelementos da diagonal
da diagonal de de L
al da matriz A triangularizada) ouCrout,
através do produto
ii
da
L e ada
al principal diagonal
matriz deL U
i =1
é composta de
decomposta de valores
A (no
det( A ) = ∏
unitários).
método
lii
LU,
* 1 ,
de
em que os l ii
são elementos
e a diagonal
Uma desvantagem de U desseé composta
cálculo de do valores
i =
determinante
1 unitários).
sobre a matriz
e a diagonal de U é composta de valores unitários
n
det( A) = ∏
simplificada Umaos
lii * 1 , em pelas
que desvantagem
lii são elementos
operações elementares desse da cálculo do
dediagonal
eliminação, deoudeterminante
Ldecomposição, ésobre a
que
i =1 essa forma final simplificada já sofreu
matriz simplificada pelas operações Uma desvantagem
o acúmulo de erros de
elementares desse de cálculo
arredonda-
eliminação, do deter
gonal demento
U é composta
sucessivos,
ou de
nãovalores
decomposição, é exataéeunitários).
matriz
pode
que essasimplificada
gerar alguma final pelas
forma inconsistência operações
em sistemas
simplificada elementare
já sofreu o
muito mal condicionados
Uma desvantagem desse cálculo ou singulares.
doou Por exemplo,
decomposição,
determinante em
é
sobre matrizes
que a essa singulares,
forma final simplifi
acúmulo de erros de arredondamento sucessivos, não é exata e pode
podemos
simplificada gerar pelasavaliar um determinante
operações acúmulo
elementares residual, de diferente
erros
desistemas
eliminação, de zero, gerando um
de muito
arredondamento sucessivos, n
alguma inconsistência em
determinante não nulo inconsistente para a matriz original singular. mal condicionados
Logo,
omposição, é ou que essa forma Por gerar
finalexemplo, alguma
simplificada inconsistência
já sofreu osingulares, em sistemas muito m
precisamossingulares.
considerar determinantes em matrizes
residuais como nulos, como fizemos podemos
lo de errosnode arredondamento
avaliardeum
algoritmo determinante
retrossubstituições ou singulares.
sucessivos, não é exata
residual,
anterior, que Por
diferente
leva exemplo,
e pode de zero,
em conta emgerando
a possibili- matrizes umsingu
lguma inconsistência
dade de uma das
determinanteemlinhassistemas
nãoda nulo avaliar
muito
matriz sermal umcondicionados
dependente
inconsistente determinante
para dasademais.
matriz residual,
originaldiferente
singular.de z
gulares. Por exemplo,Logo, precisamosem matrizes determinante
singulares,
considerar determinantesnão
podemosnulo inconsistente
residuais como para a matriz
nulos,
um determinante comoresidual,
fizemos no diferente Logo,
algoritmo dede precisamos
zero, gerando
retrosubtituições considerar
um anterior, determinantes
que leva emresid
tacional
tacional
utacional
tacional
utacional
tacional
tacional
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 151

Exemplo
Exemplo 2.8:
Exemplo 2.8:avalie
avalie o condicionamento
o condicionamento do sistema
do sistema
Exemplo 2.8:
Exemplo 2.8: avalie
2.8: avalie o
avalie o condicionamento
o condicionamento do
condicionamento do sistema
do sistema
sistema
xx1 ++ 3x =
+ 333xxx2222 ==
44
 xx11111 + 22 = 44
xxx111 ++ 3.00001
+ 3.00001xx222 =
3.00001 x =
=
4.00001
4.00001
4.00001
 x111 + 3.00001x222 = 4.00001
Solução:
Solução:
Solução:
Solução:
Solução:
Solução:
Para
Para
Para tal, tal,
tal, temos
temos
temos: de:
de:
Para
Para
Para tal, tal,
tal, temos temos
temos de: de:
de:
a) Verificar
Verificar se se |||||| det( A)) ||||<< 1 :::
a)
a) Verificar
a) Verificar se
se det(
det( A A) ||<< << 1
11::::
a) Verificar se 1
a)
a) Verificar
Verificar se |||||| det
se det((A)
det( A)) ||||||<<
A <<
<< 1
|| det( A ) | = 0.00001
|| det(
det (A)
det(
det( A))) |||| ==
A
A =
0.00001
= 0.00001
0.00001
0.00001
αα = 12222 +
2
3 2222 == 10
2
α1111 ==== 1
α 12 +
1
12 + 3
+3
+ 32 == 10
3 = 10
10
102
1
1
αα 2 = = 112222 +
+ (3.00001) 22 ≅ 10
α 222 =
α = 12 +
1 (3.00001) 222 ≅
(3.00001)
+ (3.00001) ≅ 10
≅ 10
2
2 = 1 + (3.00001) ≅ 10 10
00..00001
00001
||det( A )|| = 0 0..00001
00001 =10 =10
-6
=10-6-6-6-6
||det(
||det(A
||det( A )|| =
A )||
)|| = 010
=
.00001
10 =10
=10
||det(A )|| = 10 10 10 10 =10
-6
10
10 −−10
10
Se ||det(
Se A )|| = 10 −66 << 1 → mal condicionado
6
Se
Se
Se
Se
||det(
||det(A
||det(
Se ||det(A )|| = 10 A )|| =
A )||
)|| = 10
= 10−−−666 <<
10 << 111 →
<<
<< 1 → mal condicionado

→mal


mal
mal
mal
condicionado
malcondicionado
condicionado
condicionado
condicionado
(conservativamente,
(conservativamente, consideraremos
(conservativamente, consideraremos
consideraremos <<1
<<1 como
<<1 como
como <0.01)
<0.01)
<0.01) < 0.01)
(conservativamente,
(conservativamente, consideraremos
consideraremos <<1 <<1 como
como <0.01)
(conservativamente,
(conservativamente, consideraremos <<1 como <0.01)
consideraremos <<1 como <0.01)
b)
b)Ou
b) Ou verificar
Ou verificar se
verificar se Cond
se Cond ((( AAA))) >>
>> 1:
>>1:111::::
b)
b) Ou
b) Ou
Ou verificar
verificar
verificar
b) Ou verificar
se
se
se Cond
33se 
(
Cond(A)
Cond A )>>>> :
111
A =  3 
A=
A
A = 111 3.00001
=
3 

11 3.00001
3.00001
 3.00001
|| A || = 1| + | 3.00001 = 4.0001 ≅ 4
|| A A ||||||∞∞∞∞ =
|||| A 1| +
1|
=
=
1| + 3.00001 =
+ ||| 3.00001
3.00001 4.0001 ≅
4.0001
=
=
4.0001 ≅ 444



A
A norma
A norma infinita || A ||||∞ ééé ooo valor máximo entre as
as somas dos
A
A
A norma infinita
norma
norma
norma
norma
infinita
infinita ||||||||A
infinita
infinita
infinita A é é valor
AA||||∞∞∞||∞éé o
o
o ovalor
valor máximo
máximo
máximo
valor
valor
valor máximo
máximo
máximo
entre
entre
entre as
as
entre
entre
entre as
as
somas
somas
somas
as dos
dos
dos
somas
somas
somas dosdos
dos
módulos
módulos dos
dos
módulos dos
módulos coeficientes
coeficientes
doscoeficientes
coeficientesde
∞∞ de
de cada
cada
decada linha
linha
cadalinha da
da
linhada matriz.
matriz.
damatriz.
matriz.
módulos
módulos dos coeficientes de cada linha da matriz.
módulos dos
dos coeficientes
coeficientes de de cada
cada linha
linha da
da matriz.
matriz.
300000.9999980346 −299999.9999980346
A
A
−1
−−1111 =

=  300000.9999980346 −
 300000.9999980346
300000.9999980346 −
−299999.9999980346
299999.9999980346
299999.9999980346
A − =
A−1 = −− −99999.9999993449
99999.9999993449 99999.9999993449 
99999.9999993449 99999.9999993449
99999.9999993449 
 −99999.9999993449 99999.9999993449 
(obtida em computador com 16 dígitos significativos)
(obtida
(obtida em
(obtida
(obtida
(obtida emcomputador
em
em
em
computador
computador
computador
com
com
computador
com
com
16
16 dígitos
com
16
16
dígitos
dígitos
dígitos
significativos)
significativos)
16 dígitos significativos)
significativos)
significativos)
(obtida
−1 em computador com 16 dígitos significativos)
|||| A −−11 || ≅ 300001| + | 300000 ≅ 600001
A−−−111 ||||||∞∞∞∞ ≅
A
|||| A ≅ 300001| +
≅ 300001|
300001| + 300000 ≅
+ ||| 300000
300000 ≅ 600001
≅ 600001
600001
Cond (((( A
A )) == 4.00001

* 600001 ≅ 2.4 * 10 6
∞ 6
Cond
A )) = 600001 ≅
66
Cond
Cond A = 4.00001
4.00001 ***** 600001
4.00001 600001 ≅ 2.4
≅ 2.4 *****10
2.4 1066
10
Se
Se Cond
Se Cond ((( AAA))) ≅≅≅ 2.4
2.4 * 10 666 >> 1 ⇒ confirma o mal condicionamento
***10
6
>> ⇒ confirma
>> 111 ⇒ confirmao oomal
malcondicionamento
condicionamento
Se
Se
Se Cond ( A ) ≅ 2.4 ** 1066 >>
Cond 2.4 10 ⇒

confirma
confirma
confirma o
o
mal
mal
mal
condicionamento
condicionamento
condicionamento
(conservativamente, consideraremos >>1 como >100)
(conservativamente,
(conservativamente, consideraremos
consideraremos >>1
>>1 como
como >100)
>100)
(conservativamente,
(conservativamente, consideraremos >>1 como >100)
(conservativamente, consideraremos
consideraremos >>1
>>1 como
como >100)
>100)
−1  300000.9999980346 −299999.9999980346 
AA−1 == 
−−99999.9999993449 99999.9999993449 
99999.9999993449 99999.9999993449
152 (obtida em
(obtida em computador
computador com
com 16
16 dígitos CÁLCULO NUMÉRICO COMPUTACIONAL
dígitos significativos)
significativos)
−1
|||| AA−1 ||||∞∞ ≅≅ 300001|
300001| ++ || 300000
300000 ≅≅ 600001
600001
Cond ( AA ) == 4.00001
Cond 600001 ≅≅ 2.4
4.00001**600001 1066
2.4**10

Se Cond ( AA )≅≅ 2.4


Se Cond
Se 2.4**10 >>11 ⇒
6
106 >> confirmaooomal
confirma
⇒ confirma malcondicionamento
mal condicionamento
condicionamento
(conservativamente,
(conservativamente, consideraremos
(conservativamente, consideraremos
consideraremos >>1 como
>>1 como
>>1 como >100) >100)
>100)

Depois de identificar um sistema como mal condicionado, é muito


importante minimizar os efeitos de alterações nos seus coeficientes, então
recomendamos:

a) Usar um método de solução que não altere a forma original das


equações, como é o caso dos métodos iterativos, que veremos mais
adiante; porém, os métodos iterativos nem sempre convergem
para a solução.
b) Adotar algoritmos com o menor número de operações aritméticas
possível, consequentemente menor acúmulo de arredondamentos.
Sugerimos a aplicação de métodos diretos como a eliminação
gaussiana ou a decomposição LU, uma vez que têm o menor
número total de operações entre os métodos diretos apresentados,
da ordem de (O(n3/3)). Naturalmente, recomendamos que cada
algoritmo seja internamente otimizado, e use o mínimo de operações
aritméticas, como os que apresentamos neste livro.
c) Usar algum processo de pivotamento, indispensável sempre que
surgirem zeros nas posições dos pivôs durante a aplicação das
operações sucessivas de eliminação ou decomposição. No entanto,
nos casos específicos de sistemas mal condicionados, o processo de
pivotação também é indispensável para minimizar a propagação
dos efeitos dos arredondamentos.
d) Utilizar a precisão máxima disponível na implementação dos cál-
culos envolvidos na resolução do sistema. É interessante testar o
sistema de equações calculando resultados com precisões diferentes,
como simples e dupla (por exemplo em C: float e double), para
fazer uma comparação entre os resultados e verificar se os erros
decorrentes de arredondamentos sucessivos são significativos
ou não.
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 153

Em sistemas de equações mal condicionados, temos uma característica


peculiar na avaliação dos resíduos das equações, ou seja, nem sempre a
solução mais próxima da exata gera os menores resíduos.
exemplo, suponha Porduas
or exemplo, suponha soluções
exemplo,
duas aproximadas
suponha
soluções diferentes,
duas soluções
aproximadas aproximadas diferentes, S1 e S2,
diferentes,
a o sistema para o sistema apresentado
apresentado no no
Exemplo Exemplo 2.8,
no2.8,
para o sistema apresentado Exemplo 2.8,
 x1 + 3 x2 = 4 4
  x1 + 3 x2 =
 x1 +x3.00001 x2 =4.00001
1 + 3.00001x2 =4.00001
ndo os resíduos
ulando {R1 ,{R
Calculando
os resíduos dessas duas
2 } resíduos
Ros {R , Requações,
} dessas temos
duas equações,
temos temos
1 , R2 } dessas 1duas
2 equações,
 R1 =R( x=1+( x31 x+2 )3−x24) − 4
  1
 R2= ( x1 +( x3.00001 x2 ) − 4.00001
 R2 = 1 + 3.00001x2 ) − 4.00001

=S{ =4,{ 04,} 0⇒ Resíduos de de S =S{ =0,{ 0.00001 }e e


1 ⇒ SResíduos
}Para = {4, 0} ⇒ 1Resíduos1 0,de0.00001
S1 = {0,}0.00001} e
1
=S{1.5,
= 1} ⇒ Resíduos de S = {0.5, 0.5}
2 {1.5, 1} ⇒ Resíduos de S 2 = {0.5, 0.5}
2
Para S2 = {1.5, 1} ⇒ Resíduos de S2 = {0.5, 0.5}
rentemente, pela
Aparentemente, avaliação
pela avaliação dosdos resíduos
resíduos dasdas
equações,
equações,
Aparentemente, pela avaliação dos resíduos das equações, a solução
mais próxima
ão mais próxima da exata
mais próxima é
da exata S , pois
1é S , épois
da exata Sgera
, gera
pois menores
menores
gera resíduos;
menores resíduos;
resíduos; porém, sabendo que
1 1 
bendo que
sabendo que a solução
a solução exata é
exataexata
a solução S = {
é S =é{1,S 1}, 1, 1 }, percebemos
= {percebemos que a
que aS2 está mais próxima
que a solução
1, 1 }, percebemos
está mais próxima
da exata da
do
S está mais próxima da exata exata
que S 1
. do que
do que S .
1 S .
2 1

ímos queque Concluímos


a avaliação que a das
dos resíduos avaliação dos resíduos
equações de um das equações de um sistema
ncluímos a avaliação
não pode ser dos resíduos
generalizada das
como equações de um
critério para análise da proximidade de
aema
nãonão
pode ser ser
pode generalizada como
generalizada critério
como para
critério análise
para análise
uma solução em relação ao seu valor exato.
ximidade de uma
proximidade de uma solução em em
solução relação ao seu
relação valor
ao seu exato.
valor exato.

Ainda sobre os métodos diretos, observamos que:


da sobre os métodos
Ainda sobre os métodos diretos, observamos
diretos, que:
a) Em sistemas deobservamos que: que relacionam incógnitas com
equações lineares
Em grandezas delineares
magnitudes diferentes, como metros e milímetros,
a) Emsistemas
sistemasde deequações
equações linearesquequerelacionam
relacionam
incógnitas com podemdeexistir
grandezas coeficientes
magnitudes também
diferentes, com magnitudes bastante
como
incógnitas com grandezas
diferentes,de magnitudes
por isso também diferentes, como o uso de processos
recomendamos
metros e milímetros,
metros e milímetros, podem existir coeficientes também
podem existir coeficientes também
de pivotação.
comcom
magnitudes bastante
magnitudes diferentes,
bastante porpor
diferentes, issoisso
também
também
recomendamos o uso de processos de pivotação.
recomendamos o uso de processos de pivotação.
Todos os métodos
b) Todos os métodosdiretos, para
diretos, resolução
para de de
resolução sistemas de de
sistemas
equações lineares,
equações nãonão
lineares, apresentam erros
apresentam de de
erros truncamento,
truncamento,
Capítulo 2 – Solução Computacional de Sistemas de Equações Lineares

154 CÁLCULO NUMÉRICO COMPUTACIONAL

Capítulo 2 – Solução Computacional de Sistemas de Equaçõe


mais dígitos exatos (por exemplo, com o dobro
b) Todos os métodos diretos, para resolução de sistemas de equações
nificativos, se disponível).
lineares, não apresentam erros de truncamento, pois são métodos
teoricamente
solução com exatos.exatos
mais dígitos Esses têm
(porapenas erroscom
exemplo, de arredondamento
o dobro
acumulados, que podemos avaliar comparando a solução aproxi-
de dígitos significativos, se disponível).
mada obtida
ineares por Métodos com outra solução com mais dígitos exatos (por
Iterativos
exemplo, com o dobro de dígitos significativos, se disponível).

a de equações
Solução seguir,lineares
de ASistemas vamos A *por
apresentar
Lineares = B tiver
Xmétodos algumas
alternativos
Métodos para obter soluções aproximadas
Iterativos
de sistemas de equações com grande número de incógnitas, mas controlando o
s, como: aerroordem n elevada (n é o número de
de truncamento.
Quando o sistema
os coeficientes A possuir de equações
grandelineares A * X = B tiver algumas
quantidade
acterísticas especiais, como: a ordem n elevada (n é o número de
atriz esparsa); e os coeficientes puderem ser
uações); 2.2
a matrizSOLUÇÃO DE SISTEMAS
dos coeficientes A possuir LINEARES
grande quantidade POR
ma lei de formação;MÉTODOS em geral, será
ITERATIVOSmais eficiente
elementos nulos (matriz esparsa); e os coeficientes puderem ser
ados através de alguma lei de formação;sem
m método iterativo (repetitivo), operar
em geral, será mais eficiente
ulos, desde Quando
que a o sistema de equações
convergência seja lineares A * X = B tiver algumas
possível.
olvê-lo através de um método iterativo (repetitivo), sem operar
características especiais, como: a ordem n elevada (n é o número de equa-
m os coeficientes nulos,
ções); a matriz desde queAapossuir
dos coeficientes convergência seja possível.
grande quantidade de elementos
nulos (matriz esparsa); e os coeficientes puderem ser gerados através de
alguma lei de formação; em geral, será mais eficiente resolvê-lo através de
e um método
um métododireto, como
iterativo o do método
(repetitivo), de com os coeficientes nulos,
sem operar
aSeum
umsistema
algoritmo
desde a de
que com um método
matriz
convergência sejadireto,
de possível.como o do método de
coeficientes
Gauss, for aplicado a um sistema com matriz de coeficientes
erações aritméticas desnecessárias serão
esparsa, muitas operações aritméticas desnecessárias serão
emplo, na manipulação de zeros com outros
empregadas, Se
porumexemplo,
algoritmona
demanipulação de zeros
um método direto, comocom outros de Gauss,
o do método
e sejamforevitadas pelo próprio algoritmo,
aplicado a um sistema com matriz de coeficientes esparsa, muitas
zeros, a menos que sejam evitadas pelo próprio algoritmo,
operações aritméticas desnecessárias serão empregadas, por exemplo, na
como em 2.1.6.
manipulação de zeros com outros zeros, a menos que sejam evitadas pelo
próprio algoritmo, como na seção 2.1.6.

erativa
Umade solução = B consiste
A * X iterativa de A *em
X = tomar
B consisteumaem tomar uma
Uma (0) solução iterativa de A * X = B consiste em tomar uma solução
ução inicial
stimada de XXalguma (estimada
forma)de alguma
para forma)
a para
solução para a solução
inicial (0)
(estimada de alguma forma) a solução S (= {x1, x( k2), x∞ 3, ..., xn}
{ x ,
curada x
1 2 e, x ,..., x }
3 construir
procuradan procurada
uma uma
e construir e construir uma sequência
sequência X = { xi } de soluções
sequência (k ) (k )

X k)
= { xaproximadas
i }k = 0
k =0
soluçõestalaproximadas
que, no limite: tal que, no limite:
das tal que, no limite:
lim X ( k ) = S ,, se
seessa
essa sequência
sequência for convergente.
for convergente.
e essa sequência for convergente.
k →∞

Observe que as soluções de sistemas de equações lineares obtidas


oluções de sistemas de equações lineares obtidas
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 155
Então, a questão fundamental é como gerar essa sequência convergente.
questão fundamental é como
tão fundamental é como gerar gerar essa sequência
essa sequência convergente.
convergente.
Observe que as soluções Cálculo de sistemas
Numérico de equações lineares obtidas por
Computacional
omputacional
mputacional métodos Emiterativos A * X = Bsão , tomando
soluções aproximadas a matriz A ea particionando-a
cada iteração k (contador na forma de
mX A=*BX, = B , tomando
tomando repetições),
A= Ca+matriz E , acom matriz
portanto nãoAtême singular,
ACe particionando-a particionando-a
erros de truncamento,
temos: na forma
na forma além de erros de arredon-
m stão
estão
,estão
stão
amentalcom
C não fundamental
fundamental
fundamental
fundamentalnão damento;
comosingular,
Césingular, é écomo
éécomo
gerar como mas, gerar
essatemos:
como
temos: gerar
gerar nesse
geraressa
sequência essa
essa caso,
sequência
sequência
essasequência os
sequência
convergente. arredondamentos
convergente.
convergente.
convergente.
convergente. não são acumulados, uma
Então, a questão fundamental é co
uestão
estão fundamental
fundamental é écomo
como gerar
gerar essa
essa sequência
sequência convergente.
convergente.
estão fundamental (vez
CEntão, Eé)como
+que
Então, os
* Xcoeficientes
a aquestão
= gerar
questãoB ⇒ essa C das X=equações
*sequência
fundamental
fundamental B é−écomo * não
convergente.
Ecomo ⇒
X gerarsão essa
=
gerar Xalterados
essa C −1
( Bao−longo
sequência
sequência
* X )do processo.
convergente.(7)
E convergente.
=X =
⇒ C⇒ B * X= C *BX=− EB* −X E⇒ *= X X⇒ C ( B − E
= X − 1 C −1
( * X ) ) (7) (7)
B − E * X
= = , tomando
, tomando Então,
a a amatriz
matriz questão fundamental
e eparticionando-a
particionando-a é como gerar naessaforma
na sequência convergente.
X
omando
* X B
*XX==BB, ,tomando B tomando
a matriz aEntão,
A amatriz
ematriz A A
aplicando
AAeeparticionando-a
particionando-a uma
particionando-a na solução
forma naforma
na inicial
formaestimada
forma Em A * X = B , tomando a m
*XX==BB, tomando
tão, X = B , ,tomando
aplicando
tomando (0) uma
aaa(0)
matriz
matriz
matriz
solução
AAAeeeparticionando-a
particionando-a
particionando-a
inicial (0) estimada
nanaforma
na forma
forma
m
om
m*m
aplicando
om
m
CC
singular,C
CC nãonão
não
Cnão
não
não
singular,
singular,
uma
singular,
singular,
temos:
X
singular,
singular,
= {
solução
Em
Em Em
x temos:
1 A
temos:
temos:
temos:
,
temos:
x
temos:A(0)
*inicial
, Xx =
A*2*XX==3B,Btomando
(0)
, B
L ,estimada
tomando
, tomando
x n } no lado a
a matriz
a matriz direito
matriz A eda eq.
A e particionando-a
A e particionando-a (7),
particionando-a
A= C +na Etemos:
, comna
forma Ana=forma
C forma
não
C + singular,
E, t
m
,xx2 ,L
(0) C
(0) não
, x3, x,L}A
(0) (0) singular,
,=xno
com
(0)
A= C−CC} no
lado
++Enão
temos:
lado
direito
E, com, singular,
com direito
CCnãoda eq. da
não−singular,
1 XX temos:
eq.
(7),
singular, (7),
temos: temos:
temos: (0)
temos:
1(
−(1()
1) )
n
=
= XB=⇒ ⇒ =X=*==XBBBB −−−EEEEX ⇒=⇒−=
( −1−
1−11BB
(
BB−(1)
−−−EEEE**C*X ( )B) − E * X(7)
)(7) (7) ) (C + E ) * X =
3
⇒BCC C *X X ***X XXC
n
=
=BBB B ⇒ −C**E *X ⇒= *X ⇒=⇒ = XX− E
B CCCC* −X = X −X
*XX (7)
(7) B ⇒ C * X= B − E *
== B ⇒ ⇒ C C * *XX = = B B− − E E * *XX ⇒ = ⇒= X X C C −1( ( B B − −E E X X ) (7)
(7)
(0) ( B − E * X )
E(B ) X* X* =X)= BB−−EE* X* X ⇒
= B ⇒ C * X=(1) B − E * X−1 ⇒
*( B
= X C * *
(7)
(XC( C+= XCE) *) X X−⇒ XX CC ( B ( B−−EE* X* X) (7))
(1)
= +E − 1
XC= −= B B* ⇒ EC
(0) *C =⇒= −1− 1
(7)
(7)
doaplicando
aplicando
,aplicando
aplicando
uma solução umauma
fazendo
umaumainicialsolução
solução
solução
solução
X (0)
= inicial
inicial
inicial e
inicialestimada
estimada
X (1)
estimada
estimada
reaplicando-o
estimada no lado direito da eq. (7), obtemos
Então, aplicando uma sol
o, aplicando
aplicando
aplicando uma
uma
uma solução
solução
(2)soluçãono
inicial
inicial
inicial estimada
estimada
estimada
=e,,no
x,x,3x}x(0)
))(0) e
,,reaplicando-o } } }
reaplicando-o
um no no xlado
lado e direito
assim
no direito
lado lado
dada eq.
sucessivamente,
direito direito
eq. (7),
(7),
da(7),eq. da
temos:
temos: eq. (7),
resultando
(7), obtemos obtemos em uma (0)sequência xx(k(0)+1)} no lado
(1) (0)

{
X
nonolado lado direito
direito da da eq.
eq.uma (7), temos:
temos:
(0) (0) (0)
,,lado
x,x,nxx(0) direito Então,
Então, da eq. aplicando
aplicando(7), temos: uma solução
solução inicial
inicial estimada
estimada
(1)
X,(0) (0)(0)L L (0)(0)
Então, aplicando uma solução inicial estimada
, x, nx(0)n } }no =
L L X (0)
x , x (0)
, x (0)
, ,
n0) 333 (0) nnn(0)
nolado ladodireito direito da daeq. eq.em (7),
(7),uma
temos:
temos: L
), x , 3x(0)3 ,L ,L
} no lado (0) direito da eq. (7), temos:
1 2 3 n
m assim , sucessivamente, sucessivamente,
, xn de soluções resultando resultando
aproximadas: em (0)uma sequência sequência (k +1) x(k +1)
XX(1)(1)=={ x{1−x11−1, x, 2x2 , x,3x3 ,L
S , x, xn} }no lado direito da eq. (7), temos: x
x3 ,L no lado (0)direito da (0)eq. (7), temos:
(0)(0) (0)(0) (0)
,L (0)
no lado direito da eq. (7), temos:
−1(−(1(BB ))
( ( B−−EE* X* X(0))) ) (2) −1
es = XS(1)aproximadas:C= −1=
= X
= XX (1)(1) CC−1−1(0)
− BB)−−−−EEEE***X*XXX(0) (0)
(0)(0) n
aproximadas: XX(1) CC−1( B = X (1) C −1
X B (1)EC *CX
= =
C (B − E * X ) = X (1) C −1* ( B − E * X(0)(0) )
(1) (0)(0)
=
(1)
XX(1) CC−1 ( B( B−−EE* X *X ) )
X
= =
XXX eeeereaplicando-o
reaplicando-o
=Xplicando-o
(1)(1)
(1)(1)
= X no =
reaplicando-o
reaplicando-o
(2)
=XX eereaplicando-o
C * (no
(2)
Xlado

reaplicando-o(0)
(1)(1)
1
Bno
no
C no −lado
−1
direito
no nolado
(
Elado
*lado
lado
B
*X
lado
−da
E
(1)
)
direito
direito
direito
*X
eq.
direito
(1)
direito
direito
=
) da
da
(7),
X da
da
da eq.
eq.
eq.
eq.−(7),
obtemos
daeq.
(3) (7),
1(7),
(7),
Ceq.(7),(
obtemos
* (7),
B−
obtemos
obtemos
obtemos
obtemos
obtemos
E * X(k(k(2) )fazendo X (0) = X (1) e reaplicando-o
m
= m e
(1)
reaplicando-o
sucessivamente,
sucessivamente,
fazendo no
resultando
resultando
Xresultando
1=
lado
X(1)(1)uma direito
em
em
(2) uma
ereaplicando-o da
uma eq.
umasequência
reaplicando-o (7),
sequência obtemos
xdireito
xxdireito (8)
xno +1)lado +1) da eq.
e(7), obtemos um
X (1) +1)+1)
E(XB )uma
m
im sucessivamente,
sucessivamente, resultando
Xfazendo ) emem
reaplicando-o sequência
sequência x(k(k+1)
(kno lado
ivamente, resultando
fazendo −em
* (resultando
= −e(2) sequência no lado x(kx(kdireito
um dadaeq.
x(2) eq. (7),
assim
(7), obtemos
sucessivamente,
obtemos
(0)
−=
=
(0)
XC(3)−1 X X
C *X E *X
mimsucessivamente,
sucessivamente,
= (3)
Bresultando *X em
em uma
umasequência
sequência (k
+1)
+1)
SSm sucessivamente,
X(2)xe(2) resultando em uma sequência x sequência
(8)uma +1)
aproximadas:
aproximadas:
aproximadas:
aproximadas:
madas: um
um assim
x(2)e eassim sucessivamente,
assim sucessivamente,
sucessivamente, resultandoM em uma
(8)
resultando
resultando em em
de de vetores:
umasequência
sequência
soluções S aproximadas:
x(kx(k+1)+1)
SSSaproximadas:
aproximadas:
aproximadas: M = X ( k +1)
C *(B − E * X )
−1 (k )
de
de soluções
soluções M S Saproximadas:
aproximadas:
1*−*(1(*C
(B)B−B−−−*E−EEEB*E**X*X−X*XXE(1)(1))(1))*)X
( )
X(XB
−−1−
=−=
(2)
(2) 1−11 BB−−
1− (1)(1)
1X
( kX
( )
(C
k +C EE*X
* X((1)
(2)
=
X=
(2) 1)
= −C
(1) (k ) (2)
= C −1
−1* (* B ( ))) (2)(2) −1−1
(2) −1 * *(1)
X +1) C= X*X X ECCC*C−X k)
B X
= =
*(B − E * X
(2)(2)
= (2)
XX CC * (*B( B− −EE* X *X ) )
X(3)(3) C
=
= em
−1X
C=
= X((3)(3)que
− C C−−1−

XX(3) CC−1* (*B


(
1−*1(* BB
1−*11 *(2)
(
B B)
− − E E X
−−EE* *XX(2)(2) X(2)
(2)(2)
)
(2) =
) ) = (1)(1)
X (3) C −1
=
C * ( (B − E * X (2))) ) (3)(3) S −=1−1{ X
X (3) X*X B CC*−X
E * *
== (3)(3)
B−−EE* X *X
(8)( k ) ∞ (2) (8)
(8)
(8)
(8)
= X
MM = =
XX CC (
* (*B B − }

E E* X
* X )(8))
(8)
(2)
(8)
MkM) ∞X ( k )
M (8) (8)
k =0
M{ } (8) ∞
( k (+k1)+1)S = −{ S (M= }−−k−=−E0EEE**X**XkXX=((k0(k()k(k)k())))k)))
1−*(1(*(BB
1−X
= C=
X−=
= =X*((k (+Bk+1)+1)−
1X( k(+k1)
( k +1) CCC −*11 *(M
C*−−1X B
k )B
) =X ( k +1) C −1
−1 * (* B (B − E * X ))dada ) ( k +( k1)+1)na −eq.
X X 1) E M M
= X= X C a* (sequência
CC
Se B − − E E X X
−1 (8) for convergente, então existe:
( k +1) * *
= ( k )
CC1 * (*B( B− −EE* X
*X ) )
X
= X=
X ( k )( k )
a sequência
quência dada dadaeq.
na(8)
eq.for
(8)convergente,
for convergente, então existe:
Se na
a sequência dada na eq. (8)
limfor
então existe:
X ( kconvergente,
+1)
= lim X ( k ) então existe:
em que (9)
} {{{{{ }}}
∞∞
{
k →∞ k →∞

{
∞∞
( k=+=
em que

(9) (9)
((k(kk(+)(k)1)
k))
S =emlimque
SSSS=1)=X=XXXlim
lim(k ) =∞0=∞lim
(k ) X (k ) S=
X X = 0S=k=→∞
kS
Aplicando
k →∞ XX((kk()k)kk→∞
S = X o limite { }}}
)X
k0=00 (9)
k=k=
∞ k →∞
a ambos os lados
( k )( k ) da eq. (8), temos:
{{ }}
k =k0= 0 ∞∞
k =0 S S= = XX
o o limite
imite a ambos a ambos os lados os lados da eq. da(8), eq.temos: (8), temos: k =k0=0
equência
quência
equência
quência
dada dada
na dada dada
dada
dada
eq. (8)na
Aplicando na na na
na eq.
eq.
foreq. eq.
eq. (8)
(8)
(8)
(8)
convergente,
o(8) forfor
for
limite for convergente,
convergente,
convergente,
convergente,
aconvergente,
ambos então os lados então
então
então
existe: então
da eq.existe:
existe:
existe:
existe:
(8), temos: Se a sequência dada na eq
quência
equência
equência dada
dada na na
((k(kSe
Se
eq. eq. (8)
(8)
a1)=asequência
for
sequência
forconvergente,
for convergente,(
lim X
dada dada
= ( k +1)
k →∞ na naeq. )
Centão
−então
1
eq.(8)
B −existe:
então
(8)for
Eexiste:
existe:
* lim X
forconvergente,
(k )
convergente, (10)
entãoexiste:
então existe:
( ( ) )
k →∞
k(+(1)
(9) (9)
k1)++
X ( k +X
=
1) (lim
lim +lim
=klim 1) X
lim =XXX X
+ (+−kk1)
1)1) = ==
lim
C −1 XX
lim
lim
−lim XBX
( (kk()(k)k))
− E (k ) X (k )
* lim (10) (9) (9)(9) (10) lim X ( k +1
lim lim
k →∞ k →∞ lim lim
kk→∞k→∞ →∞
kkX
k→∞
C
→∞
k +
X( k +1) ==lim
( ( k1)+ B
1) E
klim
k→∞k→∞
k→∞X*
→∞
lim
( k (
) k )
X( k )k →∞ k →∞X (10) (9)(9) k →∞

limXX( k )( k ) (9)
→∞
limk →∞ Xk →∞ = lim k →∞kX
→∞

imite
limite Aplicando
k →∞
a(8),
k →∞
eq. (9) na eq.
limlimXX( k +( k1)+1)= =lim
(10),k →∞ temos: Aplicando o limite a(9) (9)
limiteaaaos
limite aambos
ambos
ambos
ambos os
osos
oslados lados
lados
lados dadada
da eq. eq.
eq.eq. (8),
(8),
(8),
(8), temos:
temos:
temos:
temos: ambos os la
oambos lados da eq. temos: k →∞ k →∞
k →∞
limite
limite a aambos
ambosAplicando os os lados a eq.
lados da(9)
da eq.na
eq. eq.
(8),(8), (10),
temos:
temos: temos:
o limite
a eq.
q. (9) na eq. a(9) ambos
na (10),
Aplicando eq. os (10),
temos: lados temos: da eq. (8), temos:
Aplicando oolimite
limitea aambos ambos( kos oslados ladosda daeq. eq.(8), (8),temos:
temos:−1
(11) ( k +1)
m =
−X
( k +1) lim
lim
lim
lim
1 X
−C =
X
−1X
=
lim
==
X(
((kk(+(k+k1)1)
(*B
→∞
+−
(((( ( )
+1) CC−1−1BB
+1)1)E C*(C klim 1−1B X − (−
kE
B−−E−(1 )))) )
X1) ( k +1) −1−1C −1 * B − C −1 * E( k(*)klim
+=
)E
E
* lim
* lim
* lim
* lim X
−X X ( k()k)) k →∞
X +1) ⇒ (1 + C −1 * E ) * lim X ( k +1) =
1 X( k ()k )( k +1) 1 (10)
(10)(10)
(10)
(10) (11)
k →∞
C * B (11)
lim X = C−
( ) (11)
+−1) ( k +−1) −1
1 −1
− = = (+ 1 +C
B+B−C−EE** lim =
C ⇒
k(limkk1) ) lim
C
B −k →∞ B
C * E lim C* lim
→∞ E
kX
→∞ X X CC−1k(1→∞ * lim→∞ E
XX( kX)
→∞ X
= C B (10)(10) k →∞

(( ))
k k k k
X ⇒ B − E *Elim )k *→∞
klim C *B
* * * * *
limkk→∞ →∞
→∞
k=
kX
( k +1)
→∞ k →∞
→∞
kX
k →∞ →∞k →∞( k + ( k1)k+→∞ −1−1 (10)
k →∞
→∞
k lim
→∞ limX = X= 1)
CC BB− −EE* lim* lim
(k )
XX( k ) (10)
(10)
k →∞k →∞ k →∞
k →∞
eq.
eq.(9)(9)na naeq. eq.(10), (10),temos: temos: Aplicando a eq. (9) na eq. (10), t
ultiplicando
ltiplicando aaeq.
eq.(11)
(11)pela
pelamatriz
matrizC,C,temos:
Capítulo 2 temos:
Capítulo 2 – Solução Computacional de Sistemas de
– Solução Computacional de Sistemas de Equações Lineares
Equações Lineares
Capítulo 2 – Solução Computacional de Sistemas de Equações Lineares
156 CÁLCULO NUMÉRICO COMPUTACIONAL
(C++EE) *) lim
(C * limXX( k(+k1)+1)=
k →∞
k →∞
=
BB (12)
(12)
q.icando
(11) pela a eq. (11) pela
matriz matriz C, temos:
C, temos:
as
s (C
ultiplicando AA,a,então:
(C++EE)Multiplicando
)== então:
eq. (11)apela
eq. (11)matriz
pela C, temos:
matriz C, temos:
(12)
( k +1)
(C( k ++
1) E ) * lim X = B
lim X = B k →∞ (12)
k →∞ (C + E ) * lim X ( k +1)A=
k →∞
*Blim
A* lim (12)
X
k →∞
X( k(+k1)+1)==BB
k →∞
(12)
+ E) =
ntão: A , então:
go,
go,(C + EMas
as )= , então:
A(C + E) = A, então:
( k +1)
A * lim X ( k +(1)k(+k1)=A * lim X
B =B
k →∞ ( k +1)
lim →∞XX +1)==SSA * lim X
klim
ééaasolução
solução =de
BdeAA* *XX==BB
k →∞
k →∞ k →∞

go,OOproblema
problema
Logo, agora agoraééque, que,para
paragerar
geraraasequência
sequência(8),
(8),necessitamos
necessitamos
matriz
matriz inversa
inversa ( CC .=Portanto,
k +
−1−1
1) . SPortanto, essa
essa
ééaasolução
solução inversa,
de inversa,
deA *AX* =Xpor
Bpor
= Bquestão
questãode deeficiência,
eficiência,
X ( k +1) = Slim
é kaX
→∞ solução ( k +1) de A * X = B
mmque
k →∞
queser serobtida
obtidalimfacilmente. = S é a solução de A * X = B
Xfacilmente.
k →∞
O problema
agora é que, para agora gerar apara
é
O problemaque, gerar
sequência
agora a(8),
é que, sequência (8),
necessitamos
para gerar necessitamos
a eq. (8), necessitamos da matriz
iz O problema
−1 inversa C . Portanto,
agora é que,
essa para gerar a sequência (8), necessitamos
por questão de eficiência, eficiência,
inversa, por questão de
−1
inversa
C . Portanto, essa inversa, C –1
. Portanto, essa inversa, por questão de eficiência, tem que ser
matriz
AeA ser
seguir,
seguir, inversa
obtida
obtida
vamos
vamos C . Portanto,
−1
facilmente.
facilmente.
abordar
abordar duas essa inversa,
duasmaneiras,
maneiras, não por questão
nãoexclusivas,
exclusivas, de eficiência,
dedeparticionar
particionar
facilmente.
mamatriz
que ser
matriz obtida
AAde
demodomodofacilmente.
que
queaamatrizmatrizCCseja
sejatrivialmente
trivialmenteinvertida.
invertida.
A seguir, vamos abordar duas maneiras, não exclusivas, de particionar a matriz A de
modo que a matriz C seja trivialmente invertida.
uir, vamos
bordar duasabordar duas
maneiras, nãomaneiras, nãode
exclusivas, exclusivas,
particionarde particionar
A seguir,
A de vamosque abordar duasC maneiras, não exclusivas,
invertida. de particionar
1ariz
do.1Método
que modo
Método
a matriz
C
Iterativo
Iterativo a matriz
de
de
seja
2.2.1 Jacobi
Jacobi seja invertida.
trivialmente
Método
trivialmente
iterativo
matriz A de modo que a matriz C seja trivialmente de Jacobi
invertida.

NoNosistema
sistema NoAAsistema
* *XX==BB A * X = B, tomamos a matriz A e a particionamos na forma
, ,tomamos
tomamosaamatriz matrizAAeeaaparticionamos
particionamos
A = L + D + U, em que:
otodo
forma
formaIterativo
AA==LL++
de Jacobi de
DD+Jacobi
+UU, ,ememque:
que:
.1 Método Iterativo de Jacobi
a) D = diagonal principal de A;
No a)a)DD==diagonal
sistema diagonal
A principal
principalde deA;A;
* X = B , tomamos a matriz A e a particionamos
A * X = B , tomamos a matriz A e a particionamos
No b) L = matriz triangular inferior estrita,
e aobtida apenas dos elementos
ma+ UA, =
emLb)L+sistema
b) ==+matriz
LD
que:
matriz
U , em X
que:= B , tomamos
A * triangular
triangular inferior
inferiora estrita,
matriz
estrita, obtidaparticionamos
Aobtida apenas
apenas dos
dos
= L + D +infradiagonais
forma elementos
Aelementos , em que: dede
Uinfradiagonais A; e
infradiagonais deA;A;e e
a) Dprincipal
onal = diagonal c) principal
de detriangular
U =triangular
A; matriz A; superior estrita, obtida apenas dos elementos
c)a)
c)UD
U===matriz matriz
diagonal triangular
principal superior
superior
de A; estrita,
estrita,obtida
obtida apenas
apenas dos
dos
b) L = matriz
elementos
elementos
riz triangular triangular inferior
supradiagonais
supradiagonais
supradiagonais
inferior de de
estrita, obtida A.estrita, obtida
deA.A.apenas dos apenas dos
b) L = matriz
elementos triangular
infradiagonais de inferior
A; e estrita, obtida apenas dos
os infradiagonais de A; e
elementos infradiagonais
queCC=de DA;⇒eC E =DL⇒
L++UE Laplicando-as
U e aplicando-as na
c) Então,
Então, considerando
considerando que e=eaplicando-as
U = matriz
Então, considerando
triangular superior =Dque ⇒
estrita,
==Eobtida Uapenas + dos
riz triangular
eq.=(8), superior
temos: estrita, obtida apenas dos
eq.
eq.(8),
(8),
c)temos:
temos:
U
elementos matriz triangulardesuperior
supradiagonais A. estrita, obtida apenas dos
os supradiagonais de A.
elementos
( k(+k1)+1) −1−1supradiagonais ( k()de
k ) A.
Então, XX= = DD * (*B( B−−( L( L+C+UU
considerando ) = L + U e aplicando-as (13)
) *) *XX ) (13) (13)
derando que C = D que ⇒ E= =LD+ U⇒e Eaplicando-as
Então, considerando que C = D ⇒ E= L + U e aplicando-as
8), temos:
eq. (8), temos:
( k +1) −1
D −1 * (XB= * ( B( k−) ( L + U ) * X (13)
(k )
− ( L +(D ) (13)
+1)) * X −1 )
kU
X = D * (B − (L + U ) * X (k ) ) (13)
77
77
Obtemos trivialmente os elementos de D −1 tomando os recíprocos
dos coefi Obtemoscientestrivialmente da diagonal osprincipal
elementosD dede D −A.1 Assim, expressando
tomando os recíprocos
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 157
adoseq.coefi (13)cientes na forma da desenvolvida
diagonal principal para cada D de equação
A. Assim, i, expressando
resulta que:
Obtemos trivialmente os elementos de D −1 tomando os recíprocos
a eq. (13) na forma desenvolvida j −i para n cada equação i, resulta que:
dos coeficientes da
( k +1)diagonal 1 principal ( k ) D de A.–1( kAssim, expressando
Obtemos xi = (bi − ∑ aij x j − ∑ aD
trivialmente os elementos de
ij x j )
tomando
) os recíprocos dos
(14)
a eq. (13) na forma
coeficientes dadesenvolvidaa1ii principal
diagonal j =1 para
j − i D decadajA. 1 equação
= i +Assim,
n
i, resulta
expressando a eq.que:
(13) na
forma desenvolvida xi ( k +1)
=para (bi − ∑ j <i a x
ij j − ∑
( k ) j >i a x
i, resulta
( k )
) (14)
aii j −i cada equação ij j que:
j =1 n j = i +1
1
i (k ∑ anij x (jk )( k−)A *∑
j <i j >(i k )
xEntão,
( k +1)
( k +1) i 1
=para i −1(b −resolver X a=ij B x j pelo ) método Jacobi, tomamos (14)
xi = (bi −aii∑ aij x j j−=(0) )
1 ∑ aij(0) x j )(0) (14) (14)
uma solução a
Então, ii inicial
para
j =1
j <i resolver
X j <i j =
j >i
=
i +1{ x 1 , x
j = i +1 (0)
A2 j*>X , , } , isolamos
i =n B pelo método Jacobi, tomamos
L x diretamente a i-ésima
Pg. incógnita
uma
168 solução xi na i-ésima
inicial X (0)equação
= { x1(0) , x2(0) ,i, Le, xaplicamos a eq. (14) somente com
n } , isolamos diretamente a i-ésima
(0)

Então,
os coefi para
cientes
Então, resolver não equação A
nulos X =
* X
Afornece B pelo
necessáriosBe aplicamos método o(os Jacobi,
valorcoefi
novo cientes tomamos
xi( k tomamos
+1)
nulos não
xi napara aij resolver =i,diretamente
pelo método Jacobi, uma
No caso do método de Gauss-Seidel, que* , podemos
incógnita i-ésima a eq. (14) somente com
uma solução
infl
reescrever solução
uenciam
o valor inicial
inicial
do incremento
(0)
noXaresultado = { x1Δx,i x2 ,e=
(0) ( k +(0)
1)
Lnãox,i xn }−devem
( k +(0)
1)
,,isolamos
xisolamos
(k )
dentro diretamente
diretamente
ser daconsiderados a i-ésima
equação anterior, agerando
i-ésima
incógnita
nos cálculos
uma
osxcoefi na
cientes
i-ésima equação
não nulos
i, e aplicamos
necessários i
a eq. (14)asomente
(os coeficom
cientes nulos
os coeficientes
não
incógnita
equação ialternativa:
para na
xfii ns i-ésima
de otimização). equação
ij
i, e aplicamos
Esses algoritmos eq. são (14) somente
específi cos com cada
para
infla uenciam
não nulosno resultado
necessários (os ecoeficientes
não devem nulos sernão considerados
influenciam nonos cálculos
resultado
os Pg.
coefi cientes
ij
sistema,
192 pois aij não usam nulos
apenas necessários
os coefi (os coefi
cientes não cientes
nulos, nulos
que não ser
devem
parae xnão fins devem de otimização).
ser considerados Esses nos algoritmos
cálculos para são fins específi
de otimização).cos para cada
Esses
inflfuenciam e sen(no
( x) =algoritmos
identifi x) −resultado
1 são específicos e não devem ser considerados nos cálculos
ra esse
sistema,cados
Pg. 193 pois usam por algum apenas paramapeamento
cada
os coeficientes sistema, prévio.
pois usam apenas os
não nulos, que devem ser coeficientes
ema para
de fi nsnão de otimização).
nulos, que devemEsses algoritmos
ser identificados porsão algum específi cos para
mapeamento cada
prévio.
ra esse x = identifi
g ( x) cados por algum mapeamento prévio.
equeno
ema sistema,
de x = g ( x pois usam
Exemplo
0 ) 2.9: apenas
resolva osocoefi sistema cientes , a seguir, não nulos, que devem
pelo método ser
de Jacobi:
e, com 1 Exemplo 2.9: resolva o sistema, a seguir, pelo método de Jacobi:
equenoidentifi
x2 = g cados
( x1 ) por algum mapeamento prévio.
cientes
e, com
Exemplo 2.9: resolva o sistema, a seguir, pelo método de Jacobi:
nulos, xk +1 = g(3 xkx)1 − x2 − x3 = 1
cientes
do usar Pg.
Exemplo194  2.9:
b]3 x11 − + 3x2resolva
2 −+ x33 = o15sistema, a seguir, pelo método de Jacobi:
o, mas α ∈ [a, 
nulos,
do usar + b − x + 2 x =
método x = a   x11 + 32x2 + 1 3x3 = 25
o, mas 13 x1 −2 x2 − x3 =
mitir a  x − x + 2x =
método  196 3 x 1Para 2
nual do Pg. + 2 + esse =
2
 x 1 Solução: x3 sistema53 de pequeno porte, com coeficientes não nulos, seria recomendado usar um método
mitir a α ∈ [ak , bk ] direto, mas aplicaremos um método iterativo para permitir a reprodução manual do processo envolvido,
o, com  
nual do f ( xx)1 =−Solução:
exx sen
Iniciamos+( x2)objetivos
2 com x−31= 2didáticos.
montando as equações evolutivas para cada incógnita
áticos.
o, com Pg. 197
do sistemamontando
Iniciamos e isolandoasxequações
i
da sua respectiva
evolutivasequação i. Na
para cada forma
incógnita
Solução:
áticos. Digito decimal ou fracionário ?? -> fracionário
Solução:
matricial,
do sistemaé equivalente
e isolando xiadaisolar
sua os valores de
respectiva xi de cada
equação diagonal
i. Na forma
Iniciamos montando
OrdemIniciamos montando
principal:
de Grandeza as equações evolutivas para cada incógnita
as equações evolutivas para cada incógnita do sistema,
dos Números
matricial, é nequivalente a isolar os valores de xi de cada diagonal
do número
Um sistema
isolando xisolando
x =e m xi da
da sua respectiva
i* 10 em ponto sua equação
flutuante i. Na forma
respectiva
é de ordem equação i. Na éforma
matricial,
de grandeza: equivalente
na
principal:
isolar
x ( k +1)
=+as
(1 incógnitas
x (k )
+ xx(k )
de
) / 0cada1 2diagonal
3 12 principal:
O(10 ) se
-matricial,
1 oémultiplicador
equivalente
2 m∈
3ai [10
isolar, 10 os
] (valores
10 = 10de ≅ 3.1622...
x de cada ), e diagonal
 i
O(10n+
1 ( k +1)
-principal: k +1) m∈
)xx2(se (5[10
=(1
=+
1/2
− xx1( ,k( k)10
1 (k )
+ ] 3.x ()k )/)3/ 3
)− x
1 2 3
 (( kk ++1)1)
+1) 
Pg.( k198  xx32 = =((5(2 − x (( kk )) + x ((kk)) ) / 2
k ) − x11 ( k )− x23 ) / 3
nx1 =+ (1 x2 + (xk3) ) / (3k )
 ( k +1)  x3( k +1) = ) − x(1k ) + x2 ) / 2
( k(2
Pg.
 x2 200=(5 − x1 − x3 ) / 3(0) (0) (0)
[a,(bk +]1) Valor inicial: ( k ) ( x1 , x2 , x3 ) = (0, 0, 0)
 x3 205=(2 − x1 + x2 ) / 2(0) (0) (0)
(k )
Pg.
pa = f (Valor
b) / ( f (binicial:
) + f ( xk )) ( x1 , x2 , x3 ) = (0, 0, 0)
Pg. 206
Valor inicial:devemos
Paralelamente, , x3(0) ) = (0,atualizando
( x1(0) , x2(0)continuar 0, 0) o ponto não fixo, no outro extremo do
intervalo. No caso do Gráfico 3.5, atualizamos a = x e f (a) = f ( x ) , mantendo
 x1 =+ (1 x2 + x3 ) / 3

Consideremos
+ k ) como passo iterativo, no qual uma nova
(k
 x2 =(5 − x1 − x3 ) / 3
( k 1) (k )

solução
 (158
x k +1)
=(2x−i( kx) ( k )é+ calculada.
(k ) Assim, usando
CÁLCULOaNUMÉRICO
solução
2 ) / 2 passo iterativo, no qual uma nova
inicial em
COMPUTACIONAL
Consideremos
 3 1 k xcomo Capítulo 2 – Solução Computacional de Sistemas de Equações L
k = 0, podemos calcular a solução em k + 1 =
a1seguir:
solução i é calculada. Assim, usando a solução inicial em
x(k )
k=Valor
0Valor
(1) inicial:
, podemos
inicial: (calcular
= (1 + 0 + 0) / 3k=como
x1 Consideremos 0.333passo
= (0, 0, 0) em k + 1 =
x1(0) , x2(0) , x3(0)a) solução a1seguir:
iterativo, no qual uma nova
 (1)
 x1(1)x2 =Consideremos
solução
= +(50−+00) / 3é =kcalculada.
x− 0) / como passo
= 1.667
30.333 iterativo.
Assim, Assim,
usando a usando
soluçãoainicial
soluçãoem
inicial em
(k )
(1 i

k = 0, podemos calcular a solução em


 (1) (1) k = 0, podemos calcular a solução em k + 1 = k + 1 a seguir:
a1seguir:
 x2x3 = (5 = (2
− 0−−00)
+ 0) = 1.000
/ 3 /= 21.667
 (1)  x1(1) = (1 + 0 + 0) / 3 = 0.333
 x3 = (2(1)− 0 + 0) / 2 = 1.000
A partir
 x2 = (5dessa − 0 − 0) primeira
/ 3 = 1.667 solução aproximada, atualizamos os
 (1)
Avalores
partir
 x3 =dessa (2 − 0 +primeira
iniciais 0) / 2( x= (0)
1.000(0)solução
1 , x2 , x3 )
(0)
aproximada,
(0.333, 1.667, atualizamos os
1.000) e calculamos
valores iniciais ( x1 , x2 , x3 aproximada
umaA segunda
(0) (0) (0)
e sucessivamente,
calculamos
partir dessasolução
) (0.333, 1.667,e 1.000)
assim
primeira solução aproximada, atualizamos os
uma Asegunda
partir dessasolução primeira solução
aproximada aproximada,
e atualizamos
assim os valores
sucessivamente, iniciais
conforme
(valores ax (0)Tabela
x (0) , x (0) ,iniciais ( x1 2.3:
) = (0.333,
(0) (0) (0)
, x2 , x3 ) (0.333,e1.667,
1.667, 1.000) calculamos e calculamos
1.000) uma segunda solução
conforme
1
a Tabela
2 3
uma segunda
aproximada 2.3:
solução
e assim aproximada
sucessivamente, e assima sucessivamente,
conforme Tabela 2.3:
Tabela 2.3
conforme – Valores
a Tabela 2.3: da solução aproximada para cada iteração
Tabela 2.3 – Valores da pelo
solução
Tabela 2.3 – Valores da solução aproximada
método
aproximada decada
para para cada
Jacobi
iteração iteraçãode Jacobi
pelo método
pelo método de Jacobi
Tabela 2.3 – Valores da solução aproximada para cada iteração
pelo( kmétodo de Jacobi
k x )
(k ) 1
x2( k ) x3( k )
k x 1 (k )
(k )
x2( k ) x3( k )
k x1 x2 x3( k )
0 0 0 0
0 0
0 0 00 0
0
1 0.333 1.667 1
1 1 0.333
0.333 1.667
1.667 1 1

2 22 1.2221.222
1.222 1.222 1.222 1.667
1.222 1.667 1.667
3 33 1.296
1.296
1.296 0.704 0.704
0.704 1 1 1
4 0.901 0.901 0.704
4 4 0.9010.901 0.9010.901 0.704 0.704
5 0.868 1.132 1
5 5 0.8680.868 1.1321.132 1 1
6 1.044 1.044 1.132
6 6 1.044
1.044
Fonte: 1.044própria
Elaboração 1.044 1.132 1.132

Fonte: Elaboração
Fonte: Elaboração própria
Fonte:Note
Elaboração
queprópria.
a aproximação ( x1(6) , x2(6) , xprópria
3 ) = (1.044, 1.044, 1.132)  ,
(6)

obtida
Note emque
Note 6 iterações,
que está convergindo
a aproximação
a aproximação para
( x1(6) ,(xx2(6) uma solução
),=x=(6)
,,xx3(6)(6) (1.011,
(1.044, S (nesse
1.044,
1.044, ,
1.132), 1.132)
1.132)
Note
caso, que
=
a aproximação
). 1
(6)
2 3 ) = (1.044, 1.044,  ,
S
obtida {1, 1, 1}
em 6 iterações, está convergindo para uma solução S (nesse caso,
obtida em 6 iterações, está convergindo para uma solução S (nesse
exato
obtidaSexato
emNeste
= 6{1,iterações,
1,ponto, está convergindo
1}). precisamos para
estabelecer um uma
critério de solução
parada S (nesse
caso, Sexato = {1, 1, 1}).
Neste ponto, precisamos estabelecer um critério de parada que
caso,que determine
Sexato 1}).
= {1, 1, quão próxima da solução exata está a sequência
Neste ponto,
determine
convergente quão precisamos
próxima
xi( k ) , sem estabelecer
da solução
conhecermos a exata
solução aum
estáexata. critério
sequência
Entre de parada
convergente
os critérios xi(k),
Neste
sem ponto, aprecisamos
conhecermos solução exata. estabelecer
Entre os critérios um critério de parada
que determine
mais comuns, quão estão:próxima da solução exata mais
estácomuns, estão:
a sequência
que determine
convergente x ( k ) , sem quão próxima ada
conhecermos solução
solução exata
exata. Entreestá a sequência
os critérios
a)i Max ( k ){ x − x } ≤ ε ⇒ i = 1, 2,3,..., n
( k +1) (k )

convergente
mais comuns, estão:xi , sem conhecermos a solução exata. Entre os critérios
i i

Corresponde à máxima diferença absoluta entre os valores da


mais comuns, estão:
iteração
( k +1) nova
(k ) e da iteração anterior, entre todas as incógnitas i.
que determine quão próxima da solução exata está a seq
convergente xi( k ) , sem conhecermos a solução exata. Entre os cr
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 159
mais comuns, estão:
Cálculo Numérico Computacional
al
al a) Max { x
a) ( k +1)
i −x (k )
i } ≤ ε ⇒⇒i =i1,=2,1,3,2,3,...,
..., n n
omputacional

 x 
( k +1) Corresponde à máxima diferença absoluta entre os valores da iteração
− x(k )
≤ε ⇒
Max  i ( k +1) i Corresponde
nova i e=da 1, 2,3,..., nanterior, à máximaentre diferença absoluta
i. entre os valo
 xi  ( k +1) iteração todas as incógnitas  xi
( k +1)
− xi( k )
 xi (−k +1)xi ( k )
(k )

b) Maxiteração
b) b)
Corresponde à máximaMax
  x( ki +(1)k +nova
diferença

− xi( k ≤ εe da
relativa
 ≤ ε ⇒
i = 1, 2,3,...,
⇒ entre
iteração
i =
os anterior,
valores
1,
n
2,3,..., da
n entre b) Max 
todas as incóg
xi( k +1)
 x
Max xi i( ki+x1)( k(−
 x 1)
− x
+1) 
)

i( k )  
b)
b) k +1)xi
Max  anterior,
 ≤ ε ⇒ i = 1, 2,3,..., n
 ≤ ε todas ⇒ ⇒i =ias 1,=2,1,3,2,3,...,
..., n i.n Corresponde à
teração nova e daCorresponde iteração  x( ik +1) entre  incógnitas
i

 xi à máxima  diferença relativa entre os valores da


Corresponde
Corresponde àà máxima máxima diferença
diferença relativa
relativa entre osentre osda
iteração
valores valores nova d e
{ ( k +1)
} iteraçãoCorresponde
≤ ε ⇒ iCorresponde =iteração nova
1, 2,3,...,nova
àe
n eedada
máxima
à iteração
máxima diferença anterior,
relativa
diferença entre
entre ostodas
relativavalores as
da
entre incógnitas
iteração
os valores i. d
Max ri iteração
nova e da nova iteração daiteração
anterior, iteração anterior, entre entre
entreanterior,
todas as
todas as incógnitas
incógnitas
todas
i.
i.
as incógnitas
Corresponde ao maior iteração resíduo nova entre e da iteração todas asanterior,
equações entre todas c) as incógnitas
Max ri( k +1) ≤ ε { }
nc) Max
c)
c) Max
c) ( k +Max { { } }
ri( k +1){ (rki(+k≤
r 1) ε
+1)
} ≤≤ ⇒ε ⇒i i ==1,1,2,3,...,
ε ⇒⇒
2,3,..., nn
i =i1,=2,1,3,2,3,...,
..., n n Corresponde a
ri = bi − ∑ aij x j , que( k +já
( k +1)
1) foi ao aplicado para aferição
{ }
1) i
Corresponde
c) Corresponde
j =1 Corresponde ≤aoε ⇒ maior i = 1, resíduo entre todas as equações
Max ri maior resíduo
2,3,..., nentre todas asi, equações n

de soluções de métodos
Corresponde = bi n− ∑mas
i, r ( kdiretos,
+1)
aon maior resíduo entre todas as equações
ao kmaior
pode
+1)
aij( kx+(j1) , que
resíduo
gerar
já foi valores
entre todas as equaçõe
aplicado para aferição
ri i,
( k +1)
= bi − ∑
Corresponde ao maior resíduo entre todas as equaçõe
j=
i, ri =( k +1)bi − ∑ aj =ij1 x j (,k,que
( k +1) i n
+1)que já foijáaplicado
foi aplicado
para aferição para
de aferição
solu-
nconsistentes para sistemas i, de = mal
ri soluções ∑
bi j =−condicionados.
1 de n aij x j
métodos , diretos,
que jámas foi pode
aplicado de
para
gerar valores
soluções aferiçã d
i,ções ( k +1)
ri de=métodos bi − ∑ j =diretos,
1a x ( k +
, diretos,
mas
1)
que
pode já gerarfoi aplicado
valores paravalores
inconsistentes
inconsistentes aferiçã
aso do Exemplo de soluções
inconsistentes
2.9, quando de métodos
para ij j
aplicamossistemas mal mas
condicionados.
o critério pode gerar
de
para soluções
sistemas maldej = 1 métodos diretos,
condicionados. mas pode gerar valore
k) inconsistentes
} ≤ ε , das diferenças
Node soluções
de
caso valores para
de sistemas
métodos
sucessivos,
do Exemplo mal
temos:
2.9, quando condicionados.
diretos, mas pode No gerardovalore
caso Exe
inconsistentes para sistemas mal aplicamos
condicionados.o critério
Max { xtemos:
− x } ≤ ε , das dif
No { caso do } ≤Exemplo
Max xNoinconsistentes
caso
− x do para
2.9, sistemas
quando aplicamosmal condicionados.
o critério Max ( k +1)
ε , das diferenças de valores sucessivos,
( k +1) (k ) (k )

Exemplo 2.9, quando aplicamos o critério


i i i i
2.4 – Valoresdasda solução aproximada
diferenças pelo métodotemos:
de Jacobi
No casodedo valores sucessivos,
Exemplo 2.9, quando aplicamos o critér
Max xi (− { {
( k +1) com
No x
k +1)i
Max ( kTabela
x 2.4
caso

Tabela ε } }
( k ) critério de parada
, das
2.4
− x–i Valores
(k ) diferenças
≤ ε ,dadas
da de
do Exemplo 2.9, quando
– Valores solução
solução
valores
aproximada
diferenças
sucessivos,
pelo
aproximada aplicamos
método
com critério
temos:
de Tabela
Jacobi
pelode
de
2.4 o– Valores
critérd
valores
método
parada de Jacobisucessivos,
com critério de parada temos:
{ }
) i | x2( k +1) − x2( k ) | | x3( k +1) − x3( k ) |
Max 2 xi − xi 3( k )≤ ε , das ( diferenças de valores sucessivos, temos:
) (k ) ( k +1)
x ( k +1) ( kx) | x 1 − x1
(k )
|
Tabela k 2.4x1 – Valoresx2da solução x3( k )aproximada − x pelo | | x método − x | |de x x (Jacobi
k) ( k +1) (k ) ( k +1)
( k +1)
k−
(k ) (k )
|x ) x | (k )
pelokmétodo 1de Jacobix2
2 2 3 3
0 Tabela 2.4 0 - da solução - aproximada -
1 1
– Valores
33 0
1.667 Tabela 10
2.4 – Valores 0 com
0.333 dacom
critério
solução 0
critério
1.667
de parada
aproximada - 1
de parada pelo- 0método 0de - Jacobi
0
22 1.222 1x ( k ) 1.667 0.333 ( k )1.667
0.889 com 1)
(critério
0.555 de0.333
( k +parada
0.667 1.667
( k +1)
| x1 (−k +x1)1 | ( k )| x21 (−k +x1)2 0.333
(k ) 1 ( k +1)
| ( k )| x3 (−k +x1)1.667
k x2 1.222 x1.667k 1) (k )

| | x2 − 0.667 x2 | | x3 3 − x3( k )
(k )
|
k 2 x1((kk1.222 0.889 − x1 0.555
1 ) (k )
96 0.704 1 x0.074
2
3
x3( k )
0.518 | 0.667
x1
2 ( k +1) 1.222 1.222
k 3 0 x10.704
0 0.901 1.296
)
0x 0.704
(k ) 1x ( k )
00.197 0.074 | | x-2 − 0.667
| x1-( k +1) − x1( k )0.518 x2( k ) | | x-3( k +1) − x3( k )
01 0.395 3 0.296
- 1.296 0.704
2 3
0 4 00.901 0
0.901 0.7040 0.395 - 0.197 0.296 -
68 1 1.132
01 0.333 1
00.868 1.667 0.033
0 1 0.197 0.333
0.296 41.667 - 0.901 1 0.901
5 0.333 1.667
1.132 1 0 1 -
0.033 0.333 0.197 1.667 0.296 1-
44 2 1.044
12 1.222
6 0.333
1.132 1.2220.176
1.667 1.667 0.088
1 0.889
0.132
0.176 0.333 50.555 0.868 0.667 1.132
1.044
1.222 1.044
1.222 1.1321.667 0.889 0.088 1.667
0.5550.132 1
0.667
3 2 Fonte:1.296 0.704
Elaboração
1.222
própriaFonte: 1
Elaboração 0.074
própria 60.518 1.044 0.6671.044
1.296 própria. 1.222
3 Fonte: Elaboração 0.704 1.667
1 0.889
0.074 0.555
0.518 0.667
0.667
4 3 0.9011.296 0.901 0.704 0.704 1 0.3950.074 0.197
0.518 0.296
0.667 F
anto, no Exemplo
4 0.9012.9, o critério
Portanto, no0.901
Exemploalcançado 0.704
2.9, depois0.395
o critério de 6
alcançado 0.197 de 6 0.296
depois
5 4 0.868
Portanto,
0.901 1.132
no Exemplo
0.901 2.9, o1critério
0.704 0.033
alcançado depois0.197
0.395 6 iterações0.296
de 0.197 é: 0.296
5 iterações0.868é: 1.132 1 0.033 Portanto,
0.197 no Exem
0.296
6 5 1.0440.868 1.044 1.132 1.132 1 0.1760.033 0.088
0.197 0.132
0.296
6 1.044
( k +1)
Max | xi ( k ) 1.044 +1.132
− xi |=
( k 1)
0.176
( k
Max | xi ) 0.176 iterações
− xi |=0.1760.088 é: 0.132
6 1.044 Fonte: Elaboração
1.044 1.132 própria
0.176 0.088 0.132
Fonte: Elaboração própria Ma
Fonte: Elaboração própria
Portanto, no Exemplo 2.9, o critério alcançado depois de 6
Portanto,
Note que, no Exemplo
nesse exemplo, 2.9, o critério
o processo alcançado
iterativo é do tipodepois de
160 CÁLCULO NUMÉRICO COMPUTACIONAL

Note que, nesse exemplo, o processo iterativo é do tipo oscilatório,


isto é, as incógnitas aumentam e diminuem ao longo das iterações, o que
prejudica a convergência, tornando o processo mais lento.

Veja, no Gráfico 2.1, a evolução de x1(k) com o nível iterativo k usando


o método de Jacobi.
160

Gráfico 2.1Gráfico 2.1 –


– Evolução de x1(k) com o nível iterativo k aplicando o método de Jacobi

x1( k )

k
Fonte: Elaboração própria.

A seguir, vamos apresentar um método iterativo normalmente mais eficiente do que


o método de Jacobi.
A seguir, vamos apresentar um método iterativo normalmente mais
eficiente
CAPÍTULO do que
2 – SOLUÇÃO o método deDEJacobi.
COMPUTACIONAL SISTEMAS DE EQUAÇÕES LINEARES 161

2.2.22.2.2
Método Iterativo de Gauss-Seidel
Método iterativo de Gauss-Seidel
NoNo método
método iterativo
iterativo de Gauss-Seidel,
de Gauss-Seidel, temos A * Xtemos
= B com = B com
A *aXpartição
tacional deaApartição A =A Lna
na formade +D + U, como
forma A = Lno+ Dmétodo de Jacobi,
+ U , como porém tomando
no método de Jacobi,
o Computacional
co Computacional Cporém
= D + L,tomando
E = U e aplicando
C= D + Lna eq.= (8):
, E U e aplicando na eq. (8):
utacional
co Computacional

a) X ( k +1) =+
Multiplicando ( D aLeq. ) −1 (15) ( B − Upela )
* X matriz
(k )
(15) ( D + L) , temos: (15)
Multiplicando
Multiplicando aa( keq. eq. (15)
(15) pelapela pela matriz
matriz +LL) ), ,temos:
((DD+temos: temos:
( D + Multiplicando
Multiplicando ) X ( k +1) =
LMultiplicando B −aUeq. a* eq.
Xa(15) )(15)
eq. pela
(15) matriz
matriz
pela matriz ( D ++ (L),
(D LD) ,+temos:
L) , temos:
( k +1)
+1)+ L ) X ( k +1) = +1)− U * X ((kk))
(k )
D *X (
( D + L( D
( kD
( D + ( kL
=
) X+ L) X= +B )
1) X− (Lk +*1)X=
B −=
( kB
B
U B* X − − (U
kU ) **X X
− U( k*+1)X (k )
−1((kk++1) = − +1)*−X ( k*) X ( k( k) )
X ( k +1) (D
D* XD
= *D
Dk +1)** XX
X= (
( kB B
+1)− =
1) −
LB
L B
*BX
*
−(LkL+1)** X
X L( k*+1)
X−−(U( kU
k +1) *X −U (Uk ) *)X( k ) (16)
= − X − U *X
( k +1)
X 1)−1= −1
D −−11( B −(Lk +1)* X ((kk++1)1) − U ( k +1)
* X ( k ))
(k )
(16)
que, naXforma ( k +1) (( kk ++1)
X=
X =
Ddesenvolvida,
( BD
= D− L((B*BX−− LL** XX− U torna-se:
*X −−UU*)*XX( k ) )) (16)
(k )
(16) (16) (16)
que,
que, na forma desenvolvida, torna-se:
que, nana
que, formaforma
na desenvolvida,
+1) desenvolvida,
( kforma desenvolvida, se torna:
( k +1) torna-se: torna-se:
(bi − ∑ aij x j − ∑ atorna-se:
desenvolvida,
i −1 n
xi =
i −1
ij x j ) / aii ⇒ i = 1, 2,..., n
n
(k )
(17)
( k +1) j =
∑ +1) a ∑
1 jk= +i1)
+1
xi( k +1) = j i(<
−b1i − i −1 a x j >n i − n a x ( ( k )
) / aii ⇒ i = 1, 2,..., n (17)
xi( k +1) = xi((kb+1)i −= ∑ (bi a−ij ∑
i
xj =i (−1jk1+a1)ijij −x (jj(k∑
j < i ij jj = i +1 j ∑
k +1) − ijj∑
x= i(nj+k1)a) ijij/xa(jjiik( k) ⇒
))⇒ / aiiii=⇒=1,1,2,i2,...,
= n2,..., n (17) (17)
...,1,n (17)
j∑ (17)
xi = ( b − a x − >i a x ) / a ⇒ i = 1, 2,..., n
Essa operacionalização j =1 i
j <i
=1
jj =<1i é jsemelhante
>i
j = i +1 ij j
j j >= ii+1 à doii método de Jacobi,
j <i >i
exceto que,Essa na eq. (16), utilizamos
operacionalização sempre
é jsemelhante os valores
à do método de xj de mais Jacobi,
EssaEssa operacionalização
operacionalização é semelhante é semelhante à do àmétodo do método de Jacobi,de Jacobi,
atualizados
exceto Essaque, possíveis na eq.
operacionalização no(16), ladoéutilizamos direito
semelhante da equação sempre
à do método iterativa,
àos dovalores
de oudeseja,
Jacobi, exceto mais
xj Jacobi,
excetoexcetoque,Essa na eq.
que, operacionalização
(16),
nautilizamos
eq. (16), utilizamos utilizamos é sempre semelhante sempre os valores os método
valores de ( kx+j1)dede
mais xj mais
que,
já são na eq.
usados ospossíveis
atualizados (16), valores anteriormente sempre
no lado direito calculados os valores da equação de x mais
de atualizados
iterativa,
xj das
ou seja,
exceto
atualizados
atualizados
possíveis no que,
possíveis
lado na
possíveis
direito eq.noda (16),
lado no utilizamos
equação direito
lado direito
iterativa, da equação sempre
ou daseja, equação já os j
são valores
iterativa,iterativa,
usados ouos de
seja,
(ou
x mais
k +1)j seja,
valores
equações
já sãocom usados j < i dentro os valores da (kprópria anteriormente iteração em andamento
calculados de e,
x em das
atualizados
já anteriormente
sãojá usados os possíveis
valores noxj lado
deanteriormente dasdireito da
calculados equação deiterativa, +
xdas ou seja,
( k 1) j
são usados calculados os valores + 1)
anteriormente equações com j < i dentro
calculados xde
jda própria
( k + 1)
das
(14), equações
utilizamos com apenas j < i os dentro valores da de própria x j da
(k )
iteração
iteração emanterior,
andamento ∀ j .e,(k)em
j
iteração
equações
equações
já em
com
sãoutilizamosusados andamento
com j < i dentro jos < ivalores e,
dentro na eq.
da própria da (14), própria
anteriormente utilizamos
iteração iteração apenas
em andamento os
em andamento valores de
dee, xem xe,j em
x ((jkk )) dacalculados j ∀ das
( k +1)
da (14),
iteração anterior, apenas
∀ j. os valores (de iteração anterior, j .
(14),(14),
utilizamos utilizamos apenas apenas os valores os valores de x de k)
da xiteraçãoiteração
da iteração anterior, anterior, ∀ j .∀ j .
equações com j <
Exemplo 2.10: resolva o sistema, a seguir, pelo método de i dentro da própria j j em andamento e, em
(14),
Gauss-Seidel:
Exemplo Exemploutilizamos
2.10: 2.10:apenas
resolva resolva
o sistema, os ovalores asistema,
seguir, de pelo ax (jmétodo da iteração
seguir,
k)
pelo anterior,de∀ j .
método
Exemplo Exemplo 2.10: resolva
2.10: resolva o sistema, o sistema, a seguir, a seguir, pelode pelo
Gauss-Seidel:
método método de de
Gauss-Seidel:
− x2 − x3 =
Gauss-Seidel:
3 x1 Gauss-Seidel: 1
 Exemplo
3xx1 +−33xx12 −+ xx23 −2.10: = 5x = resolva
1 o sistema, a seguir, pelo método de
1  3 xx12−− xx23−= 1x33 = 1
 Gauss-Seidel:
 x3x2x1+++23xx3x2 = + 2 x3 =
 xx1 −+ x + 3 x + = 5x =
5
5
1  x − x + 2x =
1 2 2 3 3
 x − 3xxx11 +− 2x − 3x = 2
 1  21 −2xx2 32+=
Solução: 22x3 3= 21
Solução: 
Iniciamos
Iniciamos
Solução:
 x1 +montando
Solução: 3x2 + x3as=
montando as 5equações
equações evolutivas
evolutivas parapara cadacada incógnita incógnita
do sistema
Solução:

do sistema
Iniciamos e isolando
montando x da
as respectiva
equações equação
evolutivas para
i, mas cadausando
incógnita
 x1 −montando
e isolando
Iniciamos
Iniciamos
xxi2 da + 2respectiva
x3 =
montando
2 equações
as i equação i, mas usando as incógnitas
as equações evolutivas evolutivas parapara cadacada incógnita
incógnita
mais
as incógnitas
do sistemamais e isolando atualizadas xi da respectiva disponíveis no lado
equação direito
i, mas usando
do sistema
do sistema e isolando e isolando xi daxrespectiva da respectiva equação equação i, mas usando
i, mas usando
Solução:
das equações,
as incógnitas que mais correspodem atualizadasi àquelas disponíveis multiplicadas no lado pelos direito
as incógnitas
as incógnitas maismais atualizadas atualizadas disponíveis disponíveis no lado no lado direito direito
coeficientes
das equações, de L daque eq. (16): correspodem àquelas multiplicadas pelos
Solução:
Iniciamos montando as equações evolutivas para cada incógnita
162 CÁLCULO NUMÉRICO COMPUTACIONAL
do sistema e isolando xi da respectiva equação i, mas usando
as incógnitas mais atualizadas disponíveis no lado direito
atualizadas
das disponíveis
equações, no lado direito
que correspodem das equações,
àquelas que correspodem
multiplicadas pelos
àquelas multiplicadas pelos coeficientes
coeficientes de L da eq. (16): de L da eq. (16):

 x1( k +1) =+
(1 x2( k ) + x3( k ) ) / 3
 ( k +1)
 x2 =− (5 x1( k +1) − x3( k ) ) / 3
 ( k +1)
 x3 = (2 − x1( k +1) + x2( k +1) ) / 2
CapítuloCapítulo 2 – Solução
2 – Solução Computacional
Computacional de Sistemas
de Sistemas de
de Equaç
Note
Note que
que as
as equações
equações evolutivas
evolutivas utilizam os valores
utilizam os valores disponíveis
disponíveis
Capítulo mais de Sistemas de
2 – Solução Computacional Equ

mais atualizados
atualizados possíveis.
possíveis.

Valor
Valor
Valor inicial:
inicial:
inicial: ( x1(0)(0)
(0)
,(xx2(0)
1 ,, x
(0)
2 ), x
x(0) (0)
=3 (0,) =0,(0,
0) 0, 0)
Valor inicial: ( x1 , x2 , x3 ) = (0, 0, 0)
(0) 3 (0)
Assim,
Assim, usando
usando a soluçãoa solução inicial inicial
em em 0 , podemos
k = 0k ,=podemos calcular
calcular a a
Assim,
Assim, usando
usando
solução a a solução
solução inicial
inicial em em
k = k
0, = 0 ,
podemospodemos calcular
calcular a a em
solução
solução em emk + 1k= a+1seguir:
1= a1seguir:
solução em k + 1 =
k + 1 a seguir: a1seguir:
 x1(1)(1)= (1 +=(10++ 00)+ / 30)=/0.333
x1(1) 3 =0.333
 (1)x1 x= (1) (1 + 0 + 0) / 3 =0.333
 x2x(1)=− 2(5 =− (5
0.333 − 0) −/ 30)=
0.333 3=
/1.555 1.555
  =− (5 0.333 − 0) / 3 = 1.555
 (1) x3 =−
2 (1)
+ 1.555) 2=
 x3x3(1)=− (2 (2 0.3330.333
+ 1.555) /2= /1.611 1.611
 =− (2 0.333 + 1.555) / 2 = 1.611
ObserveObserve queque
(1)
x1(1) (1)=x10.333= 0.333 , calculado
, calculado na primeira
na primeira equação
equação i = 1,i =já1, já
Observe
Observe
foi utilizadoque
que x x
(1)
= =0.333,
0.333
na equação , calculado
calculado (1) na primeira equação i = 1, já
na i
x2 e assim por diante,jáconforme
primeira equação = 1, foi utilizado
foi utilizado na1 equação
1
de xde 2 (1)e assim por diante, conforme
(1)

foi utilizado
naaequação
Tabela de nax equação
(1)
e assim por dediante,
x e assim pora diante,
conforme conforme
Tabela 2.5.
2.5. 2.5.2
2
a Tabela
a Tabela 2.5.
Tabela 2.5
2.5––2.5
Tabela
Tabela Valores dada
solução
– Valores
Valores aproximada
da solução
solução pelopelo
método
aproximada
aproximada pelodemétodo
método Gauss-Seidel
de Gauss-Seidel
de Gauss-Seidel
Tabela 2.5 – Valores da solução aproximada pelo método de Gauss-Seidel
k kx1( k )( k x
(k )
1
(k )
x2( k )( k )x2
(k ) ( k +1)
x3( k )( k )x3 | x1( k +1)( k|+−1)x1x1( k ) (−
( k +1)
|k ) x1| x2(|k +1)| −x2x2( k ) −
(k ) (k )
x3(xk +( k1)) −
| x2| x3(|k +1)( k|+−1) 3 (|k )
x3( k ) |
k x1 )
x2 x3 | x1 − x1 | | x2 − x2 | | x3( k +1) (k )
− x3 |
0 0 0 0 0 0 0 0 - - - - - -
0 1 00.333 01.555 01.611 -0.333 -1.555 -1.611
1 0.333 1.555 1.611 0.333 1.555 1.611
1 2 0.333 1.388 1.555 0.666 1.611 0.638 0.333 1.055 1.555 0.888 1.611
2 1.388 0.666 0.638 1.055 0.888 0.9720.972
2 3 1.388 0.666 0.638 1.055 0.888 0.972
3 0.7680.768 1.1971.197 1.2141.214 0.6200.620 0.5310.531 0.5750.575
3 4 0.768 1.197 1.214 0.620 0.531 0.575
4 1.1371.137 0.8820.882 0.8720.872 0.3680.368 0.3140.314 0.3410.341
4 5 1.137 0.882 0.872 0.368 0.314 0.341
5 0.9180.918 1.0691.069 1.0751.075 0.2180.218 0.1860.186 0.2020.202
5 6 0.918 1.069 1.075 0.218 0.186 0.202
6 1.0481.048 0.9580.958 0.9550.955 0.1290.129 0.1100.110 0.1200.120
6 1.048 0.958 0.955 0.129 0.110 0.120
Fonte: Elaboração própria
Fonte: Elaboração própria. Fonte: Elaboração própria
Fonte: Elaboração própria

TemosTemos a solução
a solução aproximada
aproximada (, xx1(6)
( x1(6)(6)
(6)
(6) , x (6) , x
(6)
) = (1.048,
) =3 (1.048,
, x23 (6) 0.958,
0.958, 0.955)
0.955)
Temos a solução aproximada ( k +1)( x1 ( k, )x2 , x3 ) = (1.048, 0.958, 0.955)
2 (6)

comcom critério
critério de parada
de parada | x ( k +|1)x−i x ( k−
MaxMax ) x
|= |=
i 0.129
atingido
atingido
0.129 em 6em 6 iterações.
iterações.
com critério de parada Max |i xi( k +1) −i xi( k ) |= 0.129 atingido em 6 iterações.
1.069 44441.075
1.137
1.137
1.137
1.137 0.218
0.882
0.882
0.882
0.882 0.872
0.872
0.872
0.872
0.186
0.368
0.368
0.368
0.368
0.202
0.314
0.314
0.314
0.314 0.341
0.341
0.341
0.341

0.958 55550.955
0.918
0.918
0.918
0.918 0.129
1.069
1.069
1.069
1.069 1.075
1.075
1.075
1.075
0.110
0.218
0.218
0.218
0.218
0.120
0.186
0.186
0.186
0.186 0.202
0.202
0.202
0.202
6
666 1.048
1.048
1.048
1.048 0.958
0.958
0.958
0.958 0.955
0.955
0.955
0.955 0.129
0.129
0.129
0.129 0.110
0.110
0.110
0.110 0.120
LINEARES 0.120
0.120
0.120
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL
Fonte: Elaboração própria DE SISTEMAS DE EQUAÇÕES 163
Fonte:Elaboração
Fonte:
Fonte:
Fonte: Elaboraçãoprópria
Elaboração
Elaboração própria
própria
própria

solução aproximada ( x1(6) , x2(6) , x3(6) ) = (1.048, 0.958, (6) 0.955)


Temos
(Temos
kTemos
+Temos( kaa
asolução
)a
solução
solução
solução aproximada((x(x1x(6)
aproximada
aproximada
aproximada
(6) (6)
, x(6)(6) (6)
, x(6) ) =(1.048,
(1.048,0.958,
111 ,,xx2222 ,,xx3333 ))==(1.048,
(6)
(6) (6) (6) 0.958,0.955)
0.958, 0.955)
0.955)
e parada Max | xi − xi |=
1)
0.129 atingido em 6 iterações.
com
comcom
com critério
critério
critério
critério de
dedede parada
paradaMax
parada
parada Max
Max
( k + 1)
−xxix(xik(i(ik)k))|=
Max| ||x|xix(xik(i(ik+k+1)+1)1)−−− ( k )
=
|=
||= atingido
atingidoem
0.129atingido
0.129
0.129
0.129 atingido em666iterações.
em
em iterações.
iterações.
iterações.

mplo, o processo Nesse


iterativo correspondente
exemplo, oprocesso à apli- correspondente à aplicação do
processoiterativo
iterativo
Nesseexemplo,
Nesse
Nesse exemplo,
exemplo, oooprocesso
processo iterativo
iterativo correspondenteàààapli-
correspondente
correspondente apli-
apli-
método de Gauss-Seidel
método de também étambém
Gauss-Seidel um processo
é um processo oscilatório (podemos
caçãodo
cação
cação dométodo
do métodode
método dedeGauss-Seidel
Gauss-Seideltambém
Gauss-Seidel tambéméééum
também umprocesso
um processo
processo
o (podemos verificar que xi( k +1) − xi( k ) tem
verificar que temsinais
sinais alter-
alternados), +
++1)1) − (xk((k)k))
mas agora temos um
oscilatório
oscilatório
oscilatório (podemos
(podemos
(podemos verificar
verificar
verificar que
que
que tem
tem
tem sinais
sinais
sinaisalter-
alter-
alter- de
( k
(xk((k+k1) 1) ( k )
processo de convergência um pouco mais xxx − −
−xxx
as agora temos um processo de convergência umi ii rápido porque no método
i i iii

nados),
nados),
nados),mas
Gauss-Seidelmas
mas agora
sãoagora
agora
tomados temos
temos
temos
os um
um
umprocesso
processo
processo
valores disponíveis de
de
deconvergência
convergência
convergência
mais atualizados. um
um
um
ais rápido porque no método de Gauss-Seidel são
poucomais
pouco
pouco maisrápido
mais rápidoporque
rápido porqueno
porque nométodo
no métodode
método deGauss-Seidel
de Gauss-Seidelsão
Gauss-Seidel são
são
os valores disponíveis mais atualizados.
tomadosos
tomados
tomados osvalores
valoresdisponíveisdisponíveismaismaisatualizados. atualizados.
Veja, noosGráfico
valores 2.2,disponíveis mais
a evolução também atualizados.
oscilatória de x1(k) (no eixo
vertical) com o nível iterativo k (no eixo horizontal) usando o método de
Gauss-Seidel.
163
Gráfico 2.2 – Evolução de x1 ....
(k ) 83
Gráfico 2.2 – Evolução de x1(k) com o nível iterativo k aplicando o método de Gauss-
Seidel

x1( k )

k
Fonte: Elaboração própria.

A seguir, vamos apresentar condições suficientes para que um processo iterativo


de soluções de sistemas lineares seja convergente.
iterativo,
A seguir, vamos de soluçõescondições
apresentar de sistemas lineares,para
suficientes seja que
convergente.
um processo
164soluções de sistemas lineares, seja convergente.
terativo, de CÁLCULO NUMÉRICO COMPUTACIONAL

2.2.3 Convergência dos Métodos Iterativos


3 Convergência dos Métodos Iterativos
Nas seções
2.2.3 anteriores,
Convergência dos métodos
desenvolvemos iterativos
duas formas iterativas,
{ X formas}kiterativas,

eqs.
Nas(14) e Nas
seções (17), de construir
anteriores,
seções uma
desenvolvemos
anteriores, sequência
duasduas
desenvolvemos formas
(k )
de possíveis
= 0 iterativas, equações
aproximações
s. (14) e (17),
(14) e de para a solução
(17),construir uma
de construir uma de A * X {=XB( k.) }Agora,
sequência
sequência

abordaremos
depossíveis
de possíveis aproximações
k =0
quando se
para adá a
soluçãoconvergência
de A X = B. dessa
Agora, sequência.
abordaremos
roximações para a solução de A * X = B . Agora, abordaremos
* Para
quando tal, necessitamos
se dá a convergência
andode se
dois
dá conceitos
dessa sequência.
a convergência adicionais:
Para tal, necessitamos
dessa de dois
sequência. Para tal,conceitos
necessitamos adicionais:
Capítulo 2 – Solução Computacional de Sistemas de Eq
dois conceitos adicionais: n
Definição 1: 1:
Definição nonosistema
sistemaAA* *XX==BB, , sejam
=
sejam nZZi = ∑ = | aij |, i =
i 1,1,..., n ,teremos
..., n,
i
teremos
Definição 1: nodiagonal
diagonal dominante
sistema dominante
A * Xse=ocorrer: se ocorrer:
B , sejam
= Zi ∑ =
j =1
| aij |,j ≠i i 1,..., n ,
teremos diagonala) | aii |≥ Z i para sei = 1,..., n ;
a) | adominante
| ≥ Z para i = 1,ocorrer:
j =1
ii i
..., n; j ≠i

e
e
b) | aii |> Z i , para pelo menos uma linha i de A.
b) | aii 2:
Definição | > se
Zi, para
| aii |>pelo
Z i , menos
∀i= uma
1,..., n , linha i de A. A * X = B terá
o sistema
diagonal estritamente dominante.
Definição 2: se | aii | > Zi, ∀ i = 1, ..., n, o sistema A * X = B terá diagonal
estritamente dominante.
2.2.3.1 Teorema Convergência – Critério de Scarborough
2.2.3.1 Teorema de convergência – critério de Scarborough
Segundo o teorema de convergência de Scarborough: se o
Segundo o teorema de convergência de Scarborough: se o sistema
sistema tiver diagonal
X = Bdiagonal
A * X =AB* tiver dominante,
dominante, ou diagonal
ou diagonal estritamenteestritamente
dominante,
dominante, tantoconstruída
tanto a sequência a sequência construída
pelo método pelo
de Jacobi método
quanto de Jacobi
a de Gauss-Seidel
quanto a pelopara
convergirão a solução S. convergirão para a solução S.
de Gauss-Seidel
Veja aa aplicação
Veja aplicaçãoda da
Definição 1 aos 1Exemplos
Definição 2.9 e 2.10,
aos Exemplos conforme
2.9 e 2.10, a
análise a seguir:
conforme a análise a seguir:
a) Se| |aaiiii||≥
a)Se ≥ ZZii,para
i= todas
1,..., as linhas
n para i =as1,linhas
todas ..., n: i:

3 x1 − x2 − x3 =1 3 ≥ −1 + −1 V

 x1 + 3 x2 +=
x3 5 3 ≥ +1 + +1 V
 2 2 ≥ +1 + −1 V
 x1 − x2 + 2 x3 =
temosuma
temos umacondição
condição verdadeira,
verdadeira, poispois o módulo
o módulo de cadadeelemento
cada
da diagonaldaprincipal
elemento diagonalé principal
maior ouéigual
maiorà soma dosamódulos
ou igual soma dosdos
demais
móduloselementos da respectiva
dos demais elementoslinha.
da respectiva linha.
b) Se | aii |> Z i , i =
1,..., n para alguma linha i:

3 x1 − x2 − x3 =
1 3 > −1 + −1 V
2 2 ≥ +1 + −1 V
 x1 − x2 + 2 x3 =
temos uma condição verdadeira, pois o módulo de cada
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 165
elemento da diagonal principal é maior ou igual a soma dos
módulos dos demais elementos da respectiva linha.
b) Se i=
b) Se| |aaiiii| |> Zii ,para alguma
1,..., n para alguma
linha linha
i = 1, ..., n: i:
nal

3 x1 − x2 − x3 = 1 3 > −1 + −1 V

 x1 + 3 x2 +=x3 5 3 > +1 + +1 V

Comrelação
x1 − x2 + à2 xconvergência
2 2 ≥ +1 +dos−1 métodos iterativos, algumas
3 =
características importantesé verdadeira
AAcondição
devem ser salientadas, entre as quais
tacional condição também verdadeira para
para asas duas
duas primeiras
primeiras equações.
equações.
destacamos:
Logo,esse
esse sistema, resolvido nos Exemplos 2.9 esatisfaz
2.10, satisfaz
ComLogo,
relaçãosistema, resolvido
à convergência dosExemplos
nos métodos2.9 e 2.10,
iterativos, algumas o critério de
o critério
Scarborough
características
dedaScarborough
a)importantes
A convergência
diagonal da diagonal
para portantodominante
ser asalientadas,
dominante
devem esolução tem {
S =entre
lim as
convergência}
(k ) ∞
X e quais
portanto
k =0
não depende
garantida.
Com relação à convergência
tem convergência garantida. dos métodos iterativos, algumas
destacamos: dorelação
valor àinicial . Portanto, a iterativos,
escolha do asX quais adequado
(0) (0)
características
Com importantes devem
convergência dosser salientadas,
métodos entre
algumas carac-
terísticas
destacamos:
a) afeta apenas
importantes
A convergência para aa solução
devem quantidade { X (entre
S = limde
ser salientadas, } asnãoquais
kiterações
) ∞
k =0
necessárias.
destacamos: Quanto
depende
mais próxima a solução estimada X (0) estiver da solução
solução S = lim { X }adequado
(k ) ∞
do valor inicial . Portanto, a escolha do
(0) (0)
a) convergência para
a) A convergência para a solução X depende do
não depende
exata
afeta apenas S,
a mais
quantidade rápida
de será a convergência
iterações necessárias.
k =0
(se convergir).
Quanto
valor inicial X . Portanto, a escolha do X adequado afeta apenas
(0) (0)
do valor inicial (0) . Portanto, a(0) escolha do X adequado
(0)

maisb) Oa quantidade
próxima de da
a solução
teorema iterações
estimada necessárias.
convergência
X Quanto
estiver maisuma
da solução
contém próxima a
condição
afeta apenas
solução a
estimadaquantidade de
X a convergência
(0) iterações
estiver da solução necessárias. Quanto
exata S, mais rápida será a
exata S, mais rápida
suficiente, será
porém não estimada
necessária.(se convergir).
mais próxima
convergência (sea convergir).
solução X (0)Portanto,
estiver da se esse teorema
solução
b) O teorema
for da convergência contém uma condição
exataverdadeiro,
S, mais rápida a será
sequência S convergirá;
a convergência se não for, nada
(se convergir).
b) O teorema
suficiente, porém nãode convergência contém uma
necessária. Portanto, se esse condição
teoremasuficiente,
b) podemos
O teoremaafirmar. da convergência contém uma condição
porém nãoa necessária.
for verdadeiro, sequência Portanto, se esse
S convergirá; seteorema
não for,for verdadeiro, a
nada
suficiente,
sequência Sporém não necessária.
convergirá; se não for, Portanto,
nada podemos se esse teorema
afirmar.
podemos afirmar.  x1 + 2 x2 = 3
for verdadeiro,
Exemplo 2.11:a sequência
verifiqueS convergirá;
que, em se não for, nada , Gauss-
podemos afirmar.  x1 + 2 x2 = 3  x1 − 3 x2 = −2
Exemplo Exemplo2.11:2.11:
verifique que,
verifique que,em
em  x − 3 x = , Gauss-
-Seidel fornece uma sequência
 1 2 2, Gauss-Seidel fornece
−convergente, mesmo
uma sequência convergente, mesmo  x1 +satisfazendo
não 2 x2 = 3 o teorema
-SeidelExemplo
fornece 2.11:
uma verifique
sequênciaque, em 
convergente, mesmo, Gauss-
de convergência: x1 − 3 x2 =−2
não satisfazendo o teorema da convergência: 
-Seidel fornece
não satisfazendo uma sequência
o teorema convergente, mesmo
da convergência:
 x1= 3 − 2 x2
 x1= 3 −não
2 x2 satisfazendo o teorema da convergência:
  x= (2 + x1 ) / 3
 x=
2 (2 + x21 ) / 3
 x1= 3 − 2 x2

Na 2 Tabela
Na Tabela
 x= 2.6,
(2 / 3 2.6,a temos
+ x1 )temos a evolução
evolução iterativa daiterativa
solução da solução
Na Tabela 2.6, temos a evolução iterativa da solução aproximada
aproximada
aproximada
por Tabela
Na 2.6, por
por Gauss-Seidel:
Gauss-Seidel: temos Gauss-Seidel:
a evolução iterativa da solução
aproximada
Tabela 2.6 – Evolução iterativapor Gauss-Seidel:
da solução aproximada por Gauss-Seidel
Tabela 2.6 – Evolução iterativa da solução aproximada por Gauss-Seidel
k
Tabela 2.6 – Evolução x1 da solução
iterativa x2 aproximada por Gauss-Seidel
k x1 x2
0 k 0 x1 0 x2
1 03 0
0.666667 0
 x=
2 (2 + x1 ) / 3

166 Na Tabela 2.6, temos a evolução iterativa da solução


CÁLCULO NUMÉRICO COMPUTACIONAL
aproximada por Gauss-Seidel:

Tabela2.6
Tabela 2.6 ––Evolução
Evoluçãoiterativa da solução
iterativa aproximada
da solução por Gauss-Seidel
aproximada por Gauss-Seidel

k x1 x2
0 0 0
1 3 0.666667
2 1.666667 1.666667
3 -0.333333 1.222222
Capítulo 2 – Solução Computacional de Sistemas de Eq
4 0.555556 0.555556
Capítulo 2 – Solução Computacional de Sis
5 1.888889 0.851852
6 1.296296 1.296296
30 1.002284 1.002284
20 0.982658 0.982658
40 0.999699 0.999699
30 1.002284 1.002284
50 1.000040 1.000040
40 0.999699 0.999699
60 0.999995 0.999995
50 1.000040 1.000040
70 1.000001 1.000001
60 0.999995 0.999995
76 1 1
70 1.000001 1.000001
Fonte: Elaboração própria
76 1 1
c) Um sistema que não tenha diagonal dominante pode, em
Fonte: Elaboração própria. Fonte: Elaboração própria
alguns casos, ser transformado para ter diagonal dominante
c) Um
através desistema
troca de que não
linhas tenha
e/ou diagonal
colunas dominante
(pivotamento pode, em
parcial
c) Um sistema que não tenha diagonal dominante pode, em alguns
casos, alguns
ou total). casos, ser transformado
ser transformado para
para ter diagonal ter diagonal
dominante dominante
através de
d)troca através
de
O critériolinhasde
de troca
e/ou de linhas
colunas
convergência dee/ou
(pivotamentocolunas (pivotamento
parcial
Scarborough ouenunciado
total). parcial
ou total). não é o único. Podemos verificar na literatura
anteriormente
d) O critério de convergência de Scarborough enunciado anterior-
d) Onão
outros
mente critério
critérios dede
é o único. convergência
convergência.
Podemos deliteratura
verificar na Scarborough enunciado
outros critérios
e) de anteriormente
O convergência.
teorema não é o único.
de convergência, Podemos
baseado verificar na da
na dominância literatura
outros critériosdadematriz
diagonal convergência.
e) O teoremaprincipal de coeficientes
de convergência, baseado na dominânciado dasistema,
diagonal
indica
e) Ouma
principal redução
teorema
da matriz dos erros da
de coeficientes do solução
convergência, baseado
sistema, aproximada
nauma
indica em
dominância
redução da
cadaerros
dos iteração. Por
da solução
diagonal exemplo,danomatriz
aproximada
principal sistemadedos
em cada Exemplos
iteração. 2.9 esistema,
Por exemplo,
coeficientes do
no sistema
2.10: indicados Exemplos
uma redução2.9dos
e 2.10:
erros da solução aproximada em
3 x1 −cada x2 −iteração.
x3 = 1 Por exemplo, no sistema dos Exemplos 2.9 e
 2.10:
 x1 + 3 x2 + x3 = 5
 x −3xx +−2 xx =
 1 21 3 2 −2 x3 =1

x + 3 x2 + xequações
temos as 1seguintes 3 =5 iterativas:
 x − x + 2x =
 1 2 ( k ) 3 ( k2)
 x1 =
( k +1)
(1 + 1 x2 + 1 x3 ) / 3
3 x1 − x2 − x3 = 1
 167
 x1 + 3 x2COMPUTACIONAL
CAPÍTULO 2 – SOLUÇÃO + x3 = 5 DE SISTEMAS DE EQUAÇÕES LINEARES
 x − x + 2x = 2
 1 2 3

temos
temos as
asseguintes
seguintesequações
equaçõesiterativas:
iterativas:

 x1( k +1) =
(1 + 1 x2( k ) + 1 x3( k ) ) / 3
 ( k +1)
 x2 = (5 − 1 x1( k +1) − 1 x3( k ) ) / 3
 ( k +1)
 x3 = (2 − 1 x1( k +1) + 1 x2( k +1) ) / 2
cional
(0)
Naequação
Na equaçãodede x1 do
x1 do sistema
sistema anterior,
anterior, a solução
a solução inicial inicial
(0)
X é nula, é
X logo
redução de erros promovida
(0) pela
(0) própria equação iterativa
Xnula,temlogo
um erroX tem unitário
um em erro todas as incógnitas
unitário em todas (pois
asaincógnitas
solução exata
de x1 , na qual osredução
dois
é(pois
1 para valores
cada
de de xpromovida
e x3 , Observe
incógnita).
erros cadapela umquecoma seuequação
solução
própria para x na primeira
iterativa
a solução exata é 1 para cada incógnita). Observe
2
1 que
erro interno 1.0, são multiplicados
iteração
dea xsolução é
, na qual0.333, por
logo
osxdois coeficientes
tem um
valores de erro unitários
menor do
x2 e x3 ,é cadaque 1.0, ou seja, erro
1 para na primeira iteração 0.333,um com
logo temseu
um
e divididos pelaerro de 0.667.
diagonal Isso decorre
principal
1
da redução
3.0, logo ocorre de erros
uma promovida pela própria
errointerno
menor1.0, do são
quemultiplicados
1.0, ou seja, erro pordecoeficientes
0.667. Isso unitários
decorre da
equação
redução de erro aplicado naiterativa
equação de x
de , na qual os dois
1 x , passando do erro
valores de x2 e x3, cada um
e com
divididos
seu erropelainternodiagonal
1.0, são principal
1
multiplicados3.0,porlogo ocorre uma
coeficientes unitários
inicial que era 1.0redução
para o de novo erro 2/3 em x =0.333. Assim,
e divididoserro pelaaplicado
diagonalnaprincipal
1equação de x , passando do erro
3.0, logo
1 ocorre uma redução
quanto maior forinicial
adediagonal
erro que principal,
aplicado
era 1.0na mais
equação
para o novo dominante
de erro 2/3 esta
x1, passando
em xdo erro inicial
=0.333. que era
Assim,
1
será e maior também 1.0 será
para o a redução
novo erro de
2/3
quanto maior for a diagonal principal, erro
em xda= solução
0.333. de
mais dominante estafor a
Assim, quanto maior
1
uma iteração para diagonal
outra.
será e maior principal,
também mais
serádominante
a reduçãoesta erroe maior
deserá também
da solução de será
a redução
x + 2 x = 3 de erro da solução de uma iteração para outra.
f) No sistema  uma2 iteração para outra.
1
do Exemplo 2.11, que não tem
 x1 − 3 x2 =
−2
x + 2 x =
3
f)f) No
diagonal dominante Nosistema
esistema
1
mesmo assim
2
doExemplo
do
converge,Exemplo2.11, queque
2.11,
as equações nãonão
tem tem
diagonal
x
 1 − 3 x2 = −2
iterativas são: dominante e mesmo assim converge, as equações iterativas são:
diagonal dominante e mesmo assim converge, as equações
 x1= 3 − 2são:
iterativas x2

 x= (2 + x1 ) / 3
 x1= 3 − 2 x2
2


Observe que na equação
 x= x1 ) /x31 ocorre uma amplificação do erro
(2 + de
Observe que na equação de x1 ocorre2
uma amplificação do
inicial de x , que é multiplicado por 2 e propagado para x , mas na
erro inicial de x2 ,Observe
que é multiplicado
quede
2
por 2 edepropagado
nax2equação para amplificação1 do
ocorre do
uma
2a equação, , ocorrre umax1redução erro existente em x1, que
x1 , mas na 2ª equação,
é de x
multiplicado
erro inicial de
2
, ocorrre
por uma
1/3 e redução
depois do erro
x , que é multiplicado por 2aexpropagado
atribuído . Assim, ocorre
para uma
2 2
existente em x1 , que , émas
multiplicado
x redução naglobal depor 1/3de
erros
2ª equação, e depois
promovida atribuído
mais
x , ocorrre fortemente
uma redução pela equação
do erro
1 2
a x2. Assim, ocorrede
umax2. Note
reduçãoque global
a segunda equação
de erros tem diagonal bem dominante
promovida
existente em x1 , que é multiplicado por 1/3 e depois atribuído
|–3|>|1|
mais fortemente apela e
equaçãoacaba compensando
de xuma. Note a não dominância da diagonal da
que aglobal
segunda
x . Assim, ocorre
primeira
2
2 redução
equação |1|<|2|. de erros promovida
equação tem diagonal bem dominante
mais fortemente −3 > de
pela equação 1 xe .acaba
Note que a segunda
2
compensando a equação
nãovamos
A seguir, dominância
apresentar da diagonal da primeira
tem diagonal bem dominante tentar
um artifício matemático para −3 >otimizar
1 eumacaba
proces-
equação 1 so
< iterativo.
.
2compensando a não dominância da diagonal da primeira
equação 1 < 2 .

r, vamos apresentar um artifício matemático para tentar otimizar


Capítulo 2 – Solução Computacional de Sistemas de Equações
168 CÁLCULO NUMÉRICO COMPUTACIONAL

Capítulo 2 – Solução Computacional de Sistemas de Equações Lineares


oscilando, ou muito lentamente, por isso recomendamos usar fatores
2.2.4 Aplicação de coeficientes de relaxação
de sub ou sobre-relaxação, para tentar reduzir o número de iterações.
toNos casos deNos
lentamente, casos
sistemas
por de
quesistemas
isso recomendamos não tenham de equações
diagonal
usar lineares com diagonal
dominante
fatores principal
e o Gauss-
Seidel pouco
elaxação, seja dominante, oaprocesso
paradivergente,
tentar reduzir
iterativopode
sub-relaxação
o número de iterações.
poderátorná-lo
convergir oscilando, ou muito
convergente.
lentamente, por isso recomendamos usar fatores de sub ou sobrerrelaxação,
mas que não Por exemplo, para obter o valor mais atualizado de uma
paratenham diagonal
tentar reduzir ( k +1)
dominante
o número e o Gauss-
de iterações. Nos casos de sistemas que não
incógnita
ente, iterativa
a sub-relaxação pode
x qualquer,
torná-lo podemos
convergente.
tenham diagonal dominante e o Gauss-Seidel seja divergente,
i escrevê-la da seguinte
a sub-relaxação
forma: pode até o tornar convergente.
lo, para obter o valor mais atualizado de uma
Por podemos
a xi( k +1) qualquer, exemplo, para obter
escrevê-la
xi( k +=
1)
xi( k )o+da
valor +1) mais atualizado de uma incógnita
∆xi( kseguinte
iterativa xi (k + 1)
qualquer, podemos escrevê-la da seguinte forma:
em que ( kx+i1)( k ) é (ok ) valor antigo, do passo iterativo k; e ∆xi( k +1) é o valor
xi = xi + ∆xi( k +1)
da atualização imposta ao valor antigo xi( k ) para atingir o valor novo
( k +1)
alorxi antigo,do passo iterativo k + 1.k; e ∆xi( k +1) é o valor
em do quepasso
xi(k) é oiterativo
valor antigo, do passo iterativo k; e ∆xi(k + 1) é o valor da
Quando
posta aoatualização
valor antigo oimposta
processo
xi para
(k )
iterativo
atingir
ao valor não
xi(k) converge
o valor
antigo novo
para atingirbem, o valordevemos
novo xi(k + 1) do
tentar
rativo +impor
k passo um fator
1. iterativo k + 1.artifical na atualização do valor novo, ou
seja, nãoiterativo
processo Quando
aplicar o processo
100%
não iterativo
da atualização
converge bem,não converge ∆
calculada
devemos bem,
xi( k +1)devemos
sobre otentar
valorimpor
antigo um fator
xi( k ) , por artifical
meio na atualização
de um (kfator do valor novo, ou
de relaxação λ , com seja, não aplicar 100% da
0 < λ < 2 , da
fator artifical na atualização
atualização calculada ∆xi do
+ 1) valor novo, ou
sobre o valor antigo x , por meio de um fator
(k)
seguinte
100% da de forma: calculada ∆xi( k +1) sobre o valor i
atualização
relaxação λ, com 0 < λ < 2, da seguinte forma:
eio de um fator de relaxação λ , com 0 < λ < 2 , da
xi( k +1) = xi( k ) + λ * ∆xi( k +1) (18) (18)

Quando o processo iterativo converge oscilando, ou até mesmo


Quando o processo iterativo converge
λ * ∆xi( k +1) quando oscilando, ou até
diverge, devemos tentar aplicar um(18)
fator de redução, desaceleração
mesmoouquando amortecimento diverge,na devemos
atualização tentar aplicar
do valor novo, um oufator
seja, de redução,
impomos um fator
desaceleração
processo ou
sub-relaxação
de iterativo amortecimento
λ, com 0oscilando,
converge na atualização
< λ < 1 na eq. ou(18).
até do valor novo, ou
seja, impomos
verge, Quando
devemos tentar um fatoro processo iterativo
de sub-relaxação
aplicar converge
um fator de redução, lentamente,
λ , com 0 < λ podemos< 1 na eq.tentar (18).aplicar
( k +1) na 1atualização
i −1 n
um
Quando fator de ampliaçãoiterativo
o processo ou aceleração do
( k ) valor novo,
( k ) ou seja,
amortecimento na atualização do valor xconverge = (blentamente,
novo, ou podemos
i −  aij x j −  aij x j ) (14)
impomos um fator de sobrerrelaxação λ,aiicom 1 < i
λ < 2, também na eq. (18).
tentar
m fator aplicar
(14) de sub-relaxação um fator de
λ , com ampliação
0 <=λ 1,< 1temos ou aceleração
na eq. (18). j =1
na atualização
j =i +1
Observe que, se λ a equação
j <i
evolutiva
j >i
original
do valor
processo xi (k +novo,
iterativo
1) ou seja,
converge
= xi + 1 * ∆xi
(k) impomos
(k
, com 100% da atualização calculada pelo λmétodo
Pg.
lentamente,
+ 1) 168 um fator
podemos de sobrerrelaxação ,
com de
fator λ < 2 , No
< ampliação
1 original. tambémcaso
oudo na eq.No(18).
método
aceleração caso
de do método de
Gauss-Seidel,
na atualização queGauss-Seidel,
fornece diretamenteque fornece diretamente o val
o valor
nte o valor
u seja, novo xi um
novo
Observe
impomos
( k +1)
podemos
, podemos
que, se λde
fator reescrever
, temoso ovalor
= 1reescrever
sobrerrelaxação a valor do
doincremento
equação λincremento
, evolutiva Δxi original
( k +1)
= xi − xi(k ) dentro da eq
( k +1)

mbém = xdentro
xi( k +equação
ro da
1)
na
da( k +equação
i + anterior,
(k )
eq. * ∆xi
1(18). 1)
,gerandoanterior,
com 100% dagerando
umaequação
uma equação
alternativa:
atualização calculada alternativa:
pelo método
ue,original.
se λ = 1Alternativamente,
, temos a equação podemosevolutiva
Pg. 192
reescrever
original o valor da atualização
total100%
com (incremento
da atualização iterativocalculada
original dopelo método) ∆xi( k +1) = xi( k +1) − xi( k ) dentro
f ( x) = e x sen( xmétodo
) −1
da equação
vamente, podemos anterior, que gera
reescrever oPg. uma
valor193 da forma alternativa:
atualização
terativo original do método) ∆xi(xk +1)= =g x(i(xk )+1) − xi( k ) dentro
altacional
tacional
alcional
ional CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 169

xkkii)()λλk ) ((λλxxλλi((k(x+x((1)((xxkk+ii(−−+1)k1)+xx1)−−i( k−−x)x))((xxkkii)()k))) ))


( k +1) ( k ) ( k ) ( k +1) ( k +1)( k ) ( k )
xi(( kkx++x1)1)((xxkk+ii(=+
+1) x=+
k1)+1) =+
) ((x
i( k=+
xi ii =+ x=+
i ii
xx i ii i ii
( k +1)
xi(( kkx++x1)1)((xxkk+ii(= (1 −= λ(1 ) − x λ( k ) (( kk ))
) +x λ + x λ( k +1) (( kk ++1)
* x +1)1) 1)
−−)−λλx)λii()kx))xi(+i(xkk)ii)λ++*+λλxλii(**kx+x*1)i(i(xkk+ii (19)
k +
+1)1) =
1)
xi ii = =
(1= (1λ(1
−(1
*
(19)(19)
(19)
(19)
(19) (19)
Por Por exemplo,
exemplo,
Por exemplo, aaaplicação
a aplicação dedede relaxação
relaxação parapara o método
oométodo de de Gauss-
Gauss-
PorPor
PorPor exemplo,
exemplo,
exemplo,
exemplo, aaaaplicação
aplicação
aplicação
aplicação
a aplicação dedederelaxação
de relaxação
relaxação
relaxação
relaxação para
para
para
para
para ométodo
método
oométodo
método
o método de deGauss-
dede
de Gauss-
Gauss-Seidel,
Gauss-
Gauss-
Seidel,
Seidel,
dada
Seidel, dada
dada pela
pela
dada pela
eq.eq. eq.
(17),
(17),
pela eq. (17),
geragera
a
(17), gera
a a seguinte
seguinte
seguinte
gera equação
equação
equação geral: geral:
geral:
Seidel,
Seidel,
Seidel, dada
dada
dada pela
pela
pela eq.
eq.eq. (17),
(17),
(17), gera
gera
gera aaaseguinte
seguinte
seguinte
a seguinte equação
equação
equação
equação geral:
geral:
geral:
geral:
1 i −1 ii − 1 n n
( k ) (( kk )) 1 1 −(bii−1−iia−−∑
( k +1)
xi(( kk ++1)1)((xxkki+(+= 1) =
1)+(1 −
= λ
(1 )− x λ ) xi λ+++λλλ(bai((−bb(b∑
x
+
−−)−λxλii()λ)kx)x)ii+
λ +1 λ 1
(1
b
i −∑ a∑
11−1 ( k +1) (( kk +
x a x
j ∑
− +1)n− na
1)
−=−i − aj∑

n n ( k ) (( kk ))
ij x
a )x ))
i = 1,ii = n (20)
n (20)
j =1 ∑ +∑ 1∑
k1)
aii aiii ii∑ )) ⇒⇒ 1, 2,...,
j∑
xi xxii i= =
= −(1 (1
(1λ ( (
k k)
i )
−− ij aa(ijjjijakx+xij1)jxj −
ij( (kk++
j 1)
1)
aa1(ijjjijakx)xijij)(j(xjkk)jj)⇒ 2,...,
= (20)
(1 jij=1x
aii aaiiii ii j =<1 ijj==1jj1 << ii
j = 1 j
= iji +x
= i + 1 ⇒ ⇒⇒ 1,1,
i i=ii=1,==1,
1, 2,2,...,
...,
2,...,
2,...,
2,..., nn(20)
(20)
n n(20)
n (20)
j = >i +ji1j= = ijji++1> 1i
>i
j < ijj << ii j > jij >> ii

Lembramos
Lembramos
Lembramos que que a eq.
a aeq.
que (20)(20) somente
somente devedeve ser
serser aplicada
aplicada com com
Lembramos
Lembramos
Lembramos que que
quea aaeq.
eq. eq.
eq. (20)
(20)
(20)
(20) somente
somente
somente
somente deve
deve
deve
deve ser ser
ser aplicada
aplicada
aplicada
aplicada com
com
com
com
os
osos Lembramos
coeficientes
coeficientes a
aijaanão que
não a eq. (20)
nulos,
nulos, para somente
para deve
evitar
evitar ser aplicada
operações
operações com os coefi-
aritméticas
aritméticas
oscoeficientes
osos coeficientes
coeficientes
coeficientes aijnão
não
aij nulos, não
não nulos,
nulos,
nulos,
nulos, para
para
para
para evitar
evitar
evitar
evitar operações
operações
operações
operações aritméticas
aritméticas
aritméticas
aritméticas
cientes a
desnecessárias.não ijij ij para evitar operações aritméticas desnecessárias.
desnecessárias.ij
desnecessárias.
desnecessárias.
desnecessárias.
desnecessárias.

Exemplo Exemplo 2.12: 2.12: resolva resolva o sistema,


oo osistema, a seguir, pelo método de
Exemplo Exemplo
Exemplo
Exemplo
Exemplo 2.12: 2.12:
2.12:
2.12: resolva resolva
resolva
resolva
resolva osistema,
sistema,
osistema,
sistema,
o sistema, aa aseguir,
aaseguir,
seguir,
aseguir, pelo
seguir,
seguir,
pelo
pelo
pelo
pelo
método
pelo
método método dede
de
de Gauss-Seidel
método
método
método dede
Gauss-Seidel
Gauss-Seidel adotando adotando uma uma sub-relaxação
sub-relaxação λ = λ =
0.5 (lembrando
(lembrando
0.5
adotando uma
Gauss-Seidel
Gauss-Seidel
Gauss-Seidel
Gauss-Seidel sub-relaxação
adotando
adotando
adotando
adotando uma uma
uma
uma λsub-relaxação
sub-relaxação
sub-relaxação
sub-relaxação λ =λλλ0.5
= 0.5 (lembrando que,
===0.5
0.5 no Exemplo 2.10,
(lembrando
(lembrando
(lembrando
(lembrando
0.5
que, que,
a
que, no
solução no
Exemplo
noExemploExemplo
sofreu
Exemplo 2.10, 2.10,
a a
oscilações
2.10, solução
solução ao longosofreu
sofreu oscilações
oscilações
das iterações, ao ao
longo
logo longo
dasdas
é indicada
das uma
que, que,
que, nono no
ExemploExemplo 2.10,
2.10,
2.10, aaasolução
solução
solução
a solução sofreu
sofreu
sofreu
sofreu oscilações
oscilações
oscilações
oscilações ao
aoao aolongo
longolongo
longo das
das
das
iterações, sub-relaxação).
iterações, logo logo é indicadaé indicada uma uma sub-relaxação).
sub-relaxação).
iterações,
iterações,
iterações,
iterações, logo logo
logologo éééindicada
é indicada indicada
indicada uma uma
uma
uma sub-relaxação).
sub-relaxação).
sub-relaxação).
sub-relaxação).
3 x3−x11−x− −x22−x− = xx13 = 1
3x3113x3−x11x− x−22 xx−2x2 − x−33 xx=331 3== =
111
 x1 x+xxx3+ 1 x+
+3 3+xx22+xx+ +3 xx= xx53 == 5
555
 x1 +1131+x3223xx+22 + 3 = 33 5 =
3=

 xx1 x− xxx12−
1−−
x2 x+
xx+x2+ 2++
2= x3 =
xx33x2
223 2 = =222
2
 1 −x11x− 2 +22 2 x3 = 23=
Solução: Solução:
Solução:
Solução:
Solução:
Solução:
Solução:
Montando Montando
Montando
Montando asas as
equações
asequações equações
equações evolutivas
evolutivas evolutivas
evolutivas parapara cada para
cada
incógnita
para cada
cada incógnita
incógnita
do
incógnita do
doconforme
sistema, do
Montando
Montando
Montando asasas equações equações
equações evolutivas
evolutivas
evolutivas para
para
para cada cada
cada incógnita
incógnita
incógnita do
dodo
sistema, sistema,
a
sistema, eq. (20), conforme
conformetemos:
conforme a eq. a eq.
(20), (20), temos: temos:
sistema,
sistema,
sistema, conforme
conforme
conforme a eq. aaaeq. eq.
eq.(20), (20),
(20),(20), temos:
temos:
temos: temos:
 x1(( kk++1)1)(xx(kk1+(+= xλ (1λ
+
(1= λ−−)− (kk1))λ + x2(( kk+ (kk2))x3( k+
( k 1) ( k ) ) ( k ) ( k ) (( kk ))
( k )
+1) − (1
= − λ )) (xx+
(k ) (k )
+ λ + (1 + ) (x
x+ )x/ 3 ) / 3
++3+xx) 3)(3x(kk/33)))3) /)/ 33/ 3
k1)
 x1xx11 1= =
= (1
λ λλ 1)( k) ++ λ λ (1
++
11+ λ (1 + x2 22+2 x
1)
(1 − (1
(1 ) x ) xx 1 (1
(1 x x
 x2((kk++1)1)(xx(kk2+((+=−
1
λ )λλxλ (5λ
k +1) k +1) (( kk +
(1=− (kk2))λ +
( k ) (( kk ))
x1(( − 1) − )
1)( k ) ( k )
+1)
=− (1 λ )) (xx+ + λ −(5 − (x (kk1+− +x x/( k3) ) / 3
−−3( k−xx) (x(kk33)))) /)/ 33/ 3
k1)
x x =−
1)
=−
=− (1
λ
(1
(1 ) 2( k)
) xx + λ ++ λ λ −
(5
(5 (5 −− k +1)
x x x +1)

1)
 2(k+21)2 ( k +1)
x 2 (1 ) x 2 22 ( k )
2 (5 x 1 11 ( k +1)3 3)3 /( k3+1)
1 x
 x3(kxx+1)(xx(kk33+(+=− (1=− λ )λλxλ (kk3))λ + λ x1(( kk− 1)x2( k+
+1) k +1) ( k +1) ( k +1)
+1)
=− (1 λ )) (xx+
(k ) (k )
+λ(2 λ −(2 −xx+1)(xx(kk11+(+ x) / 2) / 2
+++xx+1)(x(kk22++1)1))) /)/ 2/22
k1)
=−
1)
=−
=− (1
λ 3)( k)
+ λ ++ λ − (2 −− +1)
1 11 + x2 22 ) / 2
x
 3 33  (1 (1
(1 ) x )3 33
xx 3 (2 (2
(2 x
Valor Valor inicial: inicial:( x1(0) ( (0)
(0)(,(0)
xxx1(0)
(0) (0)
,,,(0) (0) (0)
xxx2(0) ,)(0)
x=3(0)(0, ) =0,(0, 0)0, e0) λee=λλλ =
0.5 .0.5 .
Valor inicial: =)==(0, ==λ0.5
=0.5 .. .
(0)
Valor inicial: 1 11 2 22 3,,xx,)33x=3))(0,
Valor
Valor Valor inicial:
inicial:
inicial: 0,(0, 0,0, e0)eeλeλ .0.5
==0.5
(0) (0)
( x ((xx , x 1 ,,
2(0)x
x , x23(0) (0, 0,
0) 0) 0) 0.5
NaNa Na
Na Tabela Tabela
Tabela 2.7, 2.7,
2.7,temos temos
temos osos os
valores
osvalores valores
valores dede de 6 iterações
6 6iterações
de dadada solução
solução
NaNa Tabela Tabela
Tabela 2.7,2.7,
2.7, temos temos
temos osos valores valores dede 66iterações
iterações
iterações
6 iterações dadada solução
solução
solução
solução
aproximada aproximada com com fator fator de de
sub-relaxação sub-relaxação λ = λ0.5= .0.5 .
aproximada
aproximada
aproximada
aproximada com com
com com fator fator
fator
fator dede de desub-relaxação sub-relaxação
sub-relaxação
sub-relaxação λ =λλλ0.5
===0.5
0.5 .. .
.0.5
170 CÁLCULO NUMÉRICO COMPUTACIONAL

Capítulo 2 – 2Solução
Capítulo Computacional
– Solução de Sistemas
Computacional de de
de Sistemas Equ
Na Tabela 2.7, temos os valores de 6 iterações da soluçãoCapítulo 2 – Solução Computacional de Sistemas de
aproximada com
fator de sub-relaxação λ = 0.5.
Tabela 2.7 –Tabela
Valores
Tabela da
2.72.7 solução
– Valores aproximada
da da
––Valores solução pelo
solução método de
aproximada
aproximada Gauss-Seidel
pelo método
pelo decom
método de fator de
Tabela 2.7 Valores da solução aproximada pelo método de
sub-relaxação Gauss-Seidel com
Gauss-Seidel fator de sub-relaxação
Gauss-Seidel com
com fator
fator de
de sub-relaxação
sub-relaxação

k kk x1( k )x1x( k()k )


1
x2( k x) x2( k( k) )
2
x3( k x
) (k )
x3( k )
3
| x1( k||+x1)x1((k−
1
k++1)
1)
1
( k +1)( k +1) ( k ) ( k )
− xx|1( k )| |x2 | x2( k−+1)x2− x|2( k )| |x3 | x ( k−+1)x−
(k ) (k )
x1−
2 2
( k +1)( k +1) ( k ) ( k )
33
3− x x|( k ) ||
33

0 00 0 00 0 00 0 00 - -- - - - -
1 11 0.166
0.166
0.166 0.805
0.805
0.805 0.659
0.659
0.659 0.166
0.166
0.166 0.805
0.805 0.659
0.659
0.659
2 22 0.494
0.494
0.494 1.043
1.043
1.043 0.967
0.967
0.967 0.327
0.327
0.327 0.238
0.238 0.307
0.307
0.307
3 33 0.748
0.748
0.748 1.069
1.069
1.069 1.063
1.063
1.063 0.254
0.254
0.254 0.025
0.025 0.096
0.096
0.096
4 44 0.896
0.896
0.896 1.041
1.041
1.041 1.067
1.067
1.067 0.147
0.147
0.147 0.027
0.027 0.004
0.004
0.004
5 55 0.966
0.966
0.966 1.014
1.014
1.014 1.046
1.046
1.046 0.069
0.069
0.069 0.026
0.026 0.021
0.021
0.021
6 66 0.993
0.993
0.993 1.000
1.000
1.000 1.024
1.024
1.024 0.026
0.026
0.026 0.014
0.014 0.021
0.021
0.021

Fonte: Elaboração própria. Fonte: Elaboração


Fonte:
Fonte: própria
Elaboração
Elaboração própria
própria

AAsolução
Asolução
A aproximada
solução
solução aproximada
aproximada
aproximada( x1(6) 1x2,,xx,22x3,,xx3)3 =))(0.993,
(6)(6) (6)
((xx1,(6)
(6)(6) (6) (6)
== (0.993,
(0.993, 1.000, 1.024)
1.000, 1.024)foifoi
atingida
foi atingida
atingida
atingida
comcom
com
com critério
critério
critério
critério de
dede
de parada
parada
parada
parada Max Max
Max
( k +1)
( (
k k++
| xi||xxi − x−−i xxi|=
1)
1) ( k
(k ) (k ) )
=
||= emem
em
0.026
0.026
0.026 66iterações.
iterações.
6 iterações.
i i

OO processoO processo
Oprocesso
processo iterativo
iterativo
iterativo
iterativo com com
com
com oofator
o fator
o fator
fatordededesub-relaxação
sub-relaxação
sub-relaxação
de sub-relaxação ficou
ficou mais
ficou estável,
mais
mais
ficou mais
gerando
estável,estável,um processo
gerando
gerando um umde convergência
processo
processo dedede monotônicomonotônico
convergência
convergência (diferenças
monotônico entre
estável, gerando (kum
+ 1) processo convergência monotônico
iterações sucessivas xi – xi mantêm os mesmos
(k)
( k +1)sinais para cada passo
(diferenças
(diferenças
(diferenças entre
entre
entre iterações
iterações
iterações sucessivas
sucessivas
sucessivas k ) x((kk )) mantém os
(−
xi( k +xx1)i(i k−+1)xi− xiimantém mantém osos
iterativo), e consequentemente temos um processo iterativo mais rápido.
mesmos mesmos
mesmos sinais
sinais
sinaisparapara
paracada cada
cada passo
passo
passo iterativo
iterativo
iterativo k), e consequentemente
e consequentemente
k),k), e consequentemente
temos temos
temos um um
um processo
processo
processo iterativo
iterativo
iterativo maismais
mais rápido.
rápido.
rápido.
Note que, com as mesmas 6 iterações do método de Gauss-Seidel,
atingimos um critério de parada máximo de 0.026 com sub-relaxação, contra
0.129 sem sub-relaxação.
Note que, com O Gráfico
asmesmas
mesmas 2.3 demonstra a evolução de x1(k) (no
Note Noteque,
que,comcom asasmesmas 66iterações
iterações
6 iterações do
dodométodo método
método dede de Gauss-Seidel,
Gauss-Seidel,
Gauss-Seidel,
eixo
atingimos vertical) um e nível iterativo
critério de k (nomáximo
parada eixo horizontal)
de 0.026 usando
com o método de
sub-relaxação,
atingimos
atingimos umum critério dede
critério parada
parada máximo
máximo dede0.0260.026 com com sub-relaxação,
sub-relaxação,
Gauss-Seidel
contra 0.129 e sub-relaxação
sem sub-relaxação. λ = 0.5.
O Gráfico 2.3 demonstra a evolução
contra
contra 0.129 sem
0.129 sem sub-relaxação.
sub-relaxação. OO Gráfico
Gráfico 2.32.3 demonstra demonstra a evolução
a evolução
de
dede (k ) x
x1 x1 (no
(k )
(no
eixoeixo vertical)
vertical) e
e nível nível iterativo
iterativo k
k (no(no
eixo eixo horizontal)
horizontal) usando
usando
( k
1 )
(no eixo vertical) e nível iterativo k (no eixo horizontal) usando
o método
o método de de Gauss-Seidel
Gauss-Seidel e e sub-relaxação
sub-relaxação λ =λ 0.5 = 0.5 . .
o método de Gauss-Seidel e sub-relaxação λ = 0.5.
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 171

Gráfico 2.3 163


– Evolução de x1(k) e nível iterativo k aplicando o método de Gauss-Seidel e
de x1 ....
(k )
Gráfico 2.3 – Evolução
sub-relaxação λ = 0.5

x1( k )

k
Fonte: Elaboração própria.
174

Erro X = X − S = { 2.454557e − 04, 3.517819e − 04, 7.593722e − 05}


(12) (12)
Recomendamos sempre aplicar previamente um teste com fatores
de relaxação.
Erro X Você pode
= X −
(6)
X = {experimentar
(6)
0.00634271, 0.00119713,pelo
(12)
menos
0.0249755 } um fator de relaxação
menor do que 1 (0.9) ou outro maior do que 1 (1.1) e avaliar os seus efeitos,
se aumentam ou diminuem as iterações. Esses testes podem ser feitos com
critérios de parada mais grosseiros, para serem mais rápidos. Também é
importante buscar um fator de relaxação “ótimo”, que promova o menor
número de iterações totais.

Ficou claro até este momento que as soluções obtidas para os sistemas de equações
lineares são aproximadas e precisam ter um grau de confiabilidade definido. Então,
quais são os erros associados a essa solução aproximada S?

No Exemplo 2.12, vimos que os erros de arredondamento da solução S,


obtida com apenas 4 dígitos totais, estavam presentes a partir do terceiro
dígito fracionário: X(6) = {0.993, 1.000, 1.024}. Lembremos que, nos métodos
4

iterativos, o arredondamento não se propaga para dígitos mais significativos


como nos métodos eliminativos, porque usa os coeficientes originais de cada
equação. Então, se quisermos resultados com mais dígitos significativos,
devemos usar precisão maior, como a variável double de 16 dígitos significativos,
e teríamos resultados conforme a Tabela 2.8.
dígitos mais
precisão significativos
maior, como nos
como a variável métodos
double de 16 eliminativos. Então, se
dígitos significativos,
equisermos resultados conforme
teríamos resultados com mais dígitos
a Tabelasignificativos,
2.8. devemos usar
precisão maior, como a variável double de
172 16 dígitos
CÁLCULO significativos,
NUMÉRICO COMPUTACIONAL
Tabela 2.8 – Valores da solução aproximada
e teríamos resultados conforme a Tabela 2.8.pelo método de Gauss-Seidel e com
fator de sub-relaxação em precisão double
Tabela 2.8 – (Valores da solução aproximada pelo método( k )de Gauss-Seidel e com fator) de
k Tabela 2.8
x1 k –
sub-relaxação
) Valores da solução
em precisão
x2( k ) aproximada pelo xmétodo
double 3
de Gauss-Seidel
Max | xi( k +1) −exi( kcom
|
fator de sub-relaxação em precisão double
0 0(k ) 0 0 -
k x1 x2( k ) x3( k ) Max | xi( k +1) − xi( k ) |
1 0.166666666666667 0.805555555555555 0.659722222222222 0.805555555555555
0 0 0 0 -
2 0.494212962962963 1.043788580246910 0.967255015432099 0.327546296296296
1 0.166666666666667 0.805555555555555 0.659722222222222 0.805555555555555
3 0.748947080761317 1.069193940757890 1.063689222715190 0.254734117798354
2 0.494212962962963 1.043788580246910 0.967255015432099 0.327546296296296
4 0.896620734292838 1.041211977544270 1.067992422170450 0.147673653531521
3 0.748947080761317 1.069193940757890 1.063689222715190 0.254734117798354
5 0.966511100432207 1.014855401671690 1.046082286395100 0.069890366139369
4 0.896620734292838 1.041211977544270 1.067992422170450 0.147673653531521
6 0.993411831560569 1.000845347843240 1.024899522268220 0.026900731128362
5 0.966511100432207 1.014855401671690 1.046082286395100 0.069890366139369
Fonte: Elaboração própria
6 0.993411831560569 1.000845347843240 1.024899522268220 0.026900731128362

Observe
Fonte: Elaboração que
própria. as soluções de sistemas
Fonte: Elaboração própria de equações lineares
obtidas por métodos iterativos são soluções aproximadas a cada
iteração, Observe
Observe que
portanto que
astêmas soluções
soluções
erros de de sistemas
desistemas dealém
equações
de equações
truncamento, lineares lineares
obtidas
dos erros de
por métodos
obtidas poriterativos
métodossão soluções aproximadas
iterativos são soluçõesa cada iteração, portanto
aproximadas a cada
arredondamento presentes no último dígito significativo, logo devemos
têm erros de
iteração, truncamento,
portanto além de
têm erros dostruncamento,
erros de arredondamento
além dos presentes
erros de
ter
no uma
último forma
dígito de avaliar
significativo,esses
logo erros
devemos de truncamento
ter uma forma associados
de avaliar essesa
arredondamento presentes no último dígito significativo, logo devemos
cada
errossolução aproximada
de truncamento obtida.
associados a cada solução aproximada obtida.
ter uma forma de avaliar esses erros de truncamento associados a
Por
Porexemplo,
exemplo, qual é oéerro
qual de truncamento
o erro de truncamentomáximo da solução
máximo obtida
da solução
cada solução
anteriormente aproximada
em 6 iterações? obtida.
obtida anteriormente em 6 iterações?
Por exemplo, qual é o erro de truncamento máximo da solução
X (6) = {0.9934118315605686,
obtida anteriormente em 61.0008453478432351,
iterações? 1.0248995222682158}

X (6) =Considerando que 1.0008453478432351,


{0.9934118315605686, os erros de arredondamento foram
1.0248995222682158}
Considerando que os erros de arredondamento foram minimizados
minimizados aousomáximo (pelo uso da variável double),
umapodemos
ao máximo (pelo
Considerando que osdouble),
da variável erros podemos estimar
de arredondamento solução
foramS
estimar
mais próxima uma da solução S mais próxima
exata minimizando da exata
ao máximo minimizando
os erros de truncamentoao
minimizados ao máximo (pelo uso da variável double), podemos
decorrentes
máximo das aproximações,
os erros de truncamento ou seja, podemosdas
decorrentes teoricamente executar
aproximações, ou
estimar
infinitas uma solução
aproximações, S mais próxima
pois no limite da exata
de iterações: minimizando ao
seja, podemos teoricamente executar infinitas aproximações, pois
máximo os erros de truncamento decorrentes das aproximações, ou
nolimlimite
X ( k +1) de
= Siterações:
ééaateoricamente
solução
solução dede
A *AX *=X B= B infinitas aproximações, pois
seja, podemos
k →∞ executar
no limite de iterações:
Ou seja, depois Ou deseja, depoisiterações,
infinitas de infinitas iterações,
vamos vamos
atingir atingir a solução exata
a solução
do sistema. Nesse exemplo, com poucas equações, podemos fazer iterações
do sistema. Nesse exemplo, com poucas equações, podemos
até que o critério de parada seja o mínimo possível para as variáveis double
erações até que o critério
utilizadas, de parada
chegando seja o mínimo
aos resultados possível
apresentados para 2.9.
na Tabela
áveis double utilizadas, chegando aos resultados apresentados
ela 2.9.
azer iterações
113 atédo
exata que o critério
sistema. de parada
Nesse exemplo,sejacom
o mínimo
poucaspossível
equações, para
podemos
double
as variáveisfazer utilizadas, chegando aos resultados apresentados
iterações até que o critério de parada seja o mínimo possível para
na Tabela 2.9.
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 173
as difere de double
L3 variáveis L2 utilizadas, chegando aos resultados apresentados
na Tabela 2.9.
Tabela 2.9 – Valores da solução aproximada pelo método de Gauss-Seidel com
Tabelafator2.9de2.9
– Valores da solução
sub-relaxação noaproximada
limite pelo método
da variável de Gauss-Seidel com fator de
double
129 Tabela
sub-relaxação – Valores
no limite dadavariável
solução aproximada
double pelo método de Gauss-Seidel com
fator ( kde sub-relaxação no limite da variável double
k x1( k ) x2 ) x3( k ) Max | xi( k +1) − xi( k ) |
k0.448 x 1.857 (k ) 0.4308
x2( k )  1 x3( k ) Max | xi( k +1) − xi( k ) |
0 0 1
0  0 -
1  0− 0.319 0.805555555555555
0.166666666666667 0
(1.476) 0.279  3 L2 ← ( L2 − l21 * u13 ) / l22
0
0.659722222222222 0 0.805555555555555-
 10.421 0.002203 − 0.207 

0.166666666666667 0.8055555555555552 0.659722222222222 0.805555555555555
2 0.494212962962963 1.043788580246910 0.967255015432099 0.327546296296296
3 2 0.494212962962963
0.748947080761317 1.043788580246910
1.069193940757890 0.967255015432099
1.063689222715190 0.327546296296296
0.254734117798354
132
3 0.748947080761317 1.069193940757890 1.063689222715190 0.254734117798354
4 0.896620734292838 1.041211977544270 1.067992422170450 0.147673653531521
4 0.896620734292838 1.041211977544270 1.067992422170450 0.147673653531521
5
Erro
0.966511100432207
= [ S 1.014855401671690
− Sexato ] 1.014855401671690
5 0.966511100432207
1.046082286395100 0.069890366139369
1.046082286395100 0.069890366139369
6 0.993411831560569 1.000845347843240 1.024899522268220 0.026900731128362
6 0.993411831560569 1.000845347843240 1.024899522268220 0.026900731128362
134
12 0.999754544313626 0.999648218060907
12 0.999754544313626 0.999924062782415
0.999648218060907 4.66504270821e-04
0.999924062782415 4.66504270821e-04
li 2
55 1 55 1 1 1 1 1 0. 0.
135
Fonte: Elaboração
Fonte: Elaboração própria. própria
Fonte: Elaboração própria

li 3
Note que,Note Note
na que, que,
iteração na55,
iteração
na iteração o55, o 55,
critério o de
critério
critério de parada
deparada
parada − xi( k |) x| atingiu
Max | xi( k +1)Max
( k +1)
−x |
i
(k )
i

valor
136
atingiu valor nulo,
atingiu
nulo, portanto
valor nulo,ooalgoritmo
portanto portanto
algoritmo chegou ao limite
o algoritmo
chegou da precisão
chegou
ao limite ao digital
dalimite
precisão dadisponível,
precisão
de mododisponível,
digital
digital disponível,
que a solução
de modo que deobtida
modo não
quevai
a solução
mais variar
aobtida
solução usando
obtida
não
precisão
não vai
vai mais maisdouble:
variar variar
li 4 esta precisão double:
para
para esta precisão double:
S = {1, 1, 1}
150 caso é uma solução exata mesmo, pois os seus valores são inteiros)
(nesse
S = { 1, 1, 1 }
S = { 1, 1, 1 }
Cond
(nesse caso é umaA
Agora, >> 1
( )solução exata mesmo,
(nesse caso é uma solução exata mesmo, pois os seus valores são inteiros)
podemos calcularpois
os oserros
seus de truncamento
valores Capítuloda
são inteiros) 2 – solução X (6) de Sistemas
Solução Computacional  

obtida com
Agora, 6 iterações
podemos emcalcular
relação àos solução
erros exata S:Capítulo 2 – Soluçãoda
de truncamento
Computacional de Sistemas de Equ
solução
Agora, 173podemos
(6) calcular os erros de truncamento da solução
X obtida com 6 iterações em relação à solução exata S:
(6) Erro X (6)
=
X obtida com 6 iterações em X (6)
− {6.588168àesolução
S = relação − 03, 8.453478
exatae −S:04, 2.489952e − 02}
Erro X (6)= X (6) − S= {6.58816843943144e − 03, 8.45347843235089e − 04, 2.48995222682158e − 02}
− S= {6.58816843943144e − 03, 8.45347843235089e − 04, 2.48995222682158e − 02}
rro X (6)= X (6)174
Erro de truncamento máximo(6) X (6) − S = { 0.0248995222682158}
ErroXde
Erro truncamento
(12)de
= truncamentomáximo
{0.999754544313626, { 0.0248995222682158
máximo X0.999648218060907,
−S = }
0.999924062782415 }
O
O Erro
Erro de
detruncamento
truncamento máximo
máximo 0.0248995222682158
0.0248995222682158 ééda
damesma
mesma
O Erro de truncamento máximo 0.0248995222682158 é da mesma
ordem
ordemdedegrandeza
grandezaquequeoocritério
critériode
deparada
paradabaseado
baseadona namáxima
máximadiferença
diferença
ordem de grandeza que o critério de parada( kbaseado
+1) ( k ) na máxima diferença
entreduas
entre duasiterações
iteraçõessucessivas
sucessivas Max | xi − xi |= 0.0269007311283617
entre duas iterações sucessivas Max | xi( k +1) − xi( k ) |= 0.0269007311283617
e então esse critério de parada poderá ser usado como estimativa
e então esse critério de parada poderá ser usado como estimativa
de erro de truncamento.
de erro de truncamento.
Alternativamente, podemos estimar uma solução mais próxima
134 deordem
ordem grandeza de grandeza
que o critério que ode critério
parada debaseado
parada baseado na máxima na máxima
diferença diferença
ordem de grandeza que o critério de parada baseado na máxima diferença
entreda exata através de soluções|( kx+i1)Max−aproximadas pelo próprio mé
+
duas entre duas
iterações iterações
sucessivas sucessivas
Max ( k + 1) ( k
|) xi i |=
( kx
( k ) 1)
− xi |=
( k )
0.0269007311283617
0.0269007311283617
l174
entre duas iterações sucessivas Max | x − x |= 0.0269007311283617
i2
e então iterativo
e então
esse com
critérioessealgumas
critério
de parada iterações
de parada poderá
i
poderá a mais, por
ser
CÁLCULO NUMÉRICO COMPUTACIONAL
i
ser usado como exemplo,
usado usando o d
como estimativa
estimativa
e então esse critério de parada poderá ser usado como estimativa
de 135de de detruncamento.
erro de truncamento.
iterações ou o dobro de precisão no critério de parada. A
de erro
erro de truncamento.
para
el então calcular Alternativamente,
Alternativamente,
esse critério odeerro podemos
parada podemos
depoderá
truncamento
estimar
ser usado estimar
uma dauma
solução
como solução
soluçãomais próxima
estimativa de mais
erro próxima c
aproximada
i 3 Alternativamente, podemos estimar uma solução mais próxima
da da
de truncamento. exata (6) através de soluções aproximadas pelo próprio métodométodoco
da exata
exata através
iterações,
através
Alternativamente,X de, soluções
de soluções
podemos
podemos
aproximadas
compará-la
aproximadas
estimar uma pelo pelo
solução à próprio
solução
próprio
mais próxima aproximada
método da o dobro
136 iterativo com algumas iterações a mais, por exemplo, usando
iterativo
iterativo comalgumas
com algumas iterações
iterações a a mais,
mais, por por exemplo,
exemplo, usando usando o o dobro
dobro
exataiterações,
através
de iterações
de ou com
soluções
ou oo critério
aproximadas
dobro de de
pelo
precisão parada
próprio
no inicial
método
critério
iterativo
de parada.
com
0.02690073112836 Assim,
de literações
de algumas
iterações
i4 ou oodobro
ou
iterações dobro
a mais,de de precisão
precisão
por exemplo, no
nousando critério
critério de de
o dobro parada.parada.
de Assim,
Assim,
iterações ou
quadrado,
para parano
calcular tererro
o dobro de precisão (dobro de dígitos conside
parao dobro
para calcular
calcular de o precisão
o erro
errode deotruncamentode truncamento
critério
truncamento de parada.
dada solução
solução Assim, daaproximada
solução
aproximada
para aproximada
calcular com o com
6 6
erro com 6
150
deexatos),
iterações,
iterações, X ,,que
iterações,
truncamento
X (6)
(6) daXambas
podemos
podemos
(6)
, podemos
solução estarão
aproximada
compará-la
compará-la àmais
compará-la à comsolução
solução próximas
6 àiterações,
solução
aproximada
aproximada Xda exata
aproximada
(6)
, com
podemos12 do
com que12X (
12com
compará-la
Cond ( iterações, à1 solução aproximada mais precisa, ou com 12 iterações, ou
iterações,
iterações, )ou
A(6)
ou >>com
com oou com
critério odecritério
deparada
de parada
inicial inicial 0.0269007311283617
ao ao ao
deoparada
critério parada inicial 0.0269007311283617
0.0269007311283617
com oXquadrado,
critério= {0.9934118315605686,inicial 0.0269007311283617
1.0008453478432351, ao quadrado, para
1.02489952226821
quadrado, para para terdeo precisão
dobro de(dobro precisão (dobro considerados
de dígitos considerados
quadrado,
ter o dobro
173
para deter teroodobro
dobro
precisão (dobrode precisão
de dígitos (dobro consideradosdede dígitos
dígitos
exatos), considerados
que ambas (6)
exatos),
X
que
(12)
exatos),=
ambas que ambas
{0.999754544313626,
estarão estarão
mais mais
0.999648218060907,
próximas próximas
da exata do da exata (6)do(6)que X : }
0.999924062782415
que } X :X :
(6)
estarão
exatos), (6)mais
Erro X que = Xambaspróximas
(6) da
− S = {estarão exata
6.588168emais do que X
próximas
− 03, 8.453478 : e − 04,da exataedo
2.489952 − 02que
X (6) = {0.9934118315605686, 1.0008453478432351,
(12) 1.0008453478432351, 1.0248995222682158}
(6)
Veja que X tem
= {0.9934118315605686,
um erro menor do que X , comparado
(6)
X (6) 1.0248995222682158}
174
X = {0.9934118315605686, 1.0008453478432351, 1.0248995222682158}
(12)
X (12) X = {0.999754544313626,
(12)
= {0.999754544313626, 0.999648218060907,
0.999648218060907, 0.999924062782415
0.999924062782415 } }
XS exato:
= {0.999754544313626, 0.999648218060907, 0.999924062782415 }
X (12) = {0.999754544313626, 0.999648218060907, 0.999924062782415 }
(12) (6)
Veja que Veja
X (12) queum
(12)tem temmenor
X erro um erro
domenor
que X (6)do
, (6)que X , comparado
comparado com com 2
(12)Veja (12)
que X tem um erro menor do que X , comparado com
Erro X = X que X {tem um erro menor do que X , comparado com S exato:

S exato:
S exato: Veja S =
(12) 2.45455686373797 e − 04, 3.51781939092577
(6) e − 04, 7.59372175
S exato:
(ou seja, tem 4 dígitos significativos exatos)
Erro X (12) Erro
=Erro XX−(12)S ===
X (12) (12) (12)
(12)
−− SS =
= { 2.454557
{XX2.45455686373797 − 04,
e −e04,
2.45455686373797 3.517819 − 04,e 7.593722
e − 04, e3.51781939092577
3.51781939092577 e −e05
− 04,
− 04, 7.59372175846984 e − 05}
} 7.59372175846984 e
Erro X (12)
= X (12)
{ 2.45455686373797e − 04, 3.51781939092577e − 04, 7.59372175846984e − 05}
−S =
(6)
Assim, os erros de truncamento de X estimados em re
(ou seja, tem 4 dígitos(ou
Erro X (6) = X (6) − (ou
seja, tem(ou
significativos
= {tem
X (12)seja,
4 dígitos
exatos)
0.00634271,
significativos
seja, tem exatos)
4 dígitos significativos
0.00119713, exatos)
0.0249755 }
exatos)
4 dígitos significativos
(12)
aX
Erro (12) são:
Assim,
XAssim,= Xos erros
Assim,
os(12) de
{os
− S =de
erros truncamento
errosede
2.454557 − 04,
truncamento (6) X (6) estimados
Xde
truncamento
3.517819
de e − 04,de
estimados X (6)
7.593722
em em relação
estimados
e − 05
relação em relação
a }X(12) são:
(6)
(12) Assim,
a X176 são: a X os erros de truncamento de X estimados em relação
(12)
são:
(12)
a X Erro são: = {0.00634271275305764,
0.00634271, 0.00119713, 0.0249755 }
| Erro X x(6)( k = X{7.08210504629
X (12) =
(6)
X (6)
=
) X
(6)
−X (12)
0.00119712978232767, 0.02497545948
xi(6)
( k + 1)
− |(6)
=(12) e − 07, 9.67433540499 e - 07 ,
Erro X = X (6)i
− X
Erro X = X − X = { ={0.00634271275305764, 0.00119712978232767, 0.02497545948580049
0.00634271275305764,
(6) (12) 0.00119712978232767, 0.02497545948580049 } }
(12)8.37822022592 e − 07, 8.37822022647 07}
e −(12)
Erro X176 = Erro
(6)
X − Xde truncamento
Erro de truncamento
(6)

truncamento
={0.00634271275305764,
máximo Xmáximo
máximo máximo { − X−(12)
(6)
X(6) 0.02497545948580049
0.00119712978232767,
− X (12) X=
X = { 0.0249754594858004
0.02497545948580049
}
}
{ 0.02497545948580049 }
(6)
177 Erro de truncamento =
| xi de
Erro ( k + 1)
xi |= {7.08210504629
− truncamento
(k )
máximo X (9.67433540499
e − 07,
(6)
−X (12)
= { m0.02497545948580049
( me) - 07 , }
| xi( k +1)Então, xi( k ) Então,
|= o erromáximoo oerro
máximo máximo
de de
estimado, X (X comestimado,
m poriterações, com m itera
m)
−Então, o{7.69513875675
erro
Então,
8.37822022592 e −eX
de
erro 07, 9.26761935082
(m) X
estimado,
máximo
− 07, de
8.37822022647 com m e07
e) −iterações,
− ,07}
estimado, compara-
com m iterações,
por ção por comparação
ao
Então,valor
por comparação
exato erro aomáximo
o7.46579149946
estimado
comparação valor
Xe −ao
(2m)
ao exato
,07,
no valor
decaso,
valor X | estimado
6.62960115027
( m ) (6)
–exato
X estimado,
exato X e|−=estimado
(12)
07}Xestimado
(2 m )
, no
0.02497545948580049,
com Xcaso,
m iterações,
(2 m )
,Xno ,caso,
(2 m )
no c
177
178
é da
por comparação mesma ordem de grandeza do erro
ao valor exato estimado X , no caso, calculado por comparação
(2 m ) com
S| xexato,
( k +1) | (X
(6)
– S | =
−( kx+i 1) |= {7.69513875675
k) 0.0248995222682158.
e − 07, 9.26761935082e − 07,
max | xEssas xi( k ) | = 0.926761935082 06 cuidado, pois
e −todo
i

estimativas de erros de truncamento merecem
i
7.46579149946e − 07, 6.62960115027 e − 07}
o178
Erro critério max das X diferenças
(21)
= | X −pode
(21)
X ter
(61)
| =atingido valor suficientemente
1.08789550551380 e − 06 pequeno
em alguns casos, entretanto a solução ainda pode estar longe do valor exato,
como
max | nos x ( k +1)processos
− x ( k ) | de convergência = lenta.
0.926761935082e − 06
189 i i

αErro max X = | X (21) − X


(21)
2 = 1− i , α = 1+ i ( i =
3 −1 ) | = 1.08789550551380e − 06
(61)

= (1/ 2 ) * i ( 2π * n + π − i * ln ( 3) ) , n ∈ Z
α189
pequeno em alguns casos e a solução ainda pode estar longe do valor
cuidado, pois o critério das diferençasExemplo pode ser2.13: calcule a solução do
suficientemente
exato, como nos processos de convergência lenta.
pequeno em alguns casos e a solução ainda
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS máximo pode estar
DE EQUAÇÕES deLINEARES
truncamento
longe do valor da ordem
175
exato,
Exemplo como 2.13: nos processoscalcule a solução de convergência
do sistema, e fator lenta. ade relaxação
seguir, com erro otimizado pa
máximo de truncamento da ordem de 10-6, com n1 = 3 e n2 = 4
Exemplo
Exemplo 2.13: 2.13:calcule calculea asolução solução dodo =
sistema,
sistema, 2xai −seguir, axi +seguir,0.1
comcom =
erroerro→i 1
máximo
e fator de relaxação otimizado para esse  sistema:
1
de truncamento
máximo de truncamentoda ordem deda 10ordem
–6
, com de n1 −=10 x3i −-61e,+ncom22 x=i −4=nxe1i +fator ede 2relaxação
1= 30.1 n =→
= 4 i 2,..., n1 − 1
otimizado
 = 2 x − x para 0.1 esse
=
e fator de relaxação otimizado para esse sistema:
 → i 1  sistema:
− xi − 2 − xi −1 + = 2 xi 0.2  = → i n1 ,..., n2 − 1
i i +1


 i −1 x + 2 x i −= x i +1 0.1 =→ i 2,..., n 1 − 1 
 = 2xi − xi +1 0.1 =  → i 1i = 1 − xi −1 + xi = 0.3  → i= n2
− xi − 2 − xi −1 + = 2 xi 0.2  =→ i n1 ,..., n2 − 1
− − xi −1 + 2 xi −= xi +1 0.1  = i = 2,n1...,
→ i 2,..., − 1n2 – 1
 xi −1 + xi = 0.3  → i= n2 Solução:
− xi − 2 − xi −1 + = 2 xi 0.2  =→ i ni1= n1n,2...,
,..., − 1n2 – 1
− x + x =
Solução:
 i −1 i 0.3  → i= in2= n2 Observe que esse sistema não te
Observe que esse sistema não tem diagonais diagonal dominante de cada linha (as são igua
Solução:
diagonais de cada linha são iguais seus à soma coeficientes
dos módulos vizinhos,
de nenhu
Solução: que esse sistema não tem diagonal
Observe dominante (as
seus coeficientes vizinhos, nenhumatem é maior), convergência portanto não
Observe quede
diagonais essecadasistema linhanãosãotem diagonal
iguais àdominante soma dos(asmódulos diagonaisgarantida,
de cada
de
log
tem
linha convergência
são iguais à somagarantida, dos móduloslogo vamos implementar um
seus coeficientes vizinhos, nenhumaalgoritmo é maior), de Gauss-Seidel com u
de seus coeficientes vizinhos, nenhuma
portanto não
algoritmo
é maior), portanto de Gauss-Seidel
não tem convergência com uso de fatores
garantida, logode vamos relaxação,
implementar
tem convergência garantida, partindo da soluçãoum inicial nula e
um algoritmo
partindo da solução de Gauss-Seidel
inicial nula comlogo uso
e fazendo
vamos
de fatores implementar
de relaxação,
iterações até que partindo
o
algoritmo
da solução de Gauss-Seidel
inicial nula com
e fazendo iterações uso critério
de fatores
até que osucessivas máximode das
relaxação,
critério máximo diferenças en
critério máximo das diferenças entre iterações seja das
partindo
diferenças da
entre solução
iterações inicial nula seja
sucessivas
Max | xi( k +1) − xi( k ) |< 10−6 . Vamos usar precisão double,
e fazendo Max | xi iterações
( k +1)
− xi |< 10até
(k ) −6
. .Vamos
Vamos
que o usarusar pre
para minimizar
precisão máximo
critério double, para dasminimizar
diferenças a influência
entreaiterações de arredondamentos.
influência sucessivas seja
de arredondamentos.
a influência de arredondamentos.
Max | xi( k +1) −as
Obtemos |< 10−6 . Vamos usar
xi( k )equações precisão double, para minimizarxi emiterativas
Obtemos as equaçõesiterativas iterativas por isolamento
por Obtemos
isolamento dasdas incógnitas
as equações
incógnitas xi cada por
aequação
influência i, oude arredondamentos.
seja, isolamos as incógnitas multiplicadas pelas diagonais
em cada equação i, ou seja, isolamos asem cada equação
incógnitas multiplicadas i, ou seja, isolamo
principais as
Obtemos (sistemaequações na forma matricial):
iterativas por isolamento das incógnitas xi
pelas diagonais principais (sistema na pelasforma matricial):
diagonais principais (sistem
em cada equação i, ou seja, isolamos as incógnitas multiplicadas
pelas
=
xi (0.1 + xi +1 ) / 2 principais
diagonais  1i = 1
→ i=(sistema na = xforma + xi +1 ) / 2
(0.1matricial):  → i= 1
 i
= x
 i (0.1 + x + x ) / 2  =→ i i = 2,
2,..., n...,−n 1  – 1
=
xi (0.1 + xi +1 ) / 2
i −1 i +1
 → i= 1
1
= 2
 xi (0.1 + xi −1 + xi +1 ) / 2  =→ i 2,..., n
=  xi (0.2 + xi − 2 + xi −1 ) / 2  = → i in1=,..., n1n, 2...,− 1n2 – 1
=  xi (0.1 + xi −1 + xi +1 ) / 2  =→ i 2,..., n1 −= 1 xi (0.2 + xi − 2 + xi −1 ) / 2  = → i n1 ,..., n
=xi 0.3 + xi −1  → i= in= 2 n2
=  xi (0.2 + xi − 2 + xi −1 ) / 2  = → i n1 ,..., n2 − 1 = 
 xi 0.3 + xi −1  → i= n2
= 0.3 + no xi −1lado direito
Note
 xi que, das→equações
i= n2 iterativas, temos as mesmas incógni-
tas x calculadas no lado esquerdo das equações, portanto serão sempre as
incógnitas mais atualizadas 96 disponíveis.
Sem fator de relaxação, λ = 1.0, conforme a Tabela 2.10, temos:
portanto
lado são Note
Notedireito
que,
Note sempre
no
que,lado
das as
equações
no
que, incógnitas
direito
lado dasdas mais
equações
iterativas,
nodireito
lado atualizadas
temos
equações
direito as disponíveis.
das iterativas,
iterativas,
equações temos
temos as as temos a
iterativas,
Sem xfator
mesmas mesmas
demesmasincógnitas
relaxação,
incógnitas calculadas
x=
λesquerdo no
1.0 , conforme
calculadas lado aesquerdo
Tabela das
2.10,equações,
temos:das equaçõe
nitas
erativas,calculadas
temos no lado
as xincógnitas x nodas lado
calculadas esquerdo
equações, no lado das equações,
esquerdo
176
portanto são sempre as incógnitas maisCÁLCULO atualizadas disponíveis.
NUMÉRICO COMPUTACIONAL
portanto
empre
erdo são
as equações,
das sempre
incógnitas
portanto mais as atualizadas
são incógnitas
sempre as mais atualizadas
disponíveis.
incógnitas disponíveis.disponívei
mais atualizadas
abela 2.10 Sem fatorde
– Valores desolução
relaxação, λ = 1.0 , conforme
aproximada pelo método a Tabela 2.10, temos:
de Gauss-Seidel com
elaxação,
zadas λ =de
Sem disponíveis.
fator Sem ,critério
conforme
1.0relaxação,
fatordede λ a= Tabela
1.0 ,
relaxação,
parada Max | x ( k2.10,
conforme λ
+1) = ( ktemos:
1.0 ) ,aconforme
− x |< 10 Tabela
−6 2.10,
a temos:
Tabela 2.10, temo
Tabela 2.10 – Valores de solução aproximadai pelo método i de Gauss-Seidel com critério
Tabela 2.10,
Tabela
de temos:i x ( k )critério
parada2.10
Max–|xValores
(k + 1)
– xde
i
(k) solução
| < 10 –6 aproximada pelo método de Gauss-Seidel com

k de solução
es
Tabela x1( k ) aproximada
2.10 – Valores de
Tabela 2.10 –Tabela
Valores pelo método
2 solução
de solução deaproximada
parada
x3( kde
aproximada
)
| xi( k +1) − xi(4(kk) )|< 10
Gauss-Seidel
Max
pelo método com
−6
deMax | xi( k +1) − xi( k ) com
Gauss-Seidel |
2.10 – Valores de soluçãopelo método de
aproximada pelo Gauss-Seidel
método de Gauss-Seidel com
critério de paradax Max | xi( k +1)de
critério − xxparada
(k )
< 10−6Max
|critério
Max |
de
| x
x
(( kk +
parada 1) − x (( kk )) |< 10 −
+1)
− x Max|< (10
−6
k )| x
6( k +1)
− x (k )
|< (10
−6
0 de Gauss-Seidel
0k com 0 0 x 0 x4 i
k +1)
(k )
i i
i
(k ) i
i
(k )
Max | xi − xi |
(k )
do 1 2 3 i

1 −k x0.050000 k 0x0.075000 0 x0.162500


x( k33(( kk) )) 0Max |0.462500 0.462500
6
10 (k )
0x
x11(( kk )) (k )
x( k22(( )kk )) (k )
xi( k +1)xx−3( k44((0xkk) i))( k ) | ( k +1) ( k ))
x4(| kx)ii( k +1) − xii( kMax
k 2 3 xx
1 4 xx2 Max | | xi( k +1) − x
2 0.087500
1 0.1750000.0750000.231250
0.050000 0.162500 0.531250 0.462500 0.100000
0.462500
)
0 0Max2 |0xi( k +01)0.087500
− xi( k0) | 00 0 0
00.231250 00 0
3 0.137500 0.2343750.1750000.285938 0.531250
0.585938 0.100000
0.059375
10.075000
0.050000
3 0.162500
10.137500 0.075000
0.050000 0.462500
0.234375 0.162500
0.285938 0.462500
0.075000 0.462500
0.162500
0.585938 0.462500
0.462500
0.059375 0.462500
4 0.167187 0.276563 0.321875 0.621875 0.042188
20.175000
0.087500
4 2 0.231250
0.167187 0.175000
0.087500 0.531250
0.276563 0.231250
0.321875
0.175000 0.531250
0.100000
0.621875
0.231250 0.100000
0.042188
0.531250 0.100000
500
5 0.462500
0.188281 0.305078 0.346680 0.646680 0.028516
5
250
30.234375
0.137500
0.100000 30.188281
0.285938 0.1375000.305078
0.234375 0.585938 0.346680 0.059375
0.285938
0.234375 0.646680
0.585938
0.285938 0.028516
0.059375
0.585938 0.059375
0.276563 4 0.321875 0.276563 0.621875 0.321875 0.042188
9384 2.3333e-01
32
0.167187
0.059375
32 2.3333e-01
0.167187
3.6666e-01
0.276563
4.0000e-01
3.6666e-01
0.621875
0.321875
4.0000e-01 7.0000e-01
7.0000e-01
0.042188
0.621875
9.6743e-07
9.6743e-07
0.042188
50.305078
0.1882815 0.346680 0.305078 0.646680
0.188281 0.346680 0.028516
0.305078 0.646680
0.346680 0.028516
0.646680 0.028516
875 0.042188
Fonte: Elaboração própria. Fonte: Fonte: Elaboração
Elaboração própria
própria
680 0.028516
32 Com 32
3.6666e-01 32
2.3333e-01 iterações,
4.0000e-01 atingimos
7.0000e-01
3.6666e-01
2.3333e-01 Max | x (9.6743e-07
4.0000e-01
k +1)
x ( k ) |< 10−6 e temos:
− 7.0000e-01 9.6743e-07
Com 32Com iterações, atingimos 3.6666e-01
atingimos
32 iterações, Max | xi( k +1) −i xi( k )4.0000e-01
|<i 10−6 e 7.0000e-01
temos:
e temos: 9.6743e-07

0e-01
) Fonte:
X
9.6743e-07 Fonte:
Elaboração própria
(32)
= { 0.233331807351778, Elaboração
0.366664582137096,
Fonte:própria
0.399998194744437, 0.699998194744437}
Elaboração própria
= { 0.233331807351778,
( k(32) 0.366664582137096, 0.399998194744437, 0.699998194744437}
|X
+1)
xi (k )
−=xi {0.233331807351778, 0.366664582137096, 0.399998194744437,}
| ={ 7.08210504629e-07,9.67433540499e-07,8.37822022592e-07,8.37822022647e-07
ões,
− xatingimos
+1)
Com
(k )
i Com | xatingimos
Max32 i iterações,
| 0.699998194744437}
={
( k +1)
e temos:
327.08210504629e-07,9.67433540499e-07,8.37822022592e-07,8.37822022647e-07
iterações, − xi( k ) |< 10−6atingimos
Max
Max
( k +1)
− xxii(( kkMax
|| xxii( k +1) − |< 10| x6 ( ke+1) temos:
−6
)) |< 10 −
i − x ( k ) |< 10−6 e temos:
i i
}i
Com fator de relaxação λ = 1.1 , Max | xi( k +1) − xi( k ) |< 10−6 em 27 iterações.
0 e temos:
(32)
1778,
(32)
−6 = { 0.233331807351778,
0.366664582137096, (32)
(k +X1) =x (k) 0.366664582137096,
0.399998194744437,
{ |0.233331807351778, 0.399998194744437,
0.699998194744437}
0.366664582137096, 0.699998194744437}
) −6 0.399998194744437, 0.699998194744
Com +1)
fator |xiCom de relaxação
–fator i
=de λ = 1.1
{7.08210504629e
relaxação λ, = 1.2
Max –, |07
xi( k +,1)9.67433540499e
Max |−
xi( kx+i1) −|<
(k )
xi( k10 |< 10em
−6 27
em –21iterações.
07 ,
iterações.
(( kk +1) (( kk ))
1.3–, Max } – 07}
xii
44437, −0.699998194744437} ( k +1)
− xi |8.37822022592e
0504629e-07,9.67433540499e-07,8.37822022592e-07,8.37822022647e-07 07( k +,1)|8.37822022647e
xii | ={| x7.08210504629e-07,9.67433540499e-07,8.37822022592e-07,8.37822022647e-07
(k )
}
de ={ 7.08210504629e-07,9.67433540499e-07,8.37822022592e-07,8.37822022647
Com fator de relaxação λ = 1.2 , Max | xi − xi |< 10 em 21 iterações.
Comi fator relaxação x ( k +1)( k−) x ( k ) |<−10
i i
6 −6
em 24 iterações.
Então, ,vemos
2592e-07,8.37822022647e-07
elaxação λ de | }xque
( k +1) o fator
,de
−6 relaxação
em| xi(||k27 1) ( k ) ótimo 6está em ) torno de
Com
Com fator
fator
Com =fator
derelaxação
1.1
Com relaxação
de
Maxfator
relaxação
i de 1.3
k)
,10Max
− xλi(relaxação
=|<1.1
1.1, Max
Max λxx+1)ii(( kk=−++iterações.
−i xx,ii((|<
1.1
1)x− kk )) 10
Max < −10
||< |em
6 −
10 k +1)24
em−27
xi(em
−6
xi(iterações.
27 |iterações.
< 10−6 em 27 iteraçõe
kiterações.

λ = 1.2 , mas qual é o erro máximo de truncamento dessa solução


elaxação
Então,
0−6Com
em 27 λ =fator
vemos
fator de
1.2 ,relaxação
que
iterações.
Com Com de o| fator
fator −λ
xi( k +1)de
relaxação
Max xλde
i =
relaxação
=|1.2
(k )
<1.2, em |λ21
relaxação
10,−6Max xi(=
( kk +
iterações.
ótimo
+1)
1.2
1)
− x,i( kMax
( k ))
está
|< 10 emem
−6 k +1)
|−x6 (em 21
−21 torno de 21 iteraçõe
iterações.
|< 10−6 em
xi( kiterações.
)
obtida com n = 21 iterações e Max i | x −i x |< 10 i? ( k +1) (k ) −6

λ−6Com
1.2 ,21
mas qual éo erro máximo de truncamento dessa |solução
i i

10 =em
elaxação fator
Com de
1.3
fator
Para ,relaxação
iterações.
Com fator
Max
de | xi( k +1)de
relaxação
k)
10,−6Max
=|<1.3
− xλi(relaxação
1.3, em
Max ||24
xxii(( kk ++iterações.
1)
− x,ii Max
1) − x (( kk )) |< 10 −
1.3 em
6 k +1)
|< 10|−x6 i(em 24
−24 ) iterações.
< 10−6 em 24 iteraçõe
xi( kiterações.
obtida
que
0−6Então,
em com
o fator
24 de
vemos
iterações.queiterações
=relaxação
21
nEntão, o fator
vemos ótimo que e Max
de está| xi(em
relaxação
o fator
k +1)
− torno
de xi( k ) |< 10−de
ótimo
relaxação
6
?está ótimo em torno estáde
em torno d
X (21) Então, vemos que o fator
= { 0.233332454256926, de relaxação ótimo
0.366665578771161, está em torno de
0.399999140943902, λ = 1.2, mas }
0.699999251437254
oPara
al éλ o= 1.2
está erro
emqualmáximo
, mas oλqual
torno = de
erro éde
, omas
1.2máximo
é {7.69513875675 truncamento
erro máximo
qual
de é o erro
truncamento dessa
de truncamento
máximo dessa solução de truncamento
solução dessa
obtida comsolução
n =dessa
21 soluçã
( k +1)
|x − x |= (k )
e − 07, 9.26761935082e − 07, 7.46579149946e − 07, 6.62960115027e − 07}
=ento
21 iterações
obtida com
iterações ene =Max
obtida 21com| iterações
xi( k +1) −nxi( k=) |<21 ?? || xxii(( kk ++1)1) −−exxii(( kkMax
e iterações |< 10| x6 i(?k +1) − xi( k ) |< 10−6 ?
i i −6 −6
)) |< 10 −
dessa solução 10 Max
Max
{ 0.233332454256926, 0.366665578771161, 0.399999140943902, 0.699999251437254}
10−Para
6
? Para
Observe
Para que o processo de convergência do sistema do Exemplo
xi |=
(k )
{7.69513875675e − 07, 9.26761935082e − 07, 7.46579149946e − 07, 6.62960115027e − 07}
2.13, com fator de relaxação λ = 1.2 , é monotônico, conforme o
= { 0.233332454256926,
926, = { 0.233332454256926,
0.366665578771161,
X Gráfico
(21) 0.366665578771161,
0.399999140943902,
2.4, mostrando a evolução0.399999140943902,
0.699999251437254 }0.699999251437254
de x1 em 210.399999140943902,
0.366665578771161, iterações. }
0.69999925
Observe que o processo de convergência do sistema do Exemplo
−exx−ii( k 07,
75 (k )
0943902,
− ) |=
|={7.69513875675
9.26761935082
|0.699999251437254 eee − 07
xi( k +1) − xi( k ) |=
{7.69513875675 07, }
9.26761935082
07,, 7.46579149946 − 07,
−− 07,, 6.62960115027
7.46579149946
e − 07, e9.26761935082
9.26761935082
{7.69513875675 07 − 07}
07, 6.62960115027
6.62960115027
e − 07, e7.46579149946
7.46579149946 07, − 07}
07}
e − 07, ee6.62960115

2.13, com fator de relaxação λ = 1.2 , é monotônico, conforme o
9946e − 07, 6.62960115027e − 07}
Gráfico
processo
Observe 2.4, mostrando
deque
convergência
o processo
Observe que a de
oevolução
do sistemade
processo de em 21 iterações.
doxconvergência
Exemplo
convergência1 do sistema do Exemplo
sistema do Exempl
rstema
de relaxação
2.13, com
do λ =de
fator
2.13,
Exemplo 1.2
com , é fator
monotônico,
relaxação = 1.2 ,conforme
de λrelaxação λ = 1.2o, é monotônico,
é monotônico, conforme oconforme
mérico Computacional
| xi( k +1) − xi( k ) |= {7.08210504629 e − 07, 9.67433540499 e - 07 ,
CAPÍTULO 2 – SOLUÇÃO 8.37822022592
COMPUTACIONAL DE 07, 8.37822022647
e −SISTEMAS e − 07}
DE EQUAÇÕES LINEARES 177
Cálculo Numérico Computacional
177
Gráfico 2.4 – Evolução de x1 no eixo vertical e iterações k no eixo horizonta
ções k no eixo horizontal usando Gauss-Seidel com fator de relaxação λ = 1.2
xação λ = 1.2|x| ixi –−xxi i | |== {7.69513875675e − 07, 9.26761935082e − 07,
( k +
(k + 1)1) (k )
(k)

Gráfico 2.4 – Evolução de x1 no eixo vertical e iterações k no eixo


7.46579149946 e − 07, 6.62960115027 e − 07}
usando Gauss-Seidel com fator de relaxação λ = 1.2
4 – Evolução de178 x1 no eixo vertical e iterações k no eixo horizontal
usando Gauss-Seidel com fator de relaxação λ = 1.2
maxObserve
| xi( k +1) −que |
xi( ko) processo = 0.926761935082
de convergência e − 06 2.13,
do sistema do Exemplo
Erro
com max
fator
Cálculo Numérico Computacional
X (21) = | λX=(21)1.2,
de relaxação (61)
| = 1.08789550551380
− Xé monotônico, e − 062.4, mos-
conforme o Gráfico
trando a evolução de x1 em 21 iterações.
189 Gráfico 2.4 – Evolução de x no eixo vertical e iterações k no eixo horizontal
de x1 no
Gráfico 2.4 – Evoluçãousando eixo1 vertical
comefator
iterações k no eixo
λ = 1.2horizontal usando
( i = λ−=11.2
Gauss-Seidel de relaxação
α 2 = 1 − i com
Gauss-Seidel = 1de
, α 3fator + irelaxação )

α = (1/ 2 ) * i ( 2π * n + π − i * ln ( 3) ) , n ∈ Z

194

Logo, se α ≠ a ou α ≠ b ,

200

2
Erro truncamento estimado de x ε = x ε − x ε (3b) (3)
Fonte: Elaboração própria
Fonte: Elaboração própria
205
Fonte: Elaboração própria
Paraprópria.
Fonte: Elaboração calcular Para
os erros estimados,
calcular os erros precisaremos de uma solução
estimados, precisaremos de um
emos de uma f (solução
b) = mais f (b) *próxima
pb da Fonte: Elaboração própria
exata,
ular os errosPara
estimados, calcular osprecisaremos
mais
erros estimados, de uma então
próxima
precisaremos
da exata,
solução podemos entãofazer podemos
de uma solução mais próxima
iterações a mais
fazer iteraçõ
azer
xima iterações
da exata,
da exata, a mais
então (com
Para
então o dobro
calcular
podemos
podemososfazer deestimados,
(com
erros
fazer iterações,
o dobro
iterações
iterações aade por
precisaremos
mais
mais exemplo)
iterações,
(com de o
uma por
dobro ou
solução tentar ou
exemplo)
de iterações, atingir
tentara
)obro
ou tentar 223 atingir mais próxima
a exemplo) da exata, então podemos fazer iterações a mais
por
de iterações, exemplo) solução
por exatasolução
ou tentar Sounotentar
atingir aexata
limitesolução daS no
atingir limite
a S da
variável
exata no variável
double.
limiteNessedadouble. Nesse
caso,
variável comcas
61
(com o dobro de iterações, por exemplo) ou tentar atingir a
e. Nesse double.
S no caso, daNesse
com 61 caso, com iterações,
61 iterações, ( ko+o
1)critério
critério ( k +1)
ii atinge− xi | valor
( k )
atingevalor
∀ i atinge valor zero n
iterações, oS no
critério −com |61∀| xNesse caso, com 61 zero numérico
(k )
xata limite variável double. Nesse
limite da|caso,xvariável xdouble.
zero numérico, f (
solução
x exata
+ Δ x )
a solução − f ( x
aaproximada) i
fica
i
estacionária ficaenumérico,
é adotada como e aé como
valor
, o critério xif( k ′+(1)x−0 x)i( k≅
zero | numérico, ∀ i 0atinge
a)iterações,
| solução solução
| x 0 zero
aproximada
valor
o critério ( k +1)
| aproximada
∀fica
− x numérico,
(k )
i atingeestacionária
valor zero estacionária
e é adotada adotada
solução exata estimada:
Δ x
i i

oe aproximada
é adotada como fica solução a solução aproximada
estacionária
a exata esolução
é adotada
estimada:
ficaexata estimada:
estacionária
como ae é adotada como a
solução exata
(61) estimada:
xata estimada: X = { 0.233333333333333, 0.366666666666667, 0.400000000000000, 0
= {= {0.233333333333333,
(61)
X X (61) 0.366666666666667, 0.400000000000000,
0.700000000000000 } 0.700000000
234
0.233333333333333, 0.366666666666667, 0.400000000000000,
33333333, 0.366666666666667, 0.400000000000000,
000000000, 0.700000000000000 }
0.700000000000000
| xi( k +1) − xi( k )( k| ={ ( k )0 }
(
| xi k +1)
−}xi( k ) | =
{0, 0, 0, 0 }
|x +1)0, 0, 0,
− x |= {
0, 0, 0, 0 }
| 1/
xi( k +c1) − xi( kEntão,
i i
)
|={0,o0,Erro }
0, 0máximo (21)
Então, o Erro máximo estimado
estimado de X é de X
(21)
é
} (21)
Então,
Erro maxoX (21)
Erro =| X máximo estimado
− X |= 1.08789550551 de(61)X
e − 06 é
235
(21) (21) (61)

Erro máximo estimado de X é Erro max X =| X − X |= 1.08789550551e − 06


(21) (21)

Erro max X (21) =| X (21) − X (61) |= 1.08789550551e − 06


(21)
X (21)
=| X(61)
−X |= 1.08789550551e − 06
1/ c
solução exata estimada:
X (61) = { 0.233333333333333, 0.366666666666667, 0.400000000000000, 0.700000000000000 }
178 CÁLCULO NUMÉRICO COMPUTACIONAL
( k +1)
|x
i −x(k )
i {0, 0, 0, 0
|= }
(21)(21)
Então,
Então, o=Erro
Erro X (12) o Erro máximo
X (12) − Smáximo
estimado
= { 2.454557estimado
de Xdee −X
e − 04, 3.517819
é04, é
7.593722 05} 2 – Solução Computacional de Sistemas de
e − Capítulo Equ
Capítulo 2 – Solução Computacional de Sistemas de Equ
Erro max X (21)
=| X (21)
−X (61)
|= 1.08789550551e − 06
Erro X (6) = X (6) − X (12) = {0.00634271, 0.00119713, 0.0249755 }

Enquanto oocritério
Enquanto
176 critériodede
parada é
parada é
Enquanto ( k(+k 1) o (critério de parada é
xi | −xixi |=−{7.08210504629
xi( k ) | = e − 07
k)
|max( k + 1) )
e − 07, 9.67433540499
9.26761935082 e - 07 ,
max | xi( k +1) − x8.37822022592
i | =9.26761935082 e − 07
e − 07, 8.37822022647 e − 07}
Novamente
177 verificamos que o critério de parada baseado nas
Novamente verificamos
Novamente verificamos queque o critério de parada
o critério de paradabaseado nas diferenças
baseado nas
diferenças
das( k +1)soluções
dasentre soluções
iteraçõesentre iterações
sucessivas tem sucessivas
a mesma tem a mesma
ordem de grandeza
| xi
diferenças − xi |= {7.69513875675
(k )
das soluções 07, 9.26761935082
e − entre − 07,
iteraçõese sucessivas tem a mesma
ordem
dos erros deestimados:
grandeza dos erros estimados:
7.46579149946e − 07, 6.62960115027 e − 07}
ordem( kde
178 +1)
grandeza dos erros estimados:
max | xi( k +1) − xi( k ) | (k )
= 0.926761935082787e − 06
max | x(ik +1) − (21) = 0.926761935082787
x( ki ) | = 0.926761935082e – 06 e − 06
max
Erro| xmax −Xx(21) |= | X (21) − X (61)
= |0.926761935082 e − 06 e − 06
= 1.08789550551380
(21) (61)
i i
Erro max X = | X − X | = 1.08789550551380e − 06
Erro max X (21) = | X (21) − X (61) | == 1.08789550551380e
1.08789550551380e − 06– 06

189 Vamos implementar um algoritmo do método de Gauss-Seidel com fator de relaxação


Vamos implementar um algoritmo doiterativas,
métodotemosde Gauss-Seidel com x
α 2 =de1modo
Vamos , αque, no lado direito
3 = 1 + i ( i =um
− iimplementar −1algoritmo
das
) equações as mesmas incógnitas
do método de Gauss-Seidel com
fatorcalculadas
de relaxação no ladode esquerdo
modo que, dasno equações, sendodas
lado direito sempre as incógnitas
equações mais
iterativas,
fator de relaxação
atualizadas de modo
disponíveis, pois, que,
à no lado
medida que direito
os x sãodas equações
calculados, já iterativas,
são utilizados
α = (1/ 2as
temos
nas próximas
( 2π *equações.
) * i mesmas i * ln ( 3) ) , n ∈
n + π −incógnitas x Zcalculadas no lado esquerdo das
Confira o xalgoritmo Cap2Gauss_Seidel.m no Caderno
temos as mesmas incógnitas calculadas no lado esquerdo dasde
equações,
194 Algoritmos sendo sempre
disponível para as incógnitas
download no mais
link: atualizadas disponíveis,
<http://sergiopeters.prof.ufsc.br/
equações, sendo sempre as incógnitas mais atualizadas disponíveis,
algoritmos-livro/>.
pois, à medida que os x são calculados, já são utilizados nas próximas
Logo,
pois, se α ≠ a ouque
à medida b , x são calculados, já são utilizados nas próximas
α ≠ os
equações. Confira o algoritmo Cap2Gauss_Seidel.m no Caderno de
equações. Confira o algoritmo Cap2Gauss_Seidel.m no Caderno de
Algoritmos disponível para download no link: <http://sergiopeters.prof.
200
Algoritmos Quando um sistema
disponível esparso é gerado
para download no link:na forma de matriz completa,
<http://sergiopeters.prof.
ufsc.br/algoritmos-livro/>.
com todos os seus coeficientes nulos incluídos, é imprescindível primeiro
ufsc.br/algoritmos-livro/>. 2
Erro truncamento estimado de x ε = x ε − x ε
gerar uma lista de coeficientes não nulos e aplicar os métodos iterativos (3b) (3)
operando apenas esses coeficientes não nulos.
205

f (Quando
b) = f (b) * umpb sistema esparso é gerado na forma de matriz
Quando um sistema queesparso édegerado na forma deeficiente
matriz do que
completa, até
Vimos com agora
todos o método
os Gauss-Seidel
seus coeficientes é mais
nulos incluídos, é
o de Jacobi,
completa, mas
comisso não
todos é uma
os regra
seus geral. O método
coeficientes
223imprescindível primeiro gerar uma lista de coeficientes não
de
nulos Jacobi se
incluídos,torna
é mais
imprescindível primeiro gerar uma lista de coeficientes não 2.14,
rápido no caso de processamento paralelo e/ou vetorial. No Exemplo
nulos
vamos fe( xaplicar os
f ( xmétodos
0 + Δx) −um 0)
iterativos operando apenas esses
( x0 ) ≅apresentar
f ′nulos e aplicar caso
os métodos particular em que
iterativos o método
operando de Jacobi
apenas também é
esses
o coeficientes
mais rápido, Δmesmo x
não nulos.
em processamento sequencial normal.
coeficientes não nulos.
234

1/ c Vimos até agora que o método de Gauss-Seidel é mais eficiente


Vimos até agora que o método de Gauss-Seidel é mais eficiente
do que o de Jacobi, mas isso não é uma regra geral. O método de
235
do que o de Jacobi, mas isso não é uma regra geral. O método de
Jacobi se torna mais rápido no caso de processamento paralelo e/
Jacobi se torna mais rápido no caso de processamento paralelo e/
mérico Computacional
mérico Computacional
nal CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 179

 x1 + 2 x2 − 2 x3 = 1
 x1 + 2 x2 − 2 x3 =
Exemplo 2.14: determine a solução do sistema x1 + 2 x2 −2x1x3+= x12 + x3 = 1 1

Exemplo 2.14: determine ado solução do sistema  x x+1+x22 + +3 x=1 1
xa2 xpartir
Exemplo
Exemplo 2.14: determine
2.14: determinea solução sistema  x1 + x2 + x321=
a solução dosistema 1 3 =
 2xx1 +
a partir da solução inicial nula usando 2 xJacobi, 12 x2 + x3 =
 1 + 2 x2 +Gauss-Seidel
3 =
1e

a partir daa partir


solução da solução
Gauss-Seidel com inicial
fator nulaJacobi,
usando
de sub-relaxação Jacobi,
0.3. Gauss-Seidel
Observe e que essee
da solução inicial inicial
nula nula
usando usando
Jacobi, Gauss-Seidel
Gauss-Seidel e Gauss-Seidel com
Gauss-SeidelGauss-Seidel
fator desistema
comnão
sub-relaxação
fator com
tem
0.3. fator deque
deconvergência
Observe sub-relaxação
sub-relaxação garantida,
esse sistema
0.3. 0.3.tem
pois
não
Observe Observe
nãoconvergência
que que esse
tem diagonal
esse
sistema sistema
garantida,
não nãotem
temdiagonal
poisconvergência
dominante.
tem não convergência garantida,
dominante.
garantida, pois não tempoisdiagonal
não tem diagonal
dominante. dominante.
Solução:
Solução:
Solução: Solução:
a) Solução
a) Solução determinada
determinada pelo método
pelo método de Jacobi:
de Jacobi:
a) Soluçãoa)determinada
Solução determinada pelodemétodo
pelo método Jacobi: de Jacobi:
Tabela
Tabela2.11 – Valores
2.11 de solução
– Valores aproximada
de solução pelo método
aproximada de Jacobide Jacobi
pelo método
Tabela 2.11 – Valores
k de solução
x1 aproximada peloxmétodo de Jacobi
Tabela 2.11 – Valores de solução aproximada peloxmétodo
2
de Jacobi
3

k x0k1 xx021 xx032 x03


0 0 0 10
0 01 01 01
1 1 1 1
1 12 1 –1
1 –3
2 1 –1 –3
2 13 –3
–1 –33 1

3 –343 –3
3 13 1
4 –3 3 1
4
Fonte: Elaboração –3 Fonte: 3Elaboração1própria
própria.
Fonte: Elaboração própria
queFonte:
VemosVemos queElaboração
o sistema
o sistema própria
converge
converge com trêscom três iterações.
iterações.
Vemos que Vemos
b) Solução que o sistema com
determinada
o sistema converge converge
pelotrês comde
método três
iterações. iterações.
Gauss-Seidel:
b) Soluçãob) Solução determinada
determinada pelo pelodemétodo
método de Gauss-Seidel:
Gauss-Seidel:
b) Solução determinada pelo método de Gauss-Seidel:
Tabela 2.12 – Valores da solução aproximada pelo método de Gauss-Seidel
Tabela2.12
Tabela 2.12 –– Valores
Valores da solução aproximada pelopelo
método de Gauss-Seidel
Tabela 2.12 – Valores da solução k da solução
x1 aproximada
aproximada x2
pelo método
método
x3 de Gauss-Seidel
de Gauss-Seidel
k x0k1 xx021 xx032 x03
0 0 0 0
0 01 01 0 –1
1 1 30 –1
1 12 –1
0 –1 –3

2 –132 –1
–11
3 15
–3
3 –3
–7

3 –1143 –11
–43
15
15
51
–7
–7
–15

4 –4354 –43
–131
51
51
147
–15
–15
–31
5 –131 147 –31
5 –131 Fonte:147 –31
Elaboração própria
Fonte: Elaboração própria. Fonte: Elaboração própria
Fonte:
Vemos queElaboração
o sistemaprópria
diverge, sempre ampliando os valores.
Vemos que
Vemoso sistema
que diverge, sempre
o sistemasempre
diverge, ampliando os valores.com
sempreGauss-Seidel
ampliando
c) Solução
Vemos que o sistemadeterminada
diverge, pelo método
ampliando os valores.os valores.
fator
c) Soluçãoc)determinada
Solução
de determinada
sub-relaxação 0.3 pelo
pelo método método Gauss-Seidel
(a sub-relaxação
Gauss-Seidel fatorcom
é indicada
com fator
porque
de sub-relaxação
Gauss-Seidel
de sub-relaxação 0.3 (auma
produziu
0.3 (a sub-relaxação
sub-relaxação sequência é porque
indicada porque
divergente):
é indicada
Gauss-Seidel
Gauss-Seidel produziu produziu uma sequência
uma sequência divergente):
divergente):
180 CÁLCULO NUMÉRICO COMPUTACIONAL

c) Solução determinada pelo método Gauss-Seidel Capítulo


com 2fator
– Soluçãode
Computacional de Sistem
sub-relaxação 0.3 (a sub-relaxação é indicada porque Gauss-Seidel
produziu uma sequência divergente):
Tabela
Tabela 2.13 2.13 –daValores
– Valores soluçãoda solução aproximada
aproximada pelo métodopelo método
de Gauss-Seidel
de Gauss-Seidel com fator de sub-relaxação
com fator de sub-relaxação
k x1 x2 x3
0 0 0 0
1 0.3 0.21 –0.006
2 0.3804 0.33468 –0.13325
3 0.285523 0.488593 –0.25774
4 0.052064 0.703719 –0.33389
5 –0.28612 0.978607 –0.34921
12 –3.24028 3.210688 0.633227
31 –2.72791 2.792591 0.947815
70 –2.99400 2.995765 0.993771
100 –2.99938 2.99956 0.999436
189 –3 2.999999 1
190 –3 3 1

Fonte: Elaboração própria. Fonte: Elaboração própria

Vemos que o sistema converge para o valor exato, mas com 190
Vemos que o sistema converge para o valor exato, mas com 190
iterações. Logo, nesse sistema sem convergência garantida,
iterações. Logo, nesse sistema sem convergência garantida, o método
o método
de Gauss-Seidel defator
com Gauss-Seidel com fator
de sub-relaxação de sub-relaxação
0.3 amortece as grandes 0.3
amortece
variações as de
da solução grandes variações
uma iteração para da solução
outra, de uma
e também iteração
consegue
obter uma sequência convergente, mas bem mais lenta
para outra, e também consegue obter uma sequência do que a
conseguida com o método
convergente, de Jacobi
mas bem (Tabela
mais lenta do 2.11).
que a conseguida com o
método de Jacobi (Tabela 2.11).
Considerações:
Considerações:
a) Se o sistema satisfizer os critérios de convergência, mesmo que não
tenhaa)uma
Se odiagonal
sistemamuito dominante,
satisfizer não é obrigatória
os critérios a aplicação
de convergência, mesmo
de fatores de sobre ou sub-relaxação, pois o processo iterativo
que não tenha uma diagonal muito dominante, não é
já tem
convergência garantida, mas é recomendável aplicá-lo para tentar
obrigatória a aplicação de fatores de sobre ou sub-relaxação,
acelerar o processo iterativo, conforme cada caso. Lembremos que,
pois o processo iterativo já tem convergência garantida, mas
é recomendável aplicá-lo para tentar acelerar o processo
iterativo, conforme cada caso. Lembremos que, quanto maior
for a diagonal principal, maior será a redução de erros de
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 181

quanto maior for a diagonal principal, maior será a redução de


erros de uma iteração para outra e mais rápida será a convergência.
b) Se o sistema não tiver convergência garantida, recomendamos
testar o efeito de fatores de sub-relaxação ou de sobrerrelaxação,
conforme o seu comportamento iterativo. O fator de relaxação
pode transformar um processo iterativo divergente em convergente.
c) A utilização de fatores de sub-relaxação (0 < λ < 1) pode acelerar
a convergência de processos iterativos oscilatórios (como no
Exemplo 2.10, quando as incógnitas xi crescem e diminuem com
certa alternância).
d) A utilização de fatores de sobrerrelaxação (1 < λ < 2) pode acelerar
a convergência de processos iterativos lentos quando a atualização
total ∆xi(k + 1) = xi(k + 1) – xi(k) é pequena a cada iteração. Essa variação
do método de Gauss-Seidel é conhecida na literatura pertinente
como Sucessive Over Relaxation (SOR).
e) As soluções aproximadas por métodos iterativos podem ser:
convergentes, para um valor estacionário (quando termina o
processo iterativo); oscilatórias; ou divergentes. Como vimos nos
exemplos anteriores, os fatores de relaxação podem transformar
um processo iterativo divergente em convergente, e um processo
oscilatório em não oscilatório.
f) A escolha adequada do fator de relaxação λ (0 < λ < 2) nos permite
conduzir o processo iterativo a uma performance “ótima”, atingindo
a convergência com o menor número possível de iterações, mas,
para descobrir esse fator “ótimo”, precisamos fazer testes sucessivos
(que podem ser feitos com poucas iterações usando inicialmente
critério de parada maior do que o desejado).
g) Para a solução aproximada xi(m), obtida por métodos iterativos
com m iterações, ou xi(ε), obtida com o limite para o critério de
parada ε, o erro máximo de truncamento é normalmente da mesma
ordem do critério de parada baseado na máxima diferença entre as
últimas iterações sucessivas, Max | xi(m) – xi(m – 1) |. Podemos calcular
o erro estimado da solução aproximada em relação a um valor de
referência estimado:
Capítulo
Capítulo 22 –
– Solução
Solução Computacional
Computacional de
de Sistemas
Sistemas de
de Equações
Equações Lineares
Lineares

182 CÁLCULO NUMÉRICO COMPUTACIONAL

(2 m )
i) ou
i) com o
ou com o dobro
dobro de
de iterações
iterações 2m
2m :: xi(2 m ) ;;
i) ou com o dobro de iterações i
2m: xi(2m);
ii) ou com
ii) ou com limite
limite para o critério de parada com o
o dobro de
ii) ou compara o critério
limite de 2parada
para22 o critério
( εε 2 )) de com
parada dobro
com odedobro de precisão
precisão (dobro
(dobro de
precisão (dobro de dígitos) εε ::2 xi (ε2..)
(
dedígitos)
dígitos) ε : xi . i
Os
Os valores
valores exatos
exatos estimados
estimados nos
nos itens
itens (i)
(i) ee (ii)
(ii) têm
têm
Os valores exatos
aproximadamente estimados nos itens (i) e (ii) têm
aproximadamente a mesma grandeza. Logo, os erros de
a mesma grandeza. Logo, os praticamente
erros de o mesmo
valor. Logo, ospodem
truncamentos erros de
truncamentos podem ser truncamentos
ser estimados
estimados por:
por:
podem ser estimados por:

Erro( xii((=
m ))
m ) xii(( mm )) − xii(2
(2 m
m ))
ou
ou
ou
2
( ε )) (ε ) (ε )
para iii == 2, ...,nn n.
2
Erro( xii(ε= ) xii(ε ) − xii(ε ) ,,, para
para = 1,
1,2,...,
1, 2,..., ..

Esses cálculos
EssesEsses
cálculos de
de erros
cálculos erros estimados
estimados
de erros precisam
precisamser
precisam
estimados serconfirmados
ser confirmados
confirmados para cada tipo
ara cada tipo de sistema
de sistema
ara cada tipo de sistema de equações.
de equações.
de equações.

3 Conclusões
2.3 CONCLUSÕES
Existem
Existem outras
outras metodologias
metodologias dede resolução
resolução de de sistemas
sistemas lineares,
lineares,
as Existem outros métodos de resolução
as nos propomos a apresentar, neste Capítulo, uma família de
nos propomos a apresentar, neste Capítulo, uma de sistemas
família de
lineares, mas
étodos nos propomos a apresentar, neste capítulo, uma família de métodos que
étodos que
que permitisse
permitisse aa solução
solução de
de sistemas
sistemas de de equações
equações lineares
lineares
permitisse a solução de sistemas de equações lineares de médio porte com
m
m poucos
poucos coeficientes
coeficientes nulos de
de médio
nulosnulos,
médio porte,
porte, como aa dos métodos
poucos coeficientes como a doscomo
métodos dos métodos embora estes
eliminativos,
iminativos,
iminativos, embora
embora estes tenham
estes tenham problemas
problemas de acúmulo
dedeacúmulo de
de erros
erros especialmente
tenham problemas de acúmulo de erros arredondamento,
ee arredondamento,
arredondamento, especialmente
os sistemasespecialmente os sistemas
os sistemas
mal condicionados. mal condicionados.
mal condicionados.
Além disso, apresentamos uma família que
uma família
uma família que permitisse
que permitisse
permitisse a solução dea solução
a solução
sistemas de de sistemas
sistemas
de grande com
comcom
porte muitos
muitos
muitos coeficientes
alores nulos,
nulos,
alores nulos, como a dos
comoa ados
como métodos
dosmétodos iterativos
métodositerativos clássicos,
iterativos clássicos, além
clássicos, além
além de de
de apresentarmos
presentarmos os algoritmos específicos para cada sistema, justamente
presentarmos os algoritmos específicos para cada sistema, justamentenão operarmos
algoritmos específicos para cada sistema, justamente para
ara
ara não esses coeficientes
não operarmos
operarmos esses nulos desnecessariamente.
esses coeficientes
coeficientes nulos
nulos desnecessariamente.
desnecessariamente.

103
103
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL DE SISTEMAS DE EQUAÇÕES LINEARES 183

COMPLEMENTANDO...
Nesta seção, vamos discutir uma proposta de generalização do método de
eliminação gaussiana otimizada para sistemas esparsos através de mapeamento
duplo dos índices de coeficientes não nulos.

Sistema esparso genérico


Um algoritmo otimizado de Gauss operando sobre um sistema esparso
genérico, organizado ou não em faixas e armazenado na forma de matriz
expandida com os coeficientes nulos originais incluídos, pode ser imple-
mentado em duas etapas.

Primeira etapa
Na etapa de pré-processamento da matriz expandida represen-
tativa do sistema podem ser geradas e armazenadas duas listas duplas
encadeadas, do tipo árvores binárias de busca (FEOFILOFF, 2008-2009):
a primeira lista com o mapeamento inicial para os índices das linhas não
nulas de cada coluna; e outra para os índices das colunas não nulas de cada
linha, obtidas por varredura simples de cada elemento não nulo da matriz.
Esses índices das duas listas são armazenados em árvores binárias de busca e
não em vetores comuns para ter maior velocidade de acesso aos coeficientes.
Essas árvores contêm o valor inteiro da posição de cada coeficiente, na linha
ou na coluna, conforme o caso, e os endereços dos índices vizinhos à esquerda
(anterior) e à direita (posterior). Na sequência, geramos uma segunda lista
aplicando todos os passos k da eliminação gaussiana clássica, a cada linha i
não nula abaixo de k, mas operando apenas as alterações nos índices iniciais
dos coeficientes não nulos das linhas e das colunas já armazenados na
primeira lista, sem ainda aplicar as respectivas operações em ponto flutuante
aos coeficientes reais não nulos. Nesta fase, são geradas e armazenadas as
alterações no mapeamento inicial dos índices dos coeficientes não nulos,
de acordo com o processo clássico de escalonamento de Gauss, ou seja,
184 CÁLCULO NUMÉRICO COMPUTACIONAL

procedemos a execução de cada passo k do algoritmo gerando e armazenando


uma segunda lista, bidimensional, para linhas e para colunas, que devem
ser operadas em cada passo k, através de funções de inserção e remoção de
índices encadeados na árvore de busca inicial (FEOFILOFF, 2008-2009),
de acordo com os passos do algoritmo do método de eliminação gaussiana.
Depois dessa varredura nos passos do algoritmo, geramos e armazenamos
um chamado mapeamento instantâneo de índices não nulos, para ser usado
na aplicação de cada passo k do escalonamento da matriz de coeficientes, como
se fosse uma foto dos índices dos coeficientes não nulos instantaneamente
antes da aplicação do passo k do escalonamento. Essas listas bidimensionais
instantâneas são armazenadas na forma de duas matrizes de índices inteiros
geradas a partir das árvores binárias de busca. Em cada linha k, dessas duas
matrizes, são armazenadas as respectivas linhas i e colunas j de coeficientes
não nulos congeladas imediatamente antes da aplicação do passo k do
método de eliminação gaussiana, de modo que contenham somente os
índices das linhas e colunas que realmente precisam ser manipuladas, por
conter coeficientes não nulos.

No Caderno de Algoritmos, confira a geração desses mapeamentos na função


fINDEX(A) apresentada no algoritmo GaussEsparsa.c.

O processamento de operações de inserção e remoção de índices em


árvores binárias de busca foi aplicado por ser mais rápido do que se essas
operações fossem aplicadas diretamente com os vetores desses índices.

Segunda etapa
Nesta etapa, as eliminações são operadas em ponto flutuante somente
com os coeficientes não nulos, usando os índices de linhas e colunas não
nulas. Portanto, a segunda etapa é independente da primeira e podemos
aplicá-la quantas vezes forem necessárias, conforme a função fGaussEsparsa
do mesmo algoritmo, usando os índices do mapeamento instantâneo de
coeficientes não nulos prefixados na primeira etapa.
Na Tabela 2.14, apresentamos testes de performance no tratamento de
um sistema de n = 2000 equações, conforme o algoritmo GaussEsparsa.c,
Comna
pré-fixados fator de relaxação
primeira λ = 1.2 ,
etapa. Max | xi( k +1) − xi( k ) |< 10−6 em 21 iterações.

Na Com fator de2.14,


Tabela relaxação λ = 1.3 , Max | x −testes
apresentamos x |< 10 em 24 iterações.
DE SISTEMAS DEde performance no 185
( k +1) (k ) −6
CAPÍTULO 2 – SOLUÇÃO COMPUTACIONAL i i EQUAÇÕES LINEARES
tratamento de um sistema de N = 2000 equações, conforme o algoritmo
GaussEsparsa.c,
Pg. 99
com largura L de faixa dupla de dispersão dos
com largura
coeficientes não nulos L de faixa variáveldupla de dispersão
entre 10 e dos coeficientesde
1000(limite), nãoacordo
nulos variável
entre 10max
e 1000
| xi (limite),
( k +1)
− xi | de acordo= com
( k ) a equação genérica
0.92676193508279 e − 06 a seguir:
com a equação genérica a seguir:
(21) (21) (61)
Erro max X =| X −X |= 1.08789550551380e − 06
= 1103
iPg. xi + xi +1 =
150

i = 2 até ( n / 2 ) xi −1 + 3 xi + xi +1 + xi + L =
100
2.3 Conclusões (21)
i= (n / 2 + 1) até (n − 1) xi − L + xi −1 + 3 xi + xi +1 = 200 (21)
i = n x +x =
300
 Existem outros métodos de resolução dei −1sistemas
i
lineares, mas nos

Em propomos
seguida, a apresentar,
computamos nesteoCapítulo,
tempo para uma família
definiçãode métodos que permitisse a
da indexação
Em seguida, computamos o tempo para definição da indexação inicial
inicial ee solução
da
de sistemas
daindexação
indexação de equações de
instantânea
bidimensional
lineares
cadadepasso
instantânea
médio porte
de cada
com poucos coeficientes
k imediatamente
passo k imediatamente
nulos,dacomo a dos métodos
antes da antes eliminação
eliminação Gaussiana, o eliminativos,
gaussiana,
tempo o tempo
paraembora
para aestes tenhamotimizada
resolução
a resolução problemasdo
otimizada de
sistema
do sistema
acúmulopré-mapeado
pré-mapeado eeoo tempo
de erros de tempo para
paraa aresolução
arredondamento, pelopelo
especialmente
resolução método clássico mal
os sistemas
método de
Gauss-Seidel
condicionados. iterativo, otimizado
Além disso, por fator
apresentamos umaλfamília
de relaxação (no caso
que permitisse λ = 1.9),
a solução de
clássicocom
de Gauss-Seidel
critério de iterativo,
parada max otimizado
(|∆x |) < 10 por
–4
. fator f que
Observe de relaxação
esse exemplo de
sistemas de grande porte com muitosi valores nulos, como a −dos métodos iterativos
(no caso sistema nãocom
f = 1.9), tem critério de parada
convergência garantida i |) < 10de. convergência
pelo∆xcritério
max(| 4
Observe de
clássicos, além de apresentarmos algoritmos específicos para cada sistema,
que esse Scarborough.
exemplo de sistema não tem convergência garantida pelo
justamente para não operarmos esses coeficientes nulos desnecessariamente.
critério de convergência de Scarborough.
Tabela 2.14 – Tempos de processamento para o mapeamento da matriz esparsa, para a
Complementando...
solução com o método Tabela 2.4 e para a solução com Gauss-Seidel
otimizado
Largura L da Indexação Método otimizado, Gauss-Seidel
faixadadispersão
faixa dispersão completa (ms) operando não nulos (ms) otimizado (ms)
L = 0.5% de n 58 1 020
L = 5% de n 388 12 156
L = 10% de n 3509 67 337
L = 15% de n 17155 213 714
L = 20% de n 50507 486 1224
L = 30% de n 253422 1573 2634
L = 40% de n 699212 3808 4532
L = 50% de n (max) 1310824 6911 7741
(ms*ms
Nota: = mili segundo = 10
= milissegundo −3
segundos)
10 segundos.
–3

Fonte: Elaboração própria.

Por esses exemplos, verificamos que sistemas com coeficientes não


nulos concentrados mais próximos da diagonal principal são resolvidos mais
rapidamente tanto no pré-processamento quanto nas operações aritméticas 210
de eliminação.
Nessa otimização, o mapeamento instantâneo gera valores de índices
não nulos tanto mais espalhados pela matriz quanto maior for a largura
inicial da faixa não nula. Sistemas com largura de dispersão L maiores geram
186 CÁLCULO NUMÉRICO COMPUTACIONAL

mais operações de inserção, ou seja, preenchem mais a matriz esparsa,


consequentemente geram mais operações aritméticas. Por exemplo, sistemas
com largura de faixa L a partir de 300 (15% n), para os dois lados da diagonal,
exigem tempo de processamento (17155 ms) superior ao método de Gauss
completo (14415 ms), mas na segunda fase de eliminação tornam-se muito
mais rápidos (usam apenas 213 ms de processamento). Assim, o método
apresentado se torna muito eficiente para aplicações em que a estrutura das
matrizes de coeficientes é fixa, de modo que o mapeamento instantâneo pode
ser gerado uma única vez e reaproveitado para operar diferentes valores de
coeficientes armazenados na mesma estrutura. Verificamos também, nos
exemplos testados, que o algoritmo otimizado proposto é sempre mais
rápido do que métodos iterativos clássicos, cujas soluções são aproximadas
com critério de parada relativamente grosseiro 10–4, enquanto as soluções
obtidas pelo algoritmo apresentado são exatas, exceto pelos arredondamentos
acumulados. Por ser um método direto, ainda independe de critérios de
convergência ou da classe de sistema envolvido.

Acesse o Caderno de Exercícios e Respostas, disponível no link <http://sergiopeters.


prof.ufsc.br/exercicios-e-respostas/>, para realizar os exercícios propostos ao
reforço do seu aprendizado.
CAPÍTULO 3

SOLUÇÃO DE
EQUAÇÕES NÃO
LINEARES A UMA
INCÓGNITA

OBJETIVOS ESPECÍFICOS DE APRENDIZAGEM


Ao finalizar este capítulo, você será capaz de:
■■ determinar valores iniciais para raízes de uma equação não
linear f(x) = 0;
■■ determinar raízes de uma equação f(x) = 0 por métodos de
quebra e de linearização (iterativos);
■■ determinar todas as raízes, reais e/ou complexas, para
equações polinomiais, considerando os efeitos da multi-
plicidade;
■■ avaliar a precisão do resultado obtido; e
■■ utilizar os algoritmos disponibilizados.
33 Solução
Solução de
de Equações
Equações não
não Lineares
Lineares
aa uma
uma Incógnita
Incógnita
Em muitos modelos matemáticos de várias áreas, como
Em muitos modelos matemáticos de várias áreas, como
engenharia, economia, ocorre a necessidade de determinar uma
engenharia, economia, ocorre a necessidade
Erro X(x) (12) de determinar uma
X (12) − S = { 2.454557e − 04, 3.517819e
incógnita x que satisfaça uma equação f ==0. Esse é um problema
incógnita x que satisfaça uma equação f
Em muitos modelos matemáticos de(x) = 0. Esse é um problema
várias áreas, como engenharia e
que ocupa os matemáticos há milênios. Apenas como que exemplo
que economia,
ocupa os ocorre a necessidade
matemáticos demilênios.
há determinar
Erro X (6)Apenas uma
= X (6) X (12) =x{exemplo
incógnita
− como satisfaça 0.001197
0.00634271,
emblemático, destacamos os
f(x) = 0. Esse os
uma equaçãodestacamos é umpapiros
problema do escriba egípcio Ahmes
emblemático, papiros do que ocupaegípcio
escriba os matemáticos
Ahmes há
(1680 a 1620 a.C.), nos quais foram encontradas aproximadamente
milênios. Apenas como exemplo emblemático,
176 destacamos os papiros do
(1680 a 1620 a.C.), nos quais foram encontradas aproximadamente
escriba egípcio Ahmes (1680 a 1620(12)a.C.), (12) nos quais foram encontradas
80 equações propostas, bem como a denominação dada por ele ao
80 equações propostas, bem como a denominação dada por ele ao
Erro X| xi( k=+1) X = { 2.454557
|S= {7.08210504629
− xi( k−)como e − 04,e −3.517819 e − 04, 7
07, 9.6743354
aproximadamente 80 equações propostas, bem
seu “estudo” sobre as equações: “Direção para saber todas as coisas a denominação dada
seu “estudo” sobre as equações: “Direção para saber todas as coisas
por ele ao seu “estudo” sobre as equações: “Direção 8.37822022592
para saber todase − 07,as8.3782202
obscuras”. 0.00634271, 0.00119713, 0.0
obscuras”.
coisas obscuras”. Erro X (6)
177
= X (6)
− X (12)
= {
Para iniciar
Parainiciar este
iniciareste Capítulo,
este Capítulo, vamos
capítulo, vamos apresentar
apresentar três
três três defi
definições nições
básicas
Para vamos apresentar defi nições
básicas importantes:
importantes: 176 | xi( k +1)
− xi |= {7.69513875675e − 07, 9.267619350
(k )
básicas importantes:
| xida equação f
− xi |= {7.08210504629
( k + 1) (k ) 7.46579149946e − 07, 6.629601150
e − 07,∈ 9.67433540499e
Defi nição 1: solução ou
1: solução ouou raiz
raizraiz 178 f(x) = 0(x)
(x) = 0 é todo α
∈ ℂ (Complexos),ℂ
Defi nição 1: solução
Definição da equação f
da equação = 0 αé todo α
é todo ∈ℂ
(Complexos), tal que f (α) = 0. 8.37822022592 e − 07, 8.37822022647 e
tal que f(α) = 0.
(Complexos), tal que f (α) = 0.
177 max | xi( k +1) − xi( k ) | = 0.926761
Definição 2: zero da função f(x) é todo
Defi nição 2: zero da função f (x) é todo α α ∈ ℂ (Complexos), tal que f(α) = 0.
∈ ℂ(21)(Complexos), tal
xi( k ) |=max = | X (21) | = 1.0878955
∈Xℂ (Complexos), tal
| xi( k +1) −Erro 07,X 9.26761935082e
Defi nição 2: zero da função f (x) é todo α (61)
que f (α) = 0. {7.69513875675 e −− −
que f (α) = 0.
Por exemplo: 7.46579149946e − 07, 6.62960115027 e − 0
Por exemplo: 178 189
Por exemplo:
a) x33 – 2x22 + 2x = 0 ⇒ α1 = 0, α 2 = 1 − i , α 3 = 1 + i ( i = −1 )
0 ⇒ α1 = 0| x, (αk +21)= −1x−( kî) , | α 3 = 1 + î
0 ⇒ αmax = 0.92676193508
a) x − 2 x + 2 x =
a) x 3 − 2 x 2 + 2 x = 1 = 0 , α i 2 = 1 −iî , α 3 = 1 + î
= X1/ 2 )=*⇒i |(αX2π= *3n−ln(2)
α 3) ) , n ∈ Z
3
3
b) ⇒ ⇒ = ln (1.0878955055138
= (ln(2)
− =
x3 ln(max +Xπ −3|i * =
3x
b) e3 x − 2 = 3 x ln( e ) ln(2)
⇒ 3Erro
e 2 0 (21) (21) 3 ln(2)
(61) 3
eα) =
3
b) 0
c) sen( x) = 1 ⇒= α 2kπ + ππ / 22 com com k ∈ ℤ
sen( x(x)
c) sen ) ==1 1 ⇒=
⇒ ααkkk = 22kπ π + π / 2 com kk ∈
k194 ∈ℤ
d) 4 cos ( x ) = exx ⇒ 189
α = − 1.5158641228050098 e
d)
d) 44cos cos( (x)
x ) ==eex ⇒αα
⇒ α11===−–11.5158641228050098 e
1
1.5158641228050098
− i , αse 1 +≠ ia (ou i =α ≠ e
−1b),
Logo,
α = 0.9047882178730189 3 =α
αα2222== 0.9047882178730189
0.9047882178730189
e) e222x
x = −3
x
⇒ não existe α
e)
e) e ==−–3
e 3 ⇒ α = (1/ 2 )α* i ( 2π * n + π − i * ln ( 3) ) , n ∈ Z
⇒ não existe
200
194
Erro truncamento estimado de x ε = x ε −
190 CÁLCULO NUMÉRICO COMPUTACIONAL

Note que nem sempre é possível solver a equação de forma explícita,


ou seja, nem sempre conseguimos isolar a incógnita em um dos lados da
equação para obter explicitamente uma raiz α.
Pelas equações dadas anteriormente, concluímos que:
a) Uma equação f(x) = 0 pode:
i) não ter solução Real;
ii) ter única solução;
iii) ter uma quantidade finita de soluções; e
iv) ter uma quantidade infinita de soluções.
b) A solução de f(x) = 0, pela técnica do isolamento da incógnita, pode
ser simples, difícil ou até impossível de ser obtida.
c) Resolver equações exige conhecimento de outras metodologias,
além da forma de isolamento da incógnita.

Neste livro, usaremos metodologias iterativas para obter aproximações de soluções


 Reais e Complexas, com destaque para a metodologia proposta por Newton, conforme
encontramos nas obras de Burden e Faires (2011) e de Cheney e Kincaid (2012).

Definição 3: um método iterativo obedece sempre a duas etapas em sua


execução:

a) isolamento, ou localização, de uma região do domínio da função


geradora y = f(x) que contenha cada solução desejada (aproximação
inicial da raiz); e
b) refinamento da solução isolada até a precisão requerida.

3.1 ISOLAMENTO OU LOCALIZAÇÃO DE


SOLUÇÕES DE f(x) = 0
Podemos efetivar o isolamento, ou a localização, de uma região do
domínio da função geradora que contenha a solução desejada da equação
f(x) = 0 através de:
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 191

a) Conhecimento prático sobre o problema modelado que resultou


na equação, com a consequente estimativa da solução esperada.
b) Traçado do esboço gráfico da função geradora y = f(x), uma vez
Cálculo Numérico Computacional que toda raiz Real é uma interseção desse gráfico com o eixo das
abscissas x, conforme o Gráfico 3.1.

Gráfico 3.1 – Intervalo


Gráfico que contém
3.1 – Intervalo uma raiz
que contém raizα Real
Real
uma de f(x) = 0f (x) = 0
α de

Fonte: Elaboração própria. Fonte: Elaboração própria

c) Teorema de Bolzano: numa f (x) = 0, se y = f (x) for contínua


c) Teorema de Bolzano: numa f(x) = 0, se y = f(x) for contínua em
em [a,b] e f ( a ) * f ( b ) ≤ 0 então ∃ α ∈ [ a, b ] / f (α) = 0.
[a, b] e f(a) * f(b) ≤ 0 então ∃ α ∈ [a, b] / f (α) = 0.
Note que esse teorema fornece uma condição suficiente, mas
Note que esse teorema fornece uma condição suficiente, mas não
não necessária, para a existência de soluções reais, isto é, se
necessária, para a existência de soluções reais, isto é, se satisfeita a
satisfeita a condição, existirá solução, senão nada poderemos
condição, existirá solução, senão nada poderemos afirmar. Além
afirmar. Além disso, a solução em [a,b] pode não ser única.
disso, a solução em [a, b] pode não ser única.
d) Agrupamento das funções geradoras, y = f (x), em classes
d) Agrupamento com características especiais como
das funções geradoras, y =as funções
f(x), polinomiais,
em classes com
por exemplo, e utilização das suas propriedades algébricas,
características especiais como as funções polinomiais, por exemplo,
e utilizaçãocomo veremos na seção 3.3.
das suas propriedades algébricas, como veremos na
seção 3.3.
Vamos primeiramente
Vamos primeiramente localizar
localizar raízes raízes quaisquer,
de equações de equações quaisquer,
conforme conforme
o Exemplo 3.1.
o Exemplo 3.1.

Exemplo 3.1: isole, ou localize, um intervalo que contenha a


primeira raiz positiva α de e x sen( x) − 1 =0 .
Solução:
Observe, no Gráfico 3.2, que a raiz está localizada no intervalo
[0, 1] ou [0.5, 1], pois
= f ( x) e x sen( x) − 1 corta o eixo da abcissa
192 CÁLCULO NUMÉRICO COMPUTACIONAL

Exemplo 3.1: isole, ou localize, um intervalo que contenha a primeira raiz


positiva α de ex sen(x) – 1 = 0.

Solução:
Observe, no Gráfico 3.2, que a raiz está localizada no intervalo [0, 1] ou
[0.5, 1], pois f(x) = ex sen(x) –1 corta o eixo da abcissa x (com y = 0) nesses
intervalos:
192

Gráfico 3.2

Gráfico 3.2 – Esboço da f(x) = ex sen(x) –1

f ( x)

x
α
α

Fonte: Elaboração própria.


197

Também, , 10 ] a f(x) = e sen(x) –1 é contínua em toda reta Real, e no


m ∈ [10como
1/2 1 x

intervalo
209
[0, 1] verificamos que f(0) = –1 e f(1) = +1.287, ou seja, f(0) * f(1) < 0,
Grafico 3.6 de Bolzano, temos assegurado que existe raiz α ∈ [0, 1].
pelo teorema
f (axquestão
Tratada ) da localização de uma solução de f(x) = 0, vamos partir para o
processo de refinamento da solução isolada.

x
3.2 REFINAMENTO DA SOLUÇÃO ISOLADA
α xk +1 xk
Depois de isolar uma raiz α em um intervalo [a, b] do domínio de
f(x), devemos refiná-la por meio de técnicas específicas, para melhorar a

5
nal CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 193

sua precisão. Essas técnicas podem ser agrupadas em três grandes famílias
a) Métodos de quebra: para os quais inicialmente temos de
de métodos:
obter um intervalo [a,b], tal que α ∈ [a, b] , e o particionar
de quebra: para em os Métodos
a) quais sequência
uma inicialmente
de quebra: temos
de para de inicialmente
subintervalos
os quais [ak,bk], demas
menores temos obter um
intervalo [a,b], tal que α ∈ [ a , b ] , e o particionar
intervalo [a, b], tal que α ∈ [a, b], e olim(|
que continuem contendo α, tal que particionar
bk − ak |)em
= uma sequência
0 . Esses
k →∞
sequência de subintervalos menores
de subintervalos menores
métodos têm convergência [a ,b ], mas
[ak, bk], mas que continuem contendo α,
k k garantida, mas normalmente são
nuem contendo α, tal que tal
lentos. que lim(| b k − a k |) = 0 . Esses
. Esses métodos têm convergência garan-
k →∞
tida, mas normalmente são lentos.
têm convergência garantida, mas normalmente são
b) Métodos de linearização: para os quais obtemos uma
aproximação
b) Métodos deinicial x0 para para
linearização: a raiz α (x0obtemos
os quais valor estimado na
uma aproximação
de linearização: para
etapa os quais
de xisolamento)
inicial obtemos
para a raiz αe (x uma
valor estimadoconstruímos
posteriormente na etapa de isolamento)
uma
0 0
ção inicial x0 para a
e raiz α (x
posteriormente valor estimado
construímos
sequência iterativa de valores:
0
na
uma sequência iterativa de valores:
isolamento) e posteriormente construímos uma
a iterativa de valores: k k =0 k →∞ ( xk ) = α ,, se a sequência for convergente.
{ }

x / lim se a sequência for convergente.

0
/ lim ( xk ) = α , se a sequência for convergente.
Para Para gerar
gerar essasequência
essa sequência iterativa,
iterativa, linearizamos a equação
linearizamos não linear
a equação
k →∞
f(x) em x = g(x),
não linear f (x) = 0, resultando em x = F (x), conforme 3.2.2;
= 0, resultando conforme veremos na seção
obtemos o valor x1 = a g(x ); repetimos o processo com o x2 = g(x1);
r essa sequência veremos na seção 3.2.2; obtemos o valor
iterativa, linearizamos equação
0
x = F (x ); repetimos
r f (x) = 0, resultando
e assim sucessivamente:
em x = xF (x)
1 0
o processo com o = F, (x
conforme
); e assim sucessivamente:
2 1
x = g(xx1) = F (x0); repetimos
na seção 3.2.2; obtemos o valor
k+1 k
x = F (xk)
o com o x2 = F (x1); e assim sucessivamente:k+1
Esses métodos não têm convergência garantida, mas podem ter
ua Esses métodos não têm convergência garantida, mas podem
xk+1 = convergência
F (xk) rápida, dependendo da forma iterativa estabelecida.
xi-
ter convergência rápida, dependendo da forma iterativa
odos não têm convergência garantida, mas podem
os
c) Métodos híbridos : consistem na mescla de métodos das duas
estabelecida. 
os
ergência
os
rápida, metodologias
dependendo
c) Métodos da citadas
híbridos: forma anteriormente,
iterativa
consistem tentando
na mescla associar a das
de métodos vantagem
da.
m duas metodologias citadas anteriormente, tentando associar de
da convergência garantida na primeira com a alta velocidade
stehíbridos: consistem convergência
na mescla da
de segunda.
métodos das
a vantagem da convergência garantida na primeira com a
ro.
odologias citadas anteriormente, tentando associar
alta velocidade de convergência da segunda.
Devido à sua maior complexidade, os métodos híbridos não fazem parte do escopo
 deste livro. na primeira com a
em da convergência garantida
idade de convergência da segunda.
A seguir,
A seguir, vamos vamos apresentar
apresentar trêstipos
três tiposde
de métodos
métodos dadaprimeira família.
primeira família.

resentar três tipos de métodos da primeira família.


Capítulo 3 – Solução de Equações não Lineares a uma Incógnita

Capítulo 3 – Solução de Equaç


194 CÁLCULO NUMÉRICO COMPUTACIONAL
Quebra 3.2.1 Métodos de Quebra
os de Quebra
Bisseção3.2.1.1
(ou Bipartição)
Método dapara
3.2.1 Métodos Raízes
de Quebra
Bisseção Reais
(ou Bipartição)

odo da Bisseção 3.2.1
(ou Métodos
Bipartição) parade Reais para Raízes Reais
quebra
Raízes
3.2.1.1
f (x)Método da Bisseçãof ((ou
= 0, se fe ocorrer
0, se f (x) for contínua em [a,b] a ) *Bipartição)
f ( b ) ≤ 0 ,e ocorrer
para Raízes
f ( aReais
(x) = 0, se f
Em
(x) for contínua em [a,b]
fma raiz real α dentro desse intervalo,
(x) for contínua em [a,b]
3.2.1.1 Método da bisseção e ocorrer (ouf (. Logo,
) ( )
bipartição)
a f b ≤ 0 ,
para
) * f (b ) ≤ 0,
raízes reais
α ∈ [ a , b ] *
então existirá uma raiz real α dentro desse intervalo, α ∈ [a, b]. Logo,
tirá uma raiz real α dentro desse intervalo,
ção para uma essa Em
raiz Em fser
pode (x) =tomada como α∈ a, b]. Logo, e ocorrer f ( a ) * f ( b ) ≤ 0 ,
0, se f (x) for contínua em [a,b]
o [valor
aproximação
f(x) = 0, se para
f(x) foressa raiz pode
contínua em [a,ser
b] etomada
ocorrer como o valor
f(a) * f(b) ≤ 0,
ximação
b para então existirá uma raiz real α dentro desse intervalo,
essa raiz pode ser tomada como o valor α ∈ [a, b]. Logo,
então existirá uma raiz real α dentro desse intervalo, α ∈ [a, b]. Logo, se
a + b
a. + b αmédio
≠ a uma
ou b,2uma. aproximação
x1α=≠ aproximação para essa raiz raiz
para essa pode ser ser
pode tomada
tomadacomo
como o valor
= .
2 Capítulo 3 – Solução de Equações nã
a + b.
algoritmo do método da bisseção é estabelecido com
médio
médio x1 = .
o valorAssim, o algoritmo do método da bisseção é estabelecido com
im, o algoritmo do método da bisseção é estabelecido com
2
o objetivo de:
de: Assim, oAssim, o algoritmo do método da bisseção é estabelecido com
algoritmo do método da bisseção é estabelecido com o
objetivo
3.2.1 de:
Métodos de Quebra
zir o intervalo inicial [a,b] a um subintervalo tão pequeno
o objetivo de:
a) reduzir o intervalo inicial [a,b] a um subintervalo tão pequeno
reduzir o intervalo inicial [a,b] a um subintervalo tão pequeno
to necessário, porém contendo a solução α; e
quanto necessário, porém contendo a solução α; e
3.2.1.1 Método
a) reduzir da Bisseção
o intervalo (ou Bipartição)
inicial
quanto necessário, porém contendo a solução α; e [a, b] a umpara Raízes Reais
subintervalo tão pequeno
a) reduzir o intervalo inicial [a,b] a um subintervalo tão pequeno
a solução aproximada contida
b) obter a nesse
solução subintervalo
aproximada da nesse subintervalo da
contida
) obter quanto
a solução aproximada necessário, porém contendo a solução
contida nesse subintervalo da α; e
quanto necessário, porém contendo a solução α; e
nte forma: seguinte forma:
seguinte forma: Em f (x) = 0, se f (x) for contínua em [a,b] e ocorrer f ( a ) * f ( b ) ≤ 0 ,
b) para b) obter
reduzir esse
temos o primeiro valor médio do intervalo: a intervalo
solução inicial,
aproximada contida
procedemos da nesse subintervalo
seguinte forma: da
i) obtemos o primeiro valor médio do intervalo:
então existirá uma raiz real α dentro desse intervalo, α ∈ [a, b]. Logo,
i) obtemos o primeiro valor médio do intervalo:
seguinte forma:
uma + b
i) a obtemos o primeiro valora raiz
médio do intervalo:
+ b pode
x1 = aproximação
a +
para essa
x1 =
ser tomada como o valor
i) bobtemos o primeiro valor médio do intervalo:
2
x = a + b 2
médio x11 = 2 . a + b
2
ntão, temos três valores de x : a, b e x1 ; x1 =
então, temos três valores de x : a, b e 2e x ; x1 ;
então, temos três valores de x : a, b
Assim, o algoritmo do método da bisseção é estabelecido com
então, temos três valores de x : a, b e
definimos um novo ii) redefinimos
intervalo [a,b], com x ; metade do [a,b],
um novo
1 intervalo 1 com metade do
ii) redefinimos um novo
o objetivo de: intervalo
mprimento inicial, considerando que:
ii) redefinimos [a,b], com metade
então, temos três valores de x : a, b e
um novo intervalo [a, b], com metade do x1 ;do compri-
comprimento inicial, considerando que:
comprimento inicial, considerando que:
ii) redefinimos
mento inicial, um que:
considerando novo intervalo [a,b], com metade do
=0 ⇒ α = x1
se f ( x1 )a) reduzir o intervalo inicial [a,b] a um subintervalo tão pequeno
se f ( x1 ) =0 ⇒ α = x1
se ( x1 ) =comprimento inicial, considerando que:
0 ⇒ α = x1
se fquanto necessário, porém contendo a solução α; e
não verificamos em qual senão subintervalo,
verificamos em ] ousubintervalo, [a, x1 ] ou
[a, x1qual
senão verificamos senão em qual subintervalo, se [f a( ,x1xcontida ⇒α
)1 ]= 0ou ]=ou
xnesse x1 [x , b], α está: da
, b] , α está: [ x1 ,verificamos
b) obter emaproximada
a solução
b] , α está: qual subintervalo, [a, 1 subintervalo
1
[ x1 , b] , α está: senão verificamos em qual subintervalo, [a, x1 ] ou
seguinte forma:
f (a) * f ( x1 ) < 0 ⇒se α ∈ [a,f= x(1a],) * bf ( x1x)1< e0= f (b)α ∈f[a( x,1=
⇒ x) 1 ], b x1 e= f (b) f ( x1 )
se f ( a ) * f ( x ) < 0 ⇒ α ∈
[ x [ a
, b, =
]x, α está:
], b x e
i) [ xobtemos o primeiro valor médio do intervalo:= f (b ) f ( x )
ão f ( x1 ) * f (b) < 0 1⇒senão α∈ 1 f,=(bx],1 )1 *af (1bx)1< e0= f (1 aα
⇒ ) ∈f[ x(1x,1= )b], a1 x1 e= f (a ) f ( x1 )
senão f ( x1 ) * f (b ) < 0 ⇒ α
 se∈ [ x1 ,= fb(],
a ) a
* f ( x1 ) <
e = 0
a + bf (⇒a ) α f∈ ([xa
1 )
, =
x1 ], b x1 e= f (b) f ( x1 )
Uma 
vezintervalo,
redefinido x =
ma vez redefinido o Uma
novo vez redefinido
senão
novo )o* novo
f ( x1calculamos ) <intervalo,
f (b1 o novo
0 2⇒ um α ∈calculamos
intervalo,
[ x1 ,= a umx1 segundo
b],calculamos e= um
f (a ) f ( x1 )
Uma vez redefinido valor o
médio x intervalo,
: calculamos um
gundo valor médio x2 : segundo valor médio 2 x2 :
segundo valor médio ax2então, temos três valores de x : a, b e
+: bUma vez redefinido a o + novo
b intervalo,
x1 ; calculamos um
x2 =ii) redefinimos a + b x =
um novo intervalo [a,b], com metade do
x22 =segundo valor médio x22 :
2

comprimento inicial, considerando que:


2 a + b
então,então, temos três novos valores de x : a, b e
ntão, temos três novos valores de x : a, b e temos três novos x2 ;valores de xx:2 a, = b e x2; x2 ;
então, temos três novos valores de x : a, b e
m esses novos a, b iii) e
com x2 , esses
voltamos novos ao a, se
passo (2 x; 1 x)(ii),
b fxe 2= ⇒ α 2= x1 ao passo (ii),
, 0voltamos
iii) com esses x1 =novos a, b e então, temos três novos valores de x : a, b e
considerando x , voltamos ao passo (ii),
x1 = x2 , enquanto algum critério de parada
nsiderando x2 , enquanto algum critério de parada
senão 2 verificamos em qual subintervalo, [xa2 ,; x ] ou 1
considerando x1 = xnão for satisfeito.
2 , enquanto algum critério de parada
o for satisfeito. [iii)
x1 ,cbom esses novos a, b e x2 , voltamos
] , α está: 19 ao passo (ii),
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 195

Capitulo 3
iii) com esses novos a, b e x2, voltamos ao passo (ii), considerando
x = x2, enquanto
Assim,1 depois
algum critério de parada não for satisfeito.
do cálculo inicial de f (a ) , f (b) e de x = a − f (a)(b − a) / ( f (b) − f (a)) ,
1
análogo ao método da falsa posição, precisamos:
No final, o último x médio, calculado sobre o último subintervalo [a, b],
é a melhor aproximação
Grafico 3.2 para a raiz, α ≅ (a + b) / 2, sendo o comprimento
desse subintervalo uma medida da precisão da raiz desejada.

A bisseção é um método usado frequentemente para obter a primeira


aproximação da solução. Esse método também é chamado de método da
busca binária, ou método da dicotomia.

No exemplo ilustrado no Gráfico 3.3, α ∈ [a, x1] ⇒ b = x1, ou seja,


o novo valor de b deve ser redefinido com o primeiro valor médio, x1, para
que α fique contido no primeiro subintervalo I1 = [a, x1], que é menor do
que o intervalo inicial I0 = [a, b]. Assim, repetimos o processo de partições,
avaliando os valores extremos e médio de cada subintervalo I k, com
k = 1, 2, 3, 4, ..., até que algum critério de parada seja satisfeito, por exemplo,
|b – a| < ε, com os últimos a e b, de acordo com a precisão desejada.

Gráfico 3.3 – Método


Grafico 3.3 da bisseção, ou bipartição, do intervalo [a, b]

Fonte: Elaboração
Graficoprópria.
3.6
211
Neste ponto, podemos le
Neste ponto, podemos levantar uma questão fundamental: será
que a sequência de valores
196 CÁLCULO NUMÉRICO COMPUTACIONAL
que a sequência de valores médios xk converge para a raiz α, isto é,?
?
Neste ponto, podemos levantar uma questão fundamental: será que a sequência de
valores médios xk converge para a raiz α, isto é, ? Note que o compri
Note que o comprimento de cada novo subintervalo | b − a é |
Note que o comprimento de cada novo subintervalo é bk − ak = k ,, em que a
|b−a | 2
− aque
bkem k =a e bk são, em que a e b são os valores extremos do intervalo
os valores extremos do intervalo inicialinicial que contém a raiz α
que contém a raiz
2
inicial que contém a raiz α e k indica o número de partições.
α e k indica o número de partições.
Como α ∈ [ak , bk ] e l
 b−a  k
Como α ∈
Como ∈[a[ak k,,bbk k]] e
e lim = bk − ak lim = k  ⇒ o processo é
⇒ o processo
é convergente.
0
convergente.
é convergente.
k →∞ k →∞
 2 

Então, o ponto médio


Então, o ponto médio do último subintervalo será uma aproximação
Então, o ponto médio do último subintervalo será uma
aproximação
da solução α com erro não superior ao comprimento desse subintervalo. da soluçã
aproximaçãoa da
Teoricamente, raizsolução exata αquando
α será atingida com erro não superior
o número k de ao
partições
comprimento desse sub
tender ao infinito. α será quando o núme
comprimento desse subintervalo. Teoricamente, a raizatingida
atingida quando o número k de partições tender ao infinito.

Exemplo 3.2: obtenha a primeira raiz positiva α de ex sen(x) – 1 = 0, situada


Exemplo 3.2: obtenha a pr
em [0, 1], por bisseção, com n = 5 partições do intervalox[0, 1] (n denota o
Exemplo 3.2: obtenha a primeira raiz positiva α de e
número total de partições). sen(x) –1 = 0,
situada em [0,1], por biss
situada em [0,1], por bisseção, com n = 5 partições do intervalo [0,1] (n denota o número
[0,1] (n denota o número total de partições).
Solução: Solução:
partir do intervalo inicial I0 = [0, 1], k = 0, geramos o xk A partir do intervalo inic
ASolução: médio inicial e
fazemos a seleção para definir o primeiro
A partir do intervalo inicial I 0 subintervalo,
= [0,1], k particionado,
= 0, geramos o I1 = [0.5, 1]
xk médio
inicial e fazemos a seleç
(em negrito), pois houve troca de sinais de f(x) = e sen (x) – 1 entre xk e b. 1
x
inicial e fazemos a seleção para definir o primeiro 1intervalo
Em k = 1, partimos1 desse primeiro intervalo particionado Iparticionado = [0.5, 1] e, a I = [0.5, 1]
particionado I = [0.5, 1] (em negrito),
cada nova partição k, estabelecemos um novo subintervalo [a,pois houve troca
sinais
b] e uma de
de
= f ( x) e x sen( x)
nova
sinais de
aproximação= fx( xpara x
) e asenraiz( xα) −∈1 [a,
entre
b]. xk e b. Em k = 1, desse
partimos
primeiro interval
k
desse primeiro intervalo particionado I = [0.5, 1] nova partição k, estabele
1
e, a cada
nova partição k, estabelecemos um novo intervalo [a, b] e uma
nova aproximação xk pa
nova aproximação xk para a raiz α ∈ [a, b].
Computacional
Computacional CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 197

Tabela 3.1 – Resultados


Tabelado3.1
Exemplo
3.1 3.2de resultados do Exemplo 3.2
Tabela –– Tabela
Tabela de resultados do Exemplo 3.2
kk aa =
xx=
kk ((aa ++ bb)) // 22 bb ff ((a
a)) ff (( xxkk )) ff ((b
b)) || b
b−−a
a || 2kk
2

0 0 0.5 1 –1 –0.21 +1.287 1.0 1

1 0.5 0.75 1 –0.21 +0.443 +1.287 0.5 2

2 0.5 0.625 0.75 –0.21 +0.093 +0.443 0.25 4

3 0.5 0.5625 0.625 –0.21 –0.064 +0.093 0.125 8

4 0.5625 0.59375 0.625 –0.064 +0.013 +0.093 0.0625 16

55 0.5625
0.5625 0.578125
0.578125 0.59375
0.59375 –0.064
–0.064 –0.02584
–0.02584 +0.013
+0.013 0.03125
0.03125 32
32

Fonte: Elaboração própria. Fonte:


Fonte: Elaboração
Elaboração própria
própria

Ao Ao fifinal de
Ao fi nal de n
nal de n =
= 5 partições, a raiz α está contida no intervalo
n = 5 partições, 5 partições, a raiz α está contida no intervalo
a raiz α está contida no subintervalo final [a, b]
fi
= [0.5625, nal [
fi nal [0.59375],
a , b ] = [0.5625,
a, b] = [0.5625, também0.59375] grifado , também grifado em negrito, de
0.59375] em negrito, de comprimento (1 – 0) / 32.
, também grifado em negrito, de
Normalmente,
comprimento (1
comprimento (1 –– 0) a melhor raiz aproximada é a média entre a e b finais da
0) // 32. Normalmente, a melhor raiz aproximada
32. Normalmente, a melhor raiz aproximada
última partição, neste caso seria x5 = 0.578125. No algoritmo apresentado,
é a média entre a e b fi
é a média entre a e b fi nais da última partição, neste caso seria
nais da última partição, neste caso seria
consideramos
xx5 = 0.578125 uma partição k completa quando os valores extremos do
. No algoritmo apresentado, consideramos uma
5 = 0.578125
subintervalo final. No algoritmo apresentado, consideramos uma
[a, b] e o seu valor xk médio estão definidos.
partição
partição k completa
completa quando
quando os
os valores
valores
O critério de parada baseado no k comprimento do subintervalo final da
Ordem de Grandeza dos Números
Ordem departição Grandeza |bn–dos a| éNúmeros
o mais utilizado extremos do intervalo particionado [a,
extremos do intervalo particionado [a,
nesse método e, neste caso, depois de 5 parti- b]
b]
– Um número x = m * 10 n em ponto fl utu- e o seu valor x médio estão defi nidos.
– Um número x ções,= m temos |b – a| = utu-
* 10 em ponto fl 0.03125, ou seja, a raiz
e o seu valor xkk α médio estão defi
é aproximada dentro de um
nidos.
ante é de ordem de grandeza O (10 nn ) se o
subintervalo de0 comprimento
ante é de ordem de grandeza O (10 ) se o máximo 0.03125, que é de ordem O(10–2),
ador m ∈ [0, 1] estiver entre 10 0 e 10 1/2, ou 1/2 O critério de parada baseado no
ador m ∈ [0, 1]logo estiver entre dígitos
x5 tem 10 e 10convergidos
, ou O critério
somente de parada
até o primeiro dígitobaseado no
fracionário,
3.1622... , e x = m * 10 n será
estiver entre 1 e x 10≅≅ 0.578125 n
comprimento do intervalo fi nal da partição
estiver entre 1 e 510 ≅ 3.1622... , e x =(sublinhados).
m * 10 será comprimento do intervalo fi nal da partição
O(10 n+1
n+1
) se m ∈ [101/2 , 1011 ] . | b − a | é o mais utilizado nesse método e,
O(10 ) se m ∈ [10 , 10 ] .
1/2
| b − a | é o mais utilizado nesse método e,
Ordem de grandeza dos números neste caso, depois de 5 partições, temos
plo:
plo: –6 Um número x = m * 10 em ponto neste
n
flutuante écaso,
de ordemdepois de 5 partições, temos
de grandeza:
5 * 10–6 é da ordem O (10 –6 ) | b − a |= 0.03125 , ou seja, a raiz α é aproximada
5 * 10–6 é da ordem O–(10 O(10) ) se o multiplicador m ∈ [10
n –6 0
| b, −10a ]|=
1/2
(100.03125
1/2
, ou seja, a raiz α
= √10 ≅ 3.1622...), e é aproximada
5 * 10–6 é considerado da ordem O dentro de um intervalo de comprimento
–5
 – O(10 ) se m ∈
n+1 (10
[10
1/2 )
–5 , 10 ].
1
5 * 10 é considerado da ordem O (10 ) dentro de um intervalo de comprimento
Por exemplo: máximo 0.03125, que é de ordem O (10 –2 ),
x = 2.12345 * 10 é da ordem O(10
–6 –6
máximo
) 0.03125, que é de ordem O (10 –2),
Dígito convergido x = 5.12345 – é * aquele
–6
10 é considerado
que da logo
ordem x O(10
–5
tem
) dígitos convergidos somente
Dígito convergido – é aquele que logo x5 tem dígitos convergidos somente
5
não mais sofrerá alteração durante até o primeiro dígito decimal, x5 ≅ 0.578125
não mais sofrerá Dígitoalteração aquele que nãoaté o primeiro dígito decimal,
convergido: édurante mais sofrerá alteração durante as iterações. x5 ≅ 0.578125
as iterações. (sublinhados).
as iterações. (sublinhados).

E quando devemos parar o processo de partições sucessivas?


Capítulo 3 – Solução de Equações não Lineares a uma
198 CÁLCULO NUMÉRICO COMPUTACIONAL
Capítulo 3 – Solução de Equações não Lineares a

Podemos predefinir a quantidade n de bipartições por meio da


E quando devemos parar o processo de partições sucessivas?
previsão do comprimento do último subintervalo
Podemos predefinir a quantidade n de bipartições por meio da b( n ) − a ( n ) desejado,
dado por: Podemos predefinir a quantidade n de bipartições
previsão do comprimento do último subintervalo b( n ) −por
a ( n ) meio da pre-
desejado,
visão do comprimento do último subintervalo |b – a | desejado, dado por:
dado por:
(n) (n)
|b−a | |b−a|
b − a ( n=
(n) )
≅ ε ⇒ n = ln   ln(2) (1)
ε
n
2| b − a |   | b −  |
a
b( n ) − a ( n=
)
≅ ε ⇒ n = ln   ln(2) (1)
(1)
ε
n
2  
Então, depois da n-ésima bipartição, o comprimento do
Então, depois depois dada
subintervalo será da ordem de
Então, n-ésima bipartição,
ε com a raiz
n-ésima oαcomprimento
contida nesse último
bipartição, o comprimento do subintervalodo
será da ordem ( n ) de( n ) ε com a raiz α contida nesse último subintervalo [b , a ].
(n) (n)
subintervalo [b , a ] .
subintervalo será da ordem de ε com a raiz α contida nesse último
subintervalo
Exemplo 3.3:
(n)
, a ( n ) ] .o número n de bipartições necessárias para aproximar
[bcalcule
Exemplo 3.3:
α ∈ [0, 1] comcalcule
precisão o número
ε = 10–10, n oude bipartições
seja, com comprimentonecessárias
máximo do
para aproximar
Exemplo
subintervalo3.3:
final α ∈
calcule [0,1]
menoro com precisão
ounúmero
–10
igual a 10n de ε = 10 −10
. bipartições , ou seja, com
necessárias
–10
comprimento máximo do intervalo final menor ou igual a 10
para aproximar α ∈ [0,1] com precisão ε = 10 , ou seja, com
−10
.
Solução:
comprimento máximo do intervalo final menor ou igual a 10 –10.
Solução:
Solução:  1− 0 
Aplicando a eq. (1):
Aplicando a eq. (1): n = ln  −10  ln(2) = = 33.2
33.2 ⇒ ⇒n= 34 .
n= 34.
 10 1 −0 
Aplicando a eq. (1): n = ln  −10  ln(2) = 33.2 ⇒ = n 34 .
Ou Ou seja,serão
seja, serão necessárias
necessárias 34 partições
34  para que
10 partições o último
para que o subintervalo
último que
–10
contenha a raiz α seja menor de 10 e que a raiz α esteja exata até o seu
intervalo que contenha a raiz α seja menor de 10 –10
Ou seja, serão necessárias 34 partições para e que a raiz que o último
décimo dígito significativo, depois do ponto (vírgula).–10
α esteja exata até o seu décimo dígito significativo, depois do
intervalo que contenha a raiz α seja menor de 10 e que a raiz
ponto (vírgula).
α esteja exata até o seu décimo dígito significativo, depois do
Se a quantidade n de bipartições não for previamente determinada, quando
deveremos interromper, ou truncar, o processo de bipartições para assegurar certa
ponto (vírgula).
precisão estabelecida? Ou seja, qual é realmente o erro de truncamento existente
em uma solução xn aproximada em n partições?
Se a quantidade n de bipartições não for previamente determinada,
quando
Se a deveremos
quantidade interromper,
A maioria dasn soluções ou erros
de bipartições
tem truncar, o previamente
nãodefor processo de bipartições
arredondamento determinada,
e de truncamento.
Como jádeveremos
para
quando vimos nos
assegurar certa capítulos ou
precisão anteriores,
truncar, oo processo
estabelecida?
interromper, Ou arredondamento
seja, qual é
derealmentepode ser
bipartições
minimizado
o erro
parade se certa
usarmos
No cálculo do erro
truncamento
assegurar de precisão
existente
precisão em maior,
uma por
Ouisso
solução
estabelecida? n
vamos
qual éefetuar
truncamento, precisamos de uma solução
xseja,
aproximada em ntodos os
realmente
variável double, padrão real IEEE de 64 bits.
cálculos com a para comparar com a nossa solução aproximada
exata “estimada” x
partições?
o erro de truncamento
e existente em uma solução x aproximada em n
No cálculo do erro de truncamento, precisamos n
de uma solução exata
xn, obtida depois de n partições, pois as soluções exatas não estão
partições?
“estimada” xe para comparar com a nossa solução aproximada xn, obtida
disponíveis. Então,
depois de n partições, pois as soluções exatas não estão disponíveis. Então,
A maioria das soluções tem erros de arredondamento e de
truncamento. Como já vimos nos capítulos anteriores, o arredondamento
Erro A maioria das
truncamento
Erro truncamento soluções
estimado
estimado de tem
de x= erros
xn − xede
arredondamento
(2) (2)e de
n
pode ser minimizado se usarmos precisão maior, por isso vamos
truncamento. Como já vimos nos capítulos anteriores, o arredondamento
efetuar
pode todos
Uma os cálculos
ser solução
minimizado com
se
“exata” x ea
usarmos variável double,
precisão
estimada deve padrão
maior,
ter por real
mais isso IEEE
vamos
dígitos
de 64 bits.
efetuar
signifi todos
cativos os cálculos
exatos do que com variável double,
x , e a normalmente padrão obtê-la
podemos real IEEE
n
de 64 bits.mesmo método de aproximações numéricas, mas com
aplicando o
esmo
étodo Uma solução “exata” x e estimada deve ter mais dígitos
deve
signifi
cativos
CAPÍTULO exatos
3 – SOLUÇÃO do que
DE EQUAÇÕES , e normalmente
xnLINEARES
NÃO 199
A UMA INCÓGNITA podemos obtê-la
sido
stado aplicando o mesmo método de aproximações numéricas, mas com
mente mais repetições, então x
Uma solução “exata” pode ser:
e x estimada deve ter mais dígitos significativos
e
ução
exatos do que xn , e normalmente podemos obtê-la aplicando o mesmo método
cida. a) o valor numéricas,
de aproximações numericamente
mas comexato
mais de uma solução
repetições, então xaproximada
pode ser:
e
com até infinitas partições; ou
a) o valor numericamente exato de uma solução aproximada com
b) o
atévalor aproximado
infinitas com um número mínimo de partições
partições; ou
a mais do que o do valor aproximado, como o dobro de
b) o valor aproximado com um número mínimo de partições a mais do
partições, por exemplo.
que o do valor aproximado, como o dobro de partições, por exemplo.
No Exemplo
 conhecida.3.3, depois de 51 partições, atingimos critérios
Esse mesmo método deve ter sido testado previamente com alguma solução exata

de parada b − a = 0.0000000000000004 e f ( x ) ≅ 0.00000000000000000000


com os seguintes resultados:
No Exemplo 3.3, depois de 51 partições, atingimos critérios de parada
|b – a| = 0.0000000000000004 e |f(x)| ≅ 0.00000000000000000000 com os
a = 0.5885327439818608
seguintes resultados:
b = 0.5885327439818613
a = 0.5885327439818608
x51 = 0.5885327439818611 ⇒ f ( x51 ) = 0
b = 0.5885327439818613
x51 =A raiz x encontrada atinge f
0.5885327439818611
51
⇒ f(x51) = 0 (x51) numericamente nula, com
16 dígitos signifi cativos exatos, ou seja, é uma raiz aproximada no
A raiz x51 encontrada atinge f(x51) numericamente nula, com 16 dígitos
limite da precisão da variável double adotada.
significativos exatos, ou seja, é uma raiz aproximada no limite da precisão
A raiz xdouble
da variável 10
encontrada com o dobro de iterações é x
adotada. 10
= 0.58837890625,
A raiz x10 encontrada com o bdobro
obtida com critério de parada −a = de iterações é x10. = 0.58837890625,
0.0009765625
obtida com critério de parada |b – a| = 0.0009765625.
O erro de truncamento da nossa solução aproximada
O erro de truncamento da nossa solução aproximada x5 = 0.578125,
x5 = obtida
0.578125, obtida depois de n
depois de n = 5 partições e = 5 partições e com critério de parada
com critério de parada |b – a| = 0.03125,
b −éao= 0.03125 , é o seguinte:
seguinte:
Capítulo 3 – Solução de Equações não Lineares a um
Erro de
Erro de x5 = x5 − x51 = 0.578125 − 0.588532743981861 = 0.010407743981861
comparando com x51. .
comparando com x 51

Erro de x5 = x5 − x10 = 0.578125 − 0.58837890625 = 0.01025390625 compa-


Erro de
rando com x10.
comparando com x .
10

O Oerro
erro de
de truncamento mais exato
truncamento mais possível
exato de x5 é 0.010407743981861,
possível de x 5 é
obtido por comparação com x , e o erro estimado por comparação
0.0104077439818611, obtido por comparação com x51, e o erro estimado
51
com x10
–2
é 0.01025390625 e ambos são da mesma ordem de grandeza O(10 ).
por comparação com x10 é 0.01025390625 e ambos são da mesma Vimos no
ordem de grandeza O(10–2). Capítulo 2
que a esti-
Assim, a solução aproximada x 5 = 0.578125 tem erro de
O erro de truncamento mais exato possível de x 5 é
max | xi( k +1) − xi( k ) |
0.0104077439818611, obtido por comparação com x = 0.92676193508251e, e o erro estimado
− 06
por Erro
200 max X =com
comparação (21)
| X x10− é
(21) (61)
| = 1.08789550551380
X 0.01025390625 e − 06
e ambos
CÁLCULO são da mesma
NUMÉRICO Vimos no
COMPUTACIONAL
–2
ordem de grandeza O(10 ). Capítulo 2

189Assim, a solução aproximada x = 0.578125 tem erro de mativa de


que a esti-
5
α = 1
truncamento
2 − i ,
Assim, α = 1
a + i (
soluçãoi = − 1 )
aproximada x = 0.578125 tem erro de trunca-
≈3 0.01 , enquanto o critério de parada é maior, mas da
5 um valor
mento ≈ 0.01, enquanto
mesma ordem O(10 –2
), b − o critério
a = 0.03125 de.parada é maior, mas da mesma ordem“exato” de
= (1/–2),
αO(10 * i ( 2π * n + π − i * ln ( 3 ) ) , n ∈ Z
2 )|b – a| = 0.03125. uma solução também
Portanto, é razoável estimar o valor “exato” de uma raiz com pode ser obtida adotand
Portanto, é razoável estimar o valor “exato” de uma raiz com o mesmo
194
o mesmo método aproximador fazendo o dobro de partições, para
método aproximador fazendo o dobro de partições ou com limite ao quadrado
critério de parada com
então calcular o erro de truncamento exato estimado:
do critério
Logo, se α ≠ deaparada,
ou α ≠ parab , então calcular o erro de truncamento exato estimado:
dobro de precisão (crité
de parada ε2).

Erro
Errotruncamento
200 truncamentoestimado
estimado de
de x=
n
xn − x2 n (3a) (3)
2 
ErroObserve que no Exemplo de x ε = x ε − x ε
truncamento estimado 3.2 os critérios de parada alternativos (3b) (3) (3b )

f ( x5 ) = Vimos
0.0258393 ou x − x4 < 0.015625
no Capítulo 2 que5 a estimativa
também são de ordem de
de um valor “exato” de uma solução também pode ser obtida
205
 adotando
grandeza semelhante à ordem
critério de parada com o dobrodo critério
de precisão ( limitede parada
do critério utilizado,
de parada ε2).
b − af (=
b)0.03125
= f (b) * , e todos são superiores ao erro de truncamento real
pb
estimado.Observe que no Exemplo 3.2 os critérios de parada alternativos
|f(x )| = 0.0258393 ou | x – x ) | < 0.015625 também são de ordem de grandeza
223Normalmente, podemos usar esses critérios de parada como
5 5 4
semelhante
limite superior à do ordem
erro dode critério de parada utilizado,
truncamento, pois, uma a| =que
|b –vez 0.03125,
eles e todos
f ( x0 + Δao
são superiores x) −erro
f ( x0de
) truncamento real estimado.
f ′( x0 ) ≅
tenham atingido valores aceitáveis, os erros de truncamento devem
Normalmente,Δx podemos usar esses critérios de parada como limite
ser ainda menores.
superior do erro de truncamento, pois, uma vez que eles tenham atingido
valores aceitáveis, os erros de truncamento devem ser ainda menores.
234

1/ cComo
Como mencionamos
mencionamosnonoCapítulo
Capítulo 2,2, para
para cadacada método
método discutido
discutido ao longo ao
desta obra,
longovamos
desta apresentar todos
obra, vamos os algoritmos
apresentar compactados
todos os algoritmosno Caderno de Algoritmos
compactados
235 disponível para download no link <http://sergiopeters.prof.ufsc.br/algoritmos-livro/>,
no Caderno de Algoritmos disponível para download no link <http://
indicando o arquivo extensão .m do algoritmo correspondente ao método ou exemplo
1/ capresentado, como no arquivo Cap3MetodosParticao.m,
sergiopeters.prof.ufsc.br/algoritmos-livro/>, indicandoque ocontémarquivo
o método da
extensão .m do algoritmo correspondente ao método ou exemplode testá-
bisseção e demais métodos de partição deste capítulo. Lembre-se sempre 209
los no momento em que o indicamos para depois continuar a sua leitura.
apresentado, como no arquivo Cap3MetodosParticao.m, que contém
o método da bisseção e demais métodos de partição deste Capítulo.
3.2.1.2
Lembre-se sempreMétodo da falsa
de testá-los posição
no momento em que o indicamos para
depois continuar a sua leitura. percebemos que o método da bisseção é lento,
Mesmo intuitivamente,
25
pois reduz o intervalo de busca da raiz α em apenas 50% a cada partição.
Então, como particionar o intervalo [a, b] para obter uma convergência mais rápida
para a raiz α?
No método da falsa posição, particionamos cada intervalo por meio
de um novo valor de xk, que é a interseção entre uma reta r(x) e o eixo das
abcissas x, conforme o Gráfico 3.4.
por meio de um novo valor de xk, que é a interseção entre uma reta
No método da falsa posição, particionamos cada intervalo
e o eixo das abcissas x, conforme o Gráfico 3.4.
r (x)CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA
por meio de um novo valor de xk, que é a interseção entre uma reta
201
Gráfico 3.4 – Método da falsa posição
r (x) e o eixo das abcissas x, conforme o Gráfico 3.4.
Gráfico
Gráfico 3.4 – Método da falsa 3.4 – Método da falsa posição
posição

Fonte: Elaboração própria. Fonte:


Fonte: Elaboração
Elaboração própria
própria

O método da falsa posição consiste nas seguintes etapas:


O método da falsa posição consiste nas seguintes etapas:
O método da falsa posição consiste nas seguintes etapas:
a) Tomar um intervalo inicial [a,b], com α ∈ [a,b], na etapa de
a) Tomar um intervalo inicial [a, b], comα α∈ ∈[a,b], na etapa de
a) Tomar um intervalo inicial [a,b], com [a, b], na etapa de
localização.
localização.
localização.
b) Obter os pontos extremos do intervalo (a, f (a)) e (b, f (b)).
b) Obter os pontos extremos do intervalo (a, f(a))
b) Obter os pontos extremos do intervalo (a,
c) Definir a reta r e (b, f(b)).
f (a)) e (b,
(x) que passa por esses pontos extremos:f (b)).
Capítulo 3 – Solução de Equações não Linea
c) Definir a reta r
c) Definir a reta r(x) (x) que passa por esses pontos extremos:
que
f (b)passa
− f (apor
)  esses pontos extremos:
r ( x) =f (a) +   ( x − a ) (4)
 f (b ) − bf −(aa)  
r ( x) = f (a) +  − a ) (4)
x( x que (4)
26 d) Calcular o valor  do b −novo
a  k, particiona o intervalo, de
modo que r (xk) = 0, ou seja, xk é a interseção entre a reta r (x) e
d) Calcular o valor do novo xk, que particiona o intervalo, de modo
o eixo das abscissas x e não é uma média aritmética simples
que r(xk) = 0, ou seja, xk é a interseção entre a reta r(x) e o eixo das
do intervalo,
abscissas como
x e não no método
é uma da bisseção.
média aritmética Esse do
simples valor de
intervalo,
xcomo
k
é equivalente a uma média ponderada pelos valores das
no método da bisseção. Esse valor de xk é equivalente a uma
funções nas extremidades a e b:
média ponderada pelos valores das funções nas extremidades a e b:
f (a ) * (b − a )
r ( xk ) = 0 ⇒ xk= a −
(5) (5)
( f (b) − f (a ))
Alternativamente, também
Alternativamente, usamos a usamos
também forma a forma
a * f (b) − b * f (a )
xk = (com uma multiplicação a mais).
(com uma multiplicação a mais).
f (b) − f (a )
Então, a partir de a, b e xk, xprocedemos
Então, a partir de a, b e como no método da bisseção.
, procedemos como no método da
k
bisseção.
e) Se f (xk) = 0 ⇒ α = xk .
xxk =
a b)) −
a ** ff ((b −bb ** ff ((a
a )) (com uma multiplicação a mais).
= (com uma multiplicação a mais).
b)) −
ff ((b − ff ((a
a ))
k

202 CÁLCULO NUMÉRICO COMPUTACIONAL


Então, a partir de a, b e xxk ,, procedemos como no método da
Então, a partir de a, b e
k
procedemos como no método da
bisseção.
bisseção.
e) Se f
e) ((xxk))) =
Se f(x
e) Se f ⇒α
== 000 ⇒
⇒ ==xxkx.. .
αα=
kk k k
Senão, pelo teorema de Bolzamo, decidiremos onde a raiz α
Senão, pelo teorema de Bolzamo, decidiremos onde a raiz α ficou,
Senão, pelo teorema de Bolzamo, decidiremos onde a raiz α
se em [a, xk] ouxxse
ficou, se em [a,
ficou, se em [a, k] em [xk, b], xxk, b],
] ou se em [
ou se em [ b],
k k,

se ff ((aa)) ** ff (( xx1 )) < 0 ⇒ α ∈ [ a, =xx1 ], b xx1 ee=


ff ((bb)) ff (( xx1 ))
se 1 < 0 ⇒ α ∈ [ a, = 1 ], b 1 = 1
senão f ( x ) f ( b ) < 0 ⇒ α ∈ [ x ,= b ], a x e =
f (a ) f ( x11 ))
f ( a ) f ( x
senão f ( x11 ) * f (b) < 0 ⇒ α ∈ [ x11 ,= b], a x11 e=
*

Redefinimos o novo subintervalo que contém a raiz α ∈ [a, b] e


Redefinimos o novo intervalo que contém a raiz
Redefinimos o novo intervalo que contém a raiz α
α∈ ∈ [a,b] e os
[a,b] e os
os valores das funções nesses pontos.
valores das funções nesses pontos.
valores das funções nesses pontos.
f) Com o novo intervalo atualizado [a,b], recalculamos o novo
f) Com o novo subintervalo atualizado [a, b], recalculamos o novo
f) Com o novo intervalo atualizado [a,b], recalculamos o novo
xxxk para a próxima partição:
para a próxima partição:
para a próxima partição:
kk

xxk== a −
ff ((a b−
a )) ** ((b −aa ))
a −
b)) −
(( ff ((b − ff ((a
a ))
k
))

Com a, b exxxkk k,,, retornamos ao item (e), enquanto algum critério


Com a, b e
Com a, b e retornamos ao item (e), enquanto algum critério de
retornamos ao item (e), enquanto algum critério
de parada não for satisfeito, análogo ao método da bisseção.
parada não for satisfeito, análogo ao método da bisseção.
de parada não for satisfeito, análogo ao método da bisseção.
g) No
g) No final,
final, o
o valor do xxnn calculado
valor do calculado sobre
sobre o
o último
último intervalo,
intervalo,
No final, o valor do xn calculado sobre o último subintervalo,
g) depois de n partições k do intervalo inicial, é considerado a
depois de n partições k do intervalo inicial, é considerado a
depois de n partições do intervalo inicial, é considerado a melhor
melhor aproximação para a raiz.
melhor aproximação para a raiz.
aproximação para a raiz.
O critério de parada baseado no valor do intervalo final |b−a|
O critério de parada baseado no valor do intervalo final | b − a |
não O critério deuma
parada baseado no valor do subintervalo – a| não
final |b como
não é
é indicado
indicado se
se uma das
das extremidades
extremidades a a ou b ficar
ou b ficar fixa,
fixa, como
é indicado se uma das extremidades a ou b ficar fixa, como apresentamos
no Gráfico 3.4, no qual o ponto x = b inicial fica fixo ao longo das iterações.

O critério de parada do método da falsa posição pode ser baseado


no valor das diferenças entre a raiz aproximada a cada partição xk e o seu
valor anterior xk – 1, | xk – xk – 1 | < ε, ou no valor da função em xk, |f(xk)| < ε,
ou uma combinação de ambas.

Veremos outros critérios de parada na seção 3.2.2.


no valor da função em xk , f ( xk ) < ε , ou uma combinação
de ambas.
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 203

Veremos outros critérios de parada na seção 3.2.2.


Exemplo 3.4: obtenha a primeira raiz positiva α de ex sen(x) – 1 = 0, situada
em [0, 1], peloExemplo
método3.4: obtenha a primeira raiz positiva α de
da falsa posição, com 5 partições, e calcule
e x sen( x)o− erro
1= 0 , de
truncamentosituada em [0,
atingido. 1], pelo método da falsa posição, com 5 partições,
e calcule o erro de truncamento atingido.
Solução: Solução:
Tabela 3.2 – Resultados do Exemplo
Tabela 3.23.4
– Tabela de resultados do Exemplo 3.4

k a xk = a – f (a)(b–a) / (f (b) – f (a)) b f (a) f (xk) f (b) | xk – xk–1 |


0 0 0.43719 1.0 –1.0 –0.34444 +1.28736 –
1 0.43719 0.555986 1.0 –0.34444 –0.079729 +1.28736 0.118800
2 0.555986 0.581881 1.0 –0.079729 –0.016551 +1.28736 0.0258952
3 0.581881 0.5871886 1.0 –0.016551 –0.0033553 +1.28736 0.0053073
4 0.5871886 0.5882617 1.0 –0.0033553 –0.00067690 +1.28736 0.0010731
5 0.5882617 0.5884781340 1.0 –0.00067690 –0.00013643 +1.28736 0.00021638

Fonte: Elaboração própria. Fonte: Elaboração própria

Observe que Observe que aplicamos o teorema de Bolzano para redefinir


aplicamos o teorema de Bolzano para redefinir cada novo
cada novo intervalo [a,
subintervalo [a, b], conforme a troca b], conforme a troca de sinais das funções
de sinais das funções Capítulo em
Capítulo a, xkdedeeEquações
33 –– Solução
Solução b. Emnão
Equações não Lineares
Lineares aa um
um

k = 5 partições em a, ponderadas
xk e b. Em kdo = 5 partições inicial,
intervalo ponderadas
atingimos do intervalo
o subintervaloinicial,
atingimos o intervalo final [0.5882617, 1.0],
final [0.5882617, 1.0], e a raiz aproximada dentro desse subintervalo deve ser e a raiz aproximada
x5 ≅ 0.5884781340,dentro desse intervalo deve ser
com critério de parada | xx5k ≅–0.5884781340
xk – 1 | <uma , com critério de
0.0002163821, ambos
No algoritmo
No algoritmo apresentado,
apresentado,
parada | x − x também
também
|< consideramos
consideramos
0.0002163821 , ambos uma
destacados partição
partição em negrito.
destacados em negrito. k No
k −1 algoritmo apresentado, também consideramos
k completa quando os valores extremos do intervalo particionado
k completa quando os valores extremos do intervalo particionado
uma partição k completa quando os valores extremos do subintervalo
são redefinidos e o respectivo valor do x
são redefinidos e o respectivo valor do x
28 particionado são redefinidos e o respectivo do intervalo é calculado.
do intervalo é calculado.
valor do xk é calculado.
kk
O último x
O último
kk
é considerado a raiz aproximada e o seu erro de trunca-
x k
é considerado a raiz aproximada e o seu erro de truncamento
mento pode
mento pode ser
pode ser estimado
ser estimado
estimado comocomo
como fizemos no método
fizemos
fizemos no método
no da bisseção,
método da bisseção,
da bisseção, comparando
x
comparando = 0.5884781340 com
= 0.5884781340
0.5884781340 x = 0.5885327258:
com xx10 0.5885327258::
= 0.5885327258
comparando
5 xx55 = 10 com 10 =

Erro de
Erro de xx55 =
Erro de = xx55 −− xx10 = 0.5884781340
10 = 0.5884781340 −− 0.5885327258 =0.0000545918
0.5885327258 = 0.0000545918

Para a validação desse erro, podemos atingir o valor aproximado


Para a validação desse erro, podemos atingir o valor aproximado mais
mais exato possível, no limite do critério de parada para 16 dígitos
mais exato possível, no limite do critério de parada para 16 dígitos
exato possível, no limite do critério de parada para 16 dígitos significativos
significativos da variável double, em 23 partições,
da variável double, em 23 partições, x23 =x23
significativos da variável double, em 23 partições, 0.5885327439818610,
23 = 0.5885327439818610 , ,
enquanto
no método da bisseção precisamos de 51 partições.
enquanto no método da bisseção precisamos de 51 partições.
Erro de = xx55 −
Erro de xx55 =
Erro de − xx23 = 0.5884781340
23 = − 0.5885327439818610
0.5884781340 − 0.5885327439818610
Erro de = xx55 −
Erro de xx55 =
Erro de − xx23 =0.000054609981861
23 =0.000054609981861

Observe que
Observe que oo erro
erro de
de truncamento
truncamento estimado
estimado com
com oo dobro
dobro
204 CÁLCULO NUMÉRICO COMPUTACIONAL

Observe que o erro de truncamento estimado com o dobro de


partições também gera uma ótima estimativa para o erro de truncamento.

No método da falsa posição, o valor do critério de parada adotado


|xk – xk – 1 | < 0.00021638 (O(10–4)) também é superior ao erro de truncamento
estimado, 0.000054609981861 (O(10–4)), logo o critério de parada pode ser
adotado como limite superior do erro de truncamento. Observe, ainda, que
o critério |f(xk)| = 0.000136426 também é da ordem de grandeza O(10–4).

No Caderno de Algoritmos, apresentamos o algoritmo do método da falsa posição


no arquivo Cap3MetodosParticao.m.

Na Tabela 3.2, o ponto b = 1.0 ficou fixo ao longo das partições, pois
a ∈ [xk, b], conforme esboçado no Gráfico 3.4. Esse ponto que ficou fixo, sem
atualização ao longo das partições, pode atrasar o processo de convergência.
Para corrigir esse tipo de convergência unilateral, podemos destravar o
ponto que ficou fixo usando o método da falsa posição modificado, por
exemplo, ou adotar os métodos de linearização, que veremos na sequência.

3.2.1.3 Método da falsa posição modificado

Para destravar algum ponto que fique fixo, seja a ou seja b, na


aplicação do método da falsa posição, podemos adotar o método da falsa
posição modificado, que impõe uma redução na magnitude da função
aplicada ao ponto que esteja fixo, em cada partição k, conforme detalhado
no Gráfico 3.5.
na aplicação do falsa posição, podemos adotar o método da falsa
posição modificado, que impõe uma redução na magnitude da função
aplicada
CAPÍTULO ao ponto
3 – SOLUÇÃO que esteja
DE EQUAÇÕES fixo, em
NÃO LINEARES cada
A UMA partição k, conforme 205
INCÓGNITA
detalhado no Gráfico 3.5.

Gráfico 3.5 – MétodoGráfico 3.5


da falsa – Método
posição da falsa posição modificado
modificado

Fonte: Elaboração própria. Fonte: Elaboração própria


Assim, depois do cálculo inicial de f (a), f (b) e de
x1 =a − f (a )(b − a ) / ( f (b) − f (a )), análogo ao método da falsa posição,
precisamos:depois do cálculo inicial de f(a), f(b) e de
Assim,
x1 = a – f(a)(b – a) / (f(b) – f(a)), análogo ao método da falsa posição,
precisamos: a) Identificar o ponto que fica fixo na partição, que é sempre
aquele que continua sendo usado na redefinição do novo
subintervalo; nesse caso, b fica fixo, pois
a) Identificar o ponto que fica fixo na partição, que α ∈ [éx1sempre
, b] , e o novo
aquele que
sendo usado xna
a é atualizado por
continua .
1 redefinição do novo subintervalo; nesse
Capítulo 3 – Solução de Equações não Linea
caso, b fica fixo, pois a ∈ [x1, b], e o novo a é atualizado por x1.
b) Reduzir o valor original da função correspondente ao ponto
fixo: nesse caso f (b), ao qual podemos aplicar um fator pb
b) Reduzir o valor original da função correspondente ao ponto fixo:
30 proporcional ao valor original da função no ponto não fi xo,
nesse caso f(b), ao qual podemos aplicar um fator pb proporcional
no caso a, dividido pela soma dos valores das funções neste
ao valor original da função no ponto não fixo, no caso a, dividido Se a é o
ponto fixo,
pela soma dos
ponto não fi valores das funções xneste
xo a e no ponto médio : ponto não fixo a e no
1 aplicamos
ponto médio x1:
o fator de
pb = f (a ) / ( f (a ) + f ( x1 )) (6)
(6) redução p
sobre f (a)
Assim, reduzimos de f(b) para f(b) = f(b) * p b e usaremos esse em que
Assim, reduzimos de f (b)xpara f
novo valor no cálculo de (b) da
através * pb e usaremos esse
(b) (5).
= feq.
2, pa = f (b) /
novo valor no cálculo de x2, através da eq. (5).
Se a é o ponto fixo,
Observe no gráfi aplicamos o fator de redução
co 3.5 que a reta r pa sobre f(a), em que
(x) corresponde à aplicação
 p = f(b) / (f(b) + f(x )).
1

da 2ª partição do método da falsa posição usando os valores


a k

originais das funções f (a) e f (b), enquanto com o método


da falsa posição modifi cado usamos a função reduzida
f (b) = f (b) * pb , que corresponde a nova reta r2 (x), menos
inclinada do que no método da falsa posição com r1 (x), o que
gera x2 mais próximo da raiz α, nesse exemplo.
novo valor no cálculo de x2, através da eq. (5). pa = f (b) / (
novo valor no cálculo de x2, através da eq. (5).
Observe no gráfi co 3.5 que a reta r1 (x) corresponde à aplicação
206 Observe no gráfi co 3.5 que a reta r (x) corresponde à aplicação
da 2ª partição do método da falsa posição usando os valores
CÁLCULO
1 NUMÉRICO COMPUTACIONAL
da 2ª partição do método da falsa posição usando os valores
originais das funções f (a) e f (b), enquanto com o método
originais
da falsa das funções
posição f (a)
modifi e f (b),
cado enquanto
usamos com o reduzida
a função método
Observe
da no Gráfico
falsa posição 3.5 que cado
modifi r1(x) corresponde
a reta usamos a função à reduzida
aplicação
f (b) = f (b) * pb , que corresponde a nova reta r2 (x), menos
da 2 partição do método da falsa posição usando os valores
a
(b) = f (b) * pb , que corresponde a nova reta r2 (x),
finclinada do que no método da falsa posição com r menos
(x), o que
originais das funções f(a) e f(b), enquanto com o método 1 da falsa
inclinada do que no método da falsa posição com r
posição
gera xmodificado usamos a função reduzida f(b) = f(b)
mais próximo da raiz α, nesse exemplo. (x), o que
1 * p , que
2 b
gera x2 mais próximo da raiz α, nesse exemplo.
corresponde à nova reta r2(x), menos inclinada do que no método
Quando reduzimos
da falsa posição com ro valor
(x), o queda função
gera x2 mais sobre o ponto
próximo da raizfi α,
xo,
Quando reduzimos o
1
valor da função
aumentamos a velocidade de convergência, pois, a partir da partição
nesse exemplo. sobre o ponto fi
xo,
aumentamos a velocidade de convergência, pois, a partir da partição
seguinte, o novo valor de b é destravado e assume o x2 , conforme
seguinte, o novo valor de b é destravado e assume o x
Quando reduzimos
exemplo do Gráfi , conforme
o valor da função sobre o ponto fixo, aumentamos
co 3.5. Paralelamente, devemos atualizar o ponto 2
a velocidade de convergência,
exemplo do Gráfi pois, a partir da partição seguinte, o novo
co 3.5. Paralelamente, devemos atualizar o ponto
do outro extremo do intervalo, no caso a é substituído pelo xk
valor
do de b é destravado
outro extremo do e assume o x2no
intervalo, , conforme
caso a exemplo do Gráfico
é teorema
substituído pelo 3.5.x
calculado e f (a) = f (x ), mantendo sempre o
Paralelamente, devemosk continuar atualizando o ponto não fixo, nok de Bolzano
calculado e f (a) = f (xk), mantendo sempre o teorema de Bolzano
válido, conforme segue:
outro extremo do intervalo. No caso do Gráfico 3.5, atualizamos a = x1 e
válido, conforme segue:
f(a) = f(xk), mantendo sempre o teorema de Bolzano válido, conforme segue:
a) Se f ( xk ) = 0 ⇒ α = xk
a) Se f ( xk ) = 0 ⇒ α = xk
(xk) = 0 ⇒ a = xk
a) Se fSenão, pelo teorema de Bolzano, decidiremos onde a raiz α
Senão, pelo teorema de Bolzano, decidiremos onde a raiz α
Senão, pelo teorema
fi cou, se em [a, xkde Bolzano,
] ou em [xk, decidiremos
b]: onde a raiz α ficou,
fi
se em cou, se em [a,
[a, xk] ou em [x x
i) quando a é o ponto fi] ou em [x
k k, b]: xo (
b] :
k f (a) é reduzida):
,

i) i) quando a é o ponto fi xo ( f é(a) é reduzida):


→ se f (aa )é* of ponto
quando ( xk ) < fixo
0,=b( f(a)
xk , reduzida):
f=(b) f ( xk ) e f (=
a ) f (a ) * pa

→ se se f (a ) * f ( xk ) < 0,= b xk , f = (b) f ( xk ) e f (=a ) f (a ) * pa
ii) quando b é o ponto fi
ii) quando b é o ponto fixo (xo ( f(b)f (b) é reduzida):
é reduzida):
ii) quando b é o ponto fi xo ( f (b) é reduzida):
→→se se f ( xk ) * f (b) < 0, a = xk , f (a ) = f ( xk ) e f (b) = f (b) * pb
→ se f ( xk ) * f (b) < 0, a = xk , f (a ) = f ( xk ) e f (b) = f (b) * pb
b) Depois das atualizações do valor extremo não fixo, do xo, do valor
b) Depois das atualizações do valor extremo não fi valor da sua
b) Depois das atualizações do valor extremo não fi
função
xo, recalculamos o e do valor da função reduzida sobre o ponto fixo, xo, do valor
xkda sua função e do valor da função reduzida sobre o ponto
do intervalo como no método da falsa recalculamos
osição: o xda sua função e do valor da função reduzida sobre o ponto
k
do intervalo como no método da falsa posição:
f (a ) * (b − a )
xk= a −
( f (b) − f (a ))

c) Com os novos a, b, f(a), f(b) e x , voltamos ao primeiro passo (a)


om os novos a, b, f (a), f (b) e xk , voltamos ao primeiro passo
k
até que algum critério de parada seja satisfeito.
a) até que algum critério de parada seja satisfeito.
Exemplo 3.5: obtenha a primeira raizx positiva α de ex sen(x) – 1 = 0, situada
3.5: obtenha a primeira raiz positiva α de e sen
em [0, 1], pelo método da falsa posição ( x) − 1 =0 ,com 5 partições, e calcule
modificado,
m [0, 1], pelo método da falsa posição modificado, com
o erro de truncamento atingido.
es, e calcule o erro de truncamento atingido.
Exemplo 3.5: obtenha a primeira raiz positiva α de e x sen( x) − 1 =0 ,
CAPÍTULO 3situada em [0, 1], pelo método da falsa posição modificado, com
– SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 207
5 partições, e calcule o erro de truncamento atingido.
Solução:
Solução:
Tabela 3.3 – ResultadosTabela
do Exemplo 3.5 de resultados do Exemplo 3.5
3.3 – Tabela
xk =
a − f (a)(b − a) /
k a b f (a) f (xk ) f (b) | xk – xk–1 |
( f (b) − f (a))
0 0 0.4371861 1.0 –1.0000 –0.344443 +1.28736 –

=
pb f (a) / ( f (a) + f ( x=
k )) 0.7438021478 –1.0000 –0.344443 +0.957537

1 0.4371861 0.5860805 1.0 –0.34444 –0.006117 +0.957537 0.1488943

=
pb f (a) / ( f (a) + f ( x=
k )) 0.9825494019 –0.34444 –0.006117 +0.940828

2 0.5860805 0.5887545 1.0 –0.00617 +0.00055 +0.940828 0.0026740

=
pa f (b) / ( f (b) + f ( x=
k )) 0.9994114861 –0.00614 +0.00055 +0.940828

3 0.5860805 0.5885323 0.58875447 –0.00614 –1.12e–06 +5.54e–04 2.222e–04

=
pb f (a) / ( f (a) + f ( x=
k )) 0.9998176448 –0.00614 –1.12e–06 +5.539e–4

4 0.5885323 0.588532744 0.58875447 –1.12e–6 –1.12e–06 +5.539e–4 4.464e–07

=
pa f (b) / ( f (b) + f ( x=
k )) 0.9999999013 –1.115e–6 –1.12e–06 +5.539e–4

5 0.5885323 0.5885327439818612 0.588532744 –1.115e–6 +2.22e–16 +5.46e–11 2.189e–11

Fonte: Elaboração própria. Fonte: Elaboração própria

Observe que também aplicamos o teorema de Bolzano para


Observe que também aplicamos o teorema de Bolzano para redefinir
redefinir cada novo intervalo [a,
cada novo subintervalo [a, b], conforme ab], conforme a troca de sinais das
troca de sinais das funções em a e b.
Em n =funções em a e b. Em n =inicial,
5 partições do intervalo 5 partições do intervalo inicial, atingimos
atingimos x5 = 0.5885327439818612
com a xfunção
5 = 0.5885327439818612 com a função
|f(xk)| = +2.22e – 16 numericamente
f ( xk ) = nula,
+2.22e numericamente
embora
− 16 o critério
32 de parada adotado | xk – xk – 1 | < 2.189e – 11 ainda não seja nulo.
O erro de truncamento existente em x5 pode ser estimado como fizemos
no método da bisseção, usando um valor de referência para comparação.
Felizmente esse método é de convergência bem mais rápida do que os
anteriores e atinge o limite nulo do critério de parada para 16 dígitos
significativos com apenas 6 partições, x6 0.5885327439818612. Assim, o
erro de truncamento é numericamente nulo, conforme segue:
Erro de truncamento estimado de x5 = |x5 – x6| < O(10–16)
208 CÁLCULO NUMÉRICO COMPUTACIONAL

Também podemos dizer que o erro de truncamento é menor do que o


critério de parada atingido, | xk – xk – 1 | < 2.189e – 11, e observe que o valor
da função já é numericamente nulo |f (x5)| = 2.22044604925031e – 16.

Agora, confira no Caderno de Algoritmos o algoritmo do método da falsa posição


modificado no arquivo Cap3MetodosParticao.m.

Comparando os três métodos de partição apresentados, obtivemos


a primeira raiz positiva de ex sen(x) – 1 = 0, situada em [0, 1], no limite do
critério de parada para a variável double de 16 dígitos significativos com:

a) 51 partições no método da bisseção;


b) 23 partições no método da falsa posição; e
c) 6 partições no método da falsa posição modificado.

Os três métodos convergiram para o mesmo valor de raiz α, à excessão


de algum arredondamento final:

a) 0.5885327439818611(bissecção);
b) 0.5885327439818610 (falsa posição);
c) 0.5885327439818612 (falsa posição modificado).

Vamos abordar, a seguir, a família de métodos de linearização iterativa.

3.2.2 Métodos de linearização


Nos métodos dessa família, buscamos linearizar a equação f(x) = 0,
isolando um valor de x como incógnita, através de uma função do tipo
x = g(x), em que g(x) é uma função de iteração avaliada em algum valor
inicial de x.
Temos vários critérios de parada aplicáveis aos processos iterativos,
alguns já vimos na seção anterior, como:
em algum valor inicial de x.
em algum valor inicial de x.
Temos
Temos vários
vários critérios
critérios de
de parada
parada aplicáveis
aplicáveis aos
aos processos
processos
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 209
iterativos, alguns já vimos na seção anterior, como:
iterativos, alguns já vimos na seção anterior, como:

192 a) xxk +1 −
a) − xxk < < εε –
– esse
esse critério
critério falha
falha quando
quando xxkk converge
converge
a) | xkk++1 1 – xk k | < ε – esse critério falha quando xk converge lentamente;
lentamente;
lentamente;
Gráfico 3.2
xxk +1 − x
b) k +1 − xkk < ε – o valor relativo é mais realístico,
b)
b) < ε – – o valor
o valor relativorelativo é mais principalmente
é mais realístico, realístico,
xxk +1
k +1

f ( x ) pequeno
quando xk + 1 é muito
principalmente quando x
principalmente quando x (mas deve ser diferente de zero) ou
é muito pequeno (mas deve ser
+1 é muito pequeno (mas deve ser
kk +1
muito grande;
diferente de zero) ou muito grande;
diferente de zero) ou muito grande;
c) ff (( xxk +)|)<<εε– esse
– esse critério
falhafalha quando tem valores
f (x)valores
1 ) < ε – esse critério falha quando f (x) tem valores
c)
c) |f(x k +1
k +1
critério quando f(x) tem pequenos,
conforme o Gráfico 3.6;
pequenos, conforme o Gráfico 3.6 ( f (x) calculado no novo x
pequenos, conforme o Gráfico 3.6 ( f (x) calculado no novo xkk +1);
);
+1

xxk +1 −
− xxk ε – é um critério composto, conservativo.
d)
d) ff (( xxkk ++11 )) +
d) + k +1 k < – é um critério composto, que abrange os
< ε – é um critério composto, conservativo.
dois anteriores.
xxk +1
k +1 x
No α x ainda estar longe
No Gráfico
Gráfico 3.6, 3.6, observe
observe que,
que, apesar
apesar de de xkk ainda estar longe
da raiz α, o critério de parada
da raiz α, o critério de parada ff (( xxkk ++11 )) < α
já pode ter sido satisfeito
< εε já pode ter sido satisfeito
No Gráfico 3.6, observe que, apesar de xk+1 ainda estar longe da raiz α,
(quando ff (x)
(quando tem valores
tem valores pequenos).
pequenos). Por outro lado,
lado, o
o critério
critério
o critério (x) de parada |f(xk + 1)| < ε já pode terPor
sidooutro
satisfeito (quando f(x) tem

xxk valores
x
k − xkk −
< ε também
ε também
−11 <pequenos). pode
Porpode ser
outroser
lado,satisfeito
satisfeito rapidamente
o critério rapidamente quando
quando pode
| xk – xk – 1 | < ε também xxk
k
converge
ser satisfeito
converge lentamente.
rapidamente
lentamente. Portanto,
quando algum
Portanto, algum critério
xk converge de
de parada
lentamente.
critério sempre
Portanto,
parada algum
sempre
critério de parada sempre precisa ser estabelecido, mas não deve ser usado
precisa ser estabelecido, mas não deve ser usado isoladamente, sendo
precisa ser estabelecido, mas não deve ser usado isoladamente, sendo
197
isoladamente, sendo necessário fazer uma validação do resultado aproximado
necessário fazer uma validação do resultado aproximado obtido com
necessário fazer uma validação do resultado aproximado obtido com
obtido
m ∈ [101/2com
, 101 ] algum cálculo do erro de truncamento.
algum cálculo do erro de truncamento.
algum cálculo do erro de truncamento.
209
Grafico 3.6
Gráfico 3.6 – Processo iterativo de convergência, quando f(x) tem valores pequenos

f ( x)

x
α xk +1 xk

Fonte: Elaboração própria.

5
210 CÁLCULO NUMÉRICO COMPUTACIONAL

3.2.2.1 Método da iteração linear


O método clássico de linearização é a iteração linear. Embora seja
normalmente lento e instável, é apresentado aqui por questões didáticas.
Nesse método, obtemos a função de iteração g(x) simplesmente isolando
uma das variáveis x da própria função geradora f(x) e aplicando inicialmente
o valor estimado x0, da etapa do isolamento da raiz. Assim,

x1 = g(x0)
x2 = g(x1)
x3 = g(x2)

xk + 1 = g(xk) (7)

em que os subíndices k + 1 e k indicam o nível iterativo novo e anterior,


respectivamente.

Exemplo 3.6: determine, por iteração linear, a raiz de x * ln(x) – 3.2 = 0,


a ∈ [2, 3], com o máximo de dígitos exatos disponível em sua representação
digital.

Solução: 210
Grafico 3.7
Gráfico 3.7 – Raiz de f(x) = x * ln(x) – 3.2 = 0

f ( x)

α x

Fonte: Elaboração própria.


222

Grafico 3.9

f ( x)
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 211

O Gráfico 3.7 mostra que a raiz está entre a = 2 e b = 3, logo podemos adotar
qualquer valor inicial x0 desse intervalo.
A seguir, vamos definir a função de iteração g(x) isolando o x de duas formas
possíveis:
a) x0 * ln(x) – 3.2 = 0: isolamos como incógnita o x que aparece em
ln (x), logo:
ln(x) = 3.2 / x0 ⇒ x = e3.2/x 0

Note que, nessa função iterativa, a solução x depende da estimativa


da própria solução x0, portanto esperamos que esse cálculo
melhore o valor de x em relação a x0. Assim, adotando o valor
inicial médio em [a, b], x0 = 2.5, calculamos um novo x = e3.2/2.5
= 3.59663972556928.
Se agora adotarmos esse novo x como um novo valor inicial x0,
então x0 = 3.59663972556928, poderemos melhorar a raiz
Capítulo pela
3 – Solução de Equações não Li

segunda vez, conforme a tabela iterativa a seguir:

Tabela 3.4 – Resultados


Tabelado3.4
Exemplo 3.6 de resultados do Exemplo 3.6
– Tabela
k xk xk+1 = e (3.2/xk) | xk+1 – xk | | f (xk+1) |
0 2.5 3.59663972556928 1.09663972556928 1.40369884872868
1 3.59663972556928 2.43444635592001 1.16219336964927 1.03402594272603
2 2.43444635592001 3.72276714234931 1.28832078642930 1.69345547768941

3 3.72276714234931 2.36215810797272 1.36060903437659 1.16954640016981

4 2.36215810797272 3.87557252617237 1.51341441819964 2.05021252467948

⋮ ⋮ ⋮ ⋮ ⋮
999 1.34504630366580 10.79518554638936 9.45013924272355 22.48282865377773
1000 10.79518554638936 1.34504630366580 9.45013924272355 2.80129002385048
1001 1.34504630366580

Fonte: Elaboração própria. Fonte: Elaboração própria

Na Tabela 3.4, os critérios de parada | x – x | e | f (x ) | não


Na Tabela 3.4, os critérios de parada |xk + 1 –k+1xk| ek|f(xk + 1)|k+1não estão
estão diminuindo, e o valor xk+1 da raiz aproximada está
diminuindo, e o valor xk + 1 da raiz aproximada está oscilando,
oscilando, aumentando e diminuindo a cada iteração.
aumentando e diminuindo a cada iteração sem ocorrer a convergência.
Observe que F ( xk ) = e3.2 x0 é uma função iterativa do tipo
exponencial que, neste exemplo, está amplificando o valor
de x e consequentemente o seu erro. Então, precisamos
212 CÁLCULO NUMÉRICO COMPUTACIONAL

Observe que g(xk) = e3.2 / x é uma função iterativa do tipo expo-


k

nencial que, neste exemplo, está amplificando o valor de xk e con-


sequentemente o seu erro. Então, precisamos reescrever a função
iterativa x = g(x).
b) x * in(x0) – 3.2 = 0: nessa tentativa, isolamos como incógnita o
primeiro x da função, logo:
x = 3.2 / ln x0
Note que, nessa função iterativa, a solução x também depende da
estimativa da solução x0, mas essa forma envolve uma função do
tipo logaritmo que, neste exemplo, tende a reduzir o valor do x0 e
putacional consequentemente o seu erro.
Adotando o mesmo x0 = 2.5 como valor inicial, temos:

Tabela 3.5 – Resultados


Tabelado Exemplo
3.5 3.6de
– Tabela com outra equação
resultados iterativa3.6
do Exemplo
k xk xk+1 = 3.2 / ln (xk) | xk+1 – xk | | f (xk+1) |
0 2.5 3.492341337399333 0.992341337399333 1.167425623659166

1 3.492341337399333 2.558828299018562 0.933513038380771 0.795854258488439

2 2.558828299018562 3.405887761076910 0.847059462058348 0.973934620906707

3 3.405887761076910 2.611167118156381 0.794720642920529 0.693808868186438

4 2.611167118156381 3.334037325418966 0.722870207262585 0.814794334833144

5 3.334037325418966

⋮ ⋮ ⋮ ⋮ ⋮

404 2.95416552327889 2.95416552327888 9.32587340685131e–15 8.88178419700125e–15

405 2.95416552327888 2.95416552327889 8.43769498715119e–15 8.88178419700125e–15

406 2.95416552327889

Fonte: Elaboração própria. Fonte: Elaboração própria

A raiz obtida em n = 406 iterações é x = 2.95416552327889,


A raiz obtida em n = 406 iterações é x406 406
= 2.95416552327889,
destacada em negrito, com
destacada em negrito, com critério de parada: critério de parada
|xk +| 1x–k +1x−k| x=k |8.43769498715119e
= 8.43769498715119e–−15
15.
NoNo fifinal nal das iterações, as aproximações de x
das iterações, as aproximações de xkk vão se alternando
vão se alternando
de uma iteração para outra e os critérios |xk + 1 –xk+1
de uma iteração para outra e os critérios | xk|,– |f(x
xk |, | )| ficam
k + f1 (xk+1) |
estagnados.
fi cam estagnados.

entamos Esse processo iterativo é altamente sensível à escolha da função


s fatores de iteração F(x), podendo gerar sequências convergentes, oscilatórias
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 213

Esse processo iterativo é altamente sensível à escolha da função de itera-


ção g(x), podendo gerar sequências convergentes, oscilatórias ou divergentes. Em
alguns casos, podemos atenuar as oscilações usando fatores de amortecimento
(sub-relaxação) no processo de atualização da incógnita xk + 1.

 Apresentamos os fatores de sub-relaxação no Capítulo 2.


Capítulo 3 – Solução de Equações não Li

Para obter uma raiz com precisão máxima, é necessário que, a cada
um
iteração, ointervalo
dado e os métodos
valor calculado de daquebra
se aproxime solução,a ou
mantém
seja, quedentro
o métodode
um subintervalo desse intervalo inicial. Já nos métodos iterativos
convirja para o valor exato da raiz.
de linearização, a convergência não é garantida. A cada iteração,
podemos nos aproximar ou nos afastar da solução. Portanto, antes
No caso dos métodos de bisseção, falsa posição e falsa posição modificado,
de resolver um problema por meio desse método, recomendamos
não precisamos nos preocupar com a convergência, que está sempre garantida,
tentar verificar se haverá ou não a convergência.
uma vez que isolamos a raiz dentro de um dado intervalo e os métodos de
quebra a mantém dentro de um subintervalo desse intervalo inicial. Já nos
métodos iterativos de linearização, a convergência não é garantida. A cada
iteração, podemos
A seguir, vamos nos aproximar
apresentar ou nos afastar
o teorema da solução. Portanto,
de convergência, antes
que coloca
decondições
resolver um problema
suficientes, por meio
porém desse método,
não necessárias, pararecomendamos
que o método tentar
de
verificar se haverá ou não a convergência.
iteração linear seja convergente.

A seguir, vamos apresentar o teorema de convergência, que coloca condições


suficientes, porém não necessárias, para que o método de iteração linear seja
convergente.
3.2.2.1.1 Teorema de Convergência
3.2.2.1.1 Teorema de convergência
Seja uma função f (x) contínua em um intervalo [a, b], α uma
Seja
raiz de contida em [a,f(x)
uma função b] contínua em um
e F (x) uma intervalo
função [a, b], α obtida
de iteração uma raiza
[a,=b]0:e g(x) uma função de iteração obtida a partir de f(x) = 0:
contida em(x)
partir de f
a) a) se F e g'(x)
se g(x)(x) e forem
F' (x) contínuas em [a, b]; eb]; e
forem contínuas em [a,
b) se |g'|(x
b) se < 1∀ ∀
Fk′()|xk<) |1 xk x∈k ∈
[a,[ab].
, b] .

Então,
Então, lim xk = α ,, isto é, a sequência x converge para a solução α
isto é, a sequência xk converge
k para a solução α de f(x) = 0.
k →∞
de f (x) = 0.
Porém, na maioria das vezes fica mais difícil obter e testar as
F' (xk) do que aplicar diretamente o método e avaliar se os resultados
estão convergindo ou não. No Exemplo 3.6 (a), é fácil perceber que
214 CÁLCULO NUMÉRICO COMPUTACIONAL

Porém, na maioria das vezes fica mais difícil obter e testar as g'(xk)
do que aplicar diretamente o método e avaliar se os resultados estão
convergindo ou não. No Exemplo 3.6 (a), é fácil perceber que xk aumenta
e diminui alternadamente e, portanto, o método não converge. No Exem-
plo 3.6 (b), também percebemos que xk oscila, aumenta e diminui alter-
nadamente, mas acaba convergindo. Para minimizar essas oscilações,
podemos aplicar o fator de sub-relaxação, conforme o Exemplo 3.7.

Exemplo 3.7: determine a raiz de x * ln(x) – 3.2 = 0, a ∈ [2, 3] com o máxi-


mo de dígitos significativos disponível em sua representação digital,
usando fator de sub-relaxação para atenuar as oscilações nas iterações.

Solução:
A forma iterativa que adotamos no Exemplo 3.6 (b), x = 3.2 / ln(x0), foi
oscilatória mas convergente. Então, recomendamos usar um fator de
amortecimento ou sub-relaxação 0 < λ < 1, como adotado no método de
Gauss-Seidel aplicado no Capítulo 2 para determinação iterativa de solu-
ções x oscilatórias de sistemas de equações lineares:

x = x0 + λ * ∆x (8a)

Em que ∆x = x – x0 é o incremento iterativo original do método usado, pois


esse x é o valor novo dado por x = 3.2 / ln(x0).
Reescrevendo a eq. (8a), e teremos:

x = x0 + λ * ∆x = x0 + λ (x – x0) = (1 – λ)x0 + λ * x (8b)

Note que, se λ = 1, teremos o cálculo original.


Adotando x0 = 2.5 e λ = 0.5, e teremos a função iterativa:

x = (1 – λ)x0 + λ (3.2 / ln(x0))


Note que, se λ = 1 , teremos o cálculo original.
Adotando x0 = 2.5 e λ = 0.5 , teremos a função iterativa:
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 215
(1 λ ) x0 + λ (3.2 / ln( x0 ))
x =−

Tabela 3.6 – Resultados


Tabelado Exemplo
3.6 3.7de resultados do Exemplo 3.7
– Tabela

k xk (1 λ ) xk + λ (3.2 / xk )
xk +1 =− | xk+1 – xk | | f (xk+1) |

0 2.5 2.996170668699666 0.496170668699666 0.0878030292836272

1 2.9961706686996665 2.956163274914294 0.0400073937853724 0.0041624239393347

2 2.9561632749142941 2.95424314678781 1.920128126488e-03 1.617075723499e-04

3 2.95424314678781 2.95416850626476 7.464052305028e-05 6.214206048849e-06

4 2.95416850626476 2.95416563786223 2.868402523503e-06 2.387018933625e-07

⋮ ⋮ ⋮ ⋮ ⋮

10 2.95416552327889 2.954165523278883 9.325873406851e-15 4.440892098501e-16

11 2.954165523278883 2.954165523278883 0.000000000000000 0.000000000000000

12 2.954165523278883

Fonte: Elaboração própria.


Fonte: Elaboração própria
Assim, obtivemos a raiz em n = 12 iterações, x12 = 2.95165523278883, em
negrito, com critérios de parada numericamente nulos |xk + 1 – xk| = 0.0
e |f(xk + 1)| = 0, portanto erro de truncamento no limite da precisão da
variável double.
Podemos testar outros valores de λ e verificar que λ = 0.5 é mesmo
o valor ótimo, permitindo a convergência no menor número de iterações.
Lembre-se de que, sem o fator de amortecimento λ = 0.5, conforme o
Exemplo 3.6 (b), foram necessárias 406 iterações para atingir a mesma
solução com 16 dígitos significativos.

Acesse o link <http://sergiopeters.prof.ufsc.br/algoritmos-livro/> para baixar o


Caderno de Algoritmos e conferir o algoritmo do método da iteração linear no
arquivo Cap3MetodosIterativos.m.

Também podemos implementar algoritmos puramente iterativos


diretamente em calculadoras científicas, desde que tenham o recurso de
armazenamento Ans (Answer) para armazenar o último valor digitado,
desta forma:

a) digitamos o valor inicial x0, por exemplo, 2.5, e pressionamos a


tecla “=” para armazená-lo em Ans;
b) digitamos a equação iterativa do novo x, com x0 representado pelo
Ans (valor da raiz anterior):
216 CÁLCULO NUMÉRICO COMPUTACIONAL

3.2 / ln(Ans), no caso do Exemplo 3.6 (b), ou


(1 – 0.5) * Ans + 0.5 * 3.2 / ln(Ans), no caso do Exemplo 3.7; e
c) presssionando a tecla “=” será gerado um novo x, que fica
automaticamente armazenado em Ans e atualiza x0. Desse modo, a
cada “=” pressionado, teremos uma nova iteração gerada no display
da calculadora.

Vamos apresentar agora o método de Newton, que é mais rápido e estável do que o
método da iteração linear.

3.2.2.2 Método de Newton

O método de linearização de Newton é o mais utilizado na solução


de equações. Para se obter a sua função de linearização, a f(x) pode ser
aproximada de duas formas.
Para f(x) = 0 com as funções f(x) e f '(x) contínuas em um intervalo
suficientemente próximo da solução desejada, podemos gerar uma sequência
de aproximações dessa solução da seguinte forma:

a) Tomamos uma solução inicial x0.

b) Calculamos o ponto (x0, f(x0)) e o coeficiente angular f '(x0) da reta


r(x) tangente à f(x) nesse ponto x0, conforme o Gráfico 3.8.
Então, essa reta será definida por:
r(x) = f(x0) + f '(x0)(x – x0) (9)

c) Calculamos a interseção de r(x) com o eixo das abscissas x:

→ r(x) = 0 na eq. (9), obtemos a função de iteração x = g(x):


x – x0 = – f(x0) / f '(x0) para o incremento de x e
x = x0 – f(x0) / f '(x0) para x (g(x) = x – f(x) / f ' (x)).
→ r (x) = 0, eq. (9), obtemos a função de iteração x = F (x):
− x0 =
x SOLUÇÃO
CAPÍTULO 3 – ( x0 ) f ′( xNÃO
−DEf EQUAÇÕES para o incremento de x; e
0 ) LINEARES A UMA INCÓGNITA 217
x x0 − f ( x0 ) f ′( x0 )
= para x ( F ( x)= x − f ( x) f ′( x) ) .
Repetindo sucessivamente o o
Repetindo sucessivamente passo
passo (c),(b), sempre
sempre usando
usando o
o último
último valor calculado como solução anterior x
valor calculado como solução anterior x , obtemosk , obtemos a
a expressão de k
recorrência:
expressão de recorrência:
CapítuloaCapítulo
Capítulo 3 – Solução de Equações não Lineares 3uma
– Solução de Equações
Incógnita
3 – Solução não Lineares
de Equações não Li
Capítulo 3 – Solução de Equações não Lineares a uma Incógn
xk +=
1 xk − f ( xk ) f ′( xk ) (10)
(10)

rpretaçãoGráfico 3.8 −do


geométrica
Gráfico
Gráfico Interpretação
3.8
3.8 método geométrica
de Newton
− Interpretação
− Interpretação e suadoreta
geométrica
geométrica método
do do método
método (x) Newton
dedeNewton
tangente rNewton
de eesua
suaereta tangente
suatangente
reta r (x) r (x)
reta tangente
r(x)
Gráfico 3.8 − Interpretação geométrica do método de Newton e sua reta tangente r (x)

Fonte:
Fonte:Elaboração própriaFonte:Fonte:
Elaboração própria.
Elaboração
Elaboração própria
própria
Fonte: Elaboração própria
ue a eq. (10) Note
gera Note
que que a (10)
a eq. eq. (10)
gera gera
uma uma xsequência
sequência de valores
de valores xk , xk ,
Noteuma
que asequência
eq. (10) gerade uma valores
sequência ,
k de valores x , k = 0, 1, 2, ...,
Note kque a eq. (10) gera uma sequência de valores x ,
= 0,1,2,..., conforme o Gráfico 3.8, que, se for convergente, existirá
k = 0,1,2,..., conforme o Gráfico 3.8, que, se for convergente, existirá
nforme o Gráfico 3.8, que, se for convergente, existirá
k
conforme o Gráfico 3.8, que, se for convergente, existirá umk valor final α
= 0,1,2,..., conforme o Gráfico 3.8, que, se for convergente, existirá
um valor final α qualquer para
kα qualquer para
um valor final α qualquer para
para lim= xk +1 lim= Porlim= xlim =
xk α .. Por consequência,
consequência, 1 xlim
xklim
+= = α
aplicandoα . Por consequência,
xk . Por consequência,
esses limites na eq.
+1
k →∞ kk→∞
k →∞ k →∞ k →∞ k →∞
um valor final α qualquer para
(10), temos: lim= x =
lim
aplicando esses limites na eq. (10), temos: x α . Por consequência,
aplicando esses limites na eq. (10), temos:
s limites na eq. (10), temos: k →∞
k +1
k →∞
k

aplicando esses limites na eq. (10), temos:


f ( xk )lim= ( xk ) f ( xk ))
( xk )f lim(
flim lim( lim(( xk f))( xk ))
kf→∞
lim xk − lim lim= x +1 = lim− limx − → = lim = x lim x
1 x f−( x k )) −
→∞
1→ lim k −f ′(→
xkk+→∞ klim xxkkk →∞ )lim
k
kx
k →∞
xk )lim xk →∞ klim
+lim( k
→∞ f ( xk k→∞ lim( lim(′( xkf))′( xk ))
→∞ +1 kk→∞ k
k →∞
lim= k →∞ fk →∞′
xk +1 lim( x )
k xk − lim
kk→∞ +1
k →∞ f ′( x
lim=) lim(
x ′(
kf →∞ x ))
k xk −
lim
k →∞
k →∞ kf→∞
k →∞ f ′( x )
→ k
+ →∞
k →∞k →∞ lim( f ′( xk ))
k 1 k
k →∞ k →∞ k →∞
Devido à continuidade de fk
(x)' e f 'k(x), temos:
→∞
à continuidade de f Devido à continuidade de f '
(x) e f (x), temos: (x) e f (x), temos:
Devido à continuidade de(x)
Devido à continuidade de f '(x), temos:
f(x)e fe 'f(x), temos:
lim f ( xk ) = f (lim e xk ) e lim f ′( x ) = f ′(lim, xk ) ,
m f ( xk ) = f (lim xk ) e lim limf k(→∞fx′k()x= k ) f=(lim f ′(lim ) xk )lim
xkk →∞ , fk′→∞ ( xk ) = kf ′(lim xkk→∞ )
k →∞ k →∞k →∞ k →∞ k →∞
∞ k →∞
lim
então k f ( x )
k →∞
= f (lim xk ) e lim f ′( x k ) = f ′(lim x k ,
) ,
entãok →∞ k →∞ k →∞ k →∞

então f (lim xk )
f (lim xk )lim= x lim xf (lim
− xkk→∞ )
lim= xk +1 lim xk − k →∞ lim= xkk+→∞ k +1
limf x
(limk →∞− x k k →∞
) f ′(lim xk )
k →∞ k →∞ fk ′(lim xk →∞
1 k
k →∞ k →∞
lim= fx′(lim k →∞x )
lim k x − k)
k +k1→∞ k →∞
f ′(lim xk )
k
k →∞ k →∞
k →∞
Como lim= xk +1 lim = x α , temos que:
m= xk +1 lim = xkComo lim=
α , temos que: xkk+→∞ 1 =
lim xkk →∞αk, temos que:
→∞ k →∞ k →∞ k →∞
→ →∞k →∞
f k′+(1xfk′)(kx→∞ f ′( xfk′))
k →∞ k →∞kk→∞ f ′(k →∞
xk )k →∞ kk→∞ k)
k →∞k →∞
xk k))→∞ lim(
lim( f ′k(→∞ lim( ( xk ))
k
→∞
k →∞ k →∞k →∞

Devido à continuidade de f
218Devido à continuidade de f
do à continuidade de f (x) e f '(x), temos: e f 'e f
(x) (x) '(x), temos:
(x), temos:
CÁLCULO NUMÉRICO COMPUTACIONAL

limlim
lim f ( xk ) = f (lim
k →∞k xk
→∞
fk )( x=lim
f ()x e k ) =fk →∞
f (lim )k )=x e
xkkx→∞
f′((lim kf)′k e
lim
(lim f x′( x)fk, ′)( x=k )f=′(lim
lim
→∞k →∞ k
xk ) x, ) ,
f ′(lim
k →∞k →∞ k
k →∞ k →∞ k →∞ k →∞

então então
então
f (lim xk ) f (lim xk ) x )
f (lim
k →∞k →∞ k
lim= lim= x
lim
−k →∞
xk +1 lim xkk→∞ = kx→∞limlim
k +1 k +1 x −
x −
xk )k →∞ f ′(lim
k
f ′(lim
k
k →∞ k →∞ f ′(limk →∞ xk ) x )
k →∞ k →∞k →∞ k

xk +1Como
Como
Como
xlim= xk=
lim =
+1xk +1lim x=
limk x α ,, temos que:
temos que:
α , temos que:
o lim= =
lim kk→∞kα
→∞
, temos que:
k →∞k →∞ k
k →∞ k →∞

f (α ) α= αα f (α f) (αf)(α→ ) f (αf)(α )
→ = −α −′ = 0 e f→ f (αf)(α
0= e 0 e
(α ) = 0=, desde que ≠ 0 . quef f′('(a)
= )0f=, desde que
0 ,, desde que
′(α )desde αf )′(α
≠≠)00.≠. 0 .
f ′(α ) f ′(αf) (αf )′(α ) f ′(αf ′)(α )
normais, a velocidade de convergência ou divergência desse método
Logo, α
Logo, α Logo,
ma solução pois f a é (x
uma solução
é uma solução pois f = 0. pois
é uma solução pois f
= α) (x =(xα)===α)a)
f (x 0.==0.0.
s, a velocidade de convergência ou divergência desse método
é do tipo quadrática, isto é, o incremento ∆x= xk +1 − xk da aproximação
Portanto, se a sequência gerada pela eq. (10) for convergente,
Portanto, se a sequência gerada pela eq. (10) for convergente,
nto, se a sequência gerada pela eq. (10) for convergente,
o quadrática, isto é, o incremento
Portanto, se a sequência ∆x=gerada − xk da aproximação
xk +1 pela eq. (10) for convergente, o seu limite
de x é aproximadamente o quadrado do incremento da aproximação
o seu limite será sempre uma solução. Mais ainda, sob condições
o seu limite será sempre uma solução. Mais ainda, sob condições
será sempre uma solução. Mais ainda, sob condições
aproximadamente o quadrado do incremento da aproximação
k +1
será sempre uma solução. Mais ainda, normalmente, a velocidade de conver-
anterior, fato que não ocorre nos métodos de quebra.
gência ou divergência desse método é do tipo quadrática, isto é, o incremento
r, fato que não ocorre nos métodos de quebra. 43 43
43
Alternativamente, podemos obter o método de Newton como
∆x = xk + 1 – xk da aproximação de xk + 1 é aproximadamente o quadrado do
Alternativamente, podemos obter o método de Newton como
uma linearização da função anterior,
incremento da aproximação f (x) através
fato quede nãouma
ocorresérie de Taylor
nos métodos de quebra.
nearização da função f (x) através de uma série de Taylor
truncada: Alternativamente, podemos obter o método de Newton como uma
da: linearização da função f(x) através de uma série de Taylor truncada:
a) seja f (x) uma função contínua no intervalo [a,b];
a) seja f (x) uma função contínua no intervalo [a,b];
a) seja
b) seja f(x)zero
α um umacontido
função contínua no intervalo
nesse intervalo, com [a, b]; f (x) e
função
b) seja α um zero contido nesse intervalo, com função f (x) e
derivada f '(x) zero
α um contínuas em [a,b], mas com f '(x) ≠ 0.
b) seja
derivada f '(x) '(x) ≠ 0. com função f(x) e derivada
contido nesse intervalo,
contínuas em [a,b], mas com f
f '(x) contínuas em [a, b], mas com f '(x) ≠ 0.
Desse modo, podemos encontrar uma aproximação xk+1 para
Desse modo, podemos encontrar uma aproximação xk+1 para
a raiz de f (x) no intervalo [a,b] utilizando a expansão de f
= 0 modo, (xk+1) a raiz
Desse podemos encontrar uma aproximação
de f (x) = 0 no intervalo [a,b] utilizando a expansão de f (xk+1) xk + 1 para
de f(x) = 0 no intervalo [a, b] utilizando a expansão de f(x , em que
em série de Taylor em torno de um valor inicial estimado x ) em série de
e de Taylor em torno de um valor inicial estimado xk , em que kk + 1
∆x= xkTaylor
+1 − xk .em torno de um valor inicial estimado xk, em que ∆x = xk + 1 – xk.
1 − xk .
Logo, x = x + ∆x e
Logo, xk +1= kx+k1 + ∆xk e
Logo, xk +1= xk + ∆x e
∆x1 2 ∆x 2
f ( x= ) f ( x + ∆
=x ) f ( x ∆) +
x1
f ′( x ) ∆ +x f ′′( x ) + ...
f ( x=
k +1 ) f ( xkk +
+1

= x) fk( xk ) + f ′(144444424444443
xk )k + f ′′k( xk1! ) + ...k 2!
144444424444443 1! 2!
função original, representada em série de Taylor
função original, representada em série de Taylor
Fazendo f ( xk +1 ) = 0 , temos
azendo f ( xk +1Fazendo f(xk + 1) = 0, temos
) = 0 , temos
∆x1 2 ∆x 2
f ( xk∆) x+1 f ′( xk ) ∆+ x f ′′( xk ) + ... =
0
f ( xk ) + f ′( xk ) + f ′′( xk1!
) + ... = 02!
1! 2!
Para determinar a incógnita ∆ x da série de Taylor, Newton
Para determinar a incógnita ∆ x da série de Taylor, Newton
assumiu que:
u que:
∆x ∆x
f ( xk ) + f ′( xk ) + f ′′( xk ) + ... =
0
1! 2!
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 219
Para determinar a incógnita ∆ x da série de Taylor, Newton
assumiu que:
Para determinar a incógnita ∆ x da série de Taylor, Newton assumiu que:
a) xk está em um intervalo suficientemente próximo da solução;
b) ∆x é a)
suficientemente pequeno; suficientemente
xk está em um intervalo e a função f (x) pode da
próximo ser
solução;
representada apenas pelos seus dois primeiros termos da
b) ∆x é suficientemente pequeno; e a função f(x) pode ser represen-
série de Taylor, truncando os termos de ordem superior a 2,
tada apenas pelos seus dois primeiros termos da série de Taylor,
portanto resulta uma aproximação de 1ª ordem equivalente
truncando os termos de ordem superior a 2, portanto resulta uma
à reta r (x) definida pela eq. (9),
aproximação de 1a ordem equivalente à reta r(x) definida pela eq. (9), Capítulo 3 – Solução de Equações não Lineares a uma Incó

f ( xk + ∆x) ≅ f ( xk ) + f ′( xk )∆x =0 Capítulo 3 – Solução de Equações não Lineares a uma Incó

Capítulo 3 – Solução de Equações não Lineares a uma Incógnita

Observe que a equação não linear original, f


Observe que a equação não linear original, (x) = 0, foi substituída
f(x) = 0, foi substituída
Observe que a equação não linear original, f
por uma equação por uma equação linearizada, linearizada, aproximada,
aproximada, (x)
cuja cuja= 0, foi substituída
incógnita
incógnita x xestá
está presente
por uma equação x ==xxlinearizada,
Observe que a equação não linear original, f
presente em em ∆∆x −– xxkk.. aproximada, (x) = cuja incógnita x está
0, foi substituída
presente em
uma equação ∆ Então, calculamos
x = x − xk . aproximada, kcuja
linearizada, o novo x aproximado
incógnita por x está
Então, calculamos o novo x k+1
aproximado por
+1

nte em Então, calculamos o novo x


∆x = x − xk . k+1
aproximado por
f ( xk )
∆x =− f ( x ) (11a)
Então, calculamos o novo x k+1 aproximado por
(11a)
∆x =− f ′( xkk ) (11a)
e f ( x ) f ′( x )
∆x =−e k
k (11a)
e f ′( xk )
xk +1= xk + ∆x (11b)
xk +1= xk + ∆x (11b) (11b)
xkNote que o valor x
+1= xk + ∆x k+1 da fórmula de Newton é uma aproximação
(11b)
Note que o valor x
de 1ª ordem para a raiz de f da fórmula de Newton é uma aproximação
(x) = x0, não é o seu valor exato, pois houve
Note quek+1 o valor da fórmula de Newton é uma aproximação de
de 1ª ordem para a raiz de f
Note que o valor x (x) = 0, não é o seu valor exato, pois houve
da fórmula de Newton é uma aproximação
um erro de truncamento da série de Taylor representativa de f
k+1
da houve um
1 ordemk+1para a raiz de f(x) = 0, não é o seu valor exato,(x)
a
pois
um erro de truncamento da série de Taylor representativa de f
ordem para a raiz de f
ordem de erro dado por: da série de Taylor representativa de f(x)da
O(∆xde)truncamento
2 (x) = 0, não é o seu valor exato, pois houve (x) da ordem de
ordem de O(∆x O(∆x2))dado
2
dado por:
rro de truncamento da série de Taylor representativa de f
por: (x) da
∆x 2 ∆x 3
m de O(∆x ) dado por:
2
O =( ∆ x 2
) f ′′( x )
k ∆x
2 + f ′′′( x k ∆x + ...
) 3
O= (∆x 2 ) f ′′( 2xk ) 2! + f ′′′( 3xk ) 3! + ...
∆x 2! ∆x 3!
O= (∆x 2 ) f ′′( xk ) + f ′′′( xk ) + ...
Assim, em vez de resolver a f 2! (x)3!= 0 completa, com infinitas
Assim, em vez de resolver a f
parcelas na série, resolvemos apenas uma aproximação de f (x) = 0 completa, com infinitas (x) = 0,
parcelas na série, resolvemos apenas uma aproximação de f
Assim, em vez de resolver a f
com apenas duas parcelas: Assim, em vez de (x) =
resolver 0 completa, com infinitas
a f(x) = 0 completa, com (x) = 0, parcelas
infinitas
com apenas duas parcelas:
elas na série, resolvemos apenas uma aproximação de f
na série, resolvemos apenas uma aproximação de (x)f(x)
= 0, = 0, com apenas
apenas duas parcelas: duas∆parcelas:
x 1
∆x 2
∆x1
f ( xk ) + f ′( xk ) ∆x1 + f ′′( xk ) ∆x 2 + ... = 0 ⇒ f ( xk ) + f ′( xk ) ∆x1 = 0
f ( xk ) + f ′(1xk ) 1! 24444444
14444444 + f ′′( 2xk ) 2! + ... =30 ⇒ f ( xk ) + 4
1444 x ) 1! =30
f ′(24
1 k 444
∆ x 1! ∆ x 2! ∆ x 1!
) +14444444 x24444444 ⇒3 f ( xk eq. ) +1444 424 = 444 3
eq. original, representada em série de Taylor com infinitas parcelas eq. simplificada, representada com 2 parcelas
f ′( xk ) representada
eq. original,
+ f em ′′(série
k )de Taylor+com = 0 parcelas
... infinitas f ′( xk ) representada
simplificada,
0com 2 parcelas
444444244444443 1! 2! 1444 424444 1! 3
inal, representada em série de Taylor com infinitas parcelas eq. simplificada, representada com 2 parcelas

No Exercício 3.3 deste Capítulo, propomos uma avaliação


Assim, em vez de resolver a f (x) = 0 completa, com infinitas
220
parcelas na série, resolvemos apenas uma aproximação de f (x) = 0,
CÁLCULO NUMÉRICO COMPUTACIONAL

com apenas duas parcelas:

∆x1 ∆x 2 ∆x1
f ( xk ) + f ′( xk ) + f ′′( xk ) + ... = 0 ⇒ f ( xk ) + f ′( xk ) = 0
14444444 1! 24444444 2! 3 1444 424444 1! 3
eq. original, representada em série de Taylor com infinitas parcelas eq. simplificada, representada com 2 parcelas

No Exercício 3.3 deste capítulo, propomos uma avaliação comparativa


do método de Newton
No Exercício 3.3 de 1a ordem
deste apresentado
Capítulo, propomos anteriormente, com uma
uma avaliação
extensão para umdométodo
comparativa método dede Newton
Newton de de
2 ordem
a
1ª ordem (com os 3 primeiros
apresentado
termos da série de Taylor). Nesse exercício, poderemos avaliar que o
anteriormente, com uma extensão para um método de Newton
número de operações d1 aritméticas
 r1a (com totais é menor no método de Newton
de 2ª ordem
tradicional de 1 ordem. os 3 primeiros termos⋮ dab1 série de Taylor).
xercícios e Respostas,  0disponível
r d no link <http:// ⋮ b 
Exercícios
Exercícios e e Respostas,  disponível
Nesse exercício,
Respostas, no link
2 no
2 poderemos
disponível <http://
linkavaliar
<http:// que o número 2  de operações
fsc.br/exercicios-e-respostas/>,
aritméticas totais
fsc.br/exercicios-e-respostas/>,
fsc.br/exercicios-e-respostas/>, t3 você
ér3 menor
você
você dencontrará
encontrará
3 no método
encontrará
os
os de⋮ Newton
os ⋮  tradicional
dos deste livro. 
dos deste No Caderno de Exercícios
livro. ⋱ e Respostas,
⋱ ⋱ disponível no ⋮ link <http://sergiopeters.
dos deste livro. de 1ª ordem.  
prof.ufsc.br/exercicios-e-respostas/>,
 aplicação do você encontrará os exercícios
 atualizados
esentar
resentar um exemplo de ⋱ método
⋱ ⋱ de ⋮
resentar um exemplo
umdeste livro. de
exemplo de aplicação
aplicação do do método
método de de 
aa comparação
comparação com
Agora, oo método
comvamos  da
da iteração
apresentar
método um exemplo
iteração tn−1de aplicação
linear.
linear. rn −1 d n −1do⋮ método
bn −1  de Newton e fazer
a comparação com o método da iteração linear.
sua comparação  com o método da iteraçãotlinear.r ⋮ b 
 n n n 

ermine a raiz de xx**ln(


termine a raiz de
xx)r)1−−3.2d1 =
= 00 com αα ∈ [2, 3] ⋮ b1 
Exemplo x3.8:
termine a raiz de * ln( x0) − 3.2
ln(determine 3.2 = 0a com
com α∈
raiz de ∈x [2, 3]
3] – 3.2 = 0 com a ∈ [2, 3] por
* ln(x)
[2,
mpare sua eficiência em relação ao método de  sua r2 d 2 ⋮ b2 
ompare sua eficiência em relação ao método de
Newton e compare
ompare sua eficiência em relação ao método de eficiência em relação ao método de iteração linear.
 ⋱ ⋱ ⋱ ⋮ ⋮ 
 
Solução:  0 ri −1 di −1 ⋮ bi −1 
t
Dado x0, podemos
os determinar ∆x  determinar
e um novo x, conforme a eq. ti ∆x rei umdnovo x, bi  Li ← Lai eq.
⋮ conforme − i(10) Li −1ou as
mos determinar ∆x
mos determinar ∆x e um novo x, conforme a eq.

i
 r
eqs. (11a) ee um novo x, conforme a eq.
(11b): ⋱ ⋱ ⋱ ⋮ ⋮ 
i −1
11a) e (11b):
11a) e (11b):

11a) e (11b):  tn rn ⋮ bn 
ff ((xx0 )) 
∆∆ x= −− f ( x00 )
∆xx =
Pg. 191
= − f ′( x )
f (α ) = 0ff ′′(( xx000 ))
=
xPg. xx0 ++∆∆xx
xx== 216 x00 + ∆x
=
=
= (
f ff (( xx0)))) = xxxx0−
g
( (
x x
0 f ( xxx)0 ))f−−′(3.2
* ln(
00 ** ln(
ln( x00 ) − 3.2
x)
3.2)
0
ff=
Pg. '('(x220
= x0 )) ln( ln(xxx00)))+++111
ff =
′'(( xx000)) = ln(
ln( x0 ) + 1
0
inicial x
inicial x == 2.5, como no Exemplo 3.6, temos:
2.5, como no Exemplo 3.6, temos:
inicial x232
0
0 = 2.5, como no Exemplo 3.6, temos:
0
f ′(de
a 3.7 – Tabela x) resultados
= e − 1 do Exemplo 3.8
x
a 3.7
a 3.7 –– Tabela
Tabela de
de resultados
resultados do Exemplo
do Exemplo 3.8
3.8
x
f ′′( x) = e f (x )
= '( xk ) ln( xk )236 +1 ∆x =− ff (( xxkk )) xk +1= xk + ∆x | ∆x |
ff =
= ln( xxkk )) ++ 11
'('( xxk )) ln( ∆xx =
∆ =−
− f ′( xkk) xxk +1= xk + ∆x || ∆
∆xx ||
ff ′′(( xxk )) k +1= xk + ∆x
f ′( x ) 4.74496460892097e-01
= 2x
k
k
1.91629073187416 2.97449646089210 4.74e-01
1.91629073187416 4.74496460892097e-01 2.97449646089210 4.74e-01
1.91629073187416
2.09007476782904
2.09007476782904
244 -2.02976178978191e-02
4.74496460892097e-01
-2.02976178978191e-02
2.97449646089210
2.95419884299428
2.95419884299428
4.74e-01
2.03e-02
2.03e-02
P ( x )-3.33196251968217e-05
= x n Pn (1 x )
2.09007476782904**
2.08322749497656 -2.02976178978191e-02
-3.33196251968217e-05 2.95419884299428
2.95416552336908 2.03e-02
3.33e-05
2.08322749497656
n 2.95416552336908 3.33e-05
0

x= x0 + ∆x
=
CAPÍTULO 3 – SOLUÇÃO f ( EQUAÇÕES
DE x0 ) x0 *NÃO 0 ) − 3.2 A UMA INCÓGNITA
ln( xLINEARES 221
f=
'( x0 ) ln( x0 ) + 1
Adotando valor inicial x = 2.5, como no Exemplo
Adotando valor inicial
0
3.6, temos:
x0 = 2.5, como no Exemplo 3.6, temos:
Tabela 3.7 –3.7
Tabela Resultados
– TabeladodeExemplo 3.8 do Exemplo 3.8
resultados
f ( xk )
=
f ( xk ) xk * ln( xkk) − 3.2 f=
'( xkx)k ln( xk ) + 1 ∆x =− xk +1=xk +x1 k=+xk∆+x∆x | ∆x | |∆x|
f ′( xk )
-9.09273170314612e-01 1.91629073187416 4.74496460892097e-01 2.97449646089210 4.74e-01
0
4.24235390152670e-02 2.50000000000000
2.09007476782904 4.74496460892097e –01
-2.02976178978191e-02 2.974496460892102.03e-02
2.95419884299428 4.74e–01
6.94123593323326e-05 2.08322749497656 -3.33196251968217e-05 2.95416552336908 3.33e-05
1
1.87902582382549e-10 2.97449646089210
2.08321621617818 –2.02976178978191e –02
-9.01983101529758e-11 2.954198842994289.02e-11
2.95416552327888 2.03e–02
0.00000000000000e+00 2.08321621614765 0.00000000000000e+00 2.95416552327888 0.00e00

2 2.95419884299428 –3.33196251968217e–05 2.95416552336908 3.33e–05


Fonte: Elaboração própria
3 –9.01983101529758e–
2.95416552336908 2.95416552327888 9.02e–11
11
A raiz obtida é 2.95416552327888, destacada em negrito, com
critério de parada numericamente nulo
4 2.95416552327888 0.00000000000000e+00 k +1 − xk |≅ 0 , em
| ∆x=| | x2.95416552327888 0.00e00

n = 5 iterações, enquanto no método de iteração linear foram


5 2.95416552327888
necessárias n = 406 iterações (Exemplo 3.6 (b)), sem fator de
sub-relaxação. Então, o erro de truncamento também está no
Fonte: Elaboração própria.

limite da precisão da variável double.


A raiz obtida é 2.95416552327888, destacada em negrito, com critério
de parada numericamente nulo |∆ x| = |xk + 1 – xk| ≅ 0, em n = 5 iterações,
enquanto no método de iteração linear foram Capítulo 3necessárias n =não406
– Solução de Equações iterações
Lineares a uma Incógnita
(Exemplo 3.6 (b)), sem fator de sub-relaxação. Então, o erro de truncamento
também está no limite da precisão da variável double.
ambém podemos Também podemos
implementar implementar
esse algoritmo esse algoritmo de Newton em
de Newton
calculadora científica com recurso Ans (Answer)
uladora científica com recurso Ans (Answer) desta forma: desta forma:

a) digitamos o valor inicial, por exemplo 2.5, e pressionamos a tecla


a) digitamos o valor inicial, por exemplo 2.5, e pressionamos a
“=” para armazená-lo em Ans;
tecla "=" para armazená-lo em Ans;

b) digitamos a equação0 representado pelo Ans


b) digitamos a equação iterativa com x iterativa com x0 representado pelo Ans (valor
(valor da resposta anterior), no caso:
da resposta anterior), no caso:
f ( x0 )
=
x x0 −
f ′( x0 )

Ans – (Ans * ln (Ans) – 32) / (ln (Ans) + 1), no caso do Exemplo 3.8; e
Ans − ( Ans*ln ( Ans ) − 3.2 ) ÷ ( ln ( Ans ) + 1), no caso do Exemplo 3.8; e
c) presssionando a tecla "=", sucessivamente, o valor gerado
será um novo x, que já fica armazenado em Ans e atualiza x0.
Desse modo, a cada "=" pressionado, teremos uma iteração
gerada no display da calculadora.
222 CÁLCULO NUMÉRICO COMPUTACIONAL

c) presssionando a tecla “=”, sucessivamente, o valor gerado será um


novo x, que já fica armazenado em Ans e atualiza x0. Desse modo, a
cada “=” pressionado, teremos uma nova iteração gerada no display
da calculadora.

Algumas considerações sobre o método de Newton:

a) Note que210
o método
Grafico 3.7 de Newton tem convergência rápida, e pudemos
comprovar que, normalmente, a convergência ou divergência
desse método é do tipo quadrática, isto é, o incremento |∆x| da
f ( x+) 1) é aproximadamente o quadrado do incremento
iteração (k
da iteração anterior (k), conforme vemos no quadro de resultados
do Exemplo 3.8, onde o expoente de ∆x dobra a cada iteração.
α x
b) O novo valor para xk + 1 é o ponto de corte da reta tangente r(x) com
o eixo das abscissas, pois xk + 1 é o zero dessa reta r(x) aproximadora
de f(x).
c) Pode ocorrer, durante a determinação dos xk + 1, que a reta tangente
à f(x) em (xk, f(xk)) seja paralela ao eixo da abcissa x, ou seja,
f '(xk) = 0, como no Gráfico 3.9 em k = 0.
222

Gráfico 3.9Grafico
− Método
3.9 de Newton quando o valor inicial da raiz gera derivada nula

f ( x)

x
x0 α

Fonte: Elaboração própria.

d) Também pode ocorrer um ciclo repetitivo, ou looping, dos valores


na sequência gerada pelos xk e consequentemente o processo não
converge nem diverge, conforme o Gráfico 3.10.
6
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 223

223

Erro
Gráfico 3.10 Grafico 3.10 X (12)
− Exemplo X (12) − dos
de=looping { 2.454557
S = valores e − 04, 3.517819
na sequência 04, 7.593722
geradae −pelos xk e − 05}

f ( x)
Erro X (6) = X (6) − X (12) = {0.00634271, 0.00119713, 0.0249755 }

176 xk +1 x
| xi( k +1) − xi( k ) x|=k {7.08210504629 e − 07, 9.67433540499 e - 07 ,
α

8.37822022592 e − 07, 8.37822022647 e − 07}


177
Fonte: Elaboração
236 própria.
| xi( k +1) − xi( k ) |= {7.69513875675
1.29  p e − 07, 9.26761935082e − 07,
x0 = 1.68 − q
10 (3.16 ) (20)
Para evitar a divisão 
0.84 + mpor
7.46579149946

e −loopings,
zero e os temos algumas
07, 6.62960115027 e − 07} possíveis
soluções:
178
(0 . d1 ...... dt )
max | xi( kx+01)mais
i) 237escolher − xi( k )próximo
| possível = de α;
0.926761935082 e − 06
ii) c testar
(0 . d1omax
= Erro uso Xde
d t )10 p + qfatores (21)
2 (21)
= | X de−relaxação,
...... X (61) conforme
| =3 –1.08789550551380
Capítulo o Exemplo
Solução de Equações e − 06
não Lineares a 3.7 do
uma Incógnita
método da iteração linear; e
m = (0 . d1 dt )
iii) tentar utilizar uma variante do método de Newton fixando
......

189
246oαdenominador
2 = 1está α 3 = 1em
− i , disponível ( i = −x
+ i algum 10), com de f '(x0) ≠ 0, desde que seja
ritmo do método de Newton no Caderno
nosuficientemente
lado positivo entre [ + r ,próximo
+ r ] ,... da raiz.
min max

tmos no arquivo Cap3MetodosIterativos.m.


252 α = (1/ 2 ) * i ( 2π * n + π − i * ln ( 3 ) ) , n ∈ Z
O algoritmo do método de Newton está disponível no Caderno de Algoritmos no
arquivo Cap3MetodosIterativos.m.
194P ( x) = 2( x − u ) P ( x) + ( x − u ) P ( x) + R + 0
′ n n−2
′ 2
n−2 2

Pn′( x = u ) = 2(u − u ) Pn − 2 (u ) + (u − u ) 2 Pn′− 2 (u ) + R2 = R2


étodo da Secante a secante
3.2.2.3 Logo, se α ≠da
Método ou α ≠ b ,
263
b)
omo o método de ComoNewton
o método
200
necessita
de1! RNewton f '(x) e pode
da necessita ser e pode ser difícil ou
da f '(x)
P′( x )
Δx = − =− para M = 2
n k 2

fícil ou até inviável obter a sua expressão, podemos utilizar


até inviável obter a Psua
′′( x ) expressão,
2! R npodemos utilizar aproximações para os
k 3
2
'
valores de f (x).
ações para os valores de f truncamento estimado de x ε = x ε − x ε
Erro'(x). (3b) (3)
Por definição, temos que:
or definição, temos que:
205
7
f ( x + ∆x) − f ( x )
f ′( x0 ) = lim f (b)0= f (b) * p 0
∆x →0 ∆x b

ntão, se ∆x for suficientemente pequeno e não nulo, poderemos


223∆x for suficientemente pequeno e não nulo, poderemos usar a
Então, se
f ( x0 + ∆x) − f ( x0 )
aproximação f ′( x0 ) ≅ f ( x + Δx) −, f denominada
( x0 ) de
aproximação f ′( x0 ) ≅ ∆x 0 , denominada de derivada numérica.
a numérica. Δx
ssim, a derivada numérica depende de dois pontos, x0 e
234
∆x , e podemos calculá-la por:
1/ c
Então, se ∆x for suficientemente pequeno e não nulo, poderemos
Então, se ∆x for suficientemente pequeno e não nulo, poderemos
f ( x + ∆x) − f ( x )
ar a aproximação f ′′( x0 ) ≅ f ( x00 + ∆x) − f ( x00 ) , denominada de
ar a aproximação
224 f ( x0 ) ≅ ∆x , denominada de
CÁLCULO NUMÉRICO COMPUTACIONAL
rivada numérica. ∆x
rivada numérica.
Assim, a derivada numérica depende de dois pontos, x0 e
Assim, a derivada numérica depende de dois pontos, x0 e
x0 + ∆x , e podemos calculá-la por:
Assim, a derivada numérica depende de dois pontos, x0 e x1 = x0 + ∆x,
x0 + ∆x , e podemos calculá-la por:
e podemos calculá-la por:
f (x ) − f (x )
f ′′( x0 ) ≅ f ( x11 ) − f ( x00 ) (12) (12)
f ( x0 ) ≅ ( x − x ) (12)
( x1 − x0 )
1 0

ou
ou ou
f ( x + ∆x) − f ( x )
f ′′( x0 ) ≅ f ( x00 + ∆x) − f ( x00 ) (13) (13)
f ( x0 ) ≅ ∆x (13)
∆x
Logo, aplicamos a derivada numérica dada pelas eqs. (12) ou
Logo, aplicamos a derivada numérica dada pelas eqs. (12) ou
Logo, aplicamos a derivada numérica dada pelas eqs. (12) ou (13) na
3) na eq. (10) e obtemos:
eq. (10) e obtemos:
3) na eq. (10) e obtemos:
 f (x ) − f (x ) 
x= x0 − f ( x0 )  f ( x11 ) − f ( x00 )  (14) (14)
x=2
2 x0 − f ( x0 )  ( x1 − x0 )  (14)
 ( x 1 − x0 ) 
Calculado o novo valor
Calculado o novo valor x2 , atualizamos os valores mais antigos x 2
, atualizamos os valores mais antigos x0 e
Calculado o novo valor x
x1 pelos valores mais atualizados 2
, atualizamos os valores mais antigos
disponíveis x = x e x = x e
voltamos ao
e x1 pelos valores mais atualizados disponíveis x00 = x11 e x1 1 = 2x2 e
e x1 pelos valores mais atualizados disponíveis x
cálculo da derivada. 0
= x1 e x1 = x2 e
ltamos ao cálculo da derivada.Observamos que o valor x mais antigo de todos é descartado e os
ltamos ao cálculo da derivada. 0
Observamos que o valor x
Cálculo Numérico Computacional
x1 e x2 são mantidos.
valores mais atualizados mais antigo de todos é descartado
Observamos que o valor x00 mais antigo de todos é descartado
Se usarmos
os valores mais atualizados x1 e x2 são mantidos. o próprio ∆x, calculado no método de Newton, como
os valores mais atualizados x
incremento paraSe usarmos o ∆x cálculo e x são mantidos.
1 da2derivada, este assumirá naturalmente o último
como incremento para cálculo da derivada,
valor ∆x calculado. este assumirá naturalmente o último valor ∆x calculado no método
49
Repare que o x2 é a interseção entre a reta secante, gerada pelos dois
de Newton. 49
pontos anterioresRepare (x0, f(x 0
2
é a
que ))o ex (x
1
interseção
, f(x )), com entre a reta das
o eixo secante, gerada
abcissas x, conforme
pelos dois pontos anteriores ( x1, f ( x )) e ( x , f ( x )) , com o eixo das
o Gráfico 3.11. abcissas x, conforme o Gráfico 3.11.
0 0 1 1

Gráfico 3.11 − Método da secante


Gráfico 3.11 − Método da secante

Fonte: Elaboração própria. Fonte: Elaboração própria

Para algoritmização desse método, podemos:

a) utilizar x0 e ∆x, ambos estimados inicialmente;


b) aproximar a derivada por meio da eq. (13)
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 225
Fonte: Elaboração própria

Para algoritmização desse método, podemos:


Para algoritmização desse método, podemos:
utilizar x0 e ∆x, ambos estimados inicialmente;
a) e ∆x, ambos estimados inicialmente;
a) utilizar x 0

b) aproximar a derivada por meio da eq. (13)


b) aproximar a derivada por meio da eq. (13)
f ( x0 + ∆x) − f ( x0 )
f ′( x0 ) ≅ ; ;
∆x
c) calcular um novo incremento ∆x e solução x de cada iteração
c) calcular um novo incremento ∆x e solução x de cada iteração pelo
método de Newton original, eqs. (11a) e (11b);
pelo método de Newton original, eqs. (11a) e (11b);
d) atualizar x0 = x e x o = incremento
d) atualizar ∆x (usando
x e o incremento o próprio
∆x (usando o próprio incremento
0
incremento do método de Newton); e
do método de Newton); e
e) voltar ao passo (b), da mesma forma que no método de
e) voltar ao passo (b), da mesma forma que no método de Newton
Newton original.
original.

De modo alternativo, podemos aplicar diretamente a eq. (14) da


seguinte forma:

a) estimar x0 e x1 iniciais;
b) calcular o novo valor x2, pela eq. (14);
c) calcular f(x2) ;
d) atualizar os valores mais antigos:
x0 = x1 e f(x0) = f(x1) bem como x1 = x2 e f(x1) = f(x2);
e) voltar ao passo (b).

Observamos que, neste último algoritmo, a função f(x) é calculada


apenas uma vez, no passo (c), e apenas atualizada no passo (d), portanto é
uma forma mais otimizada.
A fórmula do método da secante, eq. (14), é semelhante à do método
da falsa posição, eq. (5), mas aqui não é necessário um intervalo inicial que
contenha a solução.
to é uma forma mais otimizada.
órmula do 226método da secante, eq. (14), é semelhante à
CÁLCULO NUMÉRICO COMPUTACIONAL
o da falsa posição, eq. (5), mas aqui não é necessário um
nicial que contenha a solução.
Exemplo 3.9: determine a raiz de x * ln(x) – 3.2 = 0 com a ∈ [2, 3] pelo
o 3.9: determine a raiz de 0 com α ∈ [2, 3]
método da secante.x * ln( x) − 3.2 =
todo da secante.
o: Solução:
Adotando x0 =−062.5 e ∆x = 2.5 * 10–06 como valores iniciais e aplicando o
do x0 = 2.5 e ∆x =2.5*10 como valores iniciais e aplicando
método da secante, temos:
do da secante, temos:
Tabela Tabela 3.8 – Resultados
3.8 – Tabela do Exemplo
de resultados 3.9
do Exemplo 3.9
f ( xk )
=
f ( xk ) xkk * ln( xk ) − 3.2 xk f ( xk + ∆x) f (xk) f ′( xk ) ∆x =− xk +1=xk +x1k=+x∆ +x ∆x
f ′( xk ) k

0000 –9.09273170314612e–01 –9.09268379586533e–01 1.91629123165171 4.74496337141240e–01 2.97449633714124


0 2.50000000000000 1.91629123165171 4.74496337141240e–01 2.97449633714124
4124 4.24232803667257e–02 1.07013647224394e+00 2.16590331986335 –1.95868762828261e–02 2.95490946085841

5841 1.54987649326843e–03 –3.91936931036736e–02 2.08014636987656 –7.45080498042262e–04 2.95416438036037


1 2.97449633714124 2.16590331986335 –1.95868762828261e–02 2.95490946085841
6037 –2.38094615578888e–06 –1.55445046612801e–03 2.08308971185042 1.14298781384402e–06 2.95416552334818

4818 1.44371181676206e–10
2 2.38123534090917e–06
2.95490946085841 2.08321640956046 –7.45080498042262e–04
2.08014636987656 –6.93020566723873e–11 2.95416552327888
2.95416438036037
7888 0.00000000000000e+00 –1.44370293497786e–10 2.08320359351340 0.00000000000000e+00 2.95416552327888

7888 3 2.95416438036037 2.08308971185042 1.14298781384402e–06 2.95416552334818


Fonte: Elaboração própria
btida é 2.95416552327888, destacada em negrito, com
4 2.95416552334818 2.08321640956046 –6.93020566723873e–11 2.95416552327888

s de parada numericamente nulos para


5 2.95416552327888
| ∆x | e
2.08320359351340
| f ( xk ) | ,
0.00000000000000e+00 2.95416552327888
rações, enquanto o método de Newton obteve a mesma
em 5 iterações,
6 portanto o método da secante, no
2.95416552327888

Fonte: Elaboração própria. 51

A raiz obtida é 2.95416552327888, destacada em negrito, com critérios de


parada numericamente nulos para |∆x| e | f(xk)|, em 6 iterações, enquanto
o método de Newton obteve a mesma solução em 5 iterações, portanto o
método da secante, no Exemplo 3.9, exige pouco esforço computacional
adicional em relação ao método de Newton com a vantagem de dispensar
a derivada analítica. Então, neste exemplo, o erro de truncamento também
chegou no limite da precisão da variável double, mas devemos limitar o valor
de ∆x a um valor mínimo, para que a diferença entre f(x0 + ∆x) e f(x0) não
seja numericamente nula, ou f '(xk) não seja nula.
Disponibilizamos as du
isponibilizamos as duas formas do algoritmo do método da secante no Caderno de Algor
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 227 de Newto
como método
o Caderno de Algoritmos no arquivo Cap3MetodosIterativos.m
omo método de Newton com derivadas numéricas e como método da secante.
ecante. Disponibilizamos as duas formas do algoritmo do método da secanteAno Caderno
seguir, vamos apresen
de Algoritmos no arquivo Cap3MetodosIterativos.m como método de Newton com
seguir, vamos apresentar uma adaptação do método de Newton para os casos em que a solu
derivadas numéricas e como método da secante.
s casos em que a solução α de f (x) = 0 seja um ponto crítico.
A seguir, vamos apresentar uma adaptação do método de Newton para os casos em
que a solução a de f(x) = 0 seja um ponto crítico.
3.2.2.4 Tratamento Geral d
2.4 Tratamento Geral de Funções com Derivada Nula em x = α
3.2.2.4 Tratamento geral de funções com derivada nula Para equações de
em x = a
Para equações de raízes simples (não repetidas), com f '(x) nulo em algum dos seus va
algum dos seus Para
valores xk , podemos tentar (não
outro(s) inicial(ais) ou fixar um
valor(es)
equações de raízes simples repetidas), com f '(x) nulo em
ial(ais) ou fixar um valor aproximado da derivada, entre outras
algum dos seus valores x , podemos tentar outro(s) valor(es)possibilidades.
inicial(ais) ou
k
sibilidades.fixar um valor aproximado da derivada, entre outras possibilidades.
Para equações d
Para equações de raízes múltiplas (repetidas), a fórmula do método
Para equações de raízes múltiplas (repetidas), a fórmula de Newton a
do método
odo de Newton apresentará,
de Newton apresentará,além
alémde
de lim f ( x) → 0,, também
também lim f ′( x) → 0,, oo que pr
x →α x →α
f ′( x) → 0 , o
que provoca
que convergência
provoca lenta, isto
convergência é, perde
lenta, isto a é,
convergência
a quadrática, equadráti
perde convergência
gera uma indeterminação 0/0 para ∆x no limite de convergência, conforme
no limite de convergên
vergência quadrática, e gera uma indeterminação 0/0 para ∆x
veremos na próxima seção.
imite de convergência, conforme veremos na próxima seção.
Vamos primeiramente avaliar os efeitos da convergência com derivada tendendo
Vamos primeiramente
a zero em uma função não polinomial e algumas das possíveis metodologias de a
soluções
amos primeiramente apresentadas
avaliar na literatura
os efeitos pertinente. com derivada
da convergência tendendo a zero em um
endendo a zero em uma função não polinomial e algumas das possíveis metodologias de soluçõ
Exemplo 3.10: obtenha uma raiz de ex – x – 1 = 0 com x0 = 1.0 por meio do
metodologias de soluções apresentadas na literatura pertinente.
método de Newton.

Solução: 52

f(x) = ex – x – 1
f '(x) = ex – 1

Aplicando a fórmula do método de Newton, conforme as eqs. (11a) e (11b),


com x0 = 1, e destacando que a raiz exata dessa equação é 0.0, temos:
Aplicando a fórmula do método de Newton, conforme as eqs.
228(11a) e (11b), com x = 1, e destacando que a raiz exata dessa
CÁLCULO NUMÉRICO COMPUTACIONAL
0
equação é 0.0, temos:
Tabela 3.9 – Resultados
Tabelado Exemplo
3.9 3.10de resultados do Exemplo 3.10
– Tabela
f ( xk )
kk xxkk (xkk))
ff (x ff ''(x
(xkk)) ∆x =− xxkk ++1=1 = xxkk ++∆x
∆x f ( x)+| +|∆x|
||f(x)| | ∆x |
f ′( xk )

00 1.000000e+00 7.182818e–01
1.000000e+00 7.182818e–01 1.718282e+00
1.718282e+00 –4.180233e–01
–4.180233e–01 5.819767e–01
5.819767e–01 6.256190e–01
6.256190e–01
1 5.819767e–01 2.075957e–01 7.895724e–01 –2.629217e–01 3.190550e–01 3.196937e–01
1 5.819767e–01 2.075957e–01 7.895724e–01 –2.629217e–01 3.190550e–01 3.196937e–01
2 3.190550e–01 5.677201e–02 3.758270e–01 –1.510589e–01 1.679962e–01 1.659948e–01
23 3.190550e–01
1.679962e–01 5.677201e–02
1.493591e–02 3.758270e–01
1.829321e–01 –1.510589e–01
–8.164730e–02 1.679962e–01
8.634887e–02 1.659948e–01
8.548502e–02
34 8.634887e–02 1.493591e–02
1.679962e–01 3.837726e–03 1.829321e–01
9.018660e–02 –4.255317e–02
–8.164730e–02 4.379570e–02
8.634887e–02 4.352636e–02
8.548502e–02

4 8.634887e–02 3.837726e–03 9.018660e–02 –4.255317e–02 4.379570e–02 4.352636e–02
22 3.389852e–07 5.750955e–14 3.389853e–07 –1.696521e–07 1.693332e–07 1.696521e–07

23 1.693332e–07 1.443290e–14 1.693332e–07 –8.523373e–08 8.409945e–08 8.523373e–08
22
24 3.389852e–07
8.409945e–08 5.750955e–14
3.552714e–15 3.389853e–07
8.409945e–08 –1.696521e–07
–4.224420e–08 1.693332e–07
4.185525e–08 1.696521e–07
4.224420e–08
25
23 4.185525e–08
1.693332e–07 0.000000e+0
1.443290e–14 4.185525e–08
1.693332e–07 0.000000e+00
–8.523373e–08 4.185525e–08
8.409945e–08 0.000000e+00
8.523373e–08
26 4.185525e–08
24 8.409945e–08 3.552714e–15 8.409945e–08 –4.224420e–08 4.185525e–08 4.224420e–08
Fonte: Elaboração própria
25 4.185525e–08 0.000000e+0 4.185525e–08 0.000000e+00 4.185525e–08 0.000000e+00

26 Em 26 iterações, geramos
4.185525e–08 = x26 4.185525e − 08, destacada em negrito,
com critérios de parada numericamente nulos para
Fonte: Elaboração própria. | ∆x | e | f ( xk ) | .
Como o ∆x se tornou nulo, a partir de x26 = 0.00000004185525,
26 iterações, geramos x26 ficam constantes e com apenas 8 dígitos
Emos demais valores de x = 4.185525e – 08, destacada em negrito, com
k
critérios de parada numericamente nulos para |∆x| e |f(xk)|. Como o ∆x se
exatos (sublinhados).
tornou nulo, a partir de x26 = 0.00000004185525, os demais valores de xk
ficariamObserve, na planilha de resultados do Exemplo
constantes e com apenas 8 dígitos exatos (sublinhados).3.10, que:
Observe, na Tabela
a) Os 3.9, que:
critérios de parada foram reduzidos a zero, mas a raiz
convergida ainda não é a exata, pois deveria ser zero em
a) Os critérios
todos os deseus
parada foram significativos.
dígitos reduzidos a zero,Com
mas avariável
raiz convergida
double,
ainda não é a exata, pois deveria ser zero em todos os seus
seriam 16 dígitos exatos, mas a raiz aproximada x26 atingiu dígitos
significativos. Com variável double, seriam 16 dígitos exatos, mas
apenas 8 dígitos exatos.
a raiz aproximada x26 atingiu apenas 8 dígitos exatos.
b) Ocorreu a perda da convergência quadrática, uma vez que o ∆x
novo foi reduzido apenas pela metade do anterior a cada iteração.
A convergência quadrática, normal no método de Newton, reduz
o ∆x novo para o quadrado do ∆x da iteração anterior.

Para resolver esse problema, Cheney e Kincaid (2012) apresentam


duas possíveis soluções:
anterior.
anterior.
anterior.
Para resolver esse problema, Cheney e Kincaid (2008) apresentam
Para resolver esse problema, Cheney e Kincaid (2008) apresentam
Para resolver esse problema, Cheney e Kincaid (2008) apresentam
duas possíveis soluções:
duas possíveis soluções:
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 229
duas possíveis soluções:
a) Uma
a) Uma delas
delas
a) Uma usa usa
usa
delas uma
uma correção
correção
uma na na
na
correção fórmula
fórmula de de
de
fórmula cálculo
cálculo do
do
cálculo do
a) incremento
Uma delas usa
incremento uma
das
das
incremento
correção
raízes
raízes
das pela
pela
raízes
na fórmula de cálculo
multiplicidade
multiplicidade
pela da
M da
M
multiplicidade M
do incremento
raiz
raiz
da α α
da
raiz da
α da
das raízes pela
seguinte forma:
seguinte forma: multiplicidade M da raiz α da seguinte forma:
seguinte forma:
ff ((xxkfk)() x )
∆x = =
∆x−−= k (15a)
(15a)
(15a)
ff −
′′((xxfkk′)() x ) (15a)
k

xkk++11x== xxk=k ++xM M+∆∆M xx (15b)


x (15b)
∆ (15b)
(15b)
k +1 k

s como
comocomo
sremos essa
essa correção
essaessa
correção
correção apresenta
apresenta
correção apresenta
apresenta melhores
melhores
melhores resultados
resultados
melhores parapara
resultados
resultados para casos
casos
para como
casos o
casos
lcular
cular aa
calcular a do Exemplo
como
como
como o
o do
do 3.10 (resultados
Exemplo
Exemplo
o do Exemplo 3.10
3.10 não apresentados
(resultados
(resultados
3.10 não
não
(resultados neste
não livro),
apresentados
apresentados mas
apresentados
multipli-
multipli-
multipli- é necessário
neste
neste livro),
livro),
conhecer
mas
mas
previamente
é é necessário
necessário
essa multiplicidade
conhecer
conhecer previamente
previamente
 M.
essaNesse
essa
neste livro), mas é necessário conhecer previamente essa
cidade
cidadecidade exemplo, como f(x) → 0 e f '(x) → 0, no limite da precisão digital das
f0' e
multiplicidade
multiplicidade M. Nesse exemplo, como
M. Nesse exemplo, como f (x)→
f (x) →0→
(x) e
0 e f(x) f '→
' (x) →0→
(x) , 0, 0,
multiplicidade caso double), podemosfadotar
M. Nesse exemplo, como
stimada
timada
estimada
variáveis utilizadas (no multiplicidade
aãoseção
ão 3.3, 3.3,
3.3, no limite da precisão digital das variáveis utilizadas (no caso
no limite da precisão digital das variáveis utilizadas (no caso
no limite da precisão digital das variáveis utilizadas (no caso
quações equivalente M = 2, conforme Propriedade 13 de polinômios, que
uações
de equações double),
double), podemos
podemos
double),
veremos adotar
podemos
mais adotar
adiante. multiplicidade
multiplicidade
adotar equivalente
equivalente
multiplicidade equivalente MM=M=2,=2, 2,
omiais.
omiais.
polinomiais.
conforme Propriedade
conforme Propriedade
conforme Propriedade 13 de polinômios, que veremos mais
13 de polinômios, que veremos mais
13 de polinômios, que veremos mais
Veremos como calcular a multiplicidade estimada na seção 3.3, sobre raízes de equações
adiante.
 adiante.
adiante.polinomiais.
b) Outra
b) Outra possibilidade
b) Outra possibilidade
possibilidade utiliza uma
utiliza
utiliza uma uma correção
correção
correção na fórmula
na na fórmula
fórmula
de cálculo
de de cálculo
cálculo do
do do incremento
incremento
incremento da raiz
da da quando
raiz
raiz quando
quando f (x) →
f (x)→de
f (x) 0 0e f e f f
→0e cálculo
b) Outra possibilidade utiliza uma correção na fórmula
'' (x)' (x)→ 00, , 0determinando alternativamente a raiz de de
do →→
(x)incremento , dadeterminando
determinando
raiz quando f(x) → 0 e f '(x) → 0,a
alternativamente
alternativamente a raiz
raiz
determinando de
g ( x)g=( x)f (=x)f /( xf )′′(/xf)a′=( xraiz
0) , =pois toda raiz raiz
α f que anula f (x) = 0raiz
g ( x) = f ( x) / f ( x) = 0 , pois toda raiz α que anula f (x) = =0 0α
alternativamente 0de , pois
g(x) toda
= f(x) / α
'(x) que
= 0,anula
pois f (x)
toda
também anulaanula g (x)g (x) = 0=, então, aplicamos o método de de
quetambém
também f(x)
anula também
anula g (x) =anula 0, 0então,
, g(x), então,
então, aplicamos
aplicamos
aplicamos o o ométodo
método método de de
Newton à função modifi
Newton à função modificada cada g (x)
g(x) =
g=(x) 0 :
Newton à função modifi
Newton à função modifi cada
cada g (x) =0:0=: 0:
f ( xkf) ( x )
f (x ) k
g ( xkg) ( x ) f ′( xkfk)′( x ) f ( xkf) (fx′()xkf )′( x )
∆x =− g (−xk )
∆−x g=
∆x =
=k
′( xkg)′( x=−
− =
[ f −′( x )]2 −f ′f(2 x( xk ) ) kf ′′( x ) = =−−[= f −′( x )]f2 (−xkf2)(fkx′()xfk ′′)(kx ) (16) (16)
(16)
(16)
g ′( xk ) k ) [ f ′([xfk ′)] 2k )] − k f ( xk ) fk ′′( xk )
′[(kfxk′()]xk2 )]− f−(kxf k()xkf )′′(fkx′′k()xk )
k (x
− f ( x2k ) f ′′( xk ) [ f
[ f ′([xkf )] ′( x2k )]2
[ f ′( xk )]
ou
ou ou
ou Capítulo 3 – Solução de Equações n
f ( x )
ˆ fˆ ( xkf () (17)
x k )
∆x =
∆x− M
=− M (17)
(17)
∆x =− Mˆ f ′( xfkk′)( x ) (17)
f ′( xk ) k

em que
em que
1  [ f ′( xk )]2 
=Mˆ = 
 (18) (18)
g ′( xk ) [ f ′( xk )] − f ( xk ) f ′′( xk ) 
2

Com xxk +=1=x +xk∆+


Com x , dado pela eq. (11b).
x,∆dado pela eq. (11b).
k+1 k

Exemplo 3.11: reaplique o método de Newton, modificando


f ( x)
f (x) = 0 para =
g ( x) = 0 , conforme as eqs. (17) e (18), e
1  em que
[ f ′( xk )]2 
Mˆ =   (18)
g ′( xk ) [ f ′( xk )] − f (1xk ) f ′′(xk )  [ f ′( x )]2
2

230 = Mˆ =  k
CÁLCULO NUMÉRICO  COMPUTACIONAL
(18)
g ′( xk ) [ f ′( xk )] − f ( xk ) f ′′( xk ) 
Com xk +1= xk + ∆x , dado pela eq. (11b).
2

xemplo Exemplo
3.11: reaplique Com xk +1= xkde
o método x , dado pela eq. (11b).
+ ∆Newton, modificando
3.11: reaplique o método de Newton, modificando f(x) = 0
f ( x )
para =
(x) = 0 para g ( x) Exemplo
= 0 ,3.11: reaplique
, conforme
conforme asas
eqs. o (17)
eqs. método
(17) de e Newton,
e (18),
e (18), e
obtenha modificando
uma raiz
f ′( x) f ( x )
de: e – x –1
x
= x0=com x0 = =
para 1.0. =
btenha uma raiz de: e f (x) – x0 –1 g ( x) =
= 0 com x 1.0. 0 , conforme as eqs. (17) e (18), e
0 f ′( x )

olução: Solução: obtenha uma raiz de: ex – x –1 = 0 com x = 1.0.


0
f (x) = e x – x – 1
Solução:
f(x) = ex – x – 1 f ' (x) = e x – 1
f (x) = e x – x – 1
f '(x) = ex – 1 f '' (x) = e x f ' (x) = e x – 1
f ''(x) = ex f '' (x) = e x
Tabela 3.10 – Tabela de resultados do Exemplo 3.11

Tabela
'' (x ) 3.10 ˆ f ( xk ) xdo
– Tabela de resultados Exemplo |3.11
xk Tabela f' (xk)
f (xk)3.10 – Resultados dofExemplo
k
3.11
M̂ eq. (18) ∆x =− M ′ k +1= xk + ∆x
f ( xk )
f ( x) | + | ∆x |

f (x )
000000e+00 xkk 1.718282e+00
7.182818e–01 xk f (xk2.718282e+00 (xk) f' (xk)
) f (xk) f'2.952492e+00 f'' (xf'') (x )
–1.234211e+00 –2.342106e–01 =− Mˆ
∆x 1.259616e+00 xk +1= xk + ∆x
k
k k k M̂eq. eq. (18)
(18) f ′( x )
k
.342106e–01 2.540578e–02 –2.088048e–01 7.911952e–01 1.855412e+00 2.257523e–01 –8.458280e–03 2.257880e–01
0 1.000000e+00 7.182818e–01 1.718282e+00 2.718282e+00 2.952492e+00 –1.234211e+00 –2.342106e–01
0 1.000000e+00
.458280e–03 3.567061e–05 7.182818e–01
–8.422609e–03 1.718282e+00
9.915774e–01 1.994377e+002.718282e+00
8.446390e–03 2.952492e+00
–1.189018e–05–1.234211e+00
8.446390e–03
1 –2.342106e–01 2.540578e–02 –2.088048e–01 7.911952e–01 1.855412e+00 2.257523e–01 –8.458280e–03
.189018e–05 7.068790e–11 –1.189011e–05 9.999881e–01 1.999991e+00 1.189014e–05 –4.176666e–11 1.189014e–05
2 –8.458280e–03
1 –2.342106e–01 3.567061e–05
2.540578e–02 –8.422609e–03
–2.088048e–01 9.915774e–011.855412e+00
7.911952e–01 1.994377e+00 2.257523e–01
8.446390e–03 –1.189018e–05
.176666e–11 0.000000e+00 –4.176670e–11 1.000000e+00 1.000000e+00 0.000000e+00 –4.176666e–11 0.000000e+00
3 –1.189018e–05 7.068790e–11 –1.189011e–05 9.999881e–01 1.999991e+00 1.189014e–05 –4.176666e–11
.176666e–11
2 –8.458280e–03 3.567061e–05
4 –4.176666e–11 –8.422609e–03
0.000000e+00 9.915774e–01
–4.176670e–11 1.000000e+001.994377e+00
1.000000e+00 8.446390e–03
0.000000e+00 –4.176666e–11

5
Fonte: Elaboração própria
–4.176666e–11

Observe que:
3 –1.189018e–05 7.068790e–11 –1.189011e–05 9.999881e–01
Fonte: Elaboração própria
1.999991e+00 1.189014e–05

a) em = 3, o Observe que:
valor
4 k–4.176666e–11 de M̂ tende
0.000000e+00 a 2, com
–4.176670e–11 f (x → α)
1.000000e+00 → 0 e 0.000000e+00
1.000000e+00

f ' (x → α) → 0, valores destacados em negrito; e


5 –4.176666e–11 a) em k = 3, o valor de M̂ tende a 2, com f (x → α) → 0 e
b) em k = 4, f (xk) = 0, logo → se torna unitário (
f ' (xM̂ Mˆ = 1 sempre
α) → 0, valores destacados em negrito; e
que Fonte: Elaboração
f (x) = 0), ∆xprópria.
= 0 e x5 não vai mais se alterar.
b) em k = 4, f (x ) = 0, logo M̂ se torna unitário ( Mˆ = 1 sempre
k

Assim, que f (x) =, também em negrito, é uma


x5 = −0.0000000000417667
Observe que: 0), ∆x = 0 e x5 não vai mais se alterar.
convergida com 11 dígitos exatos (sublinhados), e apesar de
a) em k =Assim, 5 =
3, o valorxde tende a 2, com f(x → α), também em negrito, é uma
−0.0000000000417667 → 0 e f '(x → α) → 0; e
melhor do que a solução obtida no Exemplo 3.10 (com 8 dígitos
raiz convergida com 11 dígitos exatos (sublinhados), e apesar de
b) em k = 4, f(xk) = 0, logo  se torna unitário ( = 1 sempre que
os), os critérios de parada também zeraram antes de chegarmos
ser melhor do que a solução obtida no Exemplo
f(x) = 0), ∆x = 0 e x5 não vai mais se alterar. 3.10 (com 8 dígitos
iz com precisão de 16 dígitos da variável double utilizada.
exatos), os critérios de parada também zeraram antes de chegarmos
a raiz com precisão de 16 dígitos da variável double utilizada.
55
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 231

Assim, x5 = 0.0000000000417667, também em negrito, é uma raiz


convergida com 11 dígitos exatos (sublinhados), e apesar de ser melhor do
que a solução obtida no Exemplo 3.10 (com 8 dígitos exatos), os critérios
de parada também zeraram antes de chegarmos à raiz com precisão de 16
dígitos da variável double utilizada.
Segundo Schröder (1992), o termo 1/g'(xk) dado pela eq. (18)
representa uma estimativa clássica do valor da multiplicidade  de
raízes, mas essa estimativa é válida para raízes estimadas próximas da
raiz exata α.
No Exemplo 3.11, a função e sua derivada tendem a zero, f(x) → 0 e
f '(x) → 0, fazendo  convergir para 2 (antes de f(x) se tornar nula), conforme
Propriedade 13 de polinômios, que veremos mais adiante.
Essa correção, dada pelas eqs. (17) e (18), também apresentou melhores
resultados, mas não atinge a precisão no limite da variável double.
Observamos que as eqs. (15) e (17) serão equivalentes à medida que
a eq. (18) da multiplicidade estimada  se torne a multiplicidade M exata,
ao longo de um processo iterativo.
Em ambos os casos anteriores, usando as eqs. (15) ou (17), o incremento
∆x tende a zero, mas a raiz convergida ainda fica distante do valor exato,
não atingindo precisão em todos os dígitos disponíveis.
Uma terceira alternativa, mais robusta, para se determinar raízes
quando f(x) → 0 e f '(x) → 0, pode ser a aplicação da Regra de L’Hospital
ao cálculo de ∆x para resolver a indeterminação numérica que ocorre
no limite do processo de convergência, como aplicado por Galántai e
Hegedus (2010).

No artigo, os autores apresentam uma abrangente revisão bibliográfica sobre aceleradores de con-
 vergência do método de Newton e formas de aproximação da estimativa do valor da multiplicidade.

Neste livro, vamos propor um algoritmo alternativo aplicando a Regra de L’Hospital


como acelerador do método de Newton, primeiramente para funções não poli-
nomiais.
Capítulo 3 – Solução de Equações não Lineares a uma Incógnita
Capítulo 3 – Solução de Equações não Lineares a uma Incógnita
Capítulo 3 – Solução de Equações não Lineares a uma Incógnita
232 CÁLCULO Pela Regra de L´Hospital:
NUMÉRICO COMPUTACIONAL

Pela Regra de L´Hospital:


e L´Hospital:
Regra de L´Hospital: Pela Regra de L’Hospital: sejam f1(x) e f2(x) funções contínu
sejam f1(x) e f2(x) funções contínuas e deriváveis em umI, com f' (x) ≠ 0, ∀ x ∈ I , e
intervalo 2
(x)intervalo
funçõesI,contínuas com f'2(x) e≠ 0, deriváveis
∀ x ∈ I , eem seja uma um valor interno
Sejam contínuas f1(x) e f2(x) funções contínuas eme um deriváveis em um intervalo I,
(x)
' e f (x) funções
1 f 2(x) ≠ 20, ∀ x ∈ I , e seja a um valor interno
e deriváveis de I,f ′(tal
1 x)
 f1(a) = f2(a) = 0, supondo
que
o I, decomI, talf'com (x) ≠ff1'2(a)
que (x)∀
0, =≠fx20, (a)
∈ I∀=, xe0,∈ supondo
seja I, ea seja um queum
f1′(avalor
exista
x)  interno valorlim 
interno
x→a f ′( x
de ,I, tal que f1(a)
)
2
) = f2(a) = 0, supondo que exista lim   , f ′( x)   2 
x→a f ′ ( x )  f1 ( x)   f1 ( x)
que f1(a)230 = f22(a) == 0, 0,fsupondo
supondo que  exista
exista 2 lim   ′ ,,então 1
 então existe
existe lim   e lim 
1 ( x)
 f ( x ) f ( x )
f 2′(1x)   . f 2 ( x)  x→a  f 2 ( x)
então existe
f ′( x ) = lim
e x
− 1
  e lim  1  =x→lim a
 
x→a

 f1 ( x)  x→fa1 ( xf) ( x)  x→ f ′a( x) 
  efe′′f(lim x ) = e x  2 = lim
   1  f2 .(. x) 
x→a
 f 2′( x) 
( x )
)  f ′(1x )  fe2 ( xlim  )  f ( x ) 
1  f 2 ( x)  ′  f ′( x ) 
 f 2 ( xlim
→ →
 k  x→a 
x a x a
 = lim
1
xiste  .
x→a f (
f ′′(2xk )  x )  2 f ( x ) x→a
 2′( x) 
f
Nesse caso, vamos considerar qu
f ′ ( x α ) 0  r1 d1 ⋮ b1 
Nesse caso, vamos considerar que, no limite da convergência
→ →
231 Nesse caso,
 0 vamos r2 dconsiderar que, noiterativa, teremos uma indeterminação 0
limite ⋮ da 
b2 convergência iterativa,
amos considerar que, no limite da convergência
rativa, teremos uma indeterminação 0/0 na eq. (11a) de ∆x, quando
 2  ' (x)
teremos
1 g '( xk ) uma indeterminação 0/0 na eq. f (x)
(11a) → de0 e f
∆x, →
quando → 0 e → α conv
0 para a raiz x
f(x)
e caso, vamos considerar que, no limite da convergência
ma indeterminação 0/0 na eq. (11a) de ∆x, quando
) → 0 e f ' f(x) → 0 para a raiz x
 t3 → r3 α convergida.
d3 ⋮ ⋮ 
'f (x)
′( x ) → → 00 paraa raiz x → α convergida. A Regra
 de L´Hospital pode se
emos uma indeterminação 0/0 na eq. (11a) de ∆x, quando
ara a raiz x → α
A convergida.
Regra  de L’Hospital⋱ ⋱ ⋱
pode ser diretamente ⋮  aplicável na na equa-
A Regra f ′( x ) → de 0 L´Hospital pode ser diretamente aplicável
equação do cálculo do incremento ∆x, e
x) → 0 para a raiz x 
→ αdiretamente
convergida. ⋱ ⋱ ⋱ ⋮ 
L´Hospital ção
232 pode do cálculo ser do
uação do cálculo do incremento ∆x, eq. (11a), nesse caso, com f

incrementoaplicável ∆x, eq. (11a), na nesse caso, com
→ 0 e f ' (x) → 0, teremos (x) f(x) → 0 e
f ' ( x )
f (x) → 0, teremos:
′ ≠ 0 tn−1 rn −aplicável d n −1 ⋮ bna
0gra e f 'de
(x) L´Hospital
→20, teremospode
do incremento ∆x, eq. (11a), nesse caso, com f  ser diretamente 1 (x) n −1 
f ′( x ) → 0  tn rn ⋮ b(x) 
moscálculo do incremento ∆x, eq. (11a), nesse caso, com f  n   f ( xk ) 
→ 0, teremos lim ( Δx ) = lim  −r d f =( xlim
 f (xk ) 
k ) −
 f ′( xk )  ′
f ( xk )  lim ( ∆ x=) lim  − =
x →αlim ( ∆x ) b
x=  − x →α= − ⋮  xk →α xk →α
 f '( x )
k 
k k →α lim 1 f ′( x 1 )
 xfk →( xαk )  xk →α k f ′f( '(xkx) )  xk →αk  f ′′( x )
k  flim
′′( x )  1
x= ) xlim −′( x) = e x−= 0 )− r2 d 2 k    k ⋮b 
 f 1 f xlim (  x  f ′ ( x )  2 
limk ( ∆x= f lim'( xk x) − ′′( xk ) −
f lim
)
→ α → α
  k k
 ⋱ x ⋱= ⋱
k
 ⋮ ⋮Então, na região deconvergência

f ′′( xx)k = →αe
xk →α
Então, na região deconvergência, x
Então, fna '(xregião
k)
k →α
 f ′′( xkk )→
de convergência,  α, teremos:
xk → α, teremos: 
233 0 ri −1 di −1 ⋮ bi −1 
ião deconvergência, x
f '( x ) → 0
 → α, teremos: fti′( xk )
t r d b L ∆ x =
L − Li −1
k
f ′( xk )  ⋮  ← −
o, na região deconvergência, x
f
∆x =− ′( x ) 
(19) k

α, teremos:
i

i i

i

i i
r
f ′′ (
(19)i −1 k x )
xk ) ⋱ ⋱ ⋱ ⋮ ⋮ 
f ′′( x ) f ′′( xk )  (19)
∆(xxk= ) − f ′( xfk )'( x ) → 0 
 tn rn (19)
⋮ bnCom x 
 k+1
dado pela mesma eq. (1
Com x 236
f ′′( xk )k+1 Com x
dado pela mesma eq. (11b).
k+1
dado pela mesma eq. (11b).
Pg. f ′(191 x) = 2 x
o pela mesma eq. (11b).
f (α ) = 0 Exemplo 3.12: reaplique o método
xExemplo 240
Exemplo
dado pela mesma eq. (11b). 3.12: reaplique o método de Newton, modificado pela Regra de
k+1 Pg.
P
3.12:
(216
x ) = 0
reaplique o método de Newton, modificado
x pela Regra de L'Hospital, eq. (19),
L’Hospital,
n eq. (19), para obter uma raiz de e – x – 1 = 0 a partir de x0 = 1.0.
eaplique
pela Regra (244go ( xmétodo
)de − f (de
= xL'Hospital, x) Newton,
f ′( x))eq. (19), modificado para obter euma x
– x –1 raiz = 0de a partir de x0 = 1.0.
3.12:
e'Hospital,
x reaplique
– x –1 Pg. Solução:
Para
= 0220 eq. calcular
a partir de x o método
(19), apara cota-limite
= de
obter
1.0. Newton,
uma raiz
mínima modificado
de Cauchy, de tomamos o polinômio auxiliar
0 Solução:
ra
tir de xde
Solução: = Pn′**
f
L'Hospital, ( x
1.0.( 0x)) == ln(Pn (1xeq.
0
x))+, 1(19),
definido para pelaobter eq. (21), uma queraiz contém de os inversos multiplicativos das
0
0 a partir de x f(x) = de
raízes e =–P1.0.
x
x6 ( –x)1= 0 : f (x) = e x – x –
232 0 f (x) = e – x – 1 x
f ' (x) = e x – 1
249
f ′( x) = xe x − 1
f (x) * = e – x – 1 '
P ( x ) = Px(− x ) x f (x) = e – 1
x
f 5′′*( x) = efx5(x) = e – x – 1 f '' (x) = e x
'
f P(x) =e –1 f '' (x) = e
5 ( x)
x
236 '
''f (x)
f 252 ′( x )== e2 x f x (x) = e x
– 1
Pn′( x) f '' (x) = e x
244
Computacional

CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 233

Podemos aplicar a fórmula do método de Newton modificado,


Podemos aplicar a fórmula do método de Newton modificado, conforme a
conforme a eq. (19), pois sabemos previamente dos
eq. (19), pois sabemos previamente dos Exemplos 3.10 e 3.11 que, na região
Exemplos
da raiz, 3.10 e 3.11 que, na região da raiz, temos f
temos f(x) → 0 e f '(x) → 0, então: (x) → 0 e
f ' (x) → 0, então:
Tabela 3.11 – Resultados do Exemplo
Tabela 3.11 – Tabela3.12
de resultados do Exemplo 3.12
f ′( xk )
k xk f' (xk) f'' (xk) ∆x =− xk +1= xk + ∆x f (x) | f ( x) | + | ∆x |
f ′′( xk )

0 1.000000e+00 1.718282e+00 2.718282e+00 –6.321206e–01 3.678794e–01 7.678842e–02 7.089090e–01

1 3.678794e–01 4.446679e–01 1.444668e+00 –3.077994e–01 6.008007e–02 1.841501e–03 3.096409e–01

2 6.008007e–02 6.192157e–02 1.061922e+00 –5.831087e–02 1.769199e–03 1.565957e–06 5.831244e–02

3 1.769199e–03 1.770765e–03 1.001771e+00 –1.767635e–03 1.564111e–06 1.223022e–12 1.767635e–03

4 1.564111e–06 1.564112e–06 1.000002e+00 –1.564110e–06 1.223322e–12 0.000000e+00 1.564110e–06

5 1.223322e–12 1.223244e–12 1.000000e+00 –1.223244e–12 7.783746e–17 0.000000e+00 1.223244e–12

6 7.783746e–17 0.000000e+00 1.000000e+00 0.000000e+00 7.783746e–17 0.000000e+00 0.000000e+00

7 7.783746e–17

Fonte: Elaboração própria. Fonte: Elaboração própria

Assim, em k = =7 7 iterações, calculamos


Assim, em k iterações, calculamos xx7 ==7.78374589094591e–17,
7.78374589094591e − 17,com
7
∆x = 0 e f(x) = 0, logo x7 = 0.0000000000000000778374589094591 é a raiz
com ∆x = 0 e f (x) = 0, logo x7 = 0.0000000000000000778374589094591
encontrada com 16 dígitos significativos (sublinhados).
é a raiz encontrada com 16 dígitos significativos (sublinhados).
Considerações sobre o método de Newton modificado pela Regra de
Considerações sobre o método de Newton modificado pela
L’Hospital:
Regra de L'Hospital:
a) esse processo iterativo corrigido recupera a convergência quadrá-
a) esse
tica, em processo
que ∆x naiterativo
iteraçãocorrigido recupera a
k + 1 é o quadrado doconvergência
∆x da iteração
k anterior, conforme os
quadrática, em que ∆x valores de ∆x
na iteração k + na tabela de resultados
1 é o quadrado do ∆x
Exemplo 3.12 (observe que o expoente negativo
do da iteração k anterior, conforme os valores de da notação
∆x na tabela
científica de cada ∆x dobra de valor a cada iteração); e
de resultados do Exemplo 3.12 (observe que o expoente
negativo da notação científica de cada
b) nesse processo é necessário conhecer previamente ∆x dobra de valor a
o comportamento
da cada iteração); e
função e das suas derivadas ao longo da convergência, no caso,
ab) nesse
eq. (19) éprocesso
válida somente
é necessário → 0 e f '(x)previamente
para f(x) conhecer → 0. Se as demais
o
derivadas também da
comportamento tenderem
função ae zero, será derivadas
das suas necessário ao
reaplicar
longo a
Regra de L’Hospital. no caso, a eq. (19) é válida somente para
da convergência,
f (x) → 0 e f ' (x) → 0. Se as demais derivadas também tenderem
a zero, será necessário reaplicar a Regra de L'Hospital.
ao longo do processo d
polinomiais.
234Vamos
Vamos aprofundar a questão
aprofundar de "derivadas
a questão também
de "derivadas tenderem
também
CÁLCULO a zero"
tenderem
NUMÉRICO aCOMPUTACIONAL
zero"
s aprofundar a questão
ao longo de "derivadas
do processo também na
de convergência tenderem
seção a zero"
3.3.6 sobresobre
equações
ao longo do processo de convergência na seção 3.3.6 equações
ngo do processo de
polinomiais.convergência na seção 3.3.6 sobre equações 3.2.2.5 Rotinas de Funçõe
polinomiais.
omiais. Vamos aprofundar a questão de “derivada e função tenderem a zero simulta-
neamente” ao longo do processo de convergência na seção 3.3.6 sobre equações O método de New
3.2.2.5 polinomiais.
Rotinas de Funções Predefinidas
3.2.2.5 Rotinas de Funções Predefinidas rotinas de cálculo de va
otinas de Funções Predefinidas
digitais, conforme os e
O método de Newton também pode ser utilizado para elaborar
O método de Newton também pode ser utilizado para elaborar
3.2.2.5 Rotinas de funções predefinidas
O método de Newton também pode ser utilizado para elaborar
rotinas de cálculo de valores de funções predefinidas para máquinas
rotinas de cálculo de valores de funções predefinidas para máquinas
O método de Newton também pode ser utilizado para elaborar 3.2.2.5.1 Recíproco de um
rotinas
de cálculo de valores de funções predefinidas para máquinas
digitais, conforme os exemplos a seguir.
digitais, conforme os exemplos a seguir.
de cálculo de valores de funções predefinidas para máquinas digitais, conforme
, conforme os exemplos a seguir. Fazemos uso do
os exemplos a seguir. dedicada a obter o recípr
3.2.2.5.1 Recíproco
3.2.2.5.1 de um
Recíproco deNúmero
um Número
Recíproco de um Número Com essa rotina
3.2.2.5.1 Recíproco de um número
Fazemos uso do método de Newton para elaborar uma rotina
Fazemos uso do método de Newton para elaborar uma rotina
azemos uso do método de Newton para elaborar uma rotina
dedicada a obter o recíproco
dedicada a obter o recíproco 1 com 1 com (complexos não nulos).
(complexos não nulos).
Fazemos uso do método
a a obter o recíproco 1 com cde Newton para elaborar uma rotina dedicada
c (complexos não nulos). x= 1
Com essa rotina, desejamos determinar um x tal que
a obter Com essa rotina, desejamos determinar um x tal que
c
o recíproco 1/c com c ∈ ℂ – {0} (complexos não nulos). c
Com essa rotina, desejamos determinar um x tal que
Com essa rotina, desejamos determinar um x tal que
1 1 Determinando
x = 1x = ou 1 ou 1 x =1c ⇒
1 x=c f⇒( x ) =
f ( x )− = c = − 0c = 0 teremos o recíproco de
x = 1 ou 1 x = c ⇒ c c x x
f ( x) = − c = 0
c x e (11b), com
Determinando
Determinando a raiz dessa
a raiz equação,
dessa equação, sem sem usar a divisão,
usar a divisão,
Determinando Determinandoa raiz dessa a raizequação,
dessa equação, sem usar
teremos o recíproco de c. Aplicando Newton, conforme as eqs. (11a)
teremos o recíproco de c. Aplicando Newton, conforme as eqs. (11a) sem usar a divisão,
a divisão, teremos o recíproco
s o recíproco de c. Aplicando Newton, conforme as eqs. (11a)
de c. Aplicando Newton, conforme as eqs. (11a) e (11b), com
e (11b), com
e (11b), com 1
com f ( x) = − c = 0 e f ′
x
1 1
−c −c
1 1 11 −1c xk xk  1  1 
1 f ( x) f= ( x)−= c = −01c e ′( x)f =′( x−) =x2 −⇒2 ∆⇒
= 0f e x= ∆−x 2=  −1 =  ) 2( xk ) 2 − c  − c 
( xk=
xk +1= xk + ∆x ⇒
) = − c = 0 e f ′(xx) = x− 2 ⇒ ∆x =− x k x =( xk ) − 1−− c1  xk  xk teremos 
x x 1 ( xxkk ) ( xk)
2 2

( xk ) 2
teremos xk +1= xk x+1=k + x∆kx+⇒ ∆x= xk x+1k ( 2x−k (c2* −xkc)*. xk ) . Qual deverá ser o val
teremos
teremos x⇒ k +1 =
s xk +1= xk + ∆x ⇒ = xk +1 xk ( 2 − c * xk ) . convirja?

Qual
QualQual deverá
deverá serser ovalor
oser inicial xx0 para
valor inicial paraqueque
essaessa
expressão sempre
expressão convirja?
sempre
deverá o valor inicial 0 x0 para que essa expressão sempre
deverá ser o valor inicial x para que essa expressão sempre No Gráfico 3.12,
convirja?
convirja? 0
1
ja? No Gráfico 3.12, temos a representação da função geradora f ( x)= x − c para c > 1.
para c > 1.
No Gráfico 3.12, temos a representação da função geradora
No Gráfico 3.12, temos a representação da função geradora
No Gráfico 3.12, temos a representação da função geradora
1 1
f ( x)=f ( x)=− c para c > 1. > 1.
− c para c
− c para c >x 1. x
59 59
59
mputacional Gráfico 3.12 – Representação de f (x) = 1 ̸x – c para c > 1
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 235

Gráfico 3.12 –Gráfico 3.12 – de


Representação Representação
f(x) = 1/x – c para > 1= 1 ̸x – c para c > 1
de f c(x)

Fonte: Elaboração própria

Fonte: Elaboração própria


Devemos estimar o valor inicial x
Fonte: Elaboração própria.
mais próximo de 1 , mas
0 c
para garantimos a convergência, o valor inicial x
Devemos estimar o valor inicial x
Devemos estimar o valor inicial x0 mais deve estar contido
mais próximo de 1 , mas
próximo0 de 1/c, mas
0 c para e
2
garantimos0a<convergência,
no intervalo o valor inicial x0 deve estar0 deve estar contido
para garantimos a convergência, o valor inicial x
x0 < . Por exemplo, se c é da ordem de O(10 contido no intervalo ) ⇒
0 < x0 < 2/c. Por0exemplo,
c
2 c é da ordem e
de O(10 ) ⇒ o valor inicial estimado
no intervalo < x0 < se. Por exemplo, se c é da ordem de O(10
o valor inicial estimado para x deverá ser da ordem de O(10
e
⇒).
) –e
c 0 –e
para x0 deverá ser da ordem de O(10
o valor inicial estimado para x ).
deverá ser da ordem de O(10 ). –e
0

Exemplo
Exemplo 3.13: obtenha o recíproco de c
3.13: = sem
obtenha o recíproco de c = 425.32 425.32 sem utilizar a
utilizar a operação
Exemplo 3.13: obtenha o recíproco de c = 425.32 sem utilizar a
de divisão.
operação de divisão.
operação de divisão.
Solução:
Solução:
Solução:
3 3
Considerando que c é da ordem de O(10
Considerando que c é da ordem de O(10 ), pois3 ), pois c
Considerando que c é da ordem de O(10
–3
c =), pois c
0.42532 *=10
= 0.42532e0.42532e
3
+3, +3,
, tomamos
a equação ⇒ xk + 1 = xk (2
x0 tomamos x
= 0.001 = 10= 0.001=10
x1 k +1xk k( 2xk−(c2* −xkc) :* xk ) :
c
e aplicamos – * x ):
tomamos x0 = 0.001=10
0
–3
–3 e aplicamos a equação ⇒
e aplicamos a equação ⇒ =
xk +=

Tabela 3.12
Tabela 3.12Tabela
– Resultados – Tabela3.13
de resultados do Exemplo 3.13
3.12do–Exemplo
Tabela de resultados do Exemplo 3.13
k xk | ∆x |
k x k
| ∆x |
0 0.00100000000000000
0 1 0.00100000000000000
0.00157468000000000 5.74680000000000e–04
1 2 0.00157468000000000
0.00209472925400723 5.74680000000000e–04
5.20049254007232e–04

2 3 0.00232320085777991
0.00209472925400723 2.28471603772682e–04
5.20049254007232e–04
4 0.00235083814577217 2.76372879922607e–05
3 0.00232320085777991 2.28471603772682e–04
5 0.00235117083601085 3.32690238675701e–07
4 0.00235083814577217 2.76372879922607e–05
6 0.00235117088309978 4.70889325795976e–11
5 0.00235117083601085 3.32690238675701e–07
7 0.00235117088309978 8.67361737988404e–19
6 0.00235117088309978 4.70889325795976e–11
Fonte: Elaboração própria
7 0.00235117088309978 8.67361737988404e–19

Então,
Fonte: temos
Elaboração própria.o valor
Fonte:equivalente ao exato 1
Elaboração própria/ 425.32 =
0.00235117088309978 em 7 iterações, com critério de parada
Então,
| ∆x |<temos o valor equivalente ao exato 1 / 425.32 =
10−16, convergido no limite da precisão da variável double.
 r1 d1 ⋮ b1 
0 r d ⋮ b2 
 2 2

236  CÁLCULO
⋱ ⋱
Capítulo
Capítulo
Capítulo
NUMÉRICO ⋱ dededeCOMPUTACIONAL
333–––Solução
Solução
Solução Equações
Equaçõesnão
Equações não Lineares⋮aaauma
nãoLineares
Lineares uma
uma 
⋮ Incógnita
Incógnita
Incógnita
 
Capítulo 
0 r −1 Lineares
3 – Solução de Equações inão
di −1 a uma Incógnita ⋮ bi −1 
Capítulo 
i ri a umadiIncógnita ⋮ bi  Li ← L
3 – Solução de Equações tnão Lineares

No Então,
Caderno de
No Caderno temos o valor
de Algoritmos, equivalente
Algoritmos, confira ao exato
confira oo algoritmo
algoritmo de 1 /425.32
de Newton
Newton = para oo ⋱ ⋱ ⋱ ⋮ ⋮ 
0.00235117088309978
para
em 7 no
iterações, com  –16
critério de parada |∆x| < 10 , convergido no limite da 
de cc no
recíproco de
recíproco arquivo Cap3reciproco.m.
arquivo Cap3reciproco.m.  t r b 
no de Algoritmos, variávelo double.
precisão daconfira algoritmo de Newton para  o n n ⋮ n 
no de Algoritmos, confira o algoritmo de Newton para o
de c no arquivo Cap3reciproco.m. Pg. 191
de c noRaiz
2.2.5.2
.2.5.2 Raiz No Cap3reciproco.m.
arquivo Cadernode
Quadrada
Quadrada dedeum Númeroconfira o algoritmo de Newton para o recíproco de c no
Algoritmos,
um Número f (α ) = 0
arquivo Cap3reciproco.m.
Pg. 216
Quadrada de um Número
Fazemos
Fazemos
Quadrada uso
uso
de um do método
do
Número método de ( g( x) = xpara
de Newton
Newton − f ( xcriar
para )criar
f ′( xuma
)) rotina
uma
3.2.2.5.2 ++Raiz quadrada de um número
rotina
e possa obter cc, , cc∈
ue possa obter ∈ℝ ℝ
��++++. Com essa rotina, desejamos um x tal que
. Com essa rotina, desejamos um x tal que
Pg. 220
mos uso do método de Newton para criar uma rotina
mos
= ccuso
= do método de Newton
, o que equivale a obter a raiz positiva da equação polinomial
, o que equivale a obter a raiz positiva da equação polinomial
+Fazemos uso do método f ′(de
para )Newton
x0criar = ln(uma x0 ) para
+ 1rotina
criar uma rotina que possa
bter c , c22∈ ℝ� +
. Com essa rotina, desejamos um x tal que
bter
uadrática x
adrática xc , 2 ℝ

obter
c
++
. Com essa rotina, desejamos um x tal que
–– cc√c,
� +
== 0 sem usar a radiciação.
0 sem usar a radiciação. 232
c ∈ ℝ . Com essa rotina, desejamos um x tal que x = √c, o que
ue equivale a obter a raiz positiva da equação polinomial
equivale
Desse modo,
Desse a obter
modo, aplicamos
aplicamos a raiz positiva
ue equivale a obter a raiz positiva da equação polinomial o método
o método f ′(da x) = equação
de
de − 1 polinomial
e x Newton,
Newton, conforme
conforme as x – c = 0
quadrática
as
2
x2 – c = 0 sem usar a radiciação.
2
sem usar a radiciação.
– c = 0 sem usar a radiciação.
xs. (11a) e (11b), com:
qs. (11a) e (11b), com:
s. (11a) e (11b), com: ff ((xx==)) xx222 −− cc e f ′′f(f x′′(()xx=)) =
e e=x22xx,,
e modo, aplicamos Desse o método
modo, aplicamos de Newton,
236 o método conforme
de Newton, as conforme as eqs. (11a)
e modo, aplicamos o 2 método de Newton, conforme as
(11b), com: e (11b),f ( x=)com: x2 − c e
f(x) ((=xx xf))2′22(–−x−)ccc=e 2fxx′,,( x ) = 2 x ,
2
(11b), com: f ( x= ) ∆ ∆xxx −=c−− e kkkf ′( x) = 2244
=
22 xxkkk
( xk ) 22 − c P ** ( x ) = x n Pn (1 x )
∆x =− ( xk ) − c 222 n
 ((xx )) −− cc 
∆x =− 2 xxxkkk++11 = = xx −− kkk 249 ⇒ ⇒  xx ++ cc 0.5 0.5
2 xkk+1 2 kkk  22 xxkkk 5  4  3kkk 2 xxkkk 
 (x ) − c  x + x − x − x = 0
xk +1 = xk −  ( xkk ) 2 − c  ⇒  x252 k + cx 
c  0.5
xk +1 = xk −  2 xk  ⇒  xk + k  0.5
 P4 (2) ,xkP4′(2) , P4′′(2) , P4′′′(2) e Pn (2)
(4)
Como a ff ((xx=
Como a ))  xx2222−− xcck é estritamente crescente e convexa para
= 
é estritamente crescente e convexa para
254
do x positivo, então a expressão anterior do x
do x positivo, então a expressão anterior do x gera uma sequência
gera uma sequência
o a f ( x= ) x 22 − cComo é estritamente crescente e convexa para
a f(x) = x 2
– c é estritamente
k+1
k+1
k+1
crescente e>convexa para todo x
o a f ( x=) x − c é estritamente crescente e convexa para
mpre convergente para raiz quadrada de c, para todo x
mpre convergente para raiz quadrada de c, para todo x P ′( x) = 8x + 3 , P4′′( x) =000 >
3
240.
0.
x 2
, P4′′′ ( x) = 48 x
vo, então a expressão anterior do x gera uma sequência
positivo, então a expressão anterior do xk + 1 gera uma sequência sempre
4
vo, então a expressão anterior do xk+1 gera uma sequência
vergente para raiz quadrada de c, para todo x
convergente para raiz quadrada Pn ( xde
k+1 ′
0 ) c, para > 0. x > 0.
todo
vergente para raiz quadrada de c, para todo x00 > 0. 0
AA questão
questão é:
é:Acomo
como tomar um xxtomar
paraum
que ( x0 ) convergência
Pn′essa = R2
tomar
questão um
é: como 000
para x0essa
que para convergência seja aa mais
seja
que essa convergência mais
seja a mais rápida
rápida possível?
possível? 259
rápida possível?
x 4 − 5 x3 + seja
é: como tomar um x0 para que essa convergência 6 x 2 +a 4mais
é: como tomar um x0 para que essa convergência seja a mais
x −8 = 0
sível? 318
sível? Uma boa alternativa é tomar
Uma boa alternativa é tomar
Uma boa alternativa é tomar

boa alternativa é tomar 1.29  ppp
1.29
=
= 1.68 −−
xx000 1.68
boa alternativa é tomar (3.16qqq)) (20)
10 (3.16
***10 (20)
(20)
 0.84
0.84 +
+ m
m 
 1.29 
1.68 − 1.29  * 10 p (3.16q ) (20)
p q
0
1.68 − + 10 (3.16 )
Em que m é a mantissa fracionária de x dada por
0.84 m 
Em que m é a mantissa fracionária de x dada por
 (20) … ddttt))..
(0 .. dd 1…
(0
0.84Em  m é a mantissa de x dada por (0 . d1 ... dt11).
+ mque
0 *

Esse valor inicial é o resultado da extração da raiz quadrada
Esse valor inicial é o resultado da extração da raiz quadrada
ue m é a mantissa fracionária de x dada por (0 . d1 … dt ).
ue m é a mantissa fracionária de x dada por
c, expresso na forma cc == (0
e c, expresso na forma (0 .. dd111K
K ddttt)10 (0 . d1 … dt ).
)10222ppp+++qqq, com p inteiro e q
, com p inteiro e q == 00
valor inicial é o resultado da extração da raiz quadrada
valor inicial é o resultado da extração da raiz quadrada
u
qq == 1, e a
1, e a expressão
expressão entre entre parênteses
parênteses sendo sendo uma uma aproximação
aproximação
sso na forma c = (0 . d1 K dt )1022 pp ++ qq , com p inteiro e q = 0
sso na forma c =
ustada para a mantissa fracionária
ustada para a mantissa fracionária
(0 . d K d )10 , com p inteiro e q
mm == (0
(0 .. dd111K K ddttt)).. = 0
a expressão entre parênteses 1 t
sendo uma aproximação
0 < x0 < 2 / c
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 237
c = 0.42532 * 103
236 Esse valor inicial é o resultado da aproximação da raiz quadrada
de c, expresso na forma c = (0 . d1 ... dt)102p+q, com p inteiro e q = 0 ou
q(0=. d1,1 ......edat )expressão entre parênteses sendo uma aproximação ajustada
para a mantissa m = (0 . d1 ... dt)
Exemplo
237 3.14: obtenha 685.72 ⇒ c =0.68752 * 103 .
Exemplo 3.14: obtenha √685.72 ⇒ c = 0.68752 * 103.
Solução:
c = (0 . d1 ...... dt )10 2 p+q
Exemplo 3.14: obtenha 685.72 ⇒ c = 0.68752 * 103 .
Tomamos o valor inicial:
Solução:
Solução:
m = (0 . d1 o...... valor
Tomamos dt ) inicial:
Tomamos o valor inicial:
 M = 0.68572 (mantissa )
 m = 0.68572 ( mantissa =  ) (mantissa)
 M 0.68572

p =1  p =1
 p =1
 q = 1, pois 2=
 = pq+ q1,=3pois
q = 1, q 3=
2 p +pois 2p + q 3

239   1.29 1.29   1=


x = 1.68 −
x0 = 1.68 −  10 (3.16) =
1 1 1
0  10 (3.16) 26.370122 26.370122
0.84 + 0.68572 
 0.84 + 0.68572 
x0
Tabela 3.13 – Tabela de resultados do Exemplo 3.14
Tabela
Tabela 3.13
241 3.13 do
– kResultados – xTabela de resultados
Exemplo 3.14
k
| ∆x / x| do Exemplo 3.14
0
k 26.370122
xk | ∆x / x|
P ( x ) = x Pn (1 / x )
n
** n1 26.18689694144919144 6.996822e–03
2 0 26.370122
26.18625594488216635 62.447836e–05

Pn** ( x ) = 0 1 26.18689694144919144 6.996822e–03


3 26.18625593703689702 2.995949e–10
4 26.18625593703689702 0
2 26.18625594488216635 62.447836e–05
Fonte: Elaboração própria
Pn** ( x ) 3 26.18625593703689702 2.995949e–10

Então, temos o resultado equivalente a


4 26.18625593703689702 0
685.72 = 26.18625593703689702
Pn ( xElaboração
**
) = 0 própria. Fonte: Elaboração própria
em 4 iterações, com critério de parada relativo
Fonte: ∆x / x < 10−16 ,
convergido em variável double.
242
Então, temos o resultado equivalente a
Então, temos o resultado equivalente a √685.72 = 26.18625593703689702
685.72 = 26.18625593703689702
em 4 iterações, com critério de parada relativo |∆x / x| < 10–16, convergido −16
em 4 iterações, com critério de parada relativo
Pn ( xvariável
em
O algoritmo ) =Newton
de 0 double.
para determinar a raiz quadrada de c está dispo- ∆x / x < 10
,
convergido em variável double.
nível no Caderno 6de Algoritmos no arquivo Cap3raizquadrada.m.
P6 (Ox )algoritmo
= 3 x + de
3
4 xNewton
2
− 2 x para
− 6 determinar a raiz quadrada de c está disponível no
Caderno de Algoritmos no arquivo Cap3raizquadrada.m.

3.3 Solução244
de Equações Polinomiais
O algoritmo de Newton para determinar a raiz quadrada de c está dispo-
P6 ( x )
**
Vamos abordar a solução de equações da classe das
nível no** Caderno de Algoritmos no arquivo Polinomiais
Cap3raizquadrada.m.
P6 ( x )
devido à sua importância histórica, à frequência com que aparecem
238 CÁLCULO NUMÉRICO COMPUTACIONAL

3.3 SOLUÇÃO DE EQUAÇÕES POLINOMIAIS


Vamos abordar a solução de equações da classe das polinomiais devido
à sua importância histórica, à frequência com que aparecem nos modelos
Capítulo
Capítulo
3 – Solução de Equações não Li
3 – Solução de Equações não Li
matemáticos e às particularidades algébricas desse tipo de equações, a partir
de metodologias clássicas (BURDEN; FAIRES, 2011; CHENEY; KINCAID,
Gráfico 3.13
Gráfico 3.13 e uma proposta alternativa a respeito da determinação de raízes
2012),
múltiplas baseada em Galántai e Hegedus (2010).
Uma
Uma equação
equação polinomial
polinomial éé toda toda expressão
expressão do do tipo
tipo PPnn (( xx)) =
= 00 ,,
em
em que
que P n( xx))== aa1 xx nn +
+ aa2 xx nn −−11 +
+ .... +
+ aann xx + +1 é
+ aanndo um
um polinômio
polinômio de
Uma
P
equação
n ( polinomial
1 2 é toda ....expressão +1 é
tipo P (x) = 0, em que
de
grau n se a ≠ 0. n
= a xnn +sea ax1n –≠1 0+. ... + a x + a é um polinômio de grau n se a ≠ 0.
P (x)grau
1
n 1 2 n n+1 1

A solução das equações Pn ( x) = 0 tem o seguinte histórico de


A A solução das equações 0 tem o seguinte histórico de
Pn (=x) 0= tem
solução das equações Pn(x) o seguinte histórico de
desenvolvimento:
desenvolvimento:
desenvolvimento:

n = 11 ⇒ xx)) == aa1 xx111+ a = 0 (Euclides, séc. III,


P1( (Euclides, séc. III,
n=1n = ⇒ ⇒ P11(x) = a11 x ++aa222= =00
P ( (Euclides,
a.C.)séc. III a.C.)
⇒⇒ α = a22
a a.C.)
⇒ α = a
a11
P (( xx))=== aaa1 xxx222 ++ aa2 xxx111 + (Sridhara/Bhaskara,
n 2=
n =n = 22⇒⇒⇒ PP222(x) 11 + a 22 ++aaa333== = 000 (Sridhara/Bhaskara,
(Sridhara/Bhaskara, séc. XII)
⇒ séc.XII)
séc.XII)

−a a22 ±
± a a222 −
2
−4 4a a11aa33
⇒ α =
⇒α= 2 a
2a11

n3=
n =n = 33⇒

⇒PP ( xx))=== aaa1x1 xx+
3 +aax2 x+
+ a2 x 2 + 1+
+a3aax3 xx++a4aa4=== 0 00 (Cardano/Tartaglia, 1535)
33 2 2 1 1
P3(x)
3( (Cardano/Tartaglia, 1535)
(Cardano/Tartaglia, 1535)
3 1 2 3 4
Para
Para resolvê-la
resolvê-la por
por radiciação,
por radiciação, subtituímos subtituímos xx== ) em
x = y – a2 / (3a y−P / ( 3=a10)
a (x)
Para resolvê-la radiciação, subtituímos 1 y − a2 23 / ( 3a1 )
⇒ yem
3
+ p 3y(+ q =0 0,⇒ em que pp y=+aq3 –= a02 , / em
2
(3a ) e q = p=
a +a (2a − a – 9a
3 2
(3aa)) /e
P3 ( xx)) == 0 ⇒ yy 3 + 0 , em 1 que
que p=4 a33 − a2 22 2 (3a2 11 3) e
3
em P + p y+q =
(27a1) gera as soluções:
qq == aa4 ++ (2 aa233 − 9a2 a3 ) (27 a1 ) gera as soluções:
gera as soluções:
4 (2 2 − 9a2 a3 ) (27 a1 )
−q p3 q 2 −q p3 q 2
⇒ α1 = 33 −q + p3 + q 2 + 33 −q − 3 p3 + q 2 2
= 2 + 27 +3 − 3 −q
3 2
⇒ α1
2⇒ α == 3 −44 qq+2 +2 −p 3 27 + 4q 2
2 p 27 +
+4q2 4 + 3 −q − p
p 3
+ q
q 2
⇒ α1127 2 2
+ 27
27
+ 2 − 27 + 4
−q 3
p3 q 2 −q p3 q 2 4
3 2 27 4
⇒ α 2 = 33 −q + p + q + 33 −q + p + q
⇒ α2 = 2 + 27 + 4q + 2 +p 33 27 + 4q 22
3 − 3 −q
3 2
2 α 27 −4q +2 p 27 + 4q p q
= + 3 −q + +
3 2
⇒ p q
⇒ α 22 = + + + + + 4
3
2
2 27
27 4
4 2
2 27
27 4 213
213
Em deco
α =3 − 3 −q
3 2 3 2
−q p q p q Em deco
⇒ q − p3 + q 2
+ − q − p 3
+ q 2
⇒ α 33 = 3
da impo
2 − 27 + 4 +3 2 − 27 + 4 da impo
2 27 4 2 27 4 bilidade
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 239

−q p 3 q 2 3 −q p3 q 2
⇒ α3 =3 − + + − +
2 27 4 2 27 4

n = 4 ⇒ P4(x) = a1x4 + a2x3 + a3x2 + a4x1+ a5 = 0 (Ferrari, aprox. 1550)


Tabela 3.14 – Possibilidades de raízes reais e complexas
O método de Ferrari permite a redução de qualquer equação de grau
n = 4 para n = 3.
Nº Positivas Nº Negativas Nº Nulas Nº Complexas (complemento para n)
n = 5 1⇒ P5(x) = a12x + a2x + 2a3x + a4x + a5x + a6 0= 0
5 4 3 2 1

Em 1824, Abel provou ser impossível solver por radiciação todas


1 0 2 2
as Pn(x) = 0 para n ≥ 5 e, em 1832, Galois classificou as possíveis e
impossíveis.

Propriedade 11: o valor numérico de Pn′ ( x) em x = u é o resto R2 da segunda


Em decorrência da impossibilidade de solver por radiciação todas as polinomiais, precisamos usar
divisão sucessiva de Pn ( xNeste
outras metodologias. ) por u) .
( x −continuaremos
estudo, fazendo uso dos métodos iterativos.

Tomando a primeira divisão, temos:


Uma característica importante
Pn ( x) = ( x − udas ( x) + R1 Pn(x) = 0 é que sabemos
) Pn−1equações
previamente
Efetuando quantas
uma segunda raízessintética,
divisão elas possuem. Para de
via divisão tanto,
Pn −1 (basta
x) porusar
( x −outeorema
) , temos:
fundamental da álgebra e seus corolários, os quais provam que:
Pn−1 ( x) = ( x − u ) Pn−2 ( x) + R2
Substituindo Pn −1 ( x) em Pn ( x) , temos:
Propriedade 1: toda Pn(x) = 0 possui exatamente n soluções α, reais ou
Pn ( x) = ( x − u)(( x − u) Pn−2 ( x) + R2 ) + R1
complexas, distintas
2
ou repetidas (múltiplas).
Pn ( x) = ( x − u ) Pn −2 ( x) + ( x − u ) R2 + R1
Derivando
Como x) , reescrito
Pn (vamos na forma
usar métodos anterior,
iterativos para temos:
solver uma Pn(x) = 0 qualquer, vamos
abordar
′ antes algumas formas de localização das raízes Reais e Complexas, para
Pfacilitar
n ( x) = 2(
2
x − u) P −2 (valores
a escolha nde
− u) Pn′−x2 (.x) + R2 + 0
2
x) + ( x iniciais
Então, fazendo x = u , 0

Pn′ ( x = u) = 2(u − u)2 Pn−2 (u) + (u − u)2 Pn′−2 (u) + R2 + 0 = R2 → Pn′ ( x = u) = R2


3.3.1 Localização de raízes de equações
Exemplo 3.23 polinomiais
P4 ( x) = x 4 − 5 x3 + 6 x 2 + 4 x − 8 ⇒ P4 (2) = 0
Conforme vimos no início deste capítulo, uma raiz Real de f(x) = 0
P4′ ( x) = 4 x −15x2 + 12 x + 4
3
⇒ P ′ (2) = 0
pode ser localizada via teorema de4 Bolzano. Nesta seção, vamos apresentar
P4′′ ( xalgumas
) = 12 x2 −propriedades
30 x + 12 ⇒ P4′′
algébricas dos =0
(2) polinômios que ampliam as possibili-
dades de localização
P ′′′ ( x) = 24 x − 30 de todas as n raízes de P
⇒ P ′′′ (2) = 18 n (x) = 0, Reais e/ou Complexas.
4 4

Exemplo 3.31:
x = 1.00000266769999 + (5.0057518865228e − 06)i
s no início deste Capítulo, uma raiz real de
izada via teorema de Bolzano. Nesta seção,
240
mas propriedades algébricas dos polinômios CÁLCULO NUMÉRICO COMPUTACIONAL

bilidades de localização de todas as n raízes


Complexas.
A determinação de intervalos [a, b] e círculos, que contenham
de intervalos [a, b] e círculos, que contenham
respectivamente todas as raízes Reais e Complexas, pode ser estabelecida
raízes Reais e Complexas, pode ser estabelecida
por cotas-limite. Vamos apresentar algumas dessas cotas a seguir.
s apresentar algumas dessas cotas a seguir.

Cota doPropriedade
Módulo 2Máximo:
– Cota do módulo
em uma máximo: em uma Pn(x) = a1xn + a2xn – 1
+ ... + anx + an + 1 = 0, com a1 ≠ 0, para toda raiz a ∈ ℂ ⇒ |a| < rmax, em que
... + an x + an +1= 0 , com a1 ≠ 0 , para toda
max { a2 , a3 , ..., | an +1 |}
, em que rmax = 1 + .. Capítulo 3 – Solução de Equações n
a1
mo rmax de todas as raízes de Pn(x) = 0 também Capítulo 3 – Solução de Equações não Lineares a
A origem desse limite máximo rmax de todas as raízes Capítulode Pn(x)de =
3 – Solução 0 não Lineares a u
Equações
mbora seja normalmente menos exato do que
Dessa forma,
também é atribuído a Cauchy, embora seja normalmente menos exato do
uchy", que veremos na Propriedade
que a chamada “cota de Cauchy”,3.que veremos na Propriedade 3.
Dessa forma, a) se α for Real, ela estará sempre contida no intervalo (–rmax,+ rmax),
Dessa forma,
Dessa forma,
que poderá ser rastreado por um processo de varredura
a) se α for Rusando
eal, ela eo stará sempre
teorema contida
de no ipara
ntervalo (–rmax,+ rmax),
a) se α fαor
a) se Real,
for ela ela
Real, estará sempre
estará cBolzano
sempreontida no ino
contida localizar
ntervalo (–rmax
intervalo ,+subintervalos
(–r rmax ), ),
, +r
que poderá ser rastreado por um processo de varredura max
menores que contenha(m) raiz(es) Real(is); e
max
que
quepoderá
poderá ser rastreado por
ser rastreado por um um processo
processo de de varredura
varredura usando
usando
o o
teorema
usando teorema de Bolzano para localizar subintervalos
o teorema de Bolzano para localizar subintervalos que
de Bolzano para localizar subintervalos menores
b) se a raiz for um Complexo, então estará contida no círculo C
menores que contenha(m) raiz(es) Real(is); e
contenha(m) raiz(es) Real(is); e
menores que contenha(m) raiz(es) Real(is); e
de centro (0, 0) e raio rmax .
b) se a raiz for um Complexo, então estará contida no círculo C
b) se a raiz for um Complexo, então estará contida no círculo C
b) se a raiz for um Complexo, então estará contida no círculo C de
de centro (0,
de centro (0, e raio rrmax
centro (0, 0) e raio
0)0) e raio ...
rmax
max
Lembre-se que o módulo de um número complexo a + b * i é
dado por a 2 + b 2 em que ( i= −1 ).
Lembre-se quequeo omódulo
Lembre-se
Lembre-se de que ode
módulo deum umnúmero
módulo complexo
de um número
número complexo a + bb ** aii é+
complexo éb*ié
dadodado
dado por a a+ b+ b em
porpor 2 2 2 2
, em
emqueque
que( i(=i= −−11).).).

Podemos também calcular um raio mínimo rmin para as raízes


de PnPodemos também calcular um raio mínimo rmin para as raízes de
(x) = 0, ou seja, um raio de um círculo interno que não contenha
Podemos também calcular um raio mínimo r
Podemos também calcular um raio mínimo r
Praízes, conforme a Figura 3.1.
(x) = 0, ou seja, um raio de um círculo interno quemin não
min
para as raízes
para as raízes
contenha raízes,
n
de P (x) =
conforme 0, ou seja, um raio de um círculo interno que não contenha
o Gráfico 3.13.
de Pn(x)n = 0, ou seja, um raio de um círculo interno que não contenha
Para calcular o raio mínimo, geramos um polinômio auxiliar
Para calcular o raio mínimo, geramos um polinômio auxiliar
raízes, conforme a Figura 3.1.
raízes, conforme a Figura 3.1.
**
( x) = x n Pn (1 x) cujos zeros são os recíprocos das raízes de P
cujos zeros são os recíprocos das raízes de Pn(x) =n(x)
Pn Para calcular o raio mínimo, geramos um polinômio auxiliar 0, = 0,
Para calcular o raio mínimo, geramos um polinômio auxiliar
** desde
desde nque o Po
que ≠ 0), parazeros
(x) = 0 não contenha raízes nulas (an +contenha se evitar
n polinômio original P n(x) não
**Pn ( x ) =n x Pn (1 x ) cujos zeros são os recíprocos das raízes de P
1
(x) = 0, nulos
Pn ( x) =divisões
(axn+1 x) cujos zeros são os recíprocos das raízes de P
por zero.
Pn≠(10), pois os seus recíprocos gerariam divisão por zero. n
n
(x) = 0,
desde que o polinômio original Pn(x) não contenha zeros nulos
desde que o polinômio original Pn(x) não contenha zeros nulos
Então, para Pn(x) = 0 com an+1 ≠ 0, temos:
(a ≠ 0), pois os seus recíprocos gerariam divisão por zero.
(an+1 n+1
≠ 0), pois os seus recíprocos gerariam divisão por zero.
Então, para Pn(x) = 0 com a n n+1
≠ 0, temos:
n−1
 (0 . d d )
Para calcular o raio mínimo, geramos um polinômio auxiliar
1 ...... t
Para calcular o raio mínimo, geramos um polinômio auxiliar
p =1
Para calcular o raio mínimo, geramos um polinômio auxiliar
Para calcular o raio mínimo, geramos um polinômio auxiliar
P ( x) = x P (1 x) cujos zeros são os recíprocos das raízes de P (x) = 0,
** n
P ( x) = x P (1 x) cujos zeros são os recíprocos das raízes de P (x) = 0,= 0.68572 ( mantis
Pn**
P ( x) )==xxnn P
****n
n n(x
n
nn(1
P n (1xx
n))  q = 1, pois 2 p + q = 3237
cujos zeros são os recíprocos das raízes de P
cujos zeros são os recíprocos das raízes de P

(x)=n=0,0,n m
(x)
desde que o polinômio original não
nn
contenha 
INCÓGNITA zeros p
desde
desde
desde que
que
CAPÍTULO
que o
o
3 – SOLUÇÃO DE EQUAÇÕES
o polinômio
polinômio
polinômio original
original
original PPn(x)(x)P
NÃO
não (x)contenha
LINEARES
não A UMA
contenha zeros nulos  nulos
zeros nulos
n n(x) não contenha zeros nulos
P n = 1 241
(an+1
(a(an+1 c = (0 . d1 dt )10
≠ 0), pois os seus recíprocos gerariam divisão por zero. 2 p+q  q = 1, pois 2 p + q =
≠≠≠0), pois os seus recíprocos gerariam divisão por zero.
0), pois os seus recíprocos gerariam divisão por zero.
0), pois os seus recíprocos gerariam divisão por zero. 
......
(a n+1 239
n+1
Então, para P
Então, para P
Então, para P (x)
(x) (x)
=n= = 0 com a
com a
com a ≠ 0, temos:
Então,
Então, para P =000P
para
n n (x) 0 ≠com
(x) =n+1n+1 ≠0, temos:
0, temos:
an +m
ncom an+1 ≠ 0, temos:
n+1 ≠ 0, temos:
1 = (0 . d ...... d )
n x0 1 t 239
n −1
PP(1 ==
P
(1 =
nx(1
x) ) xa)a(1/ x) ) +
ax(1/
(1/ +
nn
+(1/axx)(1/
xa)a(1/ n
)....+++aan....
n −n1−1
) +x+.... (1/ +xax) n)+(1/
n (1/ =
+a=a+nx1+1) +0=
0an +1 0
=
Pnn n(1 x) a1 11(1/1 241x) n +2a22 (1/2 x) n −1 + ....+ 0.68572
ma=n (1/ x)n + = a(nmantissa
+1 0 ) x0

Então,
Então, x( xn) )=(=xx)xn P )n ) resulta em:
resulta em: p =1
**** ** n
Então, PP n (P
Então,
n **
P = n (1
P
**nx(1x
(
n x
x P
) = (1x nx ) resulta em:
P (1 / x ) resulta em: 241
Então, P
**** n
( x ) = x n
n P n (1 x ) resulta em:
n
n−0n1−1< xan0−1<xxn2qn=/==c01, pois 2 p + q (21)
=3
PP ( (
x )
x**)==aa++aaxx++.... .... + +a a x x ++a 0 (21)
n n P ( x )1 1= a2 2+ a x + .... n n + a xn +n1+1+ a x =0
n
(21)
Pn** ( xn ) = a1 +Pa1**2(xx+)2 =....0+ an x n −n1 + an +1 xnn+1= 0 (21) (21)
Pn ( x ) = x Pn (1 / x )
** n
n
Então, podemos aplicar a mesma cota máxima à
Então, podemos aplicar a mesma cota máxima à c = 0.42532 239 * 10
3
PP****( x( x) )==00** e
e
Então, podemos aplicar a mesma cota máxima à nn
** Pn ( x )**= 0 e
Então, podemos aplicar a mesma cota máxima à
Podemos ( x)
Pn aplicar,
**
determinar um raio máximo auxiliar r
determinar um raio máximo auxiliar r dessa , limite superior das raízes
, limite superior das raízes
236forma, a mesma cota P
máxima ( x) = 0 e
( x)à=P0n e
determinar um raio máximo auxiliar r x02 , limite superior das raízes
22 n
de PP****
n n(x ( x) )==determinar
00,via
,via um raio máximo auxiliar
determinar um raio máximo auxiliar r
de 2
r2 , limite superior das suas raízes, via
, limite superior das raízes
de ** Pn** ( x) = 0 ,via (0 . d1 ...... d241
de Pn ( x) = 0 ,via Pn** ( x ) = 0 t) Pn** ( x )
max{{a1a1, ,aa2 2, , aa3 3, ,...,
max ..., | a| an n|}|}
{ { } }
r2r2= = 11++ max a1 , a2 , 237 a3 , ..., (22) | **an | (22)
(22) **
+ 242
r2 = 1max a1 , aa2an +n,1+1 a3 , ..., | aP n n|
( x ) = x n Pn (1 / x ) n ( x) = 0
P (22)
r2 = 1 + an +1 2 p + q (22)
an +1 c = (0 . d1 ......** dt )10
Observe na eq. (22) ) = 0é necessárioPn a(n+1
Pn ( xque x ) ≠= 00, pois esse 242
coeficiente que se tornou o de maior grau em aPnn+**1(≠
Observe na eq. (22) que é necessário x)0,passa
pois esse coeficiente
m = (0 . d ...... d )
que se tornou
ao denominador. P6 o( xde
) =maior
3 x 6 + grau
4 x 3 −em 2 x 2P−
1** t
n 6 ( x ) passa ao denominador. Pn ( x) = 0 6565
 m = 0.68572 ( mantissa ) 65
244  P **
( x ) = 0 P6 ( x ) = 3 x 6 + 4 x 3 − 2 x
O recíproco desse limite p r=2 1corresponde ao raio mínimo das raízes de
n
O recíproco desse limite r
Pn(x) = 0, ou seja, 2
corresponde ao raio mínimo das
 q = 1, pois 2 p + q = 3
P
raízes de Pn(x) = 0, ou seja,
6
**
( x )  242 244
rmin = 1/r2 P6 ( x )
**
(23a)
rmin = 1 r2
239
Pn ( x) = 0 P6** ( x )
(23a)
245
Neste caso, x0 P6** ( x )
Neste caso, P6 ( x ) = 3 x 6 + 4 x 3 − 2 x 2 − 6
 maxP6** ( x{)a1 , a2 , 241
a3 , ..., | an |}  245
=rmin 1 1 + 244  (23b) (23b)
 an +1**
 254 Pn ( x ) = x n Pn (1/ x ) P6** ( x )
P6** ( x )
Logo, a maior raiz de Pn** ( x) = **0 está dentro do limite r , mas
Logo, a maior raiz de Pn ( x ) =P0**está ( x ) dentro do limite 2 r , 254
2 
mas essa sua
6
essa sua maior raiz corresponde à menor raiz de P
maior raiz corresponde à menor raiz de Pn(x) = 0. n
(x) = 0.
Lembramos que a Propriedade
Lembramos Pn** ( x )2 245
que a Propriedade vale
2 vale para pararaízes Reais e e
raízes Reais Complexas,
ou seja, esses limites do módulo das raízes podem ser interpretados em
Complexas, ou seja, esses limites do módulo das raízes podem ser
um gráfico cartesiano com Peixo Real06**e( xImaginário (Im = eixo puramente
n ( x ) =P )
**
interpretados em um gráfico cartesiano com eixo Real e Imaginário
Complexo), onde toda raiz α de Pn(x) = 0 está contida no intervalo rmin < |a| < rmax,
(eixo puramente Complexo), onde toda raiz α de P (x) = 0 está contida
ou seja, α está dentro do anel destacado 254
em ncinza do Gráfico 3.13.
242
no intervalo rmin <| α |< rmax , ou seja, α está dentro do anel destacado
em cinza da Figura 3.13.
Pn ( x) = 0
242 CÁLCULO NUMÉRICO COMPUTACIONAL

Gráfico 3.13 – Anel que contém todas as raízes α de Pn(x) = 0


Grafico 3.13 – Anel que contém todas as raízes  de P ( x)  0
n

Capítulo 3 – Solução de Equações não Lineare


Capítulo 3 – Solução de Equações não Lineares a uma Incógnita
Capítulo 3 – Solução de Equações não Lineares a uma Incógnita

Fonte: Elaboração própria.

Exemplo
ExemploExemplo 3.15: localize
3.15: localize
3.15: as as as
6 raízes
localize raízes de
3 raízes
de +364xx+3+4x
x 6 3x
3de
6 3
− 622 =
−423 xx–2 2x
− x–206− = 0 por por
6=
por 0 meio das
localize as raízes de 3 x + 4 x − 2 x − 6 = 2
0 por
meio das cotas-limite de módulo
meio das cotas-limite de módulo
cotas-limite de módulo máximo máximo e mínimo.
máximo e mínimo.
e mínimo.
-limite de módulo máximo e mínimo.
Solução:
Solução:
Solução: 6 6
Como
Como 3 P6 ( xx)2)== 33xx ++4 x43x−3 2−x22 − x 26=− 60=, aplicando a Propriedade
0, aplicando a Propriedade 2, 2,
x + 4 x −Como
6
2 x − 6P= (x) 0, aplicando a Propriedade
= 3x 6
+ 4x 3
– 2x 2
– 6, aplicando 2, a Propriedade 2, com a1 = 3
om a = 3 e
com a 3 e max{|
max{|
6 00|,||,| 0 4|,||,|4−|,|
0 |,| −20 |,| −
2 |,| 06|,||}−= = 6 , temos:
66|}, temos:
4 |,| −{|0|,
ax{| 0 |,|11 0 e|,|max 2 |,||0|, −6 |–2|,
0 |,||4|, |} = 6|0|, |–6|} = 6, temos pela eq. (22):
, temos:
6 6
6 =
rmaxrmax 1=+ 1+ = 3 = 3 2

rmax = 1+ = 3 |3| | 3|
|3|
Para calcular
Para calcular um um raio raio mínimo
mínimo para essas
para raízes,
essas podemos
raízes, podemos
um raio mínimo para essas raízes, podemos
aplicar a eq. (23b):
plicar a eq. (23b):
Para calcular um raio mínimo para essas raízes, podemos aplicar a eq. (23b):
3b):
  max{|| max{|| 3,| 3,|
0 |,|00|,|
|,| 04 |,|
|,| -2 |,| 0-2|}|,| 0 |} 
4 |,|
 max{||
=
= +
rrmin3,| 011|,|01 1
|,|
+ 4 |,| -2 |,| 0 |}  
1 + 
−6 −6 −6
min
 
 
rrmin ==0.60.6
6 min

Assim, as raízes de P
Assim, as raízes de P (x)(x) =estão entre
=P 0(x) 0.6 <
0=estão entre α<|<<
|0.6 | α<.|<
3.0 3.0 .
s de P6 (x)Assim, as raízes
= 0 estão entre 6 de
6 0.6
0 estão entre
6 <| α |< 3.0 .
0.6 |α| 3.0.
Esse resultado pode ser comprovado quando determinamos as
Esse resultado pode ser comprovado quando determinamos as
Esse resultado pode ser comprovado quando determinamos as 6 raízes de
pode ser comprovado quando determinamos as
6 raízes de P
P6 (x) 6=6(x) = 0 (via função roots() do Octave), conforme
0 (via roots( ) do Octave), conforme segue:
x) raízes de P (x) = função
0 (via função roots() do Octave), conforme
= 0 (via função roots() do Octave), conforme
segue:
egue:
x1 = −1.373431183527068 + 0.000000000000000i
x1 = −1.373431183527068
373431183527068 + 0.000000000000000i
+ 0.000000000000000i
Assim, as raízes de P6 (x)
Assim, as raízes de P (x) = estão entre 0.6
= 00 estão entre 0.6 < α ||<
<|| α 3.0 ..
< 3.0
6
Esse resultado pode ser comprovado quando determinamos as
Esse resultado pode ser comprovado quando determinamos as
6 raízes de P (x) = 0 (via função roots() do Octave), conforme
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 243
6 raízes de P 6 (x) = 0 (via função roots() do Octave), conforme
6
segue:

xx11 ==−−1.373431183527068 + 0.000000000000000


1.373431183527068 + 0.000000000000000ii
xx22 = 0.580108028676416 +
= 0.580108028676416 + 1.135516978130294
1.135516978130294ii
2
xx3 = 0.580108028676416 − 1.135516978130294i
3 = 0.580108028676416 − 1.135516978130294i
xx4 = 1.035657483096530 +
= 1.035657483096530 + 0.000000000000000
0.000000000000000ii
4

xx5 = −0.411221178461147 + 0.834073854054218i


5 = −0.411221178461147 + 0.834073854054218i

xx6 =
=− 0.411221178461147 −
−0.411221178461147 − 0.834073854054218
0.834073854054218ii
6

cuja raiz de módulo:


cuja raiz de módulo:
a) máximo é x1 (módulo 1.373431183527068);
a) máximo é x (módulo 1.373431183527068);
a) máximo
1 é x1 (módulo 1.373431183527068);
b) mínimo é x
b) mínimo é x5 (módulo 0.929936584736740).
(módulo 0.929936584736740).
b) mínimo
5
é x5 (módulo 0.929936584736740).
Propriedade 3 – Cota de Cauchy: dada uma equação polinomial
Propriedade 3 – Cota de Cauchy: na equação polinomial Pn (x) = 0, todas as
Pnn (x)
P (x) =
= 0,
0,
suasentão
raízestodas
então todas
α Reais as
as ousuas
suas raízes
Complexas α Reais
α Reais ou
raízes satisfazem |a|Complexas
ou Complexas
≤ rmax, sendo
satisfazem || α
satisfazem α ||≤
≤ rrmax
max , sendo
rmaxmax, sendo
= lim xk
rmax = lim xk k →∞
rmax = lim xk
k →∞ 1/ n
 kn→∞+1
a1/i n n −i +1 
com  nx+k1+1a=  ∑  xk 1/n 67
67
com xk +1 =  ∑ i xkn +−i 1=i +21aai 1 n −i +1  
com xi =k 2+1 a=1  ∑  xk 
com
 i = 2 a1
sa propriedade, são aplicados k passos iterativos a partir 
priedade, são aplicados k passos iterativos a partir
sa propriedade, são aplicados k passos iterativos a partir
icial x0 = 0 até que algum critério de parada seja satisfeito.
Nessa propriedade, são aplicados k passos iterativos a partir do valor
= 0 até que algum critério de parada seja satisfeito.
icial x0 = 0 até que algum critério de parada seja satisfeito.
inicial x = 0 até que algum critério de parada seja satisfeito.
o 3.16: calcule as 0 cotas-limite máxima e mínima de
: calcule as cotas-limite máxima e mínima de 2
o 3.16: calcule as cotas-limite
das raízes da equação polinomial máxima
3 x 6
+ 4 e
x 3mínima
− 2 x − 6de = 0e ,mínima de Cauchy das
Exemplo 3.16: calcule
zes da equação polinomial 3 x + 4asx cotas-limite
6 3
6− 2 x 3− 6 =
2
02máxima
,
das raízes da equação polinomial
ecisão de 16 dígitos significativos.
raízes da equação polinomial 3 x + 3x 4 x6 +− 4x
2 x3 –− 2x
6= 2 0,
– 6 = 0, com precisão de 16
de 16 dígitos significativos.
o:cisão de 16 dígitos significativos.
dígitos significativos.
:
r de x = 0 (valor inicial) e a = 3, geramos a equação
= 0 (valor inicial) e a
0 Solução: 1 = 3, geramos a equação 1
de x = 0 (valor inicial) e a
a, como se o x do termo de maior grau fosse isolado, = 3, geramos a equação
0
A partir de x0 = 0 (valor
o se o x do termo de maior grau fosse isolado, 1
inicial) e a1 = 3, geramos a equação iterativa, como se
, como se o x do termo de maior grau fosse isolado,
a um método de iteração linear, considerando coeficientes
o x do termo de maior grau fosse isolado, análogo a um método de iteração
método de iteração linear, considerando coeficientes
a um método de iteração linear, considerando coeficientes
linear, considerando
dulo e com valores de x coeficientes em módulo e com valores de xk tomados
tomados em um passo iterativo
om valores de xk tomados em um passo iterativo
k
ulo e com valores de x
em um passok tomados em um passo iterativo
iterativo anterior, logo:
, logo:
, logo:

((( 4 x ) ) ))
xk +1 = (x4kx+1k3=+ 2(x4k2 x3+k 6+)2/ x32 k + 6 ) / 31/6
(x
1/6
3 2 1/6

k +1 = k + 2 xk + 6 / 3
aso, para uma cota com 16 dígitos significativos, então
ra uma cota com 16 dígitos significativos, então
aso, para uma cota com 16 dígitos significativos, então
:< 10−15 :
−15
anterior, logo:  r1 d1 ⋮ cb1=(0 . d1 ...... dt )102 p + q
0 r d b2(0
⋮c =  . d ...... d )102 p + q
(( ) )
1/6
 2 23 1
 COMPUTACIONAL t
244 x = 4 x + 2 x 2
+ 6 / 3
CÁLCULO NUMÉRICOm = (0 . d ...... d )
 k +1 ⋱ ⋱k ⋱ k ⋮ ⋮  1 t

⋮mbi=−1 (0 . d1 ...... dt )
 
0 ri −1 di −1
Nesse caso, para uma cota com 16 dígitos significativos, então

 m= 0.68572 (t–15 mantissa )
Nesse
xk +caso,
− x para
< 10uma  com 16 dígitos
−15 cota
: ti significativos,
ri di ⋮ bi|xk L
então ←x L| i<−10i L
i – : i −1
 m p==0.68572
1 (rmantissa )
1 k + 1 k
i −1
 ⋱ ⋱ ⋱ ⋮ ⋮ 
 pq==11, pois 2 p + q = 3
Tabela 3.13 – Resultados doExemplo
Tabela 3.13 – Tabela de resultados dotnExemplo
3.16 rn ⋮ b3.16
 q n=1, pois 2 p + q = 3
k xk x −x
Pg. 191 k +1 k
239
f (α ) = 0 0 0 –
239
Pg. 216 1 1.12246204830937 1.12246204830937 x0
( g( x) = x 2− f (1.29541512584639
x) f ′( x)) 0.172953077537016
x0
Pg. 220
3 1.34864877400131 0.0532336481549256 241
f ′( x0 ) = ln( x0 ) + 1

241
31 1.37343118352707 6.66133814775094e–16 Pn** ( x ) = x n Pn (1 / x )
232
f ′( x) = e x − 1
Fonte: Elaboração própria. Fonte: Elaboração própria Pn** ( x ) = x n Pn (1 / x )
P ** (não
Capítulo 3 – Solução de Equações x )Lineares
= 0 a uma Incógnita
f
O valor de x′′( x ) = e x
Capítulo 3 – Solução de Equações nnão Lineares a uma Incógnita
com 16 dígitos convergidos é o r = 1.37343118352707
O valor de xk com k 16 dígitos convergidos é o rCapítulo Pn de( xEquações
= 31.37343118352707
max **
) = 0 não Lineares
com
236 max – Solução a uma Incógnita
|xkcom
+1
– x x|k
≅+1
0.
− x
kf ′( x ) = 2 x
k ≅ 0 . P n
**
( x )
Pn ( xx )−o2polinômio
6 ** 3
Para calcular o raio mínimo das raízes de
Para 244 a cota-limite mínima de Cauchy,
calcular P ( x )= 3 x
tomamos+ 4 x 2 − 6= 0
x), definido pela eq. (21), que contém os inversos
n 6
Pn x(1), definido pela eq. (21), que contém os inversos
Pxn (1 ( x )um
Pn**de = 0inversos
pela cota
auxiliar Pn** ( x )de = xCauchy,
n calculamos
Pn (1 x ) , definido o raio
pela eq. (21),interno
que contém os anel
x) = x Pn (1 x), definido pela eq. (21), que contém os inversos
n
cativos das raízes de P (x) = 0:
tivos das raízes de P 249 6 (x)
que “não”
multiplicativos 6 =raízes
0: de
contenha
das raízes
P6(x) =por
0: meio do polinômio Pn ( x ) =auxiliar
**
0
ltiplicativos das raízes de P (x)
2 = 0:
xx5) +=+
x)x3=+ x6x32−x=24 0x−46−x66 x=
−34xx343−− 242
4
**
x)x=
P6**P(6x)( = 6 6
P6 (1
Px6 (1
6
0= 0
P6 ( x) =
** 252
x P6 (1 x) =+
6
3 4x − 2x − 6x =
3 4 6
0 242
P4 (2) , P4′(2) , P4′′(2) , P4′′′(2) e Pn( 4 ) (2) Pn ( x) = 0
a partir
partir de de
x0 x=0 0 =2540 (valor
(valor inicial),
inicial), geramos
geramos a equação
a equação
ão, a partir
Então, de x0 = 0
a partir de(valor inicial),
x0 = 0 (valor geramos
inicial), geramos a aequação
equação ( x) = 0 a seguir:
Pn iterativa
seguir:
a a seguir: P6 ( x ) = 3 x 6 + 4 x 3 − 2 x 2 − 6
ativa a seguir: P′( x) = 8x3 + 3 P′′( x) = 24 x2 P′′′ ( x) = 48 x
, 1/6 , 4 P6 ( x ) = 3 x 6 + 4 x 3 − 2 x 2 − 6
( ((
xk x= = ( 2 xk24 x+44+xk4
4 3 3
+ )) )
3+) /36 / 6
4 1/6

xPkn′(=x0k) ( 2 xk4k+ 4 xk3 + 3) / 6


( x
) 244
1/6
k

Pn′( x0 ) = R2
convergência, concluímos que a maior raiz de
da convergência, concluímos que a maior raiz de
**
x)( x) ** 244**
P6 P( **
Depois da convergência,
pois da convergência, concluímos que a maior raiz de concluímos que a maior raiz de P ( x ) está dentro
, mas essa maior raiz P6 ( x) **6**
6
259
o do limite r2 =r 1.11793643455463
ntro do limite do limite
á dentro do limite = 41.11793643455463
2 xr2 −r=2 51.11793643455463,
3
+ 6 x + 4 x(x)
=x1.11793643455463
2 , mas essa maior raiz
0mas essa maior raiz de P6P6( x()xcorresponde
− 8==0. Logo, o limite
, mas essa maior raiz )
corresponde à menor raiz de P
)P** corresponde à menor raiz de P
ao inverso 318do limite da menor 6 (x) =
raiz de P (x) =
0. Logo, o limite 0. Logo, oP6 ( x ) inferior das
limite
**
6 ( x ) corresponde à menor raiz de P (x) = 0. Logo, o limite
6 6
as raízes de P raízes (x) = 0 é dado pela eq. (23a),
6 de P6(x) = 0 é dado pela eq. (23a),
6
das raízes de P6 (x) =(x)
erior das raízes de P 0 é dado pela eq. (23a),
= 0 é dado pela eq. (23a), 245
6
=
rmin 1/= r2 0.894505241166406 245
=rmin = r1/= r =
min 2 1/
0.894505241166406
r2 0.894505241166406 P6** ( x )
P6** ( x )
ela cota de Cauchy, todas as 6 raízes de P6(x) = 0 também
254
o, pela cota de Cauchy, todas as 6 raízes de P
tanto, pela cota de Cauchy, todas as 6 raízes de P
Portanto, pela cota de≤|Cauchy,
tervalo 0.894505241166406 todas6(x)
α |≤ 1.37343118352707 também
as =660(x) = 0 também
raízes . P6(x)254
de = 0 também estão
ão no intervalo
intervalo no0.894505241166406
intervalo 0.894505241166406
0.894505241166406 | α
≤| α | 1.37343118352707
≤ |≤
≤ |a| ≤ 1.37343118352707.
1.37343118352707 . .
de 4 – Cota de Kojima: dada a equação polinomial
priedade
(dade 4 – Cota
n ≥ 2 4), –toda
Cota a de deα, Kojima: dada a equação polinomial
Kojima: dada a equação polinomial
raiz Real ou Complexa, satisfaz
x) =
0 rmax
n 0

( = max(
2 n ≥ 2 ),
), toda toda a
a 2raiz raiz α, Real
α, Real ou e max
Complexa,
ou Complexa, satisfaz
satisfaz
1
+ max . Os valores de max 1 2
são os
to, pela cota de Cauchy, todas as 6 raízes de P 6
(x) = 0 também
Portanto, pela cota de Cauchy, todas as 6 raízes de P 6
(x) = 0 também
o intervalo 0.894505241166406 ≤| α |≤ 1.37343118352707
estão no intervalo 0.894505241166406 ≤| α |≤. 1.37343118352707 .
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 245
edade 4 – Cota de Kojima: dada a equação polinomial
Propriedade 4 – Cota de Kojima: dada a equação polinomial
= 0 ( n ≥ 2 ), Propriedade
toda
Pn (x)a =raiz –≥Cota
0 (4nα, Real ou
2 ), de
toda Complexa,
a raiz
Kojima: naα, satisfaz
Real
equação ou Complexa,
polinomial Pn(x) satisfaz
= 0 (n ≥ 2),
x e rmax = max
| α1 ≤+a| max
toda rraiz . Os valores de max
e r
max |2α, Real
max
=oumaxComplexa,
1 1
e max2 são os
+ max2. Os valores de max
satisfaz e max
a ≤ |rmax| e r1max = max são os
2 1
+ max2.
valores de max1 e max2 são os dois maiores valores da sequência:
Osdois maiores valores da sequência:
aiores valores da sequência:

 1
  1

a i
  ai +1 i

qi =  i +1  com i
com i ==q1,1,=...,
n.n.
i ...,  com i = 1, ..., n.
 a1   a1 
   
plo 3.17: calcule as cotas-limite de raízes de Kojima para
Exemplo
Exemplo 3.17: calcule as cotas-limite de raízes de Kojima para
3.17: calcule as cotas-limite de raízes de Kojima para o polinômio
nômio P6 ( x)P
= 6o polinômio
3 x =+3x
(x)
6
4 x+−4x23xP
6 3 2
( x6=2)=– 063. x=6 0.
–6−2x + 4 x3 − 2 x 2 − 6= 0.
ão: Solução:
Solução:
os coeficientes são a = 3, a2 = 0, a3 = 0, a
Como os coeficientes são a = =3, a
4, a =5 =0, a
–2, = 0, a4 = 4, a5 = –2,
Como os coeficientes
1
são a1 = 3, a21 =4 0, a3 =
2 0, a4 =34, a5 = –2, a6 = 0 e a7 = –6,
e a7 = –6, então a sequência de fatores q
a6 =a0 e a
então de fatores qi é:i é:
= –6, então a sequência de fatores q
sequência
7 i
é:


0 2 4 3 −2 4 0 5 0 −1 6 06 2 4 3 −2 4 0 5 −6 6 
1 1 1 1 1 1 1 1 1 1 1

,
omputacional , q, =  , ,  =, {0, , 0, 1.100642,
, , 0.903602, 1.122462}0.903602, 0, 1.122462}
 = {0, 0,0, 1.100642,
3 3 3 i 3  3 3 3 3 3 3 3 
  
omando
mputacional
os dois maiores valores: max 1 = 1.122462 e
69
ax2 = 1.100642, temos
Tomando os doisos
Tomando maiores
dois valores:
maiores max1valores:
= 1.122462max
e max== 1.100642, temos
2 1.122462 e 1
max2 = 1.100642, temos
= rmax
rmaxTomando max 1
=+max maxos 12
+=max2.223104
dois = 2.223104
2 maiores valores: max 1 = 1.122462 e

max2 = 1.100642, temos rmax = max1 + max2 = 2.223104


ara determinar o raio interno
Para determinar o raio interno do anel,
do anel,podemos
podemos gerar gerar o
o polinômio auxiliar
dado Para peladeterminar
eq. (21),
olinômio auxiliar dado pela eq. (21), ro maxraio
= max interno + max do =anel,
2.223104 podemos gerar o
1 2
polinômio auxiliar dado pela eq. (21),
( x) =
P6**Para −determinar
6 x 6 + 0 x5 − 2 x 4 +o + 0 x 2interno
+ 0x + 3 = , anel, podemos gerar o
3
4 xraio 0do
P6 ( x) =
**
−6 x + 0 x5 − 2 x 4 + 4 x3 + 0 x 2 + 0 x + 3 =
6
0,
polinômio auxiliar dado pela eq. (21),
ue contém os inversos multiplicativos das raízes de P
que contém os inversos multiplicativos das raízes (x) = 0, cuja
6 de P6(x) = 0, cuja sequência
que contém os inversos multiplicativos das raízes de P
quência de fatores q de P6 ( xP)6**= (x) = 0, cuja
(−x6) x=
é:−+60xx6 **+−02xx5 −+24xx46 ++40xx53 ++00x4x2 ++ 03 x= +0 é:
** 6 5 4 3 2
de fatores i q i de 3= 60
,
sequência de fatores qi de P6 ( x) = −6 x + 0 x − 2 x + 4 x + 0 x + 0 x + 3 =
3 2
0 é:

4 3 que contém os inversos multiplicativos das raízes de P (x) = 0, cuja


1
1 −2 2
1 1 1 1 1

0 14 0 1 5 31 6  1  6
4 3 0 4{ 0 5 P 3 6  −6 x + 0 x − 2 x + 4 x + 0}x + 0 x + 3 =
1 1
, , , 0sequência de fatores q
,
1 −2 2 , = 0, 0.577350, 0.873580, 0, 0, 0.890899
−6 −6  −6 , −6 , −6 ,  , i de , 6 (x)== {0, 0.577350, 0.873580, 0, 0, 0.8908990 é:
** 6 5 4 3 2
}
 − 6 − 6 − 6 
− 6 − 6 − 6 
 1 1 1 1 1 1

 0 1 −2 2 4 3 0 4 0 5 3 6 
omando max = 0.890899 e max
, ,
 1Tomando max = 0.890899 e max , 2, = 0.873580, temos
,  = {=0,0.873580, temos
0.577350, 0.873580, 0, 0, 0.890899}
 − 6 −6 − 6 1 −6 − 6 − 6  2

r2 = max1 + maxr 2 = = max


1.764479 + max2 = 1.764479
2 1
Tomando max1 = 0.890899 e max2 = 0.873580, temos
246 CÁLCULO NUMÉRICO COMPUTACIONAL

Tomando max1 = 0.890899 e max2 = 0.873580, temos

r2 = max1 + max2 = 1.764479

então a cota mínima interna dada pela eq. (23a) é:

rmin = 1/r2 = 0.5667395.

Logo, as seis raízes de P6(x) = 0 também estão no intervalo 0.5667395 ≤ a


≤ 2.223104.

Comparando as 3 cotas de P6(x) = 0:

a) |a| ∈ (0.6, 3.0) cota do módulo máximo – Propriedade 2;


b) |a| ∈ [0.8945041, 1.373431] cota de Cauchy – Propriedade 3;
c) |a| ∈ [0.5667395, 2.223104] cota de Kojima – Propriedade 4.

Como as três cotas garantem a inclusão de todas as raízes, então podemos


tomar o menor intervalo possível, com o maior rmin e o menor rmax, ou seja,
tomar o anel mais estreito. Entre os Exemplos 3.15, 3.16 e 3.17, os limites
do menor intervalo foram dados pela cota de Cauchy.

Dispondo das cotas máxima e mínima, podemos fazer uma varredura


de possíveis raízes reais subdividindo este intervalo em subintervalos
e testando cada um com o teorema de Bolzano, no lado negativo entre
[–rmax , –rmin] e no lado positivo entre [+rmin ,+rmax], verificando as trocas de
sinais da função. Essa varredura de possíveis raízes reais com o teorema de
Bolzano só é válida para equações polinomiais de coeficientes Reais.
Por último, podemos completar a estimativa das n raízes com valores
iniciais de raízes Complexas, distribuídos “randomicamente” dentro do
anel de raio r ∈ [rmin , rmax], conforme o algoritmo estabelecido no arquivo
fLocaliza.m que apresentamos no Caderno de Algoritmos.
Para as raízes de P6(x) = 3x6 + 4x3 – 2x2 – 6 = 0, localizamos dois
valores iniciais Reais, conforme o teorema de Bolzano, enquanto os 4
seguintes são estabelecidos como Complexos, para abranger possíveis
raízes Reais ou Complexas.
no arquivo fLocaliza.m que apresentamos no Caderno
dentro do anel de raio r ∈ [rmin , rmax], conforme o algoritmo estabelecido
no arquivo fLocaliza.m que apresentamos no Caderno de
de Algoritmos.
Algoritmos.
no arquivo fLocaliza.m que apresentamos no Caderno
Para as raízes de P ( xmin max 6
) = 3
no arquivo fLocaliza.m que apresentamos no Caderno x + 4 x 3
− 2 x
6 ( x )= 3 x 6 + 4 x 3 − 2 x 2 − 6= 0
2
− 6 = 0 de
de Algoritmos.
, localizamos dois
Algoritmos.
Para as raízes de
no arquivo fLocaliza.m que apresentamos no Caderno
Para as raízes de P
P 6 ( x ) = 3 x
6
+ 4 x
3
− 2 x
2
− 6 = 0 , localizamos dois
de Algoritmos.
, localizamos dois
valores Para as raízes de
iniciais Reais, conforme
Para as raízes de P
P 6(
6
( xx))== 33 xx 6 o
6
6 +
+ xx3 −
3
44teorema
3
− 22 xx 2 −
2
2
− 66== Bolzano,
de 00, localizamos dois enquanto
, localizamos dois
valores
valores iniciais
CAPÍTULO
iniciais Reais,
Para as raízes de
Reais, conforme
P66 ( xDE
3 – SOLUÇÃO
conforme 3 x o
)= EQUAÇÕES + 4teorema
o xNÃO
teorema x −de
− 2LINEARES 6= ABolzano,
de 0UMA INCÓGNITA
Bolzano, enquanto
, localizamos dois
enquanto 247
valores
os
valores iniciais
4 seguintes
iniciais Reais,
são conforme
estabelecidos
Reais, conforme o teorema
como
o teorema de
Complexos,
de Bolzano,
Bolzano, para enquanto
abranger
enquanto
os
os 4
4 seguintes
valores iniciais são
seguintes são estabelecidos
Reais, conforme o
estabelecidos como
teorema
como Complexos,
de Bolzano,
Complexos, para
para abranger
enquanto
abranger
os 4 seguintes são estabelecidos
possíveis raízes Reais ou Complexas.
os 4 como Complexos, para abranger
4 seguintes são estabelecidos como Complexos, para abranger
seguintes são estabelecidos
possíveis raízes Reais ou Complexas.
os
possíveis raízes Reais ou Complexas.
como Complexos, para abranger
Um possível resultado para o vetor de raízes iniciais xi gerado pela
possíveis raízes Reais ou Complexas.
Um possível resultado para o vetor de raízes iniciais xi gerado
possíveis raízes Reais ou Complexas.
Um possível resultado para o vetor de raízes iniciais xi gerado
possíveis raízes Reais ou Complexas.
Um possível resultado para o vetor de raízes iniciais xi gerado
função fLocaliza(n, a) seria:
Um possível resultado para o vetor de raízes iniciais xi gerado
pela função fLocaliza(n,a) seria:
Um possível resultado para o vetor de raízes iniciais xi gerado
pela função fLocaliza(n,a) seria:
Um possível resultado para o vetor de raízes iniciais xi gerado
pela função fLocaliza(n,a) seria:
pela função fLocaliza(n,a)
pela função fLocaliza(n,a) seria:
seria:
xi = − 1
pela função fLocaliza(n,a) .365449094487721
seria: + 0.000000000000000i
xi1 = − 1 .365449094487721 + 0.000000000000000 ii
1
xi
xi1 = −1.365449094487721 +
= − 1 .365449094487721 + 0.000000000000000
0.000000000000000 iii
xi1 =
12 = = +

− 1.030200914835262
1 .365449094487721 +
++ 0.000000000000000
0.000000000000000
xi = + 1 .365449094487721
1.030200914835262 + 0.000000000000000
0.000000000000000 iii
xi 2 = + 1.030200914835262 + 0.000000000000000
1 2
xi = + 1.030200914835262 + 0.000000000000000
0.852667185210998iiii
xi 32 = −
+ 0.937643005591872
1.030200914835262 + 0.000000000000000
2
xi = +
− 1.030200914835262
0.937643005591872 + 0.000000000000000
0.852667185210998 ii
xi33 =
xi − 0.937643005591872 + 0.852667185210998
3 2
xi =
= −
− 0.937643005591872
0.709960325540485
0.937643005591872 −+
+ 0.852667185210998
0.887984203422577
0.852667185210998 i ii
xi 34 = −0.937643005591872 −+ 0.852667185210998
xi
xi
3
4 =
4
= −

0.709960325540485
0.709960325540485
0.709960325540485 −

0.887984203422577
0.887984203422577
0.887984203422577 iii
i
xi5544 =
xi =− 0.709960325540485+
−0.846274902134810
0.709960325540485 −
−0.716025620017412
0.887984203422577iii ii
0.887984203422577
4
xi = 0.846274902134810
0.846274902134810 +
+ 0.716025620017412
0.716025620017412
xi 5 = 0.846274902134810 ++ 0.716025620017412 iii
5
xi
xi 56 == 0.741095894499941
0.846274902134810
0.846274902134810
0.741095894499941 +
+
+ 0.654794134744737
0.716025620017412
0.716025620017412
0.654794134744737
xi 6 = 0.741095894499941 + + 0.654794134744737
0.654794134744737iii
5 6
xi 6 = 0.741095894499941
xi66 =
xi 0.741095894499941 +
= 0.741095894499941 + 0.654794134744737
0.654794134744737i

Quando não temos certeza da existência de raízes Reais,


Quando
Quando não
não temos
temos certeza
certeza da
da existência
existência de
de raízes
raízes Reais,
Reais,
Quando
devemos
Quando não
não temos
sempre
temos certeza
adotar valores
certeza da
da existência
iniciais de
Complexos,
existência de raízes
que
raízes Reais,
podem
Reais,
devemos
Quando
devemos não Quando
sempre
temos
sempre não
adotar temos
valores
certeza
adotar valores certeza
dainiciais da
existência
iniciais existência
Complexos,
Complexos, de
que
de raízes
que raízes
Reais,Reais, devemos
podem
podem
devemos
convergir
devemos sempre
para
sempre
sempre adotar
raízes
adotar valores
Complexas
valores
adotar iniciais
iniciais
valores ou Complexos,
Reais,
Complexos,
iniciais conformeque
que podem
Complexos, que podem
o caso.
convergir para raízes
podem
convergir
devemos
convergir para
sempre
para raízes
adotar
raízes Complexas
valores
Complexas ou Reais,
iniciais
ou conforme
Complexos,
Reais, conformequeo caso.
podem
o caso.
convergir
Entretanto,para
um
Complexas
convergir para raízes
valor Complexas
inicial
ou Complexas
raízes Reais, real
conformeou
ou Reais,
jamais conforme
convergirá
o caso.
Reais, o
paracaso.
Entretanto,o um
conforme umvalor inicial real
Entretanto,
convergir
Entretanto, um
para
um valor
raízes
valor inicial
Complexas
inicial real
real jamais
ou convergirá
Reais,
jamais conformepara
convergirá o caso.
para um
caso.
um
jamais
Entretanto,
Complexo pelo
Entretanto, um
um convergirá
valor
método
valor para
inicial um
real
de Newton. Complexo
jamais pelo método
convergirá parade Newton.
um
Complexo
Entretanto,
Complexo pelo
pelo valor inicial
um método
método de
de
real
real jamais
Newton.
inicial
Newton. jamais convergirá
convergirá para
para um
um
Complexo
Complexo pelo
pelo método
método de
de Newton.
Newton.
Complexo pelo método de Newton.
Para melhorar a localização de raízes, vamos estudar a natureza das raízes de
equações polinomiais, se são Reais e/ou Complexas, usando algumas propriedades
específicas.

71
3.3.2 Natureza de raízes de equações polinomiais 71
71
71
71
71
Nesta seção, vamos apresentar algumas propriedades que qualificam as
raízes quanto à sua natureza, embora as cotas que apresentamos anteriormente
já permitam uma boa localização de raízes iniciais.

Propriedade 5: as raízes Complexas de equações polinomiais de coeficientes


Reais sempre ocorrem aos pares conjugados, isto é, se α = a + b * i for raiz,
α = a – b * i também será raiz.
raízes iniciais.
edade 5: as raízes Complexas de equações polinomiais
248
Propriedade 5: as raízes Complexas de equações polinomiais
ficientes Reais sempre ocorrem aos pares conjugados, CÁLCULO NUMÉRICO COMPUTACIONAL

se α = a + de coeficientes Reais sempre ocorrem aos pares conjugados,


b * i for raiz, α = a – b * i também será raiz.
isto é, se α = a + b * i for raiz, α
plo 3.18: determine as raízes de x 2 – b * i também será raiz.
x + 2de== xa0.
Exemplo 3.18: determine as –raízes
2
– x + 2 = 0.
ão: Exemplo 3.18: determine as raízes de x 2
– x + 2 = 0.
Solução:
Solução:
lução de equações de 2º grau, temos: 1± 1− 8 1 ± −7
= α =⇒α
2 12± 1 − 8 1 ± −7
Pela solução de equações de 2º grau, temos:
Pela solução de equações de 2o grau, temos:
= α =⇒α
2 2
α1 = 0.5 + 7 4 i e α 2 = 0.5 − 7 4 i
α1 = 0.5 + 7 4 i e α 2 =0.5 − 7 4 i
quência:
Consequência:
Consequência:
Pn (x) = 0 de coeficientes reais com grau ímpar possui ao
Toda Pn (x)(x)
Toda P
uma raiz Real. = 0=de coeficientes reais com grau ímpar possui ao menos uma
0 de coeficientes reais com grau ímpar possui ao
n
raiz Real.
menos uma raiz Real.
edade 6: em Pn (x) = 0, com an+1 ≠ 0, se n for par e a1 * an+1 < 0
Propriedade
Propriedade 6: em 6: em PPn(x) (x)
= 0,= com
tirão ao menos duas raízes Reais, uma positiva e outra 0, com a se n for par e a1 * a* an + 1 < 0 ⇒
an + 1 ≠ ≠0,0, se n for par e a
n n+1 1 n+1
existirão ao menos duas raízes Reais, uma positiva e outra negativa.
⇒ existirão ao menos duas raízes Reais, uma positiva e outra
va.
negativa.
Por exemplo, em 1x12 – 5x2 + 3x – 2 = 0, temos que a1 * an + 1 = (1) * (–2) < 0,
mplo, em 12
− 5 x + 3pelo
1x possui
logo
2
x − 2menos
= 0, temos que
uma 1 * an +1=
raizaReal positiva < 0, negativa.
(1) * (−e2)uma
Por exemplo, em 1x − 5 x + 3x − 2 =
ossui pelo menos uma raiz Real positiva e uma negativa.
12 2
0, temos que a1 * an +1= (1) * (−2) < 0,
logo possui pelo menos uma raiz Real positiva e uma negativa.
Propriedade
edade 7: em P (x) = 7:0, com a com an + 1 ≠ 0, se existir algum k = 2, 3, ..., n,
em Pn (x) = ≠0,0, se existirão algum
n n+1
queaa2 k2≤≤aak + *1 a7: em P
talPropriedade *a ⇒ existem raízes Complexas.
(x) = 0, com a ≠ 0, se existirão algum
... ,n, tal que k k -1 ⇒ existem raízes complexas.
k–1
k +1 n n+1

k ≤ akcondição
2
k = 2,3,
Essa...propriedade
,n, tal que éauma +1 * ak -1 ⇒ existem raízes complexas.
suficiente, mas não necessária, ou
seja, se não for satisfeita, nada poderemos afirmar sobre a existência de
raízes Complexas.

Propriedade 8: regra dos sinais de Descartes para polinômios com coefi-


cientes Reais.
Segundo essa regra, em polinômios com os termos colocados em
ordem crescente ou decrescente de grau, o número de zeros Reais positivos
é igual ao número de permutações de sinal dos coeficientes não nulos de
Pn(x) ou menor por uma diferença par. O número de zeros Reais negativos
do polinômio é igual ao número de permutações de sinais dos coeficientes
de Pn(–x) ou menor também por uma diferença par.
O número de zeros Reais negativos do polinômio é igual ao número
n
por uma diferença par.
de permutações de sinais dos coeficientes de Pn (–x) ou menor também
por uma diferença par.
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 249
Exemplo 3.19: determine o quadro de possibilidades das raízes
de x5 + x4 – x3 – x2 = 0.
Exemplo 3.19: determine o quadro de possibilidades das raízes
Exemplo 3.19: determine o quadro de possibilidades das raízes de
Solução:
de x +xx5 +–xx43––xx3 –2 =x20=. 0.
5 4
Podemos inicialmente fatorar os binômios com as duas raízes
Solução:
nulas, caso existam, ou aplicar diretamente a regra de Descartes,
Solução:
Podemos inicialmente fatorar os binômios com as duas raízes
Podemos inicialmente fatorar os binômios com as duas raízes nulas ou aplicar
considerando as raízes nulas no quadro de possibilidades.
nulas, caso existam, ou aplicar diretamente a regra de Descartes,
diretamente a regra de Descartes, considerando as raízes nulas no quadro
de possibilidades.
P5 ( x) = + x5 + x 4 − x3 − x 2 =( x − 0) 2 (+ x3 + x 2 − x1 − x 0 )
considerando as raízes nulas no quadro de possibilidades.
1
424
3 1
424
3
1 troca 1 troca
P5 ( x) =+ x +1
5
4 −3
x 24x −x =
4 3
( x − 0) (+ x +1
2
4 −3
x24x −x )
2 3 2 1 0

Então, ocorre “uma” mudança de sinal


1 troca 1 trocaentre o segundo e o
terceiro coeficientes. Portanto, P5 (x) possui apenas uma raiz Real
Então, Então,
ocorre “uma”
ocorre mudança
“uma” mudança de sinal entre
de sinal entre o segundo
o segundoe eo o terceiro
positiva. Para obter as possibilidades do número de raízes Reais
coeficientes. Portanto, P5(x)5 (x)
terceiro coeficientes. Portanto, P possui apenas umaPraiz
possui apenas uma raiz Real
negativas, geramos um polinômio auxiliar, *
=)Real
P5 (positiva. Para
− x), cujas
5 (x
obter as possibilidades *do número de raízes Reais negativas, geramos
positiva. Para obter as possibilidades do número de raízes Reais
raízes positivas de P ( x) , correspondem às raízes negativas do *
um polinômio auxiliar,5 P5*(x) = P5(–x), cujas raízes positivas de P5 (x)
negativas, geramos um polinômio auxiliar,
polinômio original P (x): P5* ( x=) P5 (− x), cujas
correspondem às raízes 5negativas do polinômio original P (x):
* 5
l raízes positivas de P5 ( x) , correspondem às raízes negativas do
polinômio original P (x):
P5* ( x) =P5 (− x)5=(− x)5 + (− x) 4 − (− x)3 − (− x) 2 =− 1 4 +3
x524 x4 +
14 −3
x324 x 2 =0
1 troca 1 troca

P5* (esse
x) =Ppolinômio
5 ( − x ) =( − x )auxiliar
5
+ (− x) 4 −P(−( x)3 −tem
*
5* (− x)“duas”
2
=−
14x524+permutações
3x4 +
14x324−3 x 2 =0de
esse polinômio auxiliar P5 (x) tem “duas” permutações 1 trocade sinal (até duas
sinal (até duas raízes positivas), logo o polinômio original P
1 troca
(x)
raízes positivas), logo o polinômio original P5(x) possui até5 duas raízes
possui até duas raízes negativas, mas se for menor, por uma
negativas, mas se tiver menos, será por uma diferença “par”, podendo não
diferença “par”, podemos não ter raízes negativas, conforme
ter raízes negativas, conforme a Tabela 3.14:
a Tabela 3.14: 73
Tabela 3.14 – Número de possibilidades de raízes Reais e Complexas
Tabela 3.14 – Possibilidades de raízes reais e complexas
Positivas Negativas Nulas Complexas (complemento para n)
Nº positivas Nº negativas Nº Nulas Nº Complexas (complemento para n )
1 1 2 2 2 2 0 0
1 1 0 0 2 2 2 2
Fonte: Elaboração própria
Fonte: Elaboração própria.

Para confirmar o resultado, observe a fatoração em binômios


Para confirmar o resultado, observe a fatoração em binômios deste polinômio
do Exemplo 3.19:
deste polinômio do Exemplo 3.19:

P5 ( x) =+ x5 + x 4 − x3 − x 2 =( x − (−1)) 2 ( x − (+1))( x − 0) 2 =0

Então, temos três raízes Reais distintas: –1 (aparece duas vezes,


multiplicidade M = 2), +1 (aparece uma vez) e uma nula (aparece
250 CÁLCULO NUMÉRICO COMPUTACIONAL

Então, temos três raízes Reais distintas: –1 (aparece duas vezes, multiplicidade
M = 2), +1 (aparece uma vez) e 0 (aparece duas vezes).

Sobre as propriedades que qualificam as raízes quanto à sua natureza,


observamos que:
a) podem ser incorporadas em um algoritmo de localização de raízes
para definir com mais precisão os valores iniciais das raízes de
Pn(x) = 0; e
b) sempre que não forem localizadas raízes Reais em número suficiente,
devemos usar valores iniciais Complexos, que são mais abrangen-
tes, pois podem convergir para raízes Reais ou Complexas.
Capítulo 3 – Solução de Equações não Lineares a uma Incógnita
Capítulo 3 – Solução de Equações não Lineares a uma Incógnita
A seguir, vamos apresentar formas eficientes de calcularCapítulo o valor3 – numérico de uma
Solução de Equações não Lineares a uma Incógnita
função polinomial e de sua(s) derivada(s), para depois aplicar o
Capítulo método
3 – Solução de
de Newton.
Equações
Capítulo 3 – Solução de Equações não Lineares a uma Incógnita não Lineares a uma Incógnita

.3 Cálculo
3.3 Cálculo Eficiente
Eficiente de
de Valores
Valores das
das Funções
Funções Polinomiais
Polinomiais ee suas
suas Derivadas
Derivadas
3.3.3
3.3 Cálculo Eficiente Cálculo
de Valores eficiente
das Funções de valores
Polinomiais e suasdas funções
Derivadas
de Valores
3.3.3 das
Cálculo FunçõesdePolinomiais
Eficiente Valores daseFunções
suas Derivadas
Polinomiais e suas Derivadas
Para polinomiais e suas derivadas
Para obter obter valores valores numéricos numéricos de de P (x) e
Pnn (x) e de
de suas suas derivadas,
derivadas,
Para obter valores numéricos
mos mostrar qual é a forma mais eficiente de representar P de P (x) e de suas derivadas, (x).
ores numéricos de
Paravalores P
obter n
(x)
mos mostrar qual é a forma mais eficiente de representar P
Para obter e de
numéricos
valores suas
numéricos derivadas,
n
de Pn (x) de Pe n(x) de esuas de suas n (x).
derivadas,
derivadas, vamos
mos mostrar qual é a forma mais eficiente de representar P
é a forma mais eficiente de representar P (x).representar
n (x).
Se expressarmos
mostrar qual é P
a (x)
forma
vamos mostrar qual é a forma mais eficiente de representar P
Se expressarmos Pnn (x) na forma padrão, considerando na maisforma eficiente padrão, de considerando P (x). n que
(x).
n que
n
n
mos Se (x)
P
potências expressarmos
na forma
inteiras Se de
expressarmos Px
padrão, (x) na
n são considerando
P forma
calculadas
(x) na formapadrão,
por que
padrão, considerando
produtos
considerando e não que
por
que as potências
potências
n
inteiras de x
Se expressarmos Pnsão (x) na calculadas
n forma padrão, por produtos considerando e não por
que
tenciações,
s potências
de x são inteiras
calculadas
inteiras de x de
são x
por são
calculadas calculadas
produtos por e não
produtos por produtos
por
e não por e não
i +1potenciações,
xxii ++11 == e não ipor reaprovei-
as potências reaproveitando
tenciações, reaproveitando
inteiras de x são produtos
produtos
calculadas efetuados,
efetuados,
por produtos {{
, ,
xx ** xxii por
tenciações,
oveitando tando reaproveitando
produtos produtos
emos que: reaproveitando produtos { efetuados,
efetuados, produtos
x i +1
= efetuados,
x * x i
, teremos
, x =
que:
1 x
{ * x
multiplicação ,
potenciações,
remos que: efetuados, xi +1 =11 multiplicação {x * xi ,
remos que:
1 multiplicação multiplicação
eremos que: n −1
1 multiplicação
P ( x ) = a x n
+
( x)= anax11 x+n a+n +a122 ⇒
Pnn.... n a x + .... + a
x + .... + ann x + ann++11 ⇒
n −1 x + a
+ a2 x n −1 + ⇒
Pn ( x+
n
)= a1 x +n a2 x n −n1−+ 1 .... + an x + an +1 ⇒ n−2 n −1
((nxx()*)=x=x)=*aaxna++1 x...
Pan P ++ a+
+naa**2xxx*++x a*a+nx−....
1 ** x
− ++**aaxxn x++ +...a+xn +aa1 21⇒
*+
− * x * x n − 2 + a1 * x * x n −1
+
1 + an * x + P
n 2 n
a x *x... * x * x a * x * x
Pnn ( x)= ann ++11 + ann * x + ann −−11 * x * x + ... + a22 * x * x n − 2+ a11 * x * x nn−−11
n − 1 2 1 n − 2
Pn ( x)= ann +1 + an adições * x + an −e 1 * x *n x + ... + aadições 2 *x*x e + a1 * x * x
Logo, P
Logo, Pnn(x
) necessitará de (x = =u)u) necessitará de
necessitará de nn
adições
adições
e
e
Logo, Pn (x = u) − 1 multiplicações
2n necessitará de 22nn −−11 multiplicações
adições e
multiplicações
Logo, P
Logo,n P (xn (x
== u)u) necessitará de2n − 1 multiplicações
necessitará de
2n − 1 multiplicações
nte, expressando P (x) na forma linear de Horner,
Alternativamente, expressando P (x) na forma linear de Horner,
Alternativamente, expressando Pnn (x) na forma linear de Horner,
n

mos: Alternativamente, expressando P


Alternativamente, expressandonP(x)(x) na forma linear de Horner,
na forma linear de Horner, temos:
mos: Alternativamente, expressando Pnn(x) na forma linear de Horner,
mos:
(emos:
( a1 * x + a=2 ) * x + a3 ) * x + ... + an ) * x + an +1
PP
= n ((x ) ... ((
...((((aa11 ** xx ++ aa22 )) ** xx ++ aa33 )) ** xx ++... ))
++ aan ** xx ++ aan +1
=P=n x)
nP (
( x()x) ......
n
((
((a(1a* x* x++a2a) *) x* x++aa3 ) )* *xx++...
1 n 2 adições3 e n
))
......++aann * *xx++aann ++11
n +1
u) necessitará apenas de  n adições
Então, P multiplicações n adições ee
Então, Pnn(x
(x = u) necessitará apenas de
= u)
n
necessitará apenas de nnn adições ções
multiplica e
Então, P
Então, P (x = u) necessitará apenas de n
n (x = u) necessitará apenas de 
adições ções
multiplica e
n n multiplica ções
n multiplicações
Alternativamente, expressando P
Alternativamente, expressando P na forma linear de Horner,
(x)(x)
n n
na forma linear de Horner,
mos:
temos:
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 251
=
Pn=
P ((
( xn () x) ... (...( a(1( a* 1x*+x a+2 a) 2* )x*+x a+3 a) 3* )x*+x...
++ ))
...a+n an* x*+x a+n +a1n +1

nn adições
adições e e
Então, P
Então, P(x (x
Então,
n n
=P=
u)
n
necessitará apenas de
=necessitará apenas de
(xu) u) necessitará apenas de
 
nn multiplica
multiplica
ções
ções

No Caderno de Algoritmos, apresentamos um algoritmo para calcular o valor


Caderno
NoNo Caderno
dede
Algoritmos,
Algoritmos,
numérico apresentamos
apresentamos
de um polinômio P (x), emum
xum
=algoritmo
ualgoritmo para
para
, por Horner, nocalcular
calcular
arquivo fPnH1.m.
n
o ovalor
valornumérico polinômioPn(x),
numéricodedeumumpolinômio Pn(x),ememx =
x=u, u,porporHorner,
Horner,nono
arquivo
arquivo Neste livro, vamos calcular Pn (x) por meio de uma forma equivalente à
fPnH1.m.
fPnH1.m.
de Horner, que é a divisão sintética de polinômios, ou regra de Briot-Ruffini,
de acordo com a Propriedade 9 a seguir.
Neste
Neste
livro,
livro,
vamos
vamos calcular
calcular
Pn P(x)
n
(x)por
por meio
meio
de de
uma
uma forma
forma
Propriedade 9: o valor numérico de P (x) em x =
quivalente à de Horner, que é a divisão sintética de polinômios, u
equivalente à de Horner, que é a divisão sintética de polinômios,
n
é o resto R1 da primeira
divisão de Pn(x) por (x – u).
u regra de Briot-Ruffini, de acordo com a Propriedade
ou regra de Briot-Ruffini, de acordo com a Propriedade 9 a seguir.
9 a seguir.
Pelo algoritmo da divisão de polinômios, temos que
Pelo algoritmo da divisão de polinômios, temos que
Pelo algoritmo da divisão de polinômios, temos que
Pelo algoritmo da divisão de polinômios, temos que
Propriedade
Propriedade 9: o valor numérico de P
9: o valor numérico de P em x
(x)(x)
n n
em x
== u é o resto R
u é o resto R
1 1
da primeira divisão de P
da primeira divisão de P
PPn ((xx) )==( x( x−−u )uP)nP (x) (x)por (x
n−1 (nx()x+
por (x
)R+1R – u).
– u).
(24) (24)
Pnn( x) = ( x − u ) Pnn−1−1( x) + R11
(24)
(24)
Então, fazendo x
Então, fazendo x ==u,u, x = u,
Então, fazendo
Então, fazendo x = u,
PPn ((xx==uu) )==(u(u− −u )uP)nP
−1 (u()u+) R
+1 R=1 R=1 R→ =
Pn (P
x (= u=
) u=)R1 R1
1 → n x
Pn ( x = u ) = (u − u ) Pn −1 (u ) + R1 = R1 → n
n n −1
P (=x u=) R1 7575
Considerando o polinômio quociente dessa primeira divisão
Considerando o polinômio quociente dessa primeira divisão
como Considerando o polinômio quociente dessa primeira divisão
Pn −1 ( x)= b1 Considerando o polinômio
x n −1−1+ b2 x n −n2−+2 ... quociente dessa primeira
+ bn , em que os coeficientes b podem divisão como
como Pn −1 (Px)= (x) −1 b+xbn2–xn1− 2+ b
b1 xnn= + x...
n – 2+ bn , em que os coeficientes b podem
+ ... + b , em que os
i
coeficientes bi podem ser
como Pn −1 ( x)=n – 1b1 x +1b2 x + 2... + bn , em que os coeficientes b
ser obtidos da eq. (24), pela igualdade termo a termo, temos: n podem
i
ser obtidos da eq. (24), pela igualdade termo a termo, temos:
obtidos da eq. (24), pela igualdade termo a termo, temos:
i
ser obtidos da eq. (24), pela igualdade termo a termo, temos:
b =a 1 1
b1 = a1
bb1= a
1i = a1i + u * bi −1 ∀ i = 2 até n + 1
b= ai + u * bi −1 ∀ i = 2 até n + 1
b= i
ai + u * bi −1 ∀ i = até n ++11
2 até n
em que resto R
i
1
= b n+1
.
em que resto R
em que resto 1R== =bbn .+.1.
em que resto R 1 b n+1
Então, se usarmos n+1 1 a divisão sintética de polinômios, o
Então,
cálculo de P (x se u)usarmos a divisão sintética de polinômios,
polinômios,
= Rse1 também necessitará apenas de n adições e
=Então, usarmos a divisão sintética de
de o
o cálculo
Então, n se usarmos a divisão sintética polinômios, o de
cálculo de P
Pn(x
n multiplicações. (x= =
u)u)= R=1 R também necessitará apenas de n adições e
também necessitará apenas de n adições e n multiplicações.
cálculo de Pn (x = u) = R1 também necessitará apenas de n adições e
n 1
n multiplicações.
n multiplicações.
Propriedade 10: se α é um zero de P
Propriedade (x), então P
10: se α é um zero
n
de Pn(x),n (x) será divisível
então Pn(x) será divisível por
por (x α) –e por consequência R
– (x
Propriedade α)10: se α é um zero de P
e por consequência R=1 0.
= (x), então P
0. (x) será divisível
Propriedade 10: se α é um zero de Pn (x), então Pn (x) será divisível
1 n n
por (x – α) e por consequência R1 = 0.
por (x – α) e por consequência R
Propriedade = 0.P ′ ( x) em x = u é o resto
11: o valor numérico de
1 n

R da segunda divisão sucessiva de P


Propriedade
2 11: o valor numérico den
(x) Ppor (x – u). = u é o resto
′ ( x) em x
e 10: se α é um zero de P
de 10: se α é um zero de Pn (x), então P
iedade (x), então P (x)será divisível
(x) será divisível
iedade 10: se α é um zero de P
10: se α é um zero de P
− q −−qqn 3
p p p
q3 3(x), então P
n (x), então P
2
qq2 2n n
− q −− p3 será divisível
qqnn (x)
(x) será divisível
ppq3 32 qq2 2
por consequência R
252⇒ α⇒
e por consequência R
3⇒=ααTabela
3
3== 1
3 3−==3.14
0.
−0.
− +–= n
+++ ++ − −− de
3 3 3 + raízes
++ reais
α) e por consequência R
–– α) 0.
3Tabela CÁLCULO NUMÉRICO COMPUTACIONAL
2 1223.14
e por consequência R –4
=27
27 1127 Possibilidades
Possibilidades
0. 44 2 22 27de 2727raízes
4 44 reais eecomplexas
complexas

e 11:
de 11:o valor numérico de
o valor numérico de PP ′ ′ xx)) em x
n n( ( em x ==uué o resto
′′ ( x) em x é o resto
iedade 11:Nºo valor numérico de
Propriedade
NºPositivas11:
iedade 11: o valor numérico de
Positivas o

Nºvalor
Negativas
Negativasnumérico P
P Nº
nNº ( x de
)
NulasP'
em x
Nulas (x)
NºNº=
=emu xé o resto
ude =raízes
Complexasureais
é o resto
Complexas é oreais
resto para nn))
R2complexas
da segunda
(complemento
(complemento para
Tabela
da divisão sucessiva de P
nda divisão sucessiva de PTabela
Tabela
3.14 (x) 3.14
3.14
(x)– Possibilidades

por (x–Possibilidades
por (xn Possibilidades
– – u).
u).n de raízes
de raízes reais
e complexas
eecomplexas
segunda divisão sucessiva de P
divisão 1sucessiva de Pn2nn2(x) por
segunda divisão sucessiva de P
1 (x –por (x
(x)
n (x) por (x2u).
2

– u).
u). 00
n r d ⋮ b  1 1 1
 0 NºrComplexas
NºdComplexas

Nº1Positivas
1Nº
do a primeira divisão, temos:
do a primeira divisão, temos:
Tomando
NºPositivas
Positivas 0Nº
0NºNegativas
a primeira
Nº Negativas
omando a primeira divisão, temos: Nº22
divisão,
Negativas temos:
Nulas
Nº Nulas2 Nº
NºNulas 22(complemento
2Complexas
(complemento
(complemento nb)2 nn) )
para⋮para
para
 
omando a primeira divisão, temos:
1 11 2 22 2 22  t 3 r 3 d 3 0 00 ⋮ ⋮ 
PP ( x
( x) )= = ( (x x − − u u ) P
) P ( (x )
x )+ + R R  
Pnn ((1xx)) =
P ( xn −n−1−1u ) P (1xx1 )) + R ⋱ ⋱ ⋱2 22 ⋮
nn
=11( x − u ) P0nn −−11 ( 0 0 + R11 2 22 
 ⋱ ⋱ ⋱ ⋮ 
do uma segunda divisão sintética, via divisão de P
ndo uma segunda divisão sintética, via divisão de P
Propriedade
PropriedadeEfetuando 11:11: oo valor
etuando uma segunda divisão sintética, via divisão de P valor
uma numérico
numérico
segunda de
divisão de PPnsintética, ′n′((xx)) em emn–1 via x(x)
x(x) =uu é(x)
=divisão é ooderesto resto
P (x) RR por da
da segunda
segund
etuando uma segunda divisão sintética, via divisão de P n–1
t
n–1 (x) r n–1
d
22
⋮ b
mos:
mos:
divisão(x
divisão
u), temos: – u), temos:
sucessiva
sucessiva de
de PPnn((xx)) por por ((xx−−uu))..  n–1 n −1 n −1 n −1 n −1 
u), temos:  t r ⋮ b 
 ′ ′′ n n n 
Propriedade
Propriedade
PPropriedade )==
(aa(xxprimeira
)primeira (((x11:
x−)−u= 11:)11:
uodivisão,
valor
)PxP oo(valor
x)valor
x)P)numérico
+temos:
+temos:
RR numérico
numérico de de Pde n (x P)P
n n( (
em
xx) ) em em
x = uxx=é =uuoééresto oo resto
restoR2 da RR2 2 da
segunda
da segun
segu
Tomando
Tomando P
n−n1−1 P x ( n− n−
divisão, − 2u( (2x2) + R
)x+−(Ru(x2x)−.−uu)). r.1 d1 ⋮ b1 
2
divisãodivisão
divisão sucessiva −1 ( x ) =
Psucessiva
nsucessiva de ( x de P−de u ))P
n ( xP P n(porx2x)()por
−( x(por
n − 1 n − 2 2
nn
PPnn((xx))==((xx−−uu0))PPnn−r−11((xx))d++RR11 ⋮ b2 
uindo P
uindo P
bstituindo P (x)em P
(x) em P
(x)
Substituindo (x), temos:
(x), temos:
n nem P (x), temos: P (x) em P (x), temos:  2 2
bstituindo P
Efetuando
Efetuando
Tomando
n–1
n–1
Tomando
Tomando uma
uma
a (x)
n–1
n–1 primeira aem P
segunda
asegunda
primeira
primeira divisão
ndivisão,
n
divisão
(x), temos:
n
divisão,

divisão,
1
temos:sintética,
sintética,
temos: via
temos:
n viadivisãodivisãode
⋱ ⋱ ⋱ PPnn−−11((xx))
de por
por ((xx−−uu)),,temos:
⋮ ⋮ 
temos:
xx))=
n n( (
PP = ((xxx−)−u= u)((
(()((xxx− x−u−u)(( u))PxP n −n−2− 2(u(x)x)P)++P RPR2n−xP))n)+(x(+
121(
+xx)RP P
n1=
))R
R
= n(
1( x(x)+x)−=−=u(u(x))xP
−P−nu−u1)(P
)(xP
nx)
−n0)1−+(1+(xRx)R12)r+2+RR1 1d 
P
P n(( x ) = − u )(( x − u ) P n − 2 n( ( x−
) + R 2) ) + R
R 1 nn−−22 i −1 i −1 ⋮ bi −1 
Efetuando
Efetuando
Substituindo
SubstituindoEfetuando uma(uma (xuma
segunda
x)) em segunda
em segundaPP(divisão
(xx)),,)divisãodivisão
temos: sintética, sintética,
sintética, via via divisão
via divisão
divisão3 –de de
de por )porpor ,−utemos:
x −(u(xa)x−
(Lineares ) ), ,temos:
temos
uIncógnita
)Rtemos: ti Pn −1ri(PxP xx)não

=(((xxx−)−u=PuP)nn(−)2−1x2P n)
−n1−(
1d(
n n 2 2 1 Capítulo Solução de Equações uma
))=P
n n( (xx
PP 1P 2) )++(n(xnx−−uu
n−−n 2−u2()(x2x P ( x ) + ( R2 2−++uR)R1R1 + R
x i ⋮ bi  Li ← Li −
Pnn(((xxx)))===((x(xx−−−uuu)((
PP )(() xxP−nn−−−u22u)()PxP) +(((xxxP ))n+−−+1R n) (122+(x(+
)−n)R1)−=+
u(PRxP −=11(u(x)x−P−nu−u2)(P
x)xR)=R
R ) xP
n −n)2−+ ( (xRx)2)++RR2 2 
nn nn−−22 22 11 ⋱ 2 ⋱ ⋱ ⋮ ⋮ 
Substituindo
Substituindo
Substituindo Pn −1 (Px2P n2)
em
−n1−(
1(xx) )emPem
n ( xP )P , temos:
xx) ), ,temos:
n n( (
temos:
PPnn((xx))==((xx−−uu)) PPnn−−22((xx))++((xx−−uu))RR22++RR11  tn rn ⋮ bn 
Derivando P (x), reescrito na forma anterior, temos:
Derivando x−P−uxnu(x), )xreescrito na)2)+)+forma
+RR2R)21)++Ranterior, temos:
DerivandoPnP(nPx(P)(P
Derivando xnx=n())(x,(x,)xreescrito
=−=(u(x)((
)reescrito una
xna
−)((
)(( −P−nuforma
u2)(P
) xP
−forma (2 (xanterior,
n2−+
n −) Rxanterior, R1temos:
temos:
1
nn
2 22 Pg. 191
Pn′ (PP x′)′(P=(xnx)(2( )
xP)xP
= =
n=
2(
n(−(
2(
x(xu)x))=−2=(P
x x − − u
u(x)x2−2−P(unxu)−)2) (P
u n)− 2P
) P ( +(xxP
x
−)
n(
) )
−+
n2x
+
2( (x(x)xu)+)−
f+−(((α x x )−+−2(u( x)x−R−2u′ u(+)xR
=uPu)0n)−222P P
)R ++RR1 1+ 0
′n−′−2)22(1(+2xx)R)+2+R R22++ 00
Derivando
Derivando
Derivando
nn Pn ( xP)P , reescrito
xx) )
n n( (
, ,reescrito
nreescrito
n− −
2 2 na
Pg. 216 forma
na na forma
forma anterior,
n anterior,
anterior, temos:temos:
temos:
Então,
Então,fazendo fazendo xx==uu,,
Então, fazendo x P ′ ( x
P P
) ′=(′ (x=2( u,2(2(
x) )=x2=− ux)x− 2
−Puu)x22)2(P xP()u,g2−+(2((x(xx)x)2)2+−=+(ux(x)x−−2 f′ (2x
Puu) )2(P)xP′)′f+(2′x((Rxx)2))++
− ) R0R2 2+→
+00 ′′
PPn′n′((xx==uu))==n2( 2( Então,
uun−n−uu))2fazendo PPnn−−22((uu))n+−+ ((=
unu−n− −uu)) PPn′n−′−22((uun))−+2+RnR−n222−+ +00==RR →PPnn((xx==uu))==RR22
Então, Então,
Então, fazendo fazendo
fazendo x = uxPg. ,
x==u220 u , , 22
x = u ) = 2(u − u ) Pn − 2 (u ) + (2u − u2)2 Pn − 2′ (fu′() x+ R ′
) )+−+(u0u())u− 22= ln(
2 2
+ 0 = x R)2+→1 Pn (= x u= ) R2
Pn′ ( xPP ′n(′u(xx)==u2(
n= u) )= u=− 2(2( uu)u−−Punu)−)2 (PuP n −)n2−+(2u((uu −Punu′)−2)2 2(PuP0′ ′ +
n −)
n2−( 2u(Ru)2)++R0R2 2=++R 002=→ →
=RR2P ′ PP

2n ( x
′n(′u(xx)==uR
n= u) 2)==RR2 2
Exemplo
Exemplo3.23 3.23 232
A Propriedade 11 pode ser generalizada para o cálculo dos f ′( x) = e x − 1
PP ( (xx) ) =
Exemplo = x
Exemplox44
Exemplo − − 5 5 A
xx 33
3.23 Propriedade
+ + 6
3.23 6
3.23
s de todas as n derivadas de ordem superior de uma função x x 22
+ + 4 4x x − − 8 811 pode⇒ ⇒ ser P P44(2) (2)==00 para o cálculo dos valores
generalizada
( x) = e xsuperior de uma função P (x), conforme
44
de todas as n derivadas de f ′′ordem
PP4′4′((P
xx4)()=x=
conforme a Propriedade 44x(xx3x)34− )=−−=1515 22 3 3 2
x5x4x4x−3−5++5 +x612 x+x+x6++6+
x12 4
12. 4 +484x236 x−−88 ⇒ ⇒ ⇒P P4P ′4′(2) PP == 000 ==00
4 (2) 4= 4(2)
(2)
22 n
P)P
a4=4(Propriedade 12.x4xx+− ⇒ ⇒

4xx++4f 4( x ) ⇒ 2x ⇒
′ =⇒
PP4′′′′P4x′)()=
4 ((x
xP=)P ′412
412=(′ (xx4x)x2x)=23
−=−4 4x30
−30 x3 x3−x−
15 +215 +12
+15
12 x12x2 2+x+12 +12 ⇒ PP4′′ P′′4(2)
4 (2)
⇒ ′ (2) P= P
4=
′4=(2)
′00 0 ==00
(2)
priedadePropriedade 12: o valor da derivada k-ésima de P 244 (x)deem xPn(x)=em u x = u é dado por
′′ ′′ ′′ 2 2 12: o valor da derivada k-ésima
′′ ′′ ′′ n
PP4′′′
′′′P
( (x x)()Px
= P=) 24=
k(
24 x
( 12x) x)=
−x=

2
12
3012
30 − x 30x −x − +
30 30 x
12 x + + 12 12 Pn ( x ) = x 44P4n (1 4x4)
** ⇒ ⇒ ⇒ P nP
P ⇒′′′′′′
⇒ (2)(2)
(2)P P == (2)
= (2)
0
1818 ==0 0
4 4 d Pn
44
ado por = ( u ) P = (k )
( u ) k ! R 249 +1,, em que R
em ⇒ que⇒ R′′′k +k1+′′′é′′′ é o resto da
o resto da (k + 1)-ésima divisão
P4′′′ P (P x4′′′
dx ′′′(k(x24
4) = x) )=x=24 −24 30 xx−−30
n 30 k P4⇒ P P
(2)44 =
1(2) 18==18
(2) 18
Exemplo
Exemplo sucessiva 3.31: de Pn(x) por (x – u).
3.31: x 5
+ x 4
− x 3
− x 2
= 0
1)-ésima divisão sucessiva de P 252n
(x) por (x – u).
Exemplo
Exemplo
Exemplo
3.31:
Exemplo 3.31:xobtenha
3.31:
3.20: x==1.00000266769999
P4 (2) , P4′(2) , +P
1.00000266769999 +(5.0057518865228
′′(5.0057518865228
4 (2) , P4 (2) e Pn
′′′ ( 4 )ee−
emii P4(x) =
(2)−06)
06)
mplo 3.20: obtenha P x =P1.00000266769999
(2),
2x4 + 3x – 2 aplicando x′x=
a=254
1.00000266769999
1.00000266769999
, P4′′ (2) , P4′′′12.
Propriedade e ′′′′ em e − 06)
+ (5.0057518865228
++(5.0057518865228
P(5.0057518865228 ee−−i06)
06)i i
4 4 (2) (2) 4 (2)

x) = 2 x 4 + 3 x − 2 aplicando a Propriedade 12.


ução: P4′( x) = 8x3 + 3 , P4′′( x) = 24 x2 , P4′′′ ( x) = 48 x
(k + 1)-ésima divisão sucessiva de Pn (x) por (x – u).

ExemploCAPÍTULO
3.20: obtenha P (2),
3 – SOLUÇÃO4 DE P4′ (2) , NÃO
EQUAÇÕES P4′′ (2) , P4′′′ (2)
LINEARES P4′′′′ (2) em
e INCÓGNITA
A UMA 253
P4 ( x) = 2 x + 3 x − 2 aplicando a Propriedade 12.
4

Solução:
Solução:
Primeira divisão: de P4 ( x) = 2 x 4 + 3 x − 2 por (x – 2)
a1 = 2, a2Primeira
= 0, a3 =divisão: 3, aP54(x)
0, a4 = de = 2x + 3x – 2 por (x – 2)
4
= –2 (coeficientes do polinômio
a
original):1 = 2, a2
= 0, a3
= 0, a 4
= 3, a5
= –2 (coeficientes do polinômio original):

bb11 ==22
bb22 ==00++22* *22==4 4
bb33 ==00++44* *22==8 8
bb44 ==33++88* *22==1919
–2++1919* 2* 2= =3636⇒⇒
bb55 ==–2 R1 R=1 36
= 36
P4 (=
x 2)= P4(0) (=
x 2)= 0!* R0+=
1 1 * R=
1 = 36
1 * 36
(também podemos obter o valor do polinômio pela Propriedade 9)
(também podemos obter o valor do polinômio pela Propriedade 9)

SegundaSegunda divisão: ) = P23(x)


P3 ( xde x3 +=42x
x 2 ++84x + 8x 2) (x – 2)
+ 19 –por
3 2
divisão: de x + 19 por (x
a = 2, a2 = 4, a3 = 8, a4 = 19 (esses coeficientes αi foram atualizados pelos
a1 = 2, a2 =14, a3 = 8, a = 19 (esses coeficientes α foram atualizados
coeficientes4bi do quociente anterior): i
b = 2
pelos coeficientes b
1 do quociente anterior):
i
b1 = 2
bb2 ==42+ 2 * 2 = 8
b 1= 4 + 2 * 2 = 8
bb232 ==84++22**82==24 8 77
bb3 ==88++22**88==24 24
b43 = 19 + 24 * 2 = 67 ⇒ R2 = 67
bb44 ==1919++24
24*(1)*22==6767⇒ ⇒RR2 2==6767
P4′(=
x 2)= P4(1) (=
x 2)= 1!* R1+=
1 1!* R=
2 1 * 67= 67
P4′(=
x 2)= P4 (= x 2)= 1!* R1+=
1 1!* R=
2 1 * 67= 67

TerceiraTerceira
divisão: de P (x) = 2x2 + 8x + 24 por (x – 2)
divisão:
2 de P (x)2 = 2x2 + 8x + 24 por (x – 2)
Terceira divisão: de P2 (x) = 22x + 8x + 24 por (x – 2)
a1 = 2, a2a=1 =8, a
2, 3a==24:
8, a = 24:
a1 = 2, a2 = 8, a3 2= 24: 3
bb1 ==22
b11 = 2
bb2 ==88++22**22==12
12
b22 = 8 + 2 * 2 = 12
bb33 ==24
24++12
12* 22==48
* ⇒RR3 3==4848
48⇒
b3 = 24 + 12 *(2)2 = 48 ⇒ R3 = 48
P4′′(=
x 2)= P4(2) (=x 2)= 2!* R2+=1 2!* R=
3 = 96
2 * 48
P4′′(=
x 2)= P4 (= x 2)= 2!* R2+=1 2!* R=
3 = 96
2 * 48
Quarta divisão: de P1 (x) = 2x + 12 por (x – 2)
Quarta divisão: de P
Quarta divisão: (x)
de=P12x 2xpor (x
(x)+=12 + 12 por– 2)
(x – 2)
a1 = 2, a2 = 12: 1

a1 = 2, a2a=1 =12:
2, a2 = 12:
b1 = 2
b1 = 2
b2 = 12 + 2 * 2 = 16 ⇒ R4 = 16
b2 = 12 + 2 * 2 =(3)16 ⇒ R4 = 16
P4′′′(=
x 2)= P4(3) (=
x 2)= 3!* R3+=
1 3!* R=
4 = 96
3 * 2 * 1 * 16
P4′′′(=
x 2)= P4 (= x 2)= 3!* R3+=
1 3!* R=
4 3 * 2 * 1 * = 96
16
d  * R= ⋱ ⋱ ⋱ ⋮ ⋮ 
P′′(=
x 2)= P4(2) (=x 2)=t3 2!*r3R2+=
1 3 2! = 96⋮ ⋮ 
2 * 48
Quarta 4divisão: de P 1 (x) = 2x + 12 por (x
 3
– 2)  tn rn ⋮ bn 
 ⋱ ⋱ ⋱ ⋮ 
a1 = 2, a
Quarta 254
= 12:
divisão: de P (x) = 2x + 12 por (x
⋱ ⋱– 2)⋱
CÁLCULO NUMÉRICO COMPUTACIONAL
2 1  Pg. 191 ⋮ 
= 2, a2 =b112:  f (α ) = 0 
1 =2  t r d ⋮ b n −1 n −1 n −1 n −1 
Pg. 216
b1 b= 2= 2 
12 + 2 * 2 = 16 ⇒ R4 = 16 t rn ⋮ bn 
12 ( g( x) = x − f ( x) f ′( x)n)
b2 bP
=2 ′′′ =x12
12
4 (=
+ 2+2)
*22*=2 16
= P=4(3) ⇒
16(=xd⇒
R4 = R=
2202)
= 16
416 3!* R = 3!* R= 3 * 2 * 1 * 16 = 96
(3) r1
Pg. 3+1 4 ⋮ b 
1 1
P4P′′′(4= =2) P4 (=
'x''(x =2) x f ′(2)= * Rx3+=
x0 ) =3!ln( 0 )1 + 1
3!* R= 3 * 2 * 1 * 16= 96
 0 r2 d 2 ⋮ b=2 2
4
Quinta divisão: do polinômio de grau n = 0, P (x)  por (x – 2)
 232
0
Quinta divisão: do polinômio de grau n ⋱ ⋱x ⋱ = 0, P0 (x) = 2 ⋮  – 2)
⋮ por (x
a1 = 2. Quinta divisão: do f ′(polinômio
x) = e − 1 de grau n = 0, P0(x) = 2 por (x – 2)
= 2.  0 ri −1 di −1 ⋮ bi −1 
a1 = 2. f ′′( x) = e x
Como não temos como fazer a divisão de um polinômio de grau
1 t
 ti
omo não temos como fazer a divisão de um polinômio de grau ri di ⋮ bi  Li ← Li − i Li −1
n = 0 por um binômio (x  236 – 2) de grau n =⋱um 
1, podemos tomar o ri −1
Como não temos
= 0 por um binômio (x  como =fazer
2 x a divisão
–f ′(2)x )de grau n ⋱ de ⋱ ⋮ ⋮  de grau n = 0 por um
polinômio
= 1, podemos tomar o
quociente dessa quinta divisão como 0 (zero), e o resto como
binômio (x – 2)de244 grau n = 1, podemos tomar ⋮ bn  dessa quinta divisão
tn ron quociente
uociente dessa quinta divisão como 0 (zero), e o resto como
o próprio P
como 0 (zero),
(x) e o resto
= 2, pois P (0x=)como
** (x)
=(x=n (xo –2)
Pn (1*próprio * 0 +P 2:
(x) = 2, pois P0(x) = (x – 2) * 0 + 2:
próprio P (x) Pg. 0 = 2, pois PPn(x)
0 191 0
x–2) 0x )+ 2: 0
f ( α ) = 0 249
bb=11 2= 22 ⇒
=216 ⇒ R5 == 22 x5 + x4 − x3 − x2 = 0 Pg. 45
b1Pg. ⇒ R5 R
=52
252
(Pg4((4)(=xx()=x=2)=x2)=−P4f(4)(P(x4=(4)x) (Pf=x2)′=(2)
( x)2)=
) * R′4! * R4 += 4!* R4= 4 * 13**(2) (2) = s48
2 * 1 * 48 d1 d2 d3 d4 d
P4(4) 4 +=
(2) R=
P1 ′′*(2) P ( 4 )=(2)
,4!P 1 , 4!
5 (2)
5 , P*′′′3 * 2 *e
4 4 4 4 n
Pg. 220 
254
Podemos,
odemos, Podemos, ′( xainda,
f ainda, 0 ) = ln( 0 ) +1
xvalidar
validar
ainda, a aPropriedade
a Propriedade
validar Propriedade12 12 comparando
12comparando
comparando osos os com ast dígitos signif
resultados
xP,)4′P(4=
P4′( x) = 8x3P4+′ (3= 3x, xP+24,′′3(P ′′′) =′′ (24 =, 24
3 2 (4)
232
resultados com as derivadas analíticas ′′x(8)xx) =+824
3
, xP x)x48
2
x eexP4, (x) = 48..
4 4( x ) = Pg.
esultados com as derivadas analíticas
derivadas analíticas 46
x′( x e
′′′4(′′′x()x=) =48f48 x) e 1 x)48= .48 .
=Pe(4)P(−(4)
x
P4P 4 4 x )(= P′( x )
n 0 0 1 1 0 1
f ′′( x) Observamos
= ex que, dispondo das formas específicas de Pn′( x0 )
determinação
236
de valores iniciais, Pn (do
′ x0 )valor
= R2 numérico do polinômio e de ssuas
derivadas,
f ′( x ) = 2 xaplicar métodos de refinamento para as raízes de PnP
259 10 dígitos signific
= 0.t =Aqui
n ( x0 ) = R1
podemos (x)
244
vamos aplicar o método x − 5 x de
4 3
+ 6Newton,
x + 4 x − como
2
8 = 0 mostraremos a seguir.
318 Pg. 71
Pn ( x ) = x Pn (1 x )
** n
Pn′( x0 ) = R2
249 f ′( x0 = 0) = e0 = 1
x5 + x43.3.4
− x3 − x2Método
=0 de Newton para Pn(x) = 0 260
252P4
e
(4)
(x) = 48 . 254
P4 (2) ,APpartir de′′um valor′′′ inicial x( 4,)localizado previamente como
4 (2) , P4 (2) , P4 (2) e Pn0  (2)
′ apresentado
+1.36284988456718 − 1.5
nas seções 3.3.1 e 3.3.2, calculamos os valores de P (x ) e de P ′( x ) na primeira
Pn′( x0 )
254 n 0 n 0
iteração k = 0 pelas Propriedades 9 e 11: 263
P4′((xx) )==8xR3 + 3 , P4′′( x) = 24 x2 , P4′′′ ( x) = 48 x
P 334
n 0 1 Pn′′ ( xk ) 2! R3
Pn′( x0 ) Δx(4)= − =−
M = f (0.4)
Pn′′′=(234.375
xk ) 3! R4
Pn′( x00)) ==RR22
259
269
x 4 − 5 x3 + 6 x 2 + 4 x − 8 = 0
260 449
318 P ( x) = 1xm8 − 3.4 x7 + 2.35 x 6 +
+1.36284988456718 − 1.59235983373818i ∂D(a,8b) ( a + a / T 2 ) −1
= −2
2.480058
∂a1  1 x +20.53144
k =1 
k

263
∂D(a270
, b) m
= 2 ( a1 + a2 / Tk2 ) − V
−1

∂a 
n

A partir de um valor inicial x


A partir de um valor inicial x
0
, localizado previamente como
, localizado previamente como
(x0) (x ) 255
0
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA
apresentado nas seções 3.3.1 e 3.3.2, calculamos os valores de P
apresentado nas seções 3.3.1 e 3.3.2, calculamos os valores de P n
n 0
Pn′ ( x0P
e de e de ) na primeira iteração k = 0 pelas Propriedades
′ ( x ) na primeira iteração k = 0 pelas Propriedades 9 e 11:
9 e 11:
n 0
Pn (xk)PDepois,
=(x R1) = R calculamos o incremento de x dado pela eq. (11a) do método
n k 1
de
Pn′ Newton
( xkP) =′ ( xR2,) conforme segue: Para polino-
Para polino-
n k = R 2 miais, o
miais, o
Depois, calculamos o incremento de x dado pela eq. (11a) do
Depois, calculamos o incremento de x dado pela eq. (11a) do
 Para polinomiais, o método de Newton também é chamado de Birge-Vieta.
método de
método de
Newton
método de Newton
método , conforme segue:
de Newton , conforme segue:
Newton
também é
também é
chamado de
P ( x ) ( x )R1 R chamado de
∆x =−∆x n=−k Pn= − 1
−k = (25) (25) Birge-Vieta.
(25) Birge-Vieta.
Pn′ ( xk P) ′ ( x )R2 R2
n k

e calculamos o valor novo x = xk x+=∆x


e calculamos o valork+1novo
e calculamos o valor novo x x =dado pela eq. (11b).
+x∆x+ dado pela eq. (11b).
∆x dado pela eq. (11b).
k+1 k + 1 k k

Exemplo 3.21: 3.21:


Exemplo
Exemplo calcule a raiz
3.21:calcule
calcule positiva
aa raiz
raiz de
de2x
positiva
positiva
3
de
2x 3 – x 3– 2 = 0, por
–2xx – 2– =x 0,– por 0, por a partir
2 =Newton,
Newton, a partir de x =
Newton, a partir de x 1, com 16 dígitos signifi
de x0 = 1, com 016 dígitos cativos exatos.
significativos exatos. cativos exatos.
= 1, com 16 dígitos signifi
0
Solução:
Solução:
Solução:
= 2( xx)3 =+ 20xx32 +− 01xx 2 −−21xx 0 −(a21x=0 (a
P3 ( x) P +2, a = 0, a=3 =0, a
= 2+2, a –1, a = –2) = –2)
= 4–1, a
3 1 2 3 4

Usando a divisão sintética de Briot-Rufi


Usando a divisão sintética de Briot-Rufi ni para determinar os
ni para determinar os
valores de P (x) e P ′ ( x ), temos:

valores de P
Usando
3 3 e Psintética
(x)
a divisão 3
( x), temos:
3 de Briot-Ruffini para determinar os valores de
P3(x) e P3'(x), temos:
Primeira iteração: a partir de x
Primeira iteração: a partir de x 0
= 1. = 1.
0

Primeira divisão: P3 ( x) = 2 x + 0xx=2 −−1.21x por (x


Primeira divisão:
Primeira iteração: = a +
partir 3 −x
de – x0). – x ).
3 2
P 3 ( x ) 2 x 0 x 10 − 2 por (x 0
b1 = a1 = +2
b1 = divisão:
a1 = +2 P (x) = 2x3 + 0x2 – 1x – 2 por (x – x ).
Primeira
b2 = a2b+ =b1a* +
x0 b= 0* x+ 2= *01+=22* 1 = 2
3 0

bb31 =
= aa1+=b+2* x = –1 + 2 * 1 = 1
2 2 1 0
3b = 2a +0 b * x = –1 + 2 * 1 = 1
b2 = a2 3+ b1 3* x0 2= 0 0+ 2 * 1 = 2
b4 = a4b+ =b3a* +
x = –2x +=1–2 * 1 = –1 = R = P (x = 1)
+ 1 * 1 = –1
1 = R
3 =0 P (x = 1)
b3 = a3 4+ b2 4* x00b3=* –1
0 + 2 * 1 = 1 1 3 0
79
b4 = a4 + b3 * x0 = –2 + 1 * 1 = –1 = R1 = P3 (x0 = 1)

Segunda divisão: P2(x) = 2x2 + 2x + 1 por (x – x0).


c1 = b1 = 2
c2 = b2 + c1 * x0 = 2 + 2 * 1 = 4
c3 = b3 + c2 * x0 = 1 + 1 * 4 = 5 = R2 = P3' (x0 = 1)
ivisão: P2P(2 x( )x)= =22xx 2+P+22(2xxx)++=11 por (x
unda divisão:
visão: x + 2––xxx).+).1 por (x – x0).
2 por (x
00

b = 2 c
= 1b1 = 2 1 = b
Segunda divisão: 1
= 2 P 2 ( x ) = 2 x 2
+ 2 x + 1 por (x – x0).
Segunda divisão: = + +
=b=22 b2+++=c212* **1x1=0=24=4 2 + 2 * 1 = 4 por (x – x0). CÁLCULO NUMÉRICO COMPUTACIONAL
2
=bb++c cc*2*x=xc256
P ( x ) 2 x 2 x 1
22 11 0 01 1

+ c c* x=cc=b1=1=b++b1c1=c1P*12**4*(x4xx=00)==5==52=21=x+R2+
22+2=*12=1Px*P'4(x
4' 1=0 por (x
=5=1)
=1)R2–=x P '
=bgunda divisão:
3b3 + 2c23* 0x02 3 12 + 2 2
R =
3 3+ (x 0 0
).3 (x0 = 1)
c2==bb+2 +c c*1 x* x=0 =1 2+ 2 + 24 * 1 = 4
= R2 = P–3'x(x).0 = 1)
c1 =cLogo,
egunda divisão: 3b1 = 32 RP22= ( x–1 )0= 2 e xR +1=2*x5: = 15 por (x
+
= 12+ 1 * 4 = 5 = R2 = P3' (x0 = 1)
0
o, R
1 e R12c2=
–1 e R c3 += cb3 *+1xc2=
–1 e R
=5: * x5:
= b5:
gunda divisão:
21 12
= 2 1 2P0 = ( x2) +
0 2 * 21 = 4
= 2 x + 2 x + 1 por (x – x ).
2 0
Logo, R
c32 =1 b=23 +
c1 = b1 = 2
–1 e R
+ cc12 **xx020== =215: ++21* *1 4= =4 5 = R2 = P3' (x0 = 1)
Logo, R
c3 =∆ 1bx
= –1 e R
+ c2 * xR R 10 1=2 1 +( = 5:− 1)
1( −* 1)4= = 0.25R=1 R2 = P(3'−(x1) = 1)
c2 = b∆ 3 =−
x+ =c − * x = = = −2∆− x
+ 2= *− 1= =0.2 4 e e= e− 0
=0.2 e
ogo, R1 = –1 e R 2 1 = 0
R
2 R
5: 5 5 1R2 R ( − 1) 50.2
ogo, R1 =c = b
3 –1 e R
+ c
22
* x = 1
2 = 5:
∆ x + = 1 − * 4R = = 5 − = R = '
(−1) 3 0 = 1)
= P (x e
x1x1= = x0x20++∆∆xxx= = 1∆= 1+
3 0
x += 0.2 −R2 = 1= 1.2 = − 52 = 0.2 e
1 0 + R−2(∆ x ==50.2 1 + e0.2 = 1.2
1 − Rx
0.2 −1) 1.2
∆x = =
ogo, R1 = –1 e R2 =∆5: x= x 1− = RR x1 + ∆
02=−
(−x 1)= 5 1 + 0.2 = 1.2
=0.2 e
eração: a partir de x
teração: a partir de x x1=R= 21.2. 0 +∆
x1.2. 5 x = 1 + 0.2 = 1.2
unda iteração: a partir de x x1 = 1x10 = +∆ x = 1 + 0.21 = =1.2 1.2.
(−1)= de
P3PSegunda )= = 22xxx1iteração: 0x0xx−)−R=−1x1 1xa== x e=–x1.2.
Segunda R partir
visão:
ivisão:
meira divisão:
Segunda (3x(iteração: a partir de x
3 3= x 2+2∆
+∆+
)xiteração: a partir de x
P x0=
( x−1−x−2+320.2
2 por (x
+ 0=
1.2.
==
1 por (x
x 2 1–
1.2
0.2
1.2. − 1x1x):1−): 2 por (x – x1):
egunda iteração: a partir de x 3 3 1 = 1.2. 5 1
Primeira divisão:
egunda
= iteração: a partir de x P3P( x()x=) = 32 x21x=+3 2+1.2.
2
0 x0 x−23 1−x1−x 2−2 por (x
2
– x–1):x ):
.2)
1.2) = R=
Primeira divisão:
1=
R
imeira divisão:
P 1(1.2)
0.256
0.256
Primeira = R
P = xdivisão:
( 1x x02+x3 P
= ) =30.256 ∆+3x(x)0 = 2x1=+ − 2x
0.2
1 x − += 20x
por (x
1.2 2– por (x
1x –
– 2
x por 1(x – x1):
):
rimeira divisão:
3
P3P(1.2) ==P3R(=
31x ) = 2 x + 0 x − 1x − 2 por (x – x ): 1
0.256 1
visão:
ivisão:P
egunda P3(1.2)
(1.2) = (1.2) R= = R0.256 R
1 =
0.256 = 0.256 0.256
P33iteração: a partir de x
unda divisão: (1.2) = 3
R= 1
1 11 1
= 1.2.
Segunda divisão:
imeira divisão:
Segunda divisão:
gunda divisão: ( x) = 2 x + 0 x 2 − 1x − 2 por (x – x1):
3
== R=
egunda divisão:
1.2)
(1.2) 2=
R ′ 7.64
2Segunda 7.64 P3divisão:
P3′(1.2)(1.2) =R=R= 7.64
P P3P′=
(1.2)
P333′ (1.2)
=
= ′ =
(1.2) R
=
==12 R =
20.256
2=
7.64 7.64
3 (1.2) R 7.64
P ' (1.2) R 2= R 7.64 2= 7.64
∆∆xx= =−−0.256
0.256 3 7.64
7.64 = = 2−− 0.0335078534031414
0.0335078534031414 e e
gunda divisão: ∆∆xxx∆
∆ =
= =

− −
0.256 0.256 7.64 = 7.64
= − − = − 0.0335078534031414
0.0335078534031414 ee e e e
x2x= 1.2P++′∆(1.2)
1.2 =
∆x= x x=−
0.256
=−0.256
x1.16649214659686
∆1.16649214659686 7.64
0.2567.64 7.64=−0.0335078534031414
=0.0335078534031414
−0.0335078534031414 e
=22= 1.2
+2∆∆= x=
+ ∆1.16649214659686
x=
2
3 xx = =1.2 1.2+=
R x7.64 1.16649214659686
x= 1.16649214659686
2 x= 1.2 ++∆ = x 1.16649214659686
2x=
2 1.2 ∆ 1.16649214659686
ração: a partir de x
erceira
erceira ∆
eração: a partir de x x = −
iteração: a partir de x
iteração: a partir de x 0.256 = 1.16649214659686.
7.64 =
2 2 = 1.16649214659686. =−0.0335078534031414
1.16649214659686.
2 2 = 1.16649214659686.
e
ceira
Terceiraiteração: a partir de x
Terceira Terceira 1.2 +3iteração:
xiteração: a partir de x
= iteração: a partir de x
∆= x 1.16649214659686 a partir 2 22 2 2
= 1.16649214659686.
x2 = 1.16649214659686.
de1.16649214659686.
= =1.16649214659686.
rimeira divisão:
visão:
imeira divisão:
P3P(3x( )x)= = 22P
2
xP3x3(3(+xx)+0)= 0=x2x22x2−x−1+1x+0x−x0−x2−2 por (x
33
1−x1−x 2− por (x––x2x):2–):x–2):x2):
2 por (x
ivisão: por (x
meira divisão:
Primeira divisão:
Primeira divisão:
erceira P3iteração: a partir de x
(1.16649214659686)
Primeira PP33P((3x(x)x= )=)== = 2PRx22
= x= +0+
3 33 2 2 2
x+=0.00800874528246043
02x −−
x0−3x1−+x10xx 2−1
x0.00800874528246043
1.16649214659686. − 2– por (x
x2– por (x
2 por (x
2–por ): ––xx):2):
x–2):x2(x
P3 (1.16649214659686)
16649214659686)
1.16649214659686) ==divisão: R=
11
(x)
R= 0.00800874528246043
1R =
0.00800874528246043
3 21
1x 2
egunda divisão:
3 (1.16649214659686)
PP(1.16649214659686)
P3 (1.16649214659686)
imeira divisão:
gunda divisão: 3 +=
P ( x) = 2 x3 =0= −=
xR2=R 1=
1R 0.00800874528246043
x1 − 20.00800874528246043
0.00800874528246043
por (x – x ): 1
visão:
3 2
ivisão:P ′ (1.16649214659686) = R=
Segunda divisão:
PP3 3(1.16649214659686)
′ == R=
7.16422356843290
0.00800874528246043
Segunda divisão:
unda divisão:
3 (1.16649214659686) R=
21
7.16422356843290
Segunda
1.16649214659686) divisão:
0.00800874528246043
== R=
2
7.16422356843290
2=

(1.16649214659686)
x = − R = −
7.16422356843290
0.00800874528246043 0.00111788042430008 e
gunda divisão:∆P x= ′ − 7.16422356843290
2
(1.16649214659686) = = −R0.00111788042430008
= e
7.16422356843290
P ′ Px ′3(1.16649214659686)
= 1.16649214659686
0.00800874528246043 =
7.16422356843290
(1.16649214659686) + = ∆R=
x 2 7.16422356843290
R
== 7.16422356843290
1.16537426617256
∆∆x x== 0.00800874528246043
3
− − P ′ (1.16649214659686)
3 = =−=
2 2
e e
x3 = 1.16649214659686 + ∆7.16422356843290
x = 1.16537426617256
3
0.00111788042430008
−0.00111788042430008
0.00800874528246043R=
∆x =
7.16422356843290
7.16422356843290
3 −0.00800874528246043
0.00800874528246043 2 = −0.00111788042430008 e
∆x∆= x =− = −0.00111788042430008 e e
e
xté a terceira iteração, temos
3x3==
1.16649214659686
1.16649214659686
∆x =−
é a terceira iteração, temos ++α∆α1∆x≅x≅1.16537426617256
−0.00800874528246043
7.16422356843290
7.16422356843290
7.16422356843290
= −0.00111788042430008
=1.16537426617256
= 1.16537426617256 , com critério
= 1.16537426617256
−0.00111788042430008 e
, com critério
e parada ∆x ≅x3O=(10 1.16649214659686
−3
).
7.16422356843290 + ∆x = 1.16537426617256
x≅3 =O + ∆x+=∆1.16537426617256
1
1.16649214659686
e parada xx33x==
∆ 1.16649214659686
(10−3 ).
1.16649214659686 + ∆x =
sse processo iterativo deve prosseguir até que algum critério
x = 1.16537426617256
1.16537426617256
a iteração, temos
ra iteração, temos αα1 1≅≅1.16537426617256
1.16537426617256 , com critério
, com critério
Até a terceira iteração, temos quando αos 1 ≅16
se processo iterativo deve prosseguir até que algum critério
e parada seja satisfeito 1.16537426617256 , com critério
dígitos significativos
∆ Até a terceira iteração, temos
−3−3
.
é a terceira iteração, temos
≅ α α
≅ ≅ 1.16537426617256 , com critério
, com critério
e x x ≅O O (10
de parada seja ).
a terceira iteração, temos
∆parada (10 ) satisfeito
Até a∆terceira
x ≅ O−(10 − quando
−3 ).
1 α
1.16537426617256

os a1 ≅ 1.16537426617256,, com critério
1.16537426617256
16 dígitos
stiverem convergidos, o que ocorre quando o critério de parada
3
3 iteração,
1
temos
1 significativos com critério de parada
de parada
e parada ∆x∆≅x O ≅ O
(10(10 ). ) .
tiverem convergidos, o que ocorre quando o critério de parada
so iterativo deve prosseguir até que algum critério
parada ∆ ≅
|∆x| ≅ O(10 ).
x O (10–3 − 3
) .
sso iterativo deve prosseguir até que algum critério
Esse processo iterativo deve prosseguir até que algum critério
sse processo iterativo deve prosseguir até que algum critério
Esse processo iterativo deve prosseguir até que algum critério
seja
seja satisfeito
satisfeito
de parada quando
seja quando
satisfeito os
os 16
16 dígitos
quando dígitos significativos
significativos
os dígitos
e processo iterativo deve prosseguir até que algum critério 16 dígitos significativos
e parada
de parada seja satisfeito
seja satisfeito quando
quando os os
16 16 significativos
dígitos significativos
Esse processo iterativo deve
onvergidos, o que ocorre quando o critério de parada
convergidos, o que ocorre quando o critério de parada prosseguir
estiverem convergidos, o que ocorre quando o critério de parada até que algum critério de parada
parada seja satisfeito quando os significativos
tiverem convergidos, o que ocorre quando o critério de parada 16 dígitos estiverem
significativos
estiverem convergidos, o que ocorre quando o critério de parada convergidos, o
seja satisfeito quando os 16 dígitos
verem convergidos, o que ocorre quando o critério de parada
∆x < 10 é atingido, depois de 6 iterações. Então, a primeira
Então, a primeira
raiz convergida é α1 ≅ 1.165373043062415 .
∆x < 10 −15
é atingido, depois de 6 iterações. Então, a primeira
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 257 S
Para determinar a segunda e a terceira raízes, e evitar obter
raiz convergida é α1 Se≅ 1.165373043062415
não fizer- . m

aízes, e evitar obter


novamente a primeira raiz α
mos as , não basta partir de uma estimativa Se não fizer-
r
que ocorre quando o critério de1 parada |∆x| < 10–15 é atingido, depois de d
Para determinar a segunda e a terceira raízes, e evitar obter
r de uma estimativa reduções
inicial diferente, precisamos efetuar reduções ou deflações do grau
mos as
6 iterações. Então, agrau
primeira raiz convergida é a1 ≅ 1.165373043062415. p
do grau para 1, não basta partir de uma estimativa do grau
ou novamente a primeira raiz α
do reduções
da seguinte forma:
deflações s
inicial diferente, precisamos efetuar
Para determinar a segunda reduções
e a terceiraou raízes, evitar do grau
defleações obter novamente para r
separar as
da seguinte forma:
a primeira
a) Tomamos P α1, não
raiz raízes basta
(x) partir de
e o dividimos por (x
já ndeterminadas,
uma estimativa
– α 1
inicial diferente,
), ou seja, obtemos separar as f
precisamos
α1), ou seja, obtemos efetuar reduções ou deflações  do grau da seguinte forma: raízes já determinao
Pn–1(x); nesse caso, com resto R
fatorando o polinômio, numericamente nulo (residual),
a) Tomamos P (x) e o dividimos por (x –1 α1), ou seja, obtemos
n o(s) novo(s) valor(es)
fatorando o polinômin
mente nulo (residual), Pn(x) e o dividimos por (x – α1), ou seja, obtemos Pn–o(s)
pois nas divisões exatas os restos seriam exatamente nulos.
a) Tomamos (x);
novo(s) valor(e
Pn–1(x); nesse caso, com resto R
inicial(is) numericamente nulo (residual), 1 c
m exatamente nulos. nesse caso, compoderão
resto R1 1 numericamente nulo
Esse polinômio de grau reduzido P (residual), poisinicial(is)
(x) não contém mais o nas poderão
pois nas divisões exatas os restos seriam exatamente nulos. n–1 o
divisõesconvergir
exatas para raiz(es) já
os restos seriam exatamente nulos. Esse polinômio convergir para raiz(
) não contém mais o zero α .
Esse polinômio de grau reduzido P (x) não contém mais o
de grauobtida(s).
1reduzido P (x) não contém
n–1 n–1 mais o zero α1. obtida(s).
zero αb) Reaplicamos
. uma nova estimativa inicial para esse novo
b) 1Reaplicamos uma nova estimativa inicial para esse novo zero do
cial para esse novo zero do polinômio de grau reduzido com o mesmo método
b) Reaplicamos
polinômio uma de nova estimativa
grau reduzido com inicial
o mesmopara esse novo
método de Newton.
de Newton.
zero do polinômio de grau reduzido com o mesmo método
om o mesmo método
c) Calculado o novo zero, retornamos ao item (a) até completar a
de Newton.
c) Calculado o novo zero, retornamos ao item (a) até completar
redução de grau desejada, que pode ser até graus n = 2, 1 ou 0, pois
c) Calculado o novo zero, retornamos ao item (a) até completar
em (a) até completar a redução de grau desejada, que pode ser até graus n
esses polinômios têm raízes de solução algébrica simples. = 2, 1
a redução de grau desejada, que pode ser até graus n
ser até graus n = 2, 1 ou 0, pois esses polinômios têm raízes de solução algébrica = 2, 1
ou 0, pois esses polinômios têm raízes de solução algébrica
Se não fizermos as reduções do grau para separar as raízes já determinadas, fatorando o
de solução algébrica simples.
 polinômio, o(s) novo(s) valor(es) inicial(is) poderão convergir para raiz(es) já obtida(s).
simples.
Exemplo 3.22: calcule a segunda e a terceira raiz de 2x3 – x – 2 = 0,
Exemplo 3.22: calcule a segunda e a terceira raiz de 2x
Exemplo 3.22: calcule a segunda e a terceira raiz de
3
2x–3x––x2–=20,
= 0, sabendo
iz de 2x – xsabendo
3
– 2 = 0, que a primeira raiz é α1 ≅ 1.165373043062415 , com 16
sabendo que a primeira raiz é α1 ≅ 1.165373043062415
que a primeira raiz é a1 ≅ 1.165373043062415, , com 16
com 16 dígitos significativos
43062415 , dígitos signifi
com 16
dígitos signifi cativos convergidos.
cativos convergidos.
convergidos.
Solução: Solução:
Solução:
Primeiramente,
Primeiramente, devemos reduzir o grau do polinômio P3 (x),
Inicialmente,devemos reduzir
devemos reduzir o grau
o grau do polinômio
do polinômio P3 (x), a primeira
P3(x), extraindo
o polinômio raizPa (x), α1 ≅ 1.165373043062415
extraindo a 1ª raiz
extraindo a 1ª raiz já encontrada, fazendo
já encontrada, fazendo
α1 ≅ 1.165373043062415
3 1 ≅ 1.165373043062415 já encontrada, fazendo P3(x) / (x – a1), gerando
contrada, fazendo
P3 ( x ) ÷
um − α  , gerando um polinomio quociente de grau n
) ÷1 ( x − α1quociente
P3 ( xpolinômio
( x ) ) , gerando um polinomio quociente de grau n
de grau n = 2: = 2: = 2:
ente de grau n = 2: 2
P2 ( x) =P2 x( x)+ =2.33074608612483
2 x 2 + 2.33074608612483 x + 1.71618865899311
x + 1.71618865899311
2
8865899311
com resto residual
com resto residual R1 =R4.44089209850063
= 4.44089209850063e e − 16–.16.
com resto residual 1 R1 = 4.44089209850063 e − 16 .
Logo, o polinômio original
Logo, o polinômio original P (x)Pfi3 (x) fica fatorado da seguinte forma:
ca fatorado da seguinte forma:
6. Logo, o polinômio original P 3
3
(x) fi ca fatorado da seguinte forma:
P=
( x) (2 x 2 + 2.33074608612483 x + 1.71618865899311) * ( x − α ) + 4.44089209850063e − 16
da seguinte forma:
3 1
( x) (2 x 2 + 2.33074608612483 x + 1.71618865899311) * ( x − α1 ) + 4.4408920985006
P3=
1) * ( x − α1 ) + 4.44089209850063e − 16

81
l
258 CÁLCULO NUMÉRICO COMPUTACIONAL
Observe que essa divisão pode ser considerada numericamente
exata, uma vez que o seu resto é apenas residual e pode ser
Observe que essa divisão pode ser considerada numericamente
Observe que (x) essafatorado se torna:
divisão pode ser considerada numericamente exata, uma
descartado, então P
Observe que essa divisão pode ser considerada numericamente
3
exata, uma vez que o seu resto é apenas residual e pode ser
vez que o seu resto é apenas residual e pode ser descartado, então P3(x)
exata, uma vez que o seu resto é apenas residual e pode ser
P3 ( x) =descartado, então P
(2 x 2 + 2.33074608612483 x + 1.71618865899311) * ( x − α1 )
fatorado se torna: (x) fatorado se torna:
descartado, então P3(x) 3
fatorado se torna:
P3 ( x) = (22x 2 + 2.33074608612483
Logo, as duas raízes restantes de P + 1.71618865899311) * ( x − α )
(x) =x0 estão em:
P3 ( x) = (2 x + 2.33074608612483 3 x + 1.71618865899311) * ( x − α1 )1
P2 ( x) = (2 x 2 + 2.33074608612483 x + 1.71618865899311) = 0
Logo, as duas raízes restantes de P
Logo, as duas raízes restantes de P (x) = (x)
0 = 0 estão em:
estão em:
Logo, as duas raízes restantes de P 3
3
(x) = 0 estão em:
3

Esse polinômio
P ( x) = de
(2 x2º
2
+ grau resultante pode
2.33074608612483 ser resolvido =
x + 1.71618865899311) 0
P2 (2x) = (2 x 2 + 2.33074608612483 x + 1.71618865899311) = 0
diretamente pela sua fórmula, determinando a segunda e a
Esse polinômio de o2º grau resultante pode ser resolvido
terceira raiz.
Esse Essepolinômio
polinômio de de 22º grau
grau resultante
resultante podepode ser resolvido
ser resolvido diretamente,
diretamente pela sua fórmula, determinando a segunda e a
determinando
diretamente pela a segunda e a terceira
sua fórmula, raiz.
determinando a segunda e a
terceira raiz.
terceira raiz.
Podemos também reaplicar o método de Newton a esse
polinômio de Podemos 2º grau também
para determinar
reaplicar todas
o método as raízes pelo a esse polinômio
de Newton
de
mesmoPodemos 2 grau para
o
algoritmo. também determinar todaso asmétodo
reaplicar raízes pelode mesmo
Newton algoritmo.
a esse
Podemos também reaplicar o método de Newton a esse
polinômio de 2º grau para determinar todas as raízes pelo
polinômio de 2º grau para determinar todas as raízes pelo
mesmo algoritmo.
mesmoLogo, algoritmo.
as três raízes convergidas com 16 dígitos significativos da variável
Logo, as três raízes convergidas com 16 dígitos significativos
double são:
a variável double são:
α1 Logo, as três raízes convergidas com 16 dígitos significativos
= +1.165373043062415 + 0.000000000000000i
Logo, as três raízes convergidas com 16 dígitos significativos
da variável double são:
α 2 = −0.582686521531207 − 0.720118564628364i
da variável double são:
α 3 = −0.582686521531207
α = +1.165373043062415 + 0.720118564628364i
+ 0.000000000000000i
α1 =1 +1.165373043062415 + 0.000000000000000i
α = −0.582686521531207 − 0.720118564628364i
α 2 =2 −0.582686521531207
o polinômio final fatorado é
E o polinômio ( x −=αa0.720118564628364i
P3 ( x) é=Pa1(x)
final fatorado α 2)(x
(xx–−a
11)( )( x–−aα 3)(x
) (com
– a3) (com a1 = 2).
= 2). α = −0.582686521531207 3
+ 1 2
0.720118564628364i
α 3 = −0.582686521531207 + 0.720118564628364i
3

Na próxima seção, vamos propor um algoritmo simples, robusto e eficiente para


E o polinômio final fatorado é
determinar raízes múltiplas (repetidas)
P3 ( x) de ( x − α )(polinomiais,
=aequações x − α )( x −deα modo) (com
que
E o polinômio final fatorado é
possa determinar simultaneamenteP3 (as
x)suas (1x − α1 )(1 x − α 2 )(2 x − α 3 )3 (com
=a1multiplicidades.
a = 2). seção, vamos propor um algoritmo simples, robusto e
Na próxima
a1 =1 2).
eficiente para determinar raízes múltiplas (repetidas) de equações
3.3.4.1 Determinação de raízes de equações polinomiais
polinômiais, de modo quecom possa determinar simultâneamente as suas
multiplicidade
Na próxima
multiplicidades. seção, vamos propor um algoritmo simples, robusto e
Na próxima seção, vamos propor um algoritmo simples, robusto e
eficienteVamos
para primeiramente estabelecer
determinar raízes a Propriedade
múltiplas 13,equações
(repetidas) de que determina
eficiente para determinar raízes múltiplas (repetidas) de equações
a multiplicidade
polinômiais, M deque
de modo uma raiz αdeterminar
possa conhecida, e comparar comas
simultâneamente o número
suas de
polinômiais, de modo
divisões exatas. que possa determinar simultâneamente as suas
multiplicidades.
multiplicidades.
determina a multiplicidade M de uma raiz α conhecida, e comparar
f ′( x ) = primeiramente
Propriedade
Propriedade 2x 11:
11:
11: o oo o valor
valor numérico
numérico
numérico de de ′′
determina a multiplicidade M de uma raiz α conhecida, e comparar
Propriedade
Propriedade
com o número de divisões exatas.
Vamos
com o número de divisões exatas. 11: valor
valor numérico
estabelecer dede
a PropriedadeP
PPPnnnn′′((((xxxx)))) em em em
em xxxx= == uuu é
u
=13, éé
éo
que oo
o resto
resto
resto R
resto R2222 da
RR da
da ssss
da
com o número de divisões exatas.
244
divisão
divisão sucessiva
sucessiva de
de
com o número de divisões exatas.
divisão
divisão sucessiva
sucessiva dede P Pnnnn((((xxxx)))) por
PP
determina a multiplicidade M de uma raiz α conhecida, e comparar por
por ((((xxxx−
por −−−u uuu))))....
Pn ( x ) =3 –x13:
**
CAPÍTULO
Propriedade
n
Pn (1
SOLUÇÃO x )DE EQUAÇÕES NÃO
uma raiz α de P (x) LINEARES A UMA INCÓGNITA
= possui multiplicidade M 259
com o número de divisões exatas.
Propriedade
249
Propriedade 13: uma raiz α de P
13: uma raiz α de Pnn(x) (x) = = 000 possui multiplicidade M
possui multiplicidade M
Tomando
Tomando
Propriedade
Tomando
Tomando a
aa
a primeira
13: primeira
uma raiz α de P
primeira
primeira
i divisão,
divisão,
divisão,nntemos:
divisão, temos:
(x)
temos:
temos: = 0 possui multiplicidade M
3 d iP dd MMM P
x 5
+ x 4
se, e somente se,
se, e somente se, − x −d x
iP2n
= ( α0 )
dd PPin (α ) = 0, ∀ i= 0,P
i n = 0 , ∀ i= 0,P PP 1,
nn1,

((((xxxx))…
))=
=== ,
(((,(xxxxMM−
−−
− u
u − 1
uu−))))1P
P P
P e
nn−−11(
e ( (d(dxxxx))M))+ +
P
+
P
+
n
nR
nR R((111α
R α ))) ≠≠≠ 000...
Propriedade
se, e somente se, 13: uma raiz α de P
dx ( α ) = 0 , ∀ i= (x) 0, = 1, 0 possui multiplicidade M
… , M − 1 e dx P
M
n (1α
Propriedade
252
se, e somente se,
Efetuando
Efetuando uma
uma 13: i n uma
(α ) = 0, ∀
dxii segunda
segunda raiz α
divisãoi=
divisão nde P n
(x)
n
1, … , Mvia
0,nsintética,
sintética, = 0 possui − 1 e
via
n n− −1
divisão multiplicidade
1
divisão dxMM de M
α )PP
(de ≠ 0(.(xxM se, e((xx−−uu)),, te
)) por
por te
Efetuando
Efetuando
P4 (2) , P4′(2) uma
umaidx ′′segunda
dx P segunda
(2) P (2) divisão
divisão ( 4 ) sintética,
sintética, via
via divisão
divisão dx de de P Pnn−−11((xx)
) por
por ((xx−−uu)),, te
te
,
d Pn4 , 4
′′′ e Pn (2) d Pn dx
M
nn−−11
se, e somente se,
somente se, (α ) = 0, ∀ i= 0,P PPPnnnn−−1,
−11( (x… x))== =,((((M xxxx−−−−−uuuu1)))) e
P
PP ((((xxxx))M))++(R
++ RR α22) ≠ 0..
254 3.23, dxi mostrar a equivalência −11((xx))= Pnnnn−−−−2222dx R
No Exemplo
Substituindo
Substituindo vamos
PP )))) em
((xxxxmostrarem PP )))),,,, temos:
temos:
a(((xxxxequivalência da Propriedade 13
da Propriedade 13 para
22
nn−−11( nna(
No Exemplo
Substituindo
Substituindo3.23, vamos PP ( mostrar
em
em P P temos:
temos: para
No Exemplo
No Exemplo a3.23, 3.23, vamos nna equivalência da Propriedade 13 para
equivalência da Propriedade 13
3 vamos mostrar para
nn−−11
determinar multiplicidade M com 2 o número M de divisões sucessivas
P
determinar
determinar
4
′( x ) =aPP8multiplicidade
x
((xx)+
) ==3
aPPmultiplicidade
No Exemplo nn((xx))3.23,((,x xP
==((xxvamos−− ′′
u
−−uu)((
4 (u x
)(()
)((=
xM
)((xMx −24

x−−com
mostrar
com
uu x
) )P P , oP(número
(′′′
uu))PPnan−o−equivalênciax x )() x+
(xx))++RR22))M
22(número
4 + ) R =
R 48
)) M +
+da+
+R xde
R
R divisões sucessivas
RPropriedade
de 11 divisões 13 para determinar a
sucessivas
determinar
exatas
No (com
Exemplo arestos
nmultiplicidade
3.23,n
vamosnulos).
mostrar M com aM nn−o
−22 número
equivalência 22 M de divisões sucessivas
da11 Propriedade 13 restos
para nulos).
exatasP
exatas ′(
(com
n x
(com
0 ) P
P
restos
multiplicidade
P
P (
((
(x
x
restosx
x)
))
) =
=
=
=
M
nulos).
(
((
(x
x
com
x
x−
−−
−u
u
nulos).u
u
o)2222número
)
)) P
PP
P (
((
(x
xx
x)
))
)+
+ +
+
de
(
((
(x
xx
x
divisões

−−
− u
u
u
u )
))
)R
RR
R
sucessivas
+
+
++R
RR
R
exatas (com
exatas (com
determinar restos
nn nulos). Mnn−−com
a multiplicidade
nn
nn−−22
22 o número22M de
22 11
11 divisões sucessivas
P′( x ) = R P
Derivando
Derivando
Derivando
Derivando
n 0 Pnn((((xxxx)))),,,, reescrito
PP 2 nn
reescrito
reescrito na
reescrito na
na forma
na forma
forma anterior,
forma anterior,
anterior, temos:
anterior, temos:
temos:
temos:
exatas (com restos nulos).
ExemploExemplo
259 P P ′′ 3.23:
xx determine
3.23: determine a multiplicidade M da raiz α
22 a+(multiplicidade 22 ′′ M+0da raiz
= 2 de α = 2 de
Exemplo Pnnnn ((xx))2==
′′(( )) = =2(2(xxxx−
2( −u
−− uuu))))22P
PP
Pnnnn−−−−2222((((xxxx))))+
3.23: determine a multiplicidade M da raiz α
3P 2( ++(((xxxx−
−−−uuuu))))22P
PP Pnn′nn−−′−−2222((((xxxx))))++R
++ RR
R2222+
++000 = = 2 de
2 de
Exemplo
Exemplo x 3−+56x3.23: determine a multiplicidade M da raiz α
4
Então,2 6x + 4x − 8 = 0
3.23: determine a multiplicidade M da raiz α
+
xxEntão,
2 + 4 x fazendofazendo .
xx ==uu,, = 2 de
x 44 − 5
5xxx333 +
− 5318
xxx44 − + 66Então,
Então, −
2 + 4 x fazendo 8=
8
−fazendo
= 0 .. xx==uu,,
0
−PP x 2+ 4x − 8 = 0 .
220 .
5′x′ +3.23: determine a multiplicidade M da raiz α
6ux))=+ 42(xuu−−−8uu)= 22 ′′ ′′ =uu))== RR22
Exemplo
Solução:
Solução:PPnn′′((((xxxx==u
== uu))== =2(
2(2(uu−−uu)))22P PP
Pnn−−22((((u
uuu))))+ +++((((u uuu−−u
−− uuu))))22P
PP
Pn′n−′−22((((u
uuu))))+ +++R RRR22 +++
+0000= =R
== RR = 2 de
R22→


→ P
PP
Pnn′′((((xxxx=
==uu))==RR
Solução:
xSolução:
nn nn−−22 nn−−22 22 22 nn 22
Solução:
4
− 5Vamos
x 3 + 6 xprimeiro
Vamos primeiro calcular P
2
+ 4 x − 8calcular = 0 . (xP=(x2)=e suas derivadas analiticamente:
Vamos primeiro calcular P44(x (x 4= = 2) 2) e suas derivadas analiticamente:
e suas derivadas analiticamente:
2) e suas derivadas analiticamente:
Vamos primeiro calcular P
Vamos primeiro calcular P
Solução: 4 (x = 2) e suas derivadas analiticamente:
Exemplo
Exemplo
Exemplo
Exemplo 3.23
3.23
3.23
3.233 4
P ( x
Vamos primeiro calcular P ) = x 4 − 5 x3 + 6 x 2 + 4 x − 8
4 2
⇒ P (2) = 0
P
PPP44 ((((xxxx)))) === xxxx444444−−−5555xxxx333333+++6666xxxx222222++
P44444 ((xx))== = xx −− − 5 x ++ 6 6 xx
+44(x
++ 444xxxxx=−
4
4 −
− 8
888 e suas derivadas analiticamente:
−2)
8 ⇒



⇒P
⇒ PP
PPP
4 (2) = 0
4444(2)(2)=
(2) ===0000
P 4′ 5 x + 6 x + 4 x − 8 ⇒
⇒ P 4 (2)
4′ (2) = 0
=
P ( x ) = 4 x
PP4444′′′′′(((xxx)))===4444xxx333333−−
3
3 − 15
15 x
x22 +
2
2 +
+12 12 x +
12xxx+++444 4 ⇒P P
P44′′′′′(2)
(2) = 000
P P4(4′x(((x)xx)= )== =x44 x−xx 5− −−−x153 x
15 xxxx26222+ ++212 x4xx+x++4 ⇒
⇒⇒ PPP (2) =
==
2− 1515 + 12 448 =
PP 15 + 12+ − ⇒

⇒⇒ P 4 ′(2)
44(2) (2)
= 000000
P ′ ) 4 15 x 12 ⇒ P 44 ′′ (2) =
PP44′′′′′′((((xxxx))))====12
P xx2222− 30 xx + 12 P 4′′ (2) =
4 4 4

4
12 − 30 + 12 P′′ (2) = 00000
PPPP P ( 12
′′′((x(x(xx))x))=)= ===412
44′44′′ 12
12
12
12
x 3xxxxxx−22215
−−
−−
− 30
30
30
30
30
x 2x x
xxx++++
++ 12
12
12
1212
12x + 4




⇒⇒
⇒ P
P
PP
P4 ′′′′
P4P 4′′
′4(2)
4′′ ′′(2)
(2)
(2) (2)
(2)
(2)=
==
===0
0
0
4 ′′ (= ⇒ ′′′
24 2xx − (2) =
4 4
P 4
P44′′′′′′′ (= xx)) 24 − 3030 ⇒ P
4
P′′′ 4′′′ (2) = 18 18
P ′′′ = ( ( xx ) ) = = 2424 x x − −
− 30
30 ⇒
⇒⇒ P
P 4′′′(2)
′′′ (2) ===
P
PPP 4P4 ′ ′′′
′′′
′′
4( x()x
444 (=
( x )
(xx)=))= 12 24
=24
2424 x
x xx−−−30 3030x + 12
30 ⇒

⇒⇒PP444PP ′′′ ′′
′′′
4 4 (2)
4 ′′′
(2)(2)===18 018
18 18
1818
Pela Propriedade
P4′′ (=
Pela Propriedade x) 24 x − 30 13, temos que a multiplicidade de α
13, temos que a multiplicidade de α ⇒ P4′′′ (2) = 18 = é M
= 222 é M =
é M = 3,
= 3,
3,
Pela Propriedade
Pela Propriedade
Exemplo
Exemplo
Pela Propriedade 3.31:
3.31: 13, temos que a multiplicidade de α
13, temos que a multiplicidade de α
13, temos que a multiplicidade de α ==
= 2 2éé M
M == 3,pois gera
3,
pois gera até derivada 2ª nula, e a derivada 3ª é não nula. Se
Exemplo
Exemplo 3.31: 3.31:
pois gera até derivada 2ª nula, e a derivada 3ª é não nula. Se
pois gera até derivada 2ª nula, e a derivada 3ª é não nula. Se xx
até derivada 2 13, temos que a multiplicidade de α nula, exxa==derivada
pois gera até derivada 2ª nula, e a derivada 3ª é não nula. Se == 1.00000266769999
1.00000266769999
3 é não nula. ++
= 2 é M = 3,aseeeedivisões
(5.0057518865228
(5.0057518865228
Se aplicarmos −
−− 06)iiii
−06)
06)
a a
aplicarmos as divisões sucessivas de Briot-Ruffini, teremos 3
Pela Propriedade 1.00000266769999
1.00000266769999 ++(5.0057518865228
(5.0057518865228 06)
aplicarmos as divisões sucessivas de Briot-Ruffini, teremos 3
aplicarmos as divisões sucessivas de Briot-Ruffini, teremos 3
sucessivas de Briot-Ruffini, teremos 3 restos nulos e R4 = 3, logo a multiplicidade
aplicarmos as divisões sucessivas de Briot-Ruffini, teremos 3
restos nulos e R = 3, logo a multiplicidade de α = 2 também é
pois gera até derivada 2ª nula, e a derivada 3ª é não nula. Se
restos nulos e R
de α = 2 também
restos nulos e R
4 = 3, logo a multiplicidade de α = 2 também é
é M = 3, pois tem três divisões exatas.
restos nulos e R
M = 3, pois tem três divisões exatas.
aplicarmos as divisões sucessivas de Briot-Ruffini, teremos 3
4 = 3, logo a multiplicidade de α == 22 também é
4 = 3, logo a multiplicidade de α
também é
M
M =
= 3, pois tem três divisões exatas.
3, pois tem três divisões exatas.
4
M = 3, pois tem três divisões exatas.
restos nulos e R A seguir, vamos = definir
3, logo a multiplicidade de α
um algoritmo sequencial para tratamento = 2 também é
de raízes múltiplas
4
Pg.
M = Pg. Pg.
Pg. 40 40 40
desenvolvido
40
3, pois tem três divisões exatas. a partir das quatro etapas a seguir, cada uma apresentando um
exemplo com parte da metodologia aplicada.

Primeira etapa: vamos tentar determinar uma raiz múltipla como se fosse
8
simples, de multiplicidade M = 1, usando a eq. (25) do método de Newton 8
88
tradicional, em um polinômio exemplo cuja raiz é de multiplicidade M = 3.
83
Exemplo 3.24: determine as três raízes de P3(x) = x – 3x2 + 3x – 1 = 0 com 3

16 dígitos exatos, considerando multiplicidade M = 1. Observe que a sua


única raiz é α1 = 1.0 e tem multiplicidade M = 3, pois P3(x) = (x – 1)3.
260 CÁLCULO NUMÉRICO COMPUTACIONAL

Solução:
Pelos cálculos de cotas-limite, temos que todas as raízes iniciais estão entre
Rmin= 0.259921049896187 e Rmax= 3.84732210184363, e que:

a) uma raiz inicial Real, localizada por varredura, pode ser: x0 = 1.1;
b) duas possíveis raízes iniciais Complexas, randômicas, localizadas
dentro do limite das cotas, podem ser:

+1.36284988456718 – 1.59235983373818i
+0.91142849471678 + 1.75484834399166i

Capítulo3 3– –Solução
Aplicando o método de Newton através das eqs. (25) e (11b), a partir
Capítulo
de SoluçãodedeEquações
Equaçõe

x0 = 1.1, teremos o seguinte processo iterativo (em double):

Tabela
Tabela
Tabela 3.15 – Resultados 3.15–3.24
3.15
do Exemplo –Tabela
Tabelade
deresultados
resultadosdo
doExemplo
Exemplo3.24
3.24
(1)
RR(1)
k kPk3(xk) = R(1)
PP3(x(x) )
3 kk
′ x( kx)k )
P3'(xk) P=3P′3(R(2) ∆∆
x x==
−− xkx+k1=+1= xkxk++∆∆xx P3P(3 x( kx)k )++∆∆xx
(2)
RR(2)
0 0 9.999999999998900e–04
9.999999999998900e–04 3.000000000000020e–02
3.000000000000020e–02 –3.333333333332940e–02
–3.333333333332940e–02 1.066666666666670
1.066666666666670 3.433333333332930e
3.433333333332930
0 9.999999999998900e–04 3.000000000000020e–02 –3.333333333332940e–02 1.066666666666670
1 1 2.962962962960170e–04
2.962962962960170e–04 1.333333333333540e–02
1.333333333333540e–02 –2.222222222219780e–02
–2.222222222219780e–02 1.044444444444470
1.044444444444470 2.251851851849380e
2.251851851849380
2 2 8.779149519977380e–05
8.779149519977380e–05 5.925925925932770e–03
5.925925925932770e–03 –1.481481481494470e–02
–1.481481481494470e–02 1.029629629629530
1.029629629629530 1.490260631014450e
1.490260631014450
1 2.962962962960170e–04 1.333333333333540e–02 –2.222222222219780e–02 1.044444444444470
3 3 2.601229487364520e–05
2.601229487364520e–05 2.633744855948810e–03
2.633744855948810e–03 –9.876543209905690e–03
–9.876543209905690e–03 1.019753086419620
1.019753086419620 9.902555504779330e
9.902555504779330
4 4 7.707346629359790e–06
7.707346629359790e–06 1.170553269302930e–03
1.170553269302930e–03 –6.584362140092560e–03
–6.584362140092560e–03 1.013168724279530
1.013168724279530 6.592069486721920e
6.592069486721920
2 8.779149519977380e–05 5.925925925932770e–03 –1.481481481494470e–02 1.029629629629530
5 5 2.283658260271440e–06
2.283658260271440e–06 5.202458974511440e–04
5.202458974511440e–04 –4.389574759666210e–03
–4.389574759666210e–03 1.008779149519860
1.008779149519860 4.391858417926480e
4.391858417926480
⋮⋮
3 2.601229487364520e–05 2.633744855948810e–03 –9.876543209905690e–03 1.019753086419620
2121 7.993605777301130e–15
7.993605777301130e–15 1.198849464145720e–09
1.198849464145720e–09 –6.667731034102110e–06
–6.667731034102110e–06 1.000013322676890
1.000013322676890 6.667731042095720e
6.667731042095720
2222 2.220446049250310e–15
2.220446049250310e–15 5.324816143570390e–10
5.324816143570390e–10 –4.169995713244410e–06
–4.169995713244410e–06 1.000009152681170 4.169995715464850e
4.169995715464850
4 7.707346629359790e–06 1.170553269302930e–03 –6.584362140092560e–03 1.000009152681170
1.013168724279530
2323 0.000000000000000e+00
0.000000000000000e+00 2.513149688354590e–10
2.513149688354590e–10 0.000000000000000e+00
0.000000000000000e+00 1.000009152681170
1.000009152681170 0.000000000000000e
0.000000000000000

5 2.283658260271440e–06 Fonte:Elaboração
Fonte:
5.202458974511440e–04Elaboração própria
própria
–4.389574759666210e–03 1.008779149519860

⋮ Emkk==23, observe que o critério de parada composto


Em 23, observe que o critério de parada composto | |PP ) )| |++| |∆∆xx| |
3 3( (xx

é zerado, mas a raiz aproximada x2323==1.000009152681170 ainda


é zerado, mas a raiz aproximada x 1.000009152681170 ainda
21 7.993605777301130e–15 1.198849464145720e–09 –6.667731034102110e–06 1.000013322676890
não atingiu
não atingiu seu seu valor
valor exato.
exato. Sabemos
Sabemos que que a a raiz
raiz exata
exata é é 1.0, 1.0,
mas a raiz convergida x
mas a raiz convergida x
22 2.220446049250310e–15 5.324816143570390e–10
2323
tem apenas 6 dígitos significativos
tem apenas 6 dígitos significativos
–4.169995713244410e–06 1.000009152681170
exatos e o processo iterativo estagnou, pois ∆xjá é nulo e não
exatos e o processo iterativo estagnou, pois ∆x já é nulo e não
23 0.000000000000000e+00 2.513149688354590e–10 0.000000000000000e+00 1.000009152681170
vai mais
vai mais alterar
alterar x x nos
nos próximos
próximos passos passos iterativos.
iterativos. Então, Então, a a
primeira raiz atingida é α
primeira raiz atingida é α
Fonte: Elaboração própria. 11
==1.000009152681170, considerando
1.000009152681170, considerando
multiplicidade M==1.1.
multiplicidade M
Fazendo a redução de grau com essa primeira raiz aproximada,
Fazendo a redução de grau com essa primeira raiz aproximada,
temos:
temos:
Fonte: Elaboração própria
Em k = 23, observe que o critério de parada composto | P3 ( x) | + | ∆x |
Em k = 23, observe que o critério de parada composto | P33 ( x) | + | ∆x | 261
é zerado, mas a raiz aproximada x
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES
23
= 1.000009152681170 ainda
A UMA INCÓGNITA
é zerado, mas a raiz aproximada x
não atingiu seu valor exato. 23
23
= 1.000009152681170 ainda
Sabemos que a raiz exata é 1.0,
não atingiu seu valor exato. Sabemos que a raiz exata é 1.0,
mas a raiz convergida x23 tem apenas 6 dígitos significativos
Em k = 23,
mas a raiz convergida xpodemos observar que o critério de parada composto |P3(x)| + |∆x |
tem apenas 6 dígitos significativos
exatos e o processo iterativo estagnou, pois ∆x
23
é zerado, mas a raiz aproximada x23 = 1.000009152681170
23 já é nulo e não
ainda não atingiu
exatos e o processo iterativo estagnou, pois ∆x
vai mais alterar x nos próximos já é nulo e não
passos iterativos.
seu valor exato. Sabemos que a raiz exata é 1.0, mas a raiz convergida Então, xa tem
23
vai mais alterar
apenas x nos próximos
primeira raiz atingida é α passos iterativos. Então,
= 1.000009152681170, considerando
6 dígitos significativos 1exatos a
e o processo iterativo estagnou, pois ∆x já
primeira raiz atingida é α
émultiplicidade M ==1.1.000009152681170, considerando
nulo e não vai mais 11alterar x nos próximos passos iterativos. Então, a primeira
multiplicidade M
raiz atingida=é1.α1 = 1.000009152681170, considerando multiplicidade M = 1.
Fazendo a redução de grau com essa primeira raiz aproximada,
Fazendo a redução de grau com essa primeira raiz aproximada,
Fazendo
temos: a redução de grau com essa primeira raiz aproximada, temos:
temos:
n = 2 ⇒ P2 ( 2x ) = 1.0 x 2 − 1.99999084731883 x + 0.999990847402598
n = 2 ⇒ P22 ( x ) = 1.0 x 2 − 1.99999084731883 x + 0.999990847402598
E as demais raízes são:
E as demais raízes são:
E as demais raízes são:
α 2 = 0.999995424 + 0.000007926i
α 22 = 0.999995424 + 0.000007926i
α 3 = 0.999995424 − 0.000007926i
α 33 = 0.999995424 − 0.000007926i
Assim, as três raízes convergidas são diferentes entre si e com
Assim, as três raízes convergidas são diferentes entre si e com
apenas as6 três
Assim, dígitos
raízessignificativos
convergidas sãoexatos, ou entre
diferentes seja, sideveríamos
e com apenas 6
apenas dígitos
6 dígitos significativos exatos, ou seja, deveríamos
ter obtido três raízes α1 = 1.0 com 16 dígitos exatos, raízes
significativos exatos, ou seja, deveríamos ter obtido três α1 = 1.0
ou seja,
ter obtido
com três raízes exatos,
16 dígitos
multiplicidade M α11 = =1.03. com
ou seja, multiplicidade M = 3.ou seja,
16 dígitos exatos,
multiplicidade M = 3.
Segundaetapa:
Segunda etapa:
vamosvamos agoraagora
avaliaravaliar os de
os efeitos efeitos
uma raiz de uma raiz
múltipla sobre
Segunda
Computacional os etapa: vamos agora avaliar os efeitos
restos das divisões sucessivas de Pn(x) = 0 por (x – α).
múltipla sobre os restos das divisões sucessivas de P de uma raiz (x) = 0
n
múltipla sobre os restos das divisões sucessivas de P
por (x – α). nn
(x) = 0
por (x – Exemplo
α). 3.25: determine a multiplicidade M da raiz α = 1.0 de
PExemplo
3
(x) = x33.25: determine a multiplicidade M da raiz α
– 3x2 + 3x – 1 = 0. = 1.0 de
P3 ( x) = x 3 − 3 x 2. + 3 x − 1 = 0. 85
Solução:
Solução:
Pela divisão sintética de Briot-Ruffini, temos:
Pela divisão sintética de Briot-Ruffini, temos:
α a1 a2 a3 a4
1ª Divisão 1 1 -3 3 -1
1 -2 1
2ª Divisão 1 1 -2 1 0 ⇒ R1
1 -1
3ª Divisão 1 1 -1 0 ⇒ R2
1
4ª Divisão 1 1 0 ⇒ R3

1 ⇒ R4 (não podemos efetuar a divisão de 1 por (x – 1))


ou usando as divisões tradicionais, temos:

x 3 – 3x2 + 3x – 1 x–1
2ª Divisão 3ª Divisão
1 -2
1
11 1 1 -1
-1 0 0 ⇒⇒ R1 R
2ª Divisão 1 -2
1 1 1
-1 0 ⇒ R11 2
1 -1 1
3ª Divisão 1 1 -1
1 0
-1 ⇒ R2
0 ⇒ R2R
3ª Divisão 1 1 -1 0
3ª Divisão 262
4ª Divisão
1 1 1 -1
1
1 0 ⇒⇒R CÁLCULO NUMÉRICO COMPUTACIONAL
3ª Divisão 1 1 -1
1 0 ⇒ R22 3
10
4ª Divisão 1 1 10 ⇒ R3
4ª Divisão 1 1 ⇒ R3R (não podemos efetuar a divisão de 1 por (x – 1))
0 1 ⇒⇒
4ª Divisão 1 1 R3 4
4ª Divisão ou usando
1 1as divisões
0 ⇒ R
tradicionais, temos: 3
ou usando as divisões tradicionais, temos:
1 ⇒ R4 (não podemos efetuar a divisão de 1 por (x – 1))
1 ⇒ R4 (não podemos efetuar a divisão de 1 por (x – 1))
1 ⇒ R4 (não podemos efetuar a divisão de 1 por (x – 1))
2 1
x 3 – 3x + 3x – 1 ⇒x –R14 (não podemos efetuar a divisão de 1 por (x – 1))
ou usando as divisões tradicionais, temos:
ou usando as divisões tradicionais, temos:
ou usando as divisões tradicionais, temos:
ou usando as divisões tradicionais, temos:
x 3 – 3x22 + 3x – 1 R = 0x – 1 1x2 – 2x + 1 x – 1
x 33 – 3x2 + 3x – 1
x–1 1
x 3 – 3x2 + 3x – 1
x–1
x – 3x R1 =+ 03x – 1
1x x– –2x1 + 1 xR2–=1 0
2
x–1 x–1
R1 = 01x – 2x + 1 x – 1
2

R1 = 01x – 2x + 1 x – 1
2

= 0+ 1 xx –– 11 x –R13 = 0
2
R1 = 01x R– 2x x–1
R22 = 0 x–1 x–1 1
R2 = 0 x–1 x–1
R2 = 0 Rx3 –=10 x –1 1 x –R14 = 1
R3 = 0 x–1 0
1
R3 = 0 1 x–1
Na quarta divisão, P R3 = 0 (x) R 1==1 1 deve ser dividido por (x
0 R4 = 1
x–1
0 – 1), gerando
0
Na quarta divisão, P
quociente nulo e resto 1, pois (x)
R 4
==11 deve
0 ser dividido por
1) + 1 . 1), gerando quociente
(x –
( )
P0 x= 0 * ( x–−1), gerando
Na quarta divisão, P (x) = 1 deve ser dividido por (x
4
0 R =1
0
Na quarta divisão, P
nulo e resto 001, (x)pois
4
= 1 deve ser dividido por (x
P0(x) = 0 * (x – 1) + 1. –– 1), gerando
Então, determinamos três restos nulos, R
Na quarta divisão, P
quociente nulo e resto 1, pois (x) = 1 deve ser dividido por (x
P0 ( x=
)) 00 ** (( xx −− 1) = R2 = R3 = 0 e um
+ 1 . 1 1), gerando
Na quarta divisão, P
quociente nulo e resto 1, pois 0(x) = 1 deve ser dividido por (x
P0 ( x= 1) + 1 . – 1), gerando
quociente nulo e resto 1, pois 0
não nulo R4 = 1, o que indica multiplicidade M P0 ( x=)) 00 nulos,
* ( x − 1) + 1 . 3 (três divisões
=R=0 e um
Então, determinamos três restos nulos, R
quociente nulo e resto 1, pois
Então, determinamos
Então, determinamos três restos nulos, R P0 (restos
três x= * ( x 1−=
= +R
1) RR12=.=
=RRR 3== = 0 e um não nulo R4 = 1,
0 e um
não nulo Rexatas).
Então, determinamos três restos nulos, R
= 1, o que indica multiplicidade M =
1
3
2
1 = R2 = R3 = 0 e um 3
(três divisões
o que indica
Então, determinamos três restos nulos, R
não nulo R multiplicidade
4 = 1, o que indica multiplicidade M M = 3 (três
1 divisões
2 3 exatas).
= R=2 3=(três divisões
R3 = 0 e um
1
não nulo R
exatas). Pela Propriedade12, teremos as seguintes derivadas:
4 = 1, o que indica multiplicidade M = 3 (três divisões
não nulo R
exatas). 4 = 1, o que indica multiplicidade M = 3 (três divisões
4
exatas). Pela Propriedade 12, teremos as seguintes derivadas:
Pela Propriedade12, teremos as seguintes derivadas:
exatas). P3= (1) 0!*=
Pela Propriedade12, teremos as seguintes derivadas: R1 1= *0 0
Pela Propriedade12, teremos as seguintes derivadas:
Pela Propriedade12, teremos as seguintes derivadas:
′= 0* = R02 1=
P33= 0!**3=
R11 11=
(1) PR (1) *1! *0 0
P = (1) 0! = =*0 0
P3=′(1)(1) 0! *=R
′′= 1= 0 0
00 *= R003 2=
*
1!P= (1) *2! *0 0
P33=
′= (1) 1!**3= R122 11=
P (1) 0! R 1 1*=
′ = = =
*0 0
P3′′′= (1) 1!P* = R
′′′=
=2(1) 12=
*0
3! *=R00 6= *1 6
== *=
(1) 2!*3*= R233 12=
(1) 1!
(1) 2!*R R 0** 0
P
P33′′′′= = = 0 040
P= (1) 2!*= R3 2= *0 0
P33′′′′′′′′=
= 3! = 6= Capítulo 3 – Solução de Equações não Lineares a uma Incógnita
(1) 3!**= R344 26=
(1) 2!
(1) *10 6
P3′′′= R
= = *1 60
P = (1) 3!* = R 6= *1 6
P33′′′= (1) 3!* = R44 6= *1 6

Propriedade
E pela 13, a multiplicidade também é M = 3, pois
Propriedade 13, a multiplicidade também é M = 3, pois temos até
até 2ª derivada nula e derivada 3ª não nula, resultando
2 derivada nula e derivada 3 não nula, resultando no polinômio fatorado
a a

linômio fatorado equivalente:


equivalente:

P3 ( x) = x 3 − 3 x 2. + 3 x − 1 = ( x − 1)3 = 0

ve que, para definir a multiplicidade M de uma raíz α,


Observe que, para definir a multiplicidade M de uma raiz α, precisamos
conhecer o valor dessa raiz, ou seja, um resultado depende do outro.
amos conhecer o valor dessa raiz, ou seja, um resultado
de do outro.
Na próxima etapa, vamos assumir a hipótese de que apenas a multiplicidade M de
uma raiz α seja previamente conhecida.

óxima etapa, vamos assumir a hipótese de que apenas a


icidade M de uma raiz α seja previamente conhecida.
n 0 P′( xn ) =
2
k
R 2

a etapa, vamos 255


assumir255 a hipótese de que apenas a
Pn′(Px0′()xP x=) − Pn ( xk ) = conhecida.
)Δ3′x(previamente − 1
R

xk263+1 x
de M de uma raiz α3 seja ′( xkEQUAÇÕES
)
Pn′(cx30 )==cb33R=+2 bc32 *+Pxcn0DE
CAPÍTULO 3 – SOLUÇÃO
2=*x
R NÃO LINEARES A UMA
10+=11* 4+ 12=* 45 == 5R2==RP23′(=x0P3=
′( x1)
0 = 1)
INCÓGNITA
255
256256 P (x ) R
Δ x = − Pn3′′( xk) = − 1
P3′(1.2)
etapa: vamos assumir PP3′((1.2)
Terceira etapa: x= R
cn3 =kb3vamos
7.64
= R2Ra =multiplicidade
2 = 7.64
)que x
+ c2 * 2xassumir
M é
0 =1 k+ 1 * que
α
= R2 = P3′( x0 = M
4 =a5multiplicidade 1) é conhecida antes de
255 ′ P
antes de conhecer a raiz correspondente.
conhecer (1.16649214659686)
P3 (1.16649214659686)

a3 raiz correspondente. = R
= R2 = 7.16422356843290
2 = 7.16422356843290 ~ ~
P3′(259
x) 259 256
P3′(1.2)3 = R32 =2 7.64
odo de Newton c3 =PO x+P
b4′(3para ′(2 x4* )xraízes
) c4=
método =
0 de=−415 +x−115
1xNewton *+
não 412 x 2=+ 512+=4xR
xpara
repetidas, +2 4= P3′não
raízes ( xou
0 1)P4′(2)P4=
=repetidas,
seja ′(2) 0 multiplicidade
0ou=seja
P ′3 (1.16649214659686) = R = 7.16422356843290 ~
M256= 1,P′′dado ( x P
)
de M = 1, dado pela eq. (25), prevê que:4
′′( x12
= pela
) x
= 212 eq.
− x
30
2 (25),
x
− +30 12 xprevê
+ 12 que: 2
 P ′′(2)P =
4
′′ (2)
0 = 0
P3′(1.2)
4 259 =) =7.64
4
236
P4′′′P( xPP
=
)′′′R(2x24 24 3x − 30 2
30 P4′′′′=(2)18==018
x 4′′′ (2)
P
4′= −  
n ( 4xk )
( x ) = 4 xR1− 15 x + 12 x + 4 P4 (2)
∆xP3= ′(1.16649214659686)

260 260 = − = R = 7.16422356843290 ~
P′′( x) = 12  Rx22 − 30 x +1.29 2
12  10 p (3.16 q ) P4′′(2) = 0
259 Pn′P(4x(kx)x)0 == R1.68 (1) −  (20
P3 ( xkP)3′′′=3(kR x)15(1)= x24 P
2 x3 − 30
′ ( x P ′
) (
0.84
= x R ) (2)
+= m R (2)
  P′(2)  = 0P4′′′ (2) = 18
P4′( x ) = 44x − + 12 xk3+ 4 k
o método de Newton clássico, mas observe que, no caso
262
260
4

P4′′(262
xEsse
) = 12éxo2 −método 30 x + 12de Newton clássico,  P4′′(2) mas= 0observe que, no caso de
P3 (1)P
′ = ′(1)
ções de raízes com multiplicidade maior do que 1, R
1! R
=*de 1! =*R 1 *0 =com 1=*00 = 0
) =P 3 ( xxk ) −)=30R(1) P3′ ( xk ) = R(2) P4′′′ (2) =do
(0
P4′′′ (.xd 18que 1, R1 e R2 tendem a
aproximações raízes multiplicidade maior
d
3 2 1
24 2

P′′(1)1P=3 (1) 2!t=* R2!


a zero juntos, reduzindo a taxa de convergência (perde *R a
3 = 23 * 0 = 0
2 * 0 de = 0convergência (perde a taxa de convergência
......
zero juntos, ′′ reduzindo =taxa
260 3 262
vergência quadrática, como vimos nos Exemplos
P3′′′(1)PP3=′′′′como
quadrática, (1) 3!==* R1!3! *R
vimos 11nos =6* 0*61= =06
Exemplos 3.10 e3.10 3.24), podendo até gerar uma
P
237 ( x ) R3 (1)
(1) 4*= R264= *=
indeterminação
endo até gerar 3 uma
α α ′′
k = indeterminação 0/0P 3
′ ( x
no k ) =
limite R (2) de
0/0 convergência.
no limite Então,
de
P (1) = 2! * R = 2 * 0 = 0
262263 263
= =(01!P.3*′′′Rd(1)1 ==......13! d* 0*t )10
3 3
a. Então,
cP′(1) 2 p+q
 P (3x)a)  ΔSe x
2 
lim Pn (−x) n6( x*1) = =6 0 (para raízes não repetidas)
R
= 40 =P
a)= = α
a) Δ lim  −   = 0
x0= (para raízes não repetidas)
=
x lim  − nP′′(1)
∆= 2!* Rx→3 α=x2→*αP0n′= ( x0P ) n′( x) 
x →α 
Pm′ 3
( x =) 
(0 263
 nP′′′(1)= 3!* R1 = 6 *P . d ...... d )
t 1 (=xP n) ( xk ) 0! R10! R1
n− 6
3
Δ x
x
4 Δx =
= −
lim
kP
n (=x) −==−0 para paraM para
M= 1=M 1 =1
Pn ( xk ) α 0! R1 a) Δ = P 
′ (−x P ) ′ ( x ) 1! R 1! R
x =− = −
246 para M x →α =n1 kPn′( x)  2n k 2
263

Pn ( xk ) 1! R  Pn ( xP
lim − P ) n((xx)0) = 0 0! = ?R1
b) Δb) x =Δlim xx→α=P = ?−
2
− ( x  )
Δxn→xαP=′(−x=P n = k 
( x ) 0 para M = 1
a) Δ x =
no lado xpositivo lim −
  entre n  P′([x ) n
′0 0
+kr)min , +1!
 rmaxR2] ,...
→α P ′
 n  P ( x ) ( x ) n
 Pn ( x) n P ( x )  Pn′0(xP
lim lim ) n′( x ) 
b) b)
Se lim xα =x →
 P lim ( x  )  = n lim0!
 =R   = ?′′( x(indeterminação)
 à medida que xk
252 Δx Δ x=→−
PP
n
′(αx )−n′=(Px−′)(xx→)α x=→Pnα′′0(para
α P k 1
 xP) n M )  =1
n ( xk ) 1! R2
x→
′ n  n  87
tende à raiz Pnα, ′( Pn
entãox )′( xpoderemos
k ) 1! R21! R2 aplicar a regra de L’Hospital, como
′ Δx)−na =Δ
=P
−nx( x=)−P
lim  ( x0) ==−lim
k = − Pn′(para x ) 2 paraM =M 2 =2
b) Δx =vimos n (x
Plim  2( x −′′n(u=Pn
seção
Pn x ) P)′′n(=−x2?k()x)2!
3.2.2.4, +R
uma (3x2!− Ru3 )que:
vez  Pn − 2′ ( x ) + R2 + 0
 Pn′( x) P n ( x0)   Pn′′( x ) 
x →α x → α ′ k x → α

Pn′( P x ) 1! R
Pn′( x P =n u(Δx)P x)==′(2( −P)ulim
x ′−( x u) 0)Pnk′n(−x20=)(u−) + (u2 − upara ) 2 Pn′− 2M(u = ) +2 R2 = R2
lim
c)  x lim n = Pn 
′′ ( x )  , 2!
?entãoR
c) Δxx→=α lim ?
n
Δ =  = =
x →Pαn (xx→ )α   ( x)
′   = P ′′ 3
Pn′′( xP)n′′( x)0n 0 
x → α k

Pn ′( xk ) 1! R2
263 Δx = −  P′(xP ) ′n(′x=()x−)   P0′′(xpara P′′( x ) M  =2
b) c) Δ lim x =Pn limlim n′′( x )
 
P
k  = lim
n
 2!
=
 = R3n = )?n 
lim
x →α x →
 xP→n′′α(xP
α
)Pn′′n(′′x()xx→) α x → P0nα′′′( xP)n′′′( x) 
Pn′( xPkn′′)( xP ′′( x1!)R R32! R3
Δx = −PΔ′ − (xx= ) −Pn′=(k0xn)−) =k − 22! = para  Pn′′(M x )==para
M 22M =M 3 =3
c) Δx = limΔx =nP
−para para
lim ′′( x
P  )
′′′ (= xP )
′′′ (= 2!
x
 ?
= R) lim
3! R  3! R 
 Pn′′ ( x )Pn (0x)   Pn′′′ ( x) 
x →α  x n α nk ′′ kn
→ k x3→α 4 4

 P′( x)  Pn′′(xkP)n′′(=x )−2! R3 para M = 3


lim  n Δx ==−lim P′′′ ( x ) 3! R
x →α P ′′( x )
 n  x →nα  Pkn′′′ ( x)  4
P′′( x ) 2! R
 P ( x)Pn ( x0) 
x →α 
lim  − lim Pnn′( x)  = 0 ==?lim  Pn′( x ) 
L'Hospital, como vimos na seção 3.2.2.4, uma vez que:
b) Δx =L'Hospital, como vimos na seção 3.2.2.4, uma vez que:

x →α
P Pn ( x) n′( x0)  x′→α  P
x →′α P ′′( x ) 
 P (( x
x )
)    PP ′ ′()x) n
n n( x
lim Pn ( x) ==lim
nn
lim′(xkP ′)(n′′xx=)) −
( x) 1!, então
(((xxxx)))=−=xPn R2
264 lim
→αα  P →αα P nn′′(
xlim P nn′Δ lim P   , então para M = 2
CÁLCULO NUMÉRICO COMPUTACIONAL
lim lim
x→ x→
x →α 
 P  =  P
x →α n ′′   ( x)
→α ( xkP ′′) x() x) 2!
P (xx))  xPn 
 R3
n′ ′′
 nn′(Pn
x →α  P
′( xk )  P 1! n (nR

∆Δxx = = −− Pn Pn ′( x )
Pn′′′′(((xxxkkk))) ==−− 1!
1! R 2
1!RRR222 para M para M==2 2
Pn 2!
∆xx ==−− Pn = − 03 para M = 2
Δ ′′(xP k) = −  3 para M =2
k ′ ( x) 2! R
c) Δx =Pn
c) Se lim′′′′((xxkk)n)
Pn 2!2!=RR3 3= ? à medida que xk tende à raiz α, então
 P ′ ( x )PPnn′′′0((xx))  00
x →α  
c) Δc) Se lim
x =deveremos
∆x= ′limreaplicar
n
 =Pn ( x=)?a= regra
 ′ 0= ? à medida que x tende à raiz α,
c) Se x →α∆x=Pn′′ (→xα)
(x →xα)PP
xlim  ′ 00()x) = 0= Pn?de
n=(′′x xL’Hospital,
′′( à medida que x
) k
tende à raiz α,
c) Δx = lim  Pnlim n ′′  == ?lim0 
k

P ( x ) P′′(nx0) 
x →α  x′′→α   P ( x ) x → α P′′′ ( x) 
 Pn′n( x)   n  Pn′′( x ) n
então deveremos reaplicar a regra de L'Hospital,
lim  ′  = lim
então deveremos reaplicar a regra de L'Hospital,
′′(x P) ′′( x ) 2!, então
x →α P Pnn′′′Δ(( xxx)) =− xP →nα kP
R
(′′x(−)x)  3 para M = 3
lim P ( x )  = lim  Pn′′′ =
nα( x k )′′′
Pn ′′ ( x3!
n
x →α P Pn ′ (xx) ) =xPlim ′′′ P ) R, então
 Pnn′′′′(P nRn( x )   , então
lim
( x ) 2! 4

→α 
xlim ′′   = →α
xlim  ′′′
xΔ→xα= − ( x
n ) k
Pnn′′PP(n′′′′′x(()xxk )) =x → −α 2! P 3
 PRn ′′′ ( x)( x )para M =3
Δx = − n k =− 3!
 R n3
4

para
para MM = 3= 3
PPn′′′′′ (( xxk )) 3!
2!RR4 3
n ′′ k
∆x =− Pn ( xk ) =− 2! R3 para M = 3
∆x =− P ′′′ ( x ) =−3! R4 para M = 3
Pnn′′′ ( xkk ) 3! R4
d) Para M genérico, temos:
d) Para M genérico, temos:
d) Para M genérico, temos:
P ( M −1) ( x ) ( M − 1)! R ( M − 1)! R
∆x =− Pnn ((MM −)1) ( xkk ) =− ( M − 1)! RMM =− ( M − 1)! RMM
∆x =− Pn ( M )( xk ) =− M ! RM +1 =− M ( M − 1)! RM +1
Pn ( xk ) M ! RM +1 M ( M − 1)! RM +1
RM
∆x =− R para M qualquer (26)
∆x =− M * RMM +1 para M qualquer
para M qualquer (26)
(26)
M * RM +1
Com xk +1= xk + ∆x dado pela mesma eq. (11b).
Com xk +1= xk + ∆x dado pela mesma eq. (11b).
Com xk + 1 = xk + ∆x dado pela mesma eq. (11b).
Exemplo 3.26: determine a raiz de P3 ( x) = x 33 − 3 x 2.2. + 3 x − 1 = 0
Exemplo 3.26: determine a raiz de P3 ( x) = x − 3 x + 3 x − 1 = 0
com 16 dígitos
Exemplo exatos, a sabendo que
= x3a – multiplicidade
+ 3x – 1 = 0 comdessa
com 16 3.26: determine
exatos, raiz de P3(x) 3x 16 dígitos
2
dígitos sabendo que a multiplicidade dessa
raiz é = 3.
exatos,Msabendo que a multiplicidade dessa raiz é M = 3.
raiz é M = 3.
Solução:
Solução:
Solução: Capítulo 3 – Solução de Equações não Lineares a uma Incógnita
Vamos partir do mesmo valor inicial x0 = 1.1, imprimir os 4
Vamos
Vamos partir do mesmo
partir do mesmo valor xinicial
valor inicial 0
= 1.1, imprimir
x0 = 1.1, osimprimir
4 restos dasos divisões
4
restos das divisões sucessivas de P
sucessivas (x) por (x
de P3(x) por (x – x0), usar M 3=(x) por (x –
3 e aplicar–a xeq. x ), usar M =
(26): M = 3 e 3 e
restos das divisões sucessivas de P 3
0
0
), usar
aplicar a eq. (26):
aplicar a eq. (26):
R3
∆x =−
3 * R3+1

3.16 – Tabela de resultados do Exemplo 3.26


R2 R3 R4 M ∆x (eq.26) xk +1 P3 ( xk ) + ∆x
00000 0.3000000 1.0 3 –0.1 1.0000 0.101
0 0 1.0 3 0.0 1.0000 0.0

Fonte: Elaboração própria


R3
∆x =−
3 * R3+1
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES R3 A UMA INCÓGNITA
NÃO LINEARES 265
∆x =−
3 * R3+1 3.26
Tabela 3.16 – Tabela de resultados do Exemplo
k xk RTabela
1 3.16
R2 – Resultados doRExemplo
R3 3.16
Tabela M ∆x3.26
4 – Tabela
(eq.26) P3 ( xk ) + 3.26
xk +1 do Exemplo
de resultados ∆x
0 1.1 0.0010000 0.0300000 0.3000000 1.0 3 –0.1 1.0000 0.101
k xk R1 R2 R3 R4 M ∆x (eq.26) xk +1 P3 ( xk ) + ∆x
1 1.0 0 0 0 1.0 3 0.0 1.0000 0.0
2 1.0 0 1.1 0.0010000 0.0300000 0.3000000 1.0 3 –0.1 1.0000 0.101
1 1.0 0 0 0 1.0 3 0.0 1.0000 0.0
Fonte: Elaboração própria
2 1.0
Observe que obtemos a raiz exata α1 = 1.0 em duas iterações:
Fonte: Elaboração própria. Fonte: Elaboração própria
na primeira, já calculamos a raiz exata; e, na segunda iteração,
Observe que obtemos a raiz exata α1 = 1.0 em duas iterações:
confirmamos essa raiz e sua multiplicidade Mα1 = 3 gerando 3 restos
= 1.0
na primeira, que
Observe já obtemos
calculamos a raiz a
exata
raiz em duas iterações: na primeira,
1 exata; e, na segunda iteração,
nulos, mas para tal tivemos que usar um valor de multiplicidade
já calculamos a raiz exata; e, na segunda iteração,Mconfirmamos essa raiz e
confirmamos essa raiz e sua multiplicidade 1
= 3 gerando 3 restos
previamente conhecido. Nesse exemplo de raiz única, se usarmos
sua multiplicidade M1 = 3 gerando 3 restos nulos, mas para tal tivemos que
nulos, mas para tal tivemos que usar um valor de multiplicidade
usar um
qualquer outro valor valor de multiplicidade
inicial da raiz, teremos previamente conhecido.
o mesmo resultado Nesse exemplo
previamente conhecido. Nesse exemplo de raiz única, se usarmos
de raiz única, se usarmos qualquer outro valor inicial da raiz, teremos o
convergido em 2 iterações. Perceba a dificuldade adicional de aplicar
qualquer
mesmo outro convergido
resultado valor inicial em 2da raiz, teremos
iterações. Perceba ao dificuldade
mesmo resultado
adicional
essa correção no método de Newton, dada pela eq. (26), que é a
convergido em 2 iterações. Perceba a dificuldade adicional de aplicar
de aplicar essa correção no método de Newton, dada pela eq. (26), que é a
necessidade de determinar previamente o valor da multiplicidade
necessidade
essa correção de determinar
no método previamente
de Newton, o valor
dada pela eq. (26), Mque
da multiplicidade de umaé a
M de uma raiz por meio de sua aproximação x
raiz por meio de sua aproximação x . .
necessidade de determinar previamente o valor da multiplicidade
k
k

Segundo o trabalho de Schroder (1992), a eq. (18) representa


Segundo o trabalho de
M de uma raiz por meio de sua aproximação x Schröder (1992), a eq.. (18) representa uma
estimativa clássica do valor da multiplicidade
uma estimativa clássica do valor da multiplicidade M̂ que, adaptada  kque, adaptada com os
restos dos Segundo o trabalho de Schroder (1992), a eq. (18) representa
polinômios representativos de f, f '' ee ff '''',, resulta em,resulta em,
com os restos dos polinômios representativos de f, f
uma estimativa clássica do valor da multiplicidade M̂ que, adaptada
com os restos dos polinômios representativos de f, f
( f ′( xk ) )
2
( R2 ) 2 ' e f '', resulta em,
M=ˆ =
(27) (27)
( f ′( xk ) ) − f ( xk ) f ′′(( xf k′()xk )()R2 2 ) − R1 *(2*R3 ) ( R2 )2
2 2

Mˆ = = (27)
( f ′( xk ) ) − f ( xk ) f ′′( xk ) ( R2 ) − R1 *(2*R3 )
2 2
Mas essa estimativa depende de vários fatores, como da proximidade
Mas essa estimativa depende de vários fatores, como da proximidade
da raiz xk com a raiz exata α e do número de raízes múltiplas presentes
da raiz xk com a raiz exata α e do número de raízes múltiplas presentes
Mas essa estimativa depende de vários fatores, como da proximidade
no polinômio.no polinômio.
da raiz x com a raiz exata α e do número de raízes múltiplas presentes
Para
Para no polinômio.
polinômios
k
polinômios
com única comraiz únicamúltipla,
raiz múltipla, a eq.
a eq. (27)
(27) geraa a multiplici-
gera
dade correta, independentemente do valor inicial da raiz, por exemplo:
multiplicidade correta, independentemente do valor inicial da raiz,
Para polinômios com única raiz múltipla, a eq. (27) gera a
por exemplo:
multiplicidade correta, independentemente do valor inicial da raiz,
a) para P3(x) = (x – 1)3, em x0 = +1.1, teremos  = 3.000000000001910; e
por exemplo:
a) para 3 ( xpara
) ( xP−(x) 1)3 , em x
Pb) =
3
= (x – 01)=3,+1.1, teremos
em x0 = –110, teremos  = 3.000000000000000.
ˆ
M = 3.000000000001910 ; e 3
3 ( x=
) ( x − 1) , em x0 = +1.1, teremos
a) para P
3 ( x=
b) para PPara ) polinômios com
( xˆ − 1)3 , em x = duas ou mais
–110, teremos
; e
raízes múltiplas, a estimativa dada
M = 3.000000000001910
0
pela
M = eq.
ˆ (27) é boa somente. para
3.000000000000000 valores de raízes nas proximidades da raiz
exata, como:b) para P3 ( x= ) ( x − 1)3 , em x0 = –110, teremos 89
Mˆ = 3.000000000000000.
266 CÁLCULO NUMÉRICO COMPUTACIONAL

a) Para P8(x) = (x + 1)2 (x – 0.9)6, em x0 = –1.001, teremos


 = 2.006315782479700;
b) Para P8(x) = (x + 1)2 (x – 0.9)6, em x0 = +0.91, teremos
 = 6.024375198569969; e
c) Para P8(x) = (x + 1)2 (x – 0.9)6, em x0 = +110, teremos
 = 7.999556745299021 ( inconsistente).

Então, para raízes Complexas ou relativamente afastadas da raiz


exata, as estimativas de  dadas pela eq. (27) falham e podem conduzir
a resultados inconsistentes. Assim, precisamos de uma forma alternativa
para estimar a multiplicidade  de raízes genéricas.

Quarta etapa: vamos agora avaliar o comportamento dos restos com a


aproximação de xk com a raiz exata α.

Vamos propor neste livro uma alternativa prática para determinar a


estimativa da multiplicidade  de cada raiz aproximada xk através de um
contador do número  de restos próximos de zero: R1, R2, R3, ..., R, ou
seja, do número de restos cujos valores em módulo fiquem abaixo de um
limite mínimo estabelecido por experimentos numéricos, definido aqui
pelo parâmetro Rlim no algoritmo proposto no Caderno de Algoritmos.

Quando xk estiver convergido para a raiz α, teremos  restos convergidos


para valores “numericamente nulos (residuais)”. Então, por esse algoritmo,
uma raiz aproximada xk já é considerada previamente de multiplicidade ,
quando  restos, ou quando a soma dos módulos desses restos, R1, R2, R3, ...,
R , estiver abaixo do resto limite Rlim.
Segundo uma sequência de experimentos numéricos, verificamos que
esse limite Rlim depende basicamente da distância entre as raízes, mas que
ainda não foram determinadas.
Então, considerando os coeficientes normalizados de modo que a1 = 1,
propomos que o limite Rlim seja o produto p = Rlim1 * Rlim2 , em que:
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 267

a) Rlim1 = 10% do valor mínimo das diferenças entre todos os coeficientes


em módulo, normalizado pelo maior dos coeficientes em módulo.
Se essa diferença mínima for nula, adotaremos Rlim1 = 0.1; e
b) Rlim2 é o inverso da potência de 10 elevada ao número máximo de
dígitos “fracionários” dos coeficientes (esse valor mede a influência
direta da precisão das raízes).

Esse produto p deverá ser limitado a um valor mínimo para não


gerar Rlim nulo, então vamos adotar um mínimo 10–8 para considerar restos
nulos sempre que ficarem menores que 10–8 (equivale à metade da precisão
adotada, para algoritmos construídos com variáveis double de 16 dígitos
significativos), resultando na equação:

Rlim = max(p, 10–8) (28)

O parâmetro Rlim é dependente da distância entre as raízes, do grau


do polinômio e da precisão das variáveis utilizadas para o processamento
numérico.

Esse parâmetro Rlim captura bem raízes múltiplas espaçadas e ao mesmo


tempo relativamente próximas entre si. Estas últimas precisam convergir até
restos menores, por exemplo, da ordem de 10–8, para serem consideradas
numericamente nulas, conforme os exemplos a seguir.

Exemplo 3.27: determine as três raízes de x3 – 3x2 + 3x – 1 = 0 com 16 dí-


gitos exatos e suas respectivas multiplicidades M (sabemos que a raiz é
α = 1.0 e a sua multiplicidade é M = 3).

Solução:
Tomamos x0 = 1.1, conforme o Exemplo 3.24, calculamos o limite para os
restos pela eq. (28), com:

a) Rlim1 = 0.1 (pois a mínima diferença entre os 4 diferentes coefici-


entes é zero); e
limite para o restos pela eq. (28), com:
0
limite para o restos pela eq. (28), com:
268 a) Rlim1 = 0.1 (pois a mínima diferença entre os 4 diferentes
CÁLCULO NUMÉRICO COMPUTACIONAL
a) Rlim1 = coeficientes é zero); e
0.1 (pois a mínima diferença entre os 4 diferentes
coeficientes é zero); e
0
b) Rlim20 = 1/100 (pois o número máximo de dígitos “fracionários”
b) Rlim2b) R
= 1/10 =(pois o número máximo de dígitos “fracionários”
1/10 (pois o número máximo de dígitos “fracionários” dos
dos
lim2
coeficientes
coeficientes{1,{1,–3, {1,
–3,+3, –3, é+3,
+3, –1}
–1} –1} é zero, uma vez que são
dos coeficientes é zero,
zero, uma
uma vez que
vez sãosão
que coeficientes
coeficientes inteiros, sem frações decimais).
inteiros, sem frações decimais).
coeficientes inteiros, sem frações decimais).

Aplicando a eq. (28), teremos o seguinte resto limite:


Aplicando a eq. (28), teremos o seguinte resto limite:
Aplicando a eq. (28), teremos o seguinte resto limite:

Rlim = max( =lim1


Rlim R max( Rlim1
* Rlim1
−8
10−8 ) =* 1max(0.1
) = ,max(0.1
* Rlim1
, 10 , 10−8 ) = 0.1
, 10−8 ) =* 10.1

Aplicando o método de Newton modificado com a eq. (26) e


Aplicando o método de Newton modificado com a eq. (26) e
Aplicando o método de Newton modificado com a eq. (26) e estimando
estimando a multiplicidade
a multiplicidade  a cada a cada iteração pelo número
M̂ iteração
estimando a multiplicidade M̂pelo número  de restosM̂próximos de
a cada iteração pelo número M̂
zero, temos:
de restos próximos de zero, temos:
de restos próximos de zero, temos:
Tabela 3.17 – Tabela de resultados do Exemplo 3.27
Tabela 3.17 –Tabela
Resultados
3.17do –Exemplo
Tabela3.27
de resultados do Exemplo 3.27
k xk R1 R2 R3 R4 M̂ ∆x (eq.26) xk +1 P3 ( xk ) + ∆x
k xk R1 R2 R3 R4 M̂ ∆x (eq.26) xk +1 P3 ( xk ) + ∆x
0 1.100 0.0010000 0.0300000 0.3000000 1.0 2 –0.05 1.050 0.0510
1 1.050 01.2500e–04
1.100 0.0010000
7.5000e–03 0.0300000
1.5000e–01 0.3000000
1.0 2 1.0 2
–2.5e–02 1.025–0.05 2.5125e–02
1.050 0.0510
2 1.025 11.5625e–05 1.8750e–03 7.5000e–03
1.050 1.2500e–04 7.5000e–02 1.0 3
1.5000e–01–2.5e–02
1.0 2 1.000
–2.5e–022.5016e–02
1.025 2.5125e–02
3 1.000 2 0
1.025 0
1.5625e–05 0
1.8750e–03 1.0 3
7.5000e–02 0.0
1.0 3 1.000
–2.5e–02 01.000 2.5016e–02
4 1.000
3 1.000 0 0 0 1.0 3 0.0 1.000 0
4 1.000 Fonte: Elaboração própria

Fonte: Elaboração própria. Fonte: Elaboração própria


Em k = 0 e k = 1, R1 e R2 estão abaixo de Rlim = 0.1 e a sua soma
também é menor do que R
Em kk =
Em e k ==1,1, R
= 00 e k R =estão
R1 e e R
lim
0.1 (destacados em negrito), ou
abaixo de Rlim = 0.1 e a=sua
estão abaixo de R 0.1soma também é
e a sua soma
1 2 2 lim
seja, 2 restos são considerados suficientemente pequenos, logo
menor do que Rlim = 0.1 (destacados em negrito), ou seja, 2 restos são conside-
também é menor do que Rlim = 0.1 (destacados em negrito), ou
Mˆ = 2 . logo a multiplicidade estimada é  = 2.
rados suficientemente pequenos,
a multiplicidade estimada é
seja, 2 restos são considerados suficientemente pequenos, logo
Em k = 2, R1, R2 e R3 estão abaixo de Rlim = 0.1 e a sua soma
Em k = 2, R1, R2 e R3 estão abaixo de R
a multiplicidade estimada é Mˆlim==20.1
. e a sua soma mantém-se menor
mantém-se menor do que R = 0.1 (destacados em negrito),
do que R = 0.1 (destacados em negrito), ou seja, 3 restos são considerados
lim
Em k = lim 2, R1, R2 e R3 estão abaixo de Rlim = 0.1 e a sua soma
suficientemente pequenos, logo a multiplicidade estimada é  = 3.
mantém-se menor do que Rlim = 0.1 (destacados em negrito),
Em k = 3, quarta iteração, temos a confirmação da raiz convergida para
1.0 (exata) e da sua multiplicidade M = 3, pois 3 restos, nesse caso, são
exatamente zero.
0 ) = R1 Pn ( x0 ) = R1 Pn ( x0 ) = R1

) = R2 Pn′( x0 ) = R2
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA Pn′( x0 ) = R2 269
0

260
260
+1.36284988456718 − 1.59
6284988456718 − 1.59235983373818i
+1.36284988456718
Então, os resultados− 1.59235983373818i
desse algoritmo de Newton modificado para
raízes múltiplas são exatos, x1 = 1.0, e M1 = 3, conforme o 263Exemplo 3.27,
263
enquanto os resultados obtidos com multiplicidade M = 1 geram resul-
P ′′ ( x )
tados com apenas 6 dígitos significativos exatos (análogos aos resultados 2! R3
Pn′′ ( xk ) da2!função
R3 Pn′′ ( xroots(
) 2! R Δx = − n k = −
− =Δ−x = − k
= −) do Octave),
3 conforme o Exemplo 3.24. Pn′′′ ( xk ) 3! R4
Pn ( xk )
′′′ 3! R4Pn ( xk )
′′′ 3! R4
269
Exemplo 3.28: determine as raízes de
269
P8 ( x) = 1x8 − 3.4 x7 + 2.35 x 6 +
( x) =x16 x+8 4.32
= 1x8 − 3.4 x7 +P82.35 − 3.4xx5 7−+7.1685
2.35 x 6x+4 +4.32 x5 − 7.1685
1.56006 x 4 + 1.56006
x3 +3.287061 x 2 x3 +3.287061x 2− 2.480058 x + 0.531441
− 2.480058 x + 0.531441 − 2.480058
= 0 x + 0.531441 = 0
270
270
com 16 dígitos exatos e suas respectivas multiplicidades (polinômio fatorado
| −3.4 |
equivalente: P8(x) = (x + 1)2 (x – 0.9)6 = 0).
4| | −3.4 | 286
Solução: T
α = [α1 , α2 , ..., αn ] , onde
286
Nenhuma raiz Real foi localizada pelo teorema de Bolzano, pois ambas
T
, [onde
α1 , αsão
2 ,α..., ]/ ,Fonde / Fe (Pα8)(x)= não
0 produz trocas de sinais,
T
α1 , α2 , ..., αα ] =raízes
nas i∈de (α ) =αi0∈ ℂ
αℂnmultiplicidade par
288
conforme o Gráfico 269
3.14.
288 Grafico 3.14 .., i = 1,..., n , ...
Gráfico 3.14 – Representação da função P8(x)
1,..., n , ... .., i = 1,..., n , ... 297
P8 ( x )  f1 ( x1 + Δx1 , x2 , ..., xn ) −
297  Δx1

 f1 ( x1 + Δx1 , x2 , ..., xn ) −f1 (f1x(1 x+1 ,Δxx21,,...x, 2x,n...), xn ) f−1 (fx11(,xx12, ,x...2,, x...n, x+n Δ ) xn ) f−1 (fx11(,xx12, ,x...2,,x...n, x+nΔ
....
) xn) − f1 ( x1 , x2 ,...f,2x(nx)1 +Δx1 , x2 , ..., xn ) −
 Δxn J ( X ) ≅  
....
 Δx1 Δ x 1 Δxn Δx1
  
 f 2 ( x1 + Δx1 , x2 , ..., xn ) −f 2 (f 2x1( x+1 ,Δxx21,,...x,2x,n...), xn ) −f 2 (f x2 1(,xx1 ,2 x, ...2 ,, ...x,n x+n )Δx....n )f−2 (fx21(, xx12,,x...2, ,x...n, +xnΔ) xn )(7)
− f 2 ( x1 , x2 , ..., xn )  (7)



 (  , , , n) −
....
≅  J (X )Δ ≅x1 Δ x 1 Δxn Δ x f x
 n 1  1 2 + Δx x ... x
n  Δ x1
 ⋮ ⋮ ⋮  ⋮  
  
f ( x + Δx , x , ..., x ) − f ( x , x , ..., x ) f ( x , x , ..., x + Δx ) − f n ( x1 , x2 , ..., xn ) 
 f n ( x1 + Δx1 , x2 , ..., xn ) −n f n 1( x1 , x21, ...,2xn ) ....n f n ( nx1 , x1 2 , ...2 , xn +n Δx....n ) −n f n1( x12, x2 , ...n, xn ) n
 Δx1 Δx1 Δxn Δxn 305 

a)
x
305 X = [0.7851969330
Fonte: Elaboração297
própria.
a) a)  f1 ( x1 + Δx1 , x2 , ..., xn ) − f1 ( x1 , x2 , ..., xn )
....
f1 ( x1 , x2 , ..., xn + Δxn ) − f1 ( x1 , x2 , ..., xn ) 
 Δx1 Δxn 
 
As raízes [0.785196933062355,
X =iniciais
X = [0.785196933062355, 0.496611392944656,
0.496611392944656,
(7)
0.369922830745872]
0.369922830745872]
complexas são geradas randomicamente
J (X ) ≅  pela
T
b)
função T
 f 2 ( x1 + Δx1 , x2 , ..., xn ) − f 2 ( x1 , x2 , ..., xn )
Δx1
....
f 2 ( x1 , x2 , ..., xn + Δxn ) − f 2 ( x1 , x2 , ..., xn ) 
Δxn 

fLocaliza(n, a) apresentada no Caderno de Algoritmos. 

f
 n 1 ( x + Δ x1 , x2 , ..., xn

) − f n ( x1 , x2 , ... , xn ) f n ( x1 , x 2 , ..., x n + Δxn


) − f n ( x1 , x2 , ..., x )
n 


....
 Δx1 Δxn 

b) b) 302
(8a) e (8b), ou (8c),
As raízes iniciais complexas são geradas randomicamente pela
As raízes iniciais complexas são geradas randomicamente pela
As raízes iniciais complexas são geradas randomicamente pela
270
As raízes iniciais complexas são geradas randomicamente pela CÁLCULO NUMÉRICO COMPUTACIONAL
função fLocaliza(n,a) apresentada no Caderno
função fLocaliza(n,a) apresentada no Caderno
função fLocaliza(n,a) apresentada no Cadernode dedeAlgoritmos.
Algoritmos.
Algoritmos.
função fLocaliza(n,a) apresentada no Caderno de Algoritmos.
O limite para os restos é determinado por:
O limite para os restos é determinado por:
O limite para os restos é determinado por:
O limite para os restos é determinado por:
O limite para os restos é determinado por:
a)
a)
a)
RRlim1
Rlim1 ===0.00157548999093255
0.00157548999093255
0.00157548999093255 , pois a mínima diferença entre
, pois a mínima diferença entre
, pois a mínima diferença entre
a) Rlim1 = 0.00157548999093255
lim1 , pois a mínima diferença entre
lim1 a) R =os
0.00157548999093255, pois a mínima
todos
todos
todos os
os coeficientes
coeficientes
coeficientes ocorre ocorre
ocorre entre
entre
entre |−
| |−3.4
−3.4|diferença
3.4 | |e e e | + entre todos
| |+3.287061|
+3.287061|, ,,
3.287061|
todos os lim1 coeficientes ocorre entre | −3.4 | e | +3.287061| ,
os
que
que
que coeficientes
foi
foi
foi normalizada
normalizada ocorre
normalizada entre
pelo |–3.4|
pelo
pelo e
maior
maior |+3.287061|,
maior coeficiente
coeficiente
coeficiente que foi
em
em normalizada
em módulo
módulo
módulo
que foi pelo normalizada maior pelo maior
coeficiente em coeficiente
módulo em módulo
|–7.1685|; e
|−
| |−7.1685
−7.1685
7.1685 | ; e
| ; e
| ; e
| −7.1685 | ; e
b) R
b)
b)
b)
RRlim
Rlim 6= ==1/10
2=1/10
1/10
1/10 666, 6pois o número máximo de dígitos “fracionários” dos
, pois o número máximo de dígitos “fracionários”
, pois o número máximo de dígitos “fracionários”
, pois o número máximo de dígitos “fracionários”
b) Rlim = 1/10 2 62, pois o número máximo de dígitos “fracionários”
lim2
lim
lim 2
2
coeficientes
dos coeficientes de
dos coeficientes de
dos coeficientes de de P8(x)PPéP(x)
6(x)
(são
(x) coeficientes com no máximo 6 dígitos
é 6 (são coeficientes com no máximo
é 6 (são coeficientes com no máximo
é 6 (são coeficientes com no máximo
dos coeficientes de
depois do ponto P 8
(x) é 6 (são coeficientes com no máximo
8 88
(vírgula)).
8
6 dígitos depois do ponto (vírgula)).
6 dígitos depois do ponto (vírgula)).
6 dígitos depois do ponto (vírgula)).
6 dígitos depois do ponto (vírgula)).
Aplicando a eq. (28), teremos o seguinte resto limite:
Aplicando a eq. (28), teremos o seguinte resto limite:
Aplicando a eq. (28), teremos o seguinte resto limite:
Aplicando a eq. (28), teremos o seguinte resto limite:
Aplicando a eq. (28), teremos o seguinte resto limite:
−8−8−8 −6−6−6 −8 −8−8−8 −8−8−8
Rlim
Rlim =
RRlim
= max(
max( R=lim1
Rlimlim
R =max(
=max(
*max(
lim1 *
RR
Rlim
R Rlim1
2lim1
lim 2
* *R*−
,,lim1
10
10
−R8R , ,10
8
limlim2= ,10
10 ) )=)=max(0.00157548999093255
=max(0.00157548999093255
max(0.00157548999093255
=2 2max(0.00157548999093255
))lim max(0.00157548999093255 * 10
* 10*−−10
10−−66 ,, 10 8* 10
8
))* 10
= 10
= 10, ,−10 10) )=)=10
,810 =10
10

Note
Note
Note
Note que, que,
que,
que,
nesse nesse
nesse
nesse exemplo,
exemplo, exemplo,
exemplo, os
os
os
os restos restos
restos
restos
só só
serão só

serão
serão
serão considerados
considerados considerados
considerados
Note que, neste exemplo, os restos só serão considerados suficientemente –8–8–8
suficientemente pequenos quando ficarem abaixo de R
suficientemente pequenos quando ficarem abaixo de R
suficientemente pequenos quando ficarem abaixo de R
suficientemente pequenos quando ficarem abaixo de R –8
–8
= 10–8 ===
,limlimlim 10
10
10 , ,,
pequenos quando ficarem abaixo de Rlim = 10 , ou lim seja, quando a raiz
lim
ou
ou
ou
ou seja, seja,
seja,
seja,
quando
aproximadaquando
quando
quando
raiz a
a estiver a
a
raiz
raiz
raiz
aproximada
aproximada
bem aproximada
aproximada
próxima estiver estiver
estiver
estiver
próxima
da raiz convergida.próxima
próxima
próxima
da raiz da da da
raiz
raiz
raiz
convergida.
convergida.
convergida.
convergida.
Assim, os resultados obtidos são duas raízes exatas com suas respectivas
Assim, os resultados obtidos são duas raízes exatas com suas
Assim, os resultados obtidos são duas raízes exatas com suas
Assim, os resultados obtidos são duas raízes exatas com suas
Assim, os resultados obtidos são duas raízes exatas com suas
multiplicidades:
respectivas multiplicidades:
respectivas multiplicidades:
respectivas multiplicidades:
respectivas multiplicidades:

x11 = +0.900000000000000 + 0.000000000000000


x1xx1=1==++0.900000000000000
+0.900000000000000
0.900000000000000 i e M11 = 6i i e M
++0.000000000000000
+0.000000000000000
0.000000000000000 i e M
e M ===
1 11
666
x22 = −1.00000000000000 + 0.000000000000000
xxx===−−1.00000000000000
−1.00000000000000
1.00000000000000 i e M2 = 2i i e M
++0.000000000000000
+0.000000000000000
0.000000000000000 i e M
e M===222
2 22 2 2 22

enquanto os resultados
enquanto
enquanto
enquanto os
os
os obtidos
resultados
resultados
resultados com multiplicidade
obtidos
obtidos
obtidos com
com
com M = 1 MMM===111
multiplicidade
multiplicidade
multiplicidade
enquanto os resultados obtidos com multiplicidade M = 1 (análogo à função
(análogo à função
(análogo
(análogo
(análogo roots( ) roots(
do Octave)
roots(
roots(
) ) do
) do geram resultados com com
roots( ) doà à
à
função
função
função
Octave) geram do
resultadosOctave)
Octave)
Octave)
geram
geram
geram
com apenas 3 a resultados
6resultados
resultados com
com
dígitos significativos
apenas 3 a 6 dígitos significativos exatos.
apenas 3 a 6 dígitos significativos exatos.
apenas 3 a 6 dígitos significativos exatos.
apenas 3 a 6 dígitos significativos exatos.
exatos.

Para cada Para


raiz decada raiz de multiplicidade
multiplicidade M, devem M,ser
devem M M reduções
ser efetuadas
efetuadas
Para
Para
Paracada
cada
cada raiz
raiz
raizde
de
demultiplicidade
multiplicidade
multiplicidade M,M,
M,devem
devem
devem
de grau para então determinar as próximas raízes. ser
ser
ser
efetuadas
efetuadas
efetuadas MM
M
reduções de grau
reduções
reduções
reduçõesde para
de
degrauentão
grau
graupara determinar
para
paraentão
então as próximas
entãodeterminar
determinar
determinarasas raízes.
aspróximas
próximas
próximasraízes.
raízes.
raízes.

Nos exemplos testados, se a soma dos módulos dos restos, R1, R2, R3,..., R,
Nos exemplos
for menor testados,
do que Rse ,a consideraremos
soma dos módulos dos restos, estimada da
que a multiplicidade
Nos
Nos
Nos exemplos
exemplos
exemplos . Desse testados,
testados,
testados,
lim
se
se
se
a
a
a
soma
soma
soma dos
dos
dos módulos
módulos
módulos dos
dos
dos
restos,
restos,
restos,
R1, R2, Rraiz
3
,..., xkRserá , for menor modo, podemos
do que acelerar o processoque
Rlim, consideraremos de convergência,
1 2
RR1R, 31, 1R
, R2R, 2, 2R
, RM̂3R,...,

33
,...,
,..., RRM̂RM̂, M̂, for
, for
for menor
menor
menor do
do
do que
lim
que
que
RRlim , , consideraremos
Rlimlim , consideraremos
consideraremos que
que
que
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 271

usando a eq. (26), por meio de sucessivas estimativas de , que devem ser
confirmadas no final, na última iteração, quando todos os restos até RM
tornam-se valores residuais. Consequentemente, RM + 1 será naturalmente
diferente de zero, e a eq. (26) será aplicável até o limite da precisão digital
das variáveis envolvidas, obtendo raízes com a precisão máxima possível
para a variável utilizada, no caso double.

Quando as raízes estão próximas entre si, os restos para valores de x


nessa região diminuem muito, como se as raízes próximas fossem uma única
raiz múltipla, então precisamos de um valor Rlim menor do que um Rlim para
raízes mais espaçadas, a fim de eliminar uma possível falsa multiplicidade.
Nesses casos, temos de fazer o processo iterativo chegar mais próximo da raiz
exata para então assumir que essa raiz aproximada tenha multiplicidade M.
São aspectos importantes sobre o comportamento dos restos:
a) Em P3(x) = x3 – 3x2 + 3x – 1 = (x – 1)3, temos três raízes iguais a 1.0,
M = 3 e 3 restos convergidos são nulos. No processo iterativo, os
restos se reduzem gradativamente, mas sempre em ordem crescente
R1 < R2 < R3, até o quarto resto R4, que é sempre igual ao primeiro
coeficiente a1.
b) No exemplo testado por Rall (1966) para o polinômio, P5(x)
= (x – 1 + ε)(x – 1)(x – 1 – ε)(x – 2)(x – 3) com ε = 10–2 e 10–3,
temos três raízes próximas a 1.0 e todas com multiplicidade M = 1.
Nesse caso, com ε = 10–2 e para a primeira raiz encontrada, os restos
convergem para R1 da ordem de O(10–15), R2 na ordem de O(10–3),
R3 na ordem de O(10–2) e o quarto resto é da ordem da unidade.
Esses valores de restos poderiam gerar uma falsa multiplicidade
M = 3 se o Rlim estabelecido fosse, por exemplo, da ordem de
O(10–2), mas aplicamos o Rlim proposto pela eq. (28), que assumiu
o valor mínimo 10–8 , ou seja, considerou apenas o R1 como resto
nulo e manteve a multiplicidade correta M = 1. Se fosse o caso de
uma multiplicidade M = 3 verdadeira, os restos desse polinômio
decresceriam até ficarem todos menores do que Rlim = 10–8 e teríamos
obtido M = 3.
valor
valor mínimo
valor mínimo 10
mínimo 10–8 ,  ,
10  , ou
ou seja,
ou seja, considerou
seja, considerou apenas
considerou apenas o
apenas o RR
o R11111 como
como
como
resto nulo e manteve a multiplicidade correta
resto nulo e manteve a multiplicidade correta
resto nulo e manteve a multiplicidade correta
M
MM= =
= 1
1 . Se fosse
. Se fosse
= 11. Se fosse
. Se fosse
resto nulo e manteve a multiplicidade correta M
272 o
o o
caso
caso
caso
de
de
de
uma
uma
uma
multiplicidade
multiplicidade
multiplicidade
M = 3 verdadeira,
== 33 verdadeira,
M CÁLCULO verdadeira,
os
os
os
restos
restos
restos
o
o caso
caso de de uma multiplicidade M
uma multiplicidade M = 3 verdadeira,
verdadeira, os os restos
NUMÉRICO COMPUTACIONAL
restos
desse polinômio decresceriam até ficarem todos menores do
desse polinômio decresceriam até ficarem todos menores do
desse polinômio decresceriam até ficarem todos menores do
desse polinômio decresceriam até ficarem todos menores do
desse polinômio decresceriam até ficarem todos menores do
–8
que RR lim =
== 1010 –8 e teríamos obtido M = 3.
–8
M == 3.
que
que
que Rlim R = 10
10
–8
e teríamos obtido M
–8 e teríamos obtido
e teríamos obtido = 33...
c) que
Para lim
outro
lim
lim polinômio
c) Para outro polinômio com 5 raízes próximas como com 5 raízesM
e teríamos obtido próximas como
c) Para outro polinômio com 5 raízes próximas como
c) Para outro polinômio com 5 raízes próximas como
c) Para outro polinômio com 5 raízes próximas como
c) Para outro polinômio com 5 raízes próximas como
P ((xx)) = −−xx1010 − 7 x 99 + 20.95 x 88− 34.75 x 77 + 34.5004 x 66 − 20.5012 x 55+
9 8 7 6 5
PP10
P1010 (( xx)) ==
= −

10 −
xx10
10 −

77xx99 ++20.95
7 x + 20.95
20.95
xx88 −−34.75
x − 34.75
34.75
xx 77 ++34.5004
x + 34.5004
34.5004
xx 66 −−20.5012
x − 20.5012
20.5012
xx55 ++
x +
10
10
++ 6.7512 x 44 − 0.9504 x 33− 0 x 22 − 0 x + 0
4
6.7512 xx 4 −−0.9504
3 2
x − 00xx 2 −−00xx++00
+
+ 6.7512
6.7512
4
0.9504 xx3 −
x − 0.9504
3 2
− 0 x −3 0 x + 0
(( P ( x ) =− ( x 0) 33( x − 0.8)( x − 0.9)( x − 1.0) 33( x − 1.1)( x − 1.2) ),
3
pelo
1.2)),
, pelopelo
10 ((xx)) =−
((PP
10 ( x ) =−
P1010 =−(( x 0) ( x − 0.8)( x − 0.9)( xx−−
(xx 0)
0) 3
3((xx−− 0.8)(
0.8)( xx−−0.9)(
0.9)( x 1.0)33(((xxx−−
−1.0)
1.0) 1.1)(xxx−−
−1.1)(
1.1)( −1.2)
1.2) ),
), pelo
méto-
pelo
método
do
10
de Newton de Newton
modificado modificado para
para raízes raízes múltiplas são
método
método
método de
de Newton
de Newton
Newton modificado
modificado
modificado para múltiplas
para
para raízes
raízes são geradas
raízes múltiplas
múltiplas
múltiplas são as
são
são
geradas as seguintes raízes:
seguintes raízes:
geradas as seguintes raízes:
geradas as seguintes raízes:
geradas as seguintes raízes:
geradas as seguintes raízes:
xxx1 = = 000 ⇒

⇒ M111=
M = 333
x1111 ==0 ⇒MM11 = =3
xx2 = 0.8000000000143045 ⇒
⇒ M222 == 111
M =
xx222 ===
0.8000000000143045
0.8000000000143045
0.8000000000143045 ⇒
⇒MM22 = 1
2
xxx3 = 0.8999999993704603
= 0.8999999993704603 ⇒

⇒ M333=
M = 111
x3333 == 0.8999999993704603
0.8999999993704603 ⇒MM33 = =1
xxx4 = 1.0000000000113123 ⇒
⇒ M =
= 3333
x4444 ==
= 1.0000000000113123
1.0000000000113123
1.0000000000113123 ⇒M
⇒ M444 ==
M 44
xxx5 = = 1.1000000003988399
1.1000000003988399 ⇒

⇒ M555=
M = 111
x5555 == 1.1000000003988399
1.1000000003988399 ⇒MM55 = =1
xxx6 = 1.2000000000078299 ⇒
⇒ M =
= 1111
x6666 ==
= 1.2000000000078299
1.2000000000078299
1.2000000000078299 ⇒M
⇒ M666 ==
M 66
(resultados com no mínimo 10 dígitos significativos exatos)
(resultados com no mínimo 10 dígitos significativos exatos)
(resultados com no mínimo 10 dígitos significativos exatos)
(resultados com no mínimo 10 dígitos significativos exatos)
(resultados não extaos, mas com no mínimo 10 dígitos significativos
Enquanto pelo método de Newton tradicional teremos raízes
Enquanto pelo método de Newton tradicional teremos raízes
Enquanto pelo método de Newton tradicional teremos raízes
Enquanto pelo método de Newton tradicional teremos raízes
exatos), enquanto
múltiplas pelo método
calculadas como de Newton
raízes tradicional
distintas e com teremos
apenas raízes
4
múltiplas
múltiplas
múltiplas calculadas
calculadas
calculadas como
como
como raízes
raízes
raízes distintas
distintas
distintas e
e
e com
com
com apenas
apenas
apenas 4
4
4
múltiplas calculadas
múltiplas calculadas como
como raízes
raízes distintas
distintas e com
e com apenas
apenas 4
4 dígitos
dígitos significativos exatos:
dígitos significativos exatos:
dígitos significativos exatos:
dígitos significativos exatos:
significativos exatos:
dígitos significativos exatos:
1.199999999821068
1.199999999821068 + 0.000000000000000i
1.199999999821068++0.000000000000000i
0.000000000000000i
1.199999999821068++0.000000000000000i
0.000000000000000i
1.199999999821068
1.100000002521077
1.100000002521077
+ 0.000000000000000i
1.100000002521077+++0.000000000000000i
1.100000002521077 0.000000000000000i
0.000000000000000i
1.000159100194941
1.100000002521077
1.000159100194941 + 0.000275675116168i
+ 0.000000000000000i
1.000159100194941+++0.000275675116168i
1.000159100194941 0.000275675116168i
0.000275675116168i
1.000159100194941-+0.000275675116168i
1.000159100194941 0.000275675116168i
1.000159100194941
1.000159100194941----0.000275675116168i
1.000159100194941
1.000159100194941 + 0.000275675116168i
0.000275675116168i
0.000275675116168i
1.000159100194941
0.999681795585784 0.000275675116168i
++ 0.000000000000000i
0.999681795585784
0.999681795585784 + 0.000000000000000i
0.000000000000000i
0.999681795585784
1.000159100194941
0.900000001769856 + 0.000000000000000i
– 0.000275675116168i
+ 0.000000000000000i
0.900000001769856
0.900000001769856+++0.000000000000000i
0.000000000000000i
0.900000001769856
0.799999999912334 + 0.000000000000000i
0.000000000000000i
0.999681795585784
0.799999999912334 + 0.000000000000000i
0.799999999912334+++0.000000000000000i
0.799999999912334 0.000000000000000i
0.000000000000000i
0.799999999912334++0.000000000000000i
0.000000000000000 0.000000000000000i
0.000000000000000
0.000000000000000++++0.000000000000000i
0.900000001769856
0.000000000000000 + 0.000000000000000i
0.000000000000000i
0.000000000000000i
0.000000000000000
0.000000000000000 0.000000000000000i
++ 0.000000000000000i
0.000000000000000
0.000000000000000 + 0.000000000000000i
0.000000000000000i
0.000000000000000
0.799999999912334
0.000000000000000 + 0.000000000000000i
+ 0.000000000000000i
+ 0.000000000000000i
0.000000000000000
0.000000000000000+++0.000000000000000i
0.000000000000000i
0.000000000000000 0.000000000000000i
0.000000000000000 + 0.000000000000000i
(resultados análogos aos obtidos pela função roots() do Octave
(resultados análogos aos obtidos pela função roots() do Octave
(resultados análogos aos obtidos pela função roots() do Octave
(resultados análogos aos obtidos pela função roots() do Octave
(resultados análogos aos obtidos pela função roots() do Octave
0.000000000000000 + 0.000000000000000i
ou pelo Wolfram
ou pelo Wolfram Alpha).
Alpha).
ou pelo Wolfram
ou pelo Wolfram Alpha).
Alpha).
0.000000000000000 + 0.000000000000000i

(resultados análogos aos obtidos pela função roots( ) do Octave ou


pelo Wolfram Alpha).
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 273
d) Para polinômios de grau elevado e multiplicidade também
elevada, o algoritmo de Newton modificado para raízes
múltiplas proposto neste livro também foi eficiente. Por
d) Para polinômios de grau elevado e multiplicidade também elevada,
exemplo,
o algoritmopara a equação
de Newton polinomial
modificado P20
para raízes (x) = (x – 1)20
20 = 0
20 múltiplas proposto
expandida, temos:
neste livro também foi eficiente. Por exemplo, para a equação
polinomial P20(x) = (x – 1)20 = 0 expandida, temos:
i) uma única raiz x11 = 1.0 com multiplicidae M11 = 20 (20
uma única raiz xx111); e
i) raízes iguais a = 1.0 com multiplicidade M1 = 20 (20 raízes
iguais a x );
ii) com algoritmo
1
e de Newton original, sem a correção de
ii) com algoritmo de Newton original, sem a correção de multi-
multiplicidade ou com a função roots() do Octave, temos 20
plicidade ou com a função roots( ) do Octave, temos 20 raízes
raízes distintas e imprecisas como as duas exemplificadas
distintas
a seguir: imprecisas como as duas exemplificadas a seguir:
e

1.322055777843924 + 0.055758394623173i
0.754913929640771 + 0.000000000000000i

Por fim, obtivemos os parâmetros limite da eq. (28) por meio


Por fim, alertamos que obtivemos os parâmetros-limite da eq. (28) por
meio de diversos testes numéricos com diferentes polinômios, que devem
de diversos testes numéricos com diferentes polinômios, que devem
ser novamente experimentados para especificidades de novas famílias de
ser novamente experimentados para especificidades de novas famílias
polinômios. Há também uma dependência natural das raízes em relação
de polinômios. Há também uma dependência natural das raízes em
ao seu valor inicial, que foi minimizada por um algoritmo de localização
relação ao seu valor inicial, que foi minimizada por um algoritmo de
precisa de raízes iniciais, conforme fLocaliza(n, a).
localização precisa de raízes iniciais, conforme fLocaliza(n,a).

Nos casos de raízes muito próximas entre si, é recomendada a


utilização de técnicas como a determinação dos autovalores da matriz
Nos casos deusando
companheira raízesomuito
método próximas entre si,
QR, conforme é recomendada
Serre (2002).
a utilização de técnicas como a determinação dos autovalores
da matriz companheira usando o método QR, conforme Serre
Na próxima seção, vamos detalhar o processo de purificação das raízes determinadas
(2002).
nos polinômios de grau reduzido visando minimizar o efeito do acúmulo de erros de
arredondamentos decorrentes dessas reduções de grau.

Na próxima seção, vamos detalhar o processo de purificação das raízes


determinadas nos polinômios de grau reduzido visando minimizar o
efeito do acúmulo de erros de arredondamentos decorrentes dessas
reduções de grau.
274 CÁLCULO NUMÉRICO COMPUTACIONAL

3.3.4.2
3.4.2 Purificação Purificação
de Raízes deRedução
Obtidas com raízes obtidas
de Grau com redução de grau
Considere a equação polinomial:
Considere a equação polinomial:
P4 ( x) =
x 4 − 11.101x 3 + 11.1111x 2 − 1.0111x + 0.001 =
0
ue tem as seguintes raízes exatas:
que tem as seguintes raízes exatas:
α1 = 0.001
α1 = 0.001
α2 = 0.1
α2 = 0.1
α3 = 1
α3 = 1
α4 = 10
α4 = 10
Considere que a quarta raiz aproximada pelo método de
ewton seja α4 =Considere que a quarta raiz aproximada =pelo
10.000005, com multiplicidade M método de Newton seja
1, e que tenha
α = 10.000005,
do encontrada em P
4
com multiplicidade M = 1, e que tenha
(x) = 0 pelas reduções sucessivas de grau: sido encontrada em
1
P1(x) = 0 pelas reduções sucessivas de grau:
α1 é obtida em P4(x) = 0
α2 é obtida em P3(x)em
α1 é obtida = 0P4(x) = 0
α3 é obtida em P2(x)em
α é obtida = 0P (x) = 0
2 3
α4 é obtida em P1(x) = 0
α3 é obtida em P2(x) = 0
ntão, α4 contém αerros devido
é obtida em P1ao
(x) método
=0 de Newton e devido
4
reduções sucessivas de grau, que implicam arredondamentos
os coeficientes dos sucessivos quocientes. Isso acumula erros de
Então, α4 contém erros devido ao método de Newton e devido às reduções
sucessivas de grau, que implicam arredondamentos nos coeficientes dos
redondamento e pode gerar instabilidade numérica.
sucessivos quocientes. Isso acumula erros de arredondamento e pode gerar
Uma solução para minimizar esse problema pode ser o chamado
instabilidade numérica.
ocesso de purificação dos resultados parciais, aplicado já a partir
segunda raiz α2 , solução
Uma porque para
é a minimizar
primeira esse
raiz problema
a ser obtida em o um
pode ser chamado pro-
olinômio que já sofreu a redução de grau e arredondamentos nos
cesso de purificação dos resultados parciais, aplicado já a partir da segunda
raiz α2, porque é a primeira raiz a ser obtida em um polinômio que já sofreu
us coeficientes.
a redução de grau e arredondamentos
Assim, para purificar α nos seus coeficientes.
, por exemplo, reaplicamos o método
Assim, para purificar α4, por exemplo, reaplicamos o método de
4
Newton, como se fôssemos obter a primeira raiz, usando:
Newton, como se fôssemos obter a primeira raiz, usando:
a) o polinômio original, P4(x) = 0, que é o único “puro”, sem
erros de arredondamento nos seus coeficientes, pois não
sofreu redução de grau; e
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 275

a) o polinômio original, P4(x) = 0, que é o único “puro”, sem erros de


arredondamento nos seus coeficientes, pois não sofreu redução
de grau; e
b) o valor inicial como cada raiz aproximada, obtida nos polinômios
de grau reduzido.

Note que essas raízes aproximadas através do polinômio de grau reduzido já são
 próximas das raízes exatas, então podem ser usadas como valores iniciais no polinômio
original diminuindo o risco de ocorrer convergência para uma raiz já obtida.

O resultado da purificação de α4 = 10.000005 em P4(x) = 0 (original)


é a quarta raiz purificada α4 = 10.000000000000002, com precisão de 16
dígitos significativos.

Antes de continuar a sua leitura, volte ao Caderno de Algoritmos e confira o


algoritmo de Newton completo para localização, determinação e purificação de
todas as raízes de equações polinomiais, Reais ou Complexas, de qualquer multiplici-
dade M, no arquivo Cap3NewtonPolinomios.m.

Considere que esse algoritmo de Newton completo:

a) apresenta uma alternativa para determinação de raízes múltiplas


de equações polinomiais, espaçadas e/ou próximas entre si, conver-
gindo até o limite da precisão digital disponível (no caso double);
b) recupera a taxa quadrática de convergência otimizando o número
total de operações aritméticas para obtenção de raízes múltiplas;
c) tem princípios matemáticos simples; e
d) utiliza parâmetros-limite que podem ser estendidos a outros tipos
de polinômios.
276 CÁLCULO NUMÉRICO COMPUTACIONAL

3.3.5 Determinação de raízes de equações pelo


método de Müller
O método de Müller para a determinação de raízes de equações é
uma extensão do método da secante que busca minimizar alguns problemas
presentes nesse método e no de Newton, como não encontrar diretamente
raízes Complexas, a menos que seja dado um valor inicial Complexo e seja
mérico Computacional
co Computacional utilizada a aritmética complexa na sua aplicação.
Para apresentar o método de Müller (BURDEN; FAIRES, 2011), vamos
analisar os Gráficos 3.15 e 3.16, que comparam a resolução de uma equação
Para apresentar o método de Müller (BURDEN; FAIRES, 2011),
f(x) = 0 pelos métodos da secante e de Müller.
Para apresentar o método de Müller (BURDEN; FAIRES, 2011),
vamos analisar os Gráficos 3.14 e 3.15, que comparam a resolução de
vamos analisar os Gráficos 3.14 e 3.15, que comparam a resolução de
uma equação f (x) = 0 pelos métodos da secante e de Müller.
uma equação f (x) = 0 pelos métodos da secante e de Müller.
Gráfico 3.15 – Método daGráfico
secante (P1–reta)
3.14 Método da secante (P1 reta)
Gráfico 3.14 – Método da secante (P1 reta)
P1
f ( x)
P1
f ( x)
xk 1
xk 1 x
xk 1 xk 
xk 1 xk  x
Fonte: Elaboração própria. Fonte: Elaboração própria

Gráfico 3.15 – Método


Fonte: de Müller
Elaboração (P2 parábola)
própria

Gráfico 3.16 – MétodoGráfico


de Müller
3.15(P–2 Método
parábola)
de Müller (P2 parábola)
f ( x)
P2
f ( x)
P2 xk 1
xk  2 xk 1 xk  x x
k 1

xk  2 xk 1 xk  x
Fonte: Elaboração própria

No método da secante, calculamos o zero da função


Fonte: Elaboração própria aproximadora
Fonte: Elaboração própria.
linear que passa por dois pontos da curva de f (x) = 0, conforme o
No método da secante, calculamos o zero da função aproximadora
Gráfico 3.14. Já no método de Müller, calculamos o zero da função
aproximadora quadrática que passa por três pontos
linear que passa por dois pontos da curva de f da curva de
(x) = 0, conforme o
f (x) = 0 a ser resolvida, conforme o Gráfico 3.15. Seria equivalente
Gráfico 3.14. Já no método de Müller, calculamos o zero da função
a estendermos a aproximação de 1ª ordem da série de Taylor para
aproximadora quadrática que passa por três pontos da curva de
CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA 277

No método da secante, calculamos o zero da função aproximadora


linear que passa por dois pontos da curva de f(x) = 0, conforme o Gráfico 3.15.
Já no método de Müller, calculamos o zero da função aproximadora qua-
drática que passa por três pontos da curva de f(x) = 0 a ser resolvida,
conforme o Gráfico 3.16. Seria equivalente a estendermos a aproximação
Capítulo 33 –– Solução
Solução de de Equações
Equações não
não Lineares
Lineares aa uma
uma Incóg
de 1a ordem da série de Taylor para gerar o métodoCapítulo de
Capítulo
Capítulo
Newton,
3 – Solução demas usando
Equações
Incóg
não Lineares a uma Incóg
Capítulo 33 –– Solução
Solução de de Equações
Equações não
não Lineares
Lineares aa uma
uma Incóg
Incó
agora uma aproximação de 2a ordem da série de Taylor, Capítuloconforme
3 – Solução de Equações propomosnão Lineares a uma Incó

no Exercício 3.3 do Caderno de Exercícios e Respostas disponível n o link


Supondo que três aproximações iniciais, xk–2
<http://sergiopeters.prof.ufsc.br/exercicios-e-respostas/>. , xk–1 e x , são
Supondo
Supondo que
que três
três aproximações
aproximações iniciais,
iniciais, xxk–2 , xk–1 e xkk , são
k–2 , x k–1 e x k , são
Supondo Supondo
estimadas na região da raiz de f que três que três (x)
aproximações aproximações
= 0, a nova aproximação x
iniciais, iniciais, x 2 k–1
k–2 k, – x
xk–2 ,k–1xk –e 1 exkkx seria
, k ,são são estimadas
estimadas na região da raiz de f
estimadas na região da raiz de f
na região da raiz de f(x) (x)= =0, 0, a nova aproximação x
a
(x) =quadrático nova
0, a nova aproximação x aproximação k–2 k–1
x k+2k seria
k+2
seria
k+2 seria obtida de um
obtida de um zero do polinômio
estimadas na região da raiz de f (x) =quadrático
0, a nova aproximação x P22 (x) que kpassa k+2 seria
+ 1 k+2 por
obtida
obtida de
de um um
zero zero zero
do polinômio do polinômio
do polinômio quadrático P2(x) que P
quadrático P
passa (x)
2 (x) por
que
que essas passa
passa trêspor
k+2 por
aproximações
essas três aproximações iniciais de f
obtida de um zero do polinômio (x), logo
quadrático P 22 (x) que passa por
essas três aproximações iniciais de f
iniciais de f(x), logo
essas três aproximações iniciais de f (x), logo
(x), logo
2
essas três aproximações iniciais de f (x), logo 265
P22 ( x) = a ( x − xkk ) 2 + b( x − xkk ) + c f ′ e f ′′
2
2 (29)
(29)
P222 (( xx)) == a
P a (( xx −
− xxkkk )) 222 + +b b(( xx − − xxkkk )) ++ cc (29)
277 (29)
P2 ( x) = a ( x − xk ) + b( x − xk ) + c (29)
xk +1
Aplicando as condições Aplicando as condições P22 ( xkk −− 22 ) = f (Px2kk(−−x22k)−2, ) P=22 (fx(kkx−−k11−)2 = ) , ffP((2xx(kkx−−k11−))1 ) e
= f ( xk −1 ) e
Aplicando as condições
Aplicando as condições P
P (
( x
x − )
) =
= f
f (
( x
x − )
) ,
, P
P (
( x
x − )
) =
= f ( x k −1 ) e e
P (x ) = f(x ), obtemos
f ( xkk2) , obtemos o sistema de equações lineares:
P22 ( xkk ) =Aplicando as condições o sistema
2 k 2
de
P22 ( xkk −−22 ) = f (288
2 k − 2 equações k
k
2
2 lineares:
2
2
k 1
xkk −−22 ) , P22 ( xkk −−11 ) = f ( xkk −−11 ) e
− k − 1 k − 1
= ff (( xxkkk )) , obtemos o sistema de equações lineares:
P222 (( xxkkk )) =
k k
P , obtemos o sistema de equações lineares:
P2 ( xk ) = f ( xk ) , obtemos o sistema de equações lineares: , com Δx j = x j − x0j ,
 P22 ( xkk= ) a ( xkk −− 22 − xkk ) 222 + b( xkk −− 22 − x294 )= + c f ( xkk −− 22 )
 P2 ( xk= −
− 22 ) aa (( xxk − 2 − xxk )) 22 + bb(( xxk − 2 − xxkkk )) = + cc ff (( xxk − 2 ))
P22 ( xkk= − +
kk −−22 − xkk )222 + b( xkk −−22 − xmax − kk ) +
=
+ccΔx jf f(=(x0.375
−2 )
P
 P222 ( xkkk=( x ==
−−22 )
) aa( (x x − x ) + b ( x − x ) += = (30)
xk k−kk1−−−)222 ) (30)
−−112) −−112− xkk k) 2 + b( xkk k− −− − += k −1 ) (30)
− kkk− 2 11 2 kk k
 2 ( xk= a ( x k −1 − xk ) + b( xk −1 − xk300 x ) += c f ( x k −1 ) (30)
 P22 ( xkk=
P −1 )
=
−−11 ) a
a
(
(
x
x kk −−11 − x
− 22 kk
+)
2
2
+ b ( −
x kk −−11 − xkk ) +
+ =
)
=
c
c
f
f
(
(
x
x kk −−11 ) (30)

 P2222 ( xkkkk= ) a ( x
)) aa (( xxk −
−1 k k −1 kk
k
x )
xxk )) 22 +
2 k b ( x
bb(( xxk −
k
k
x )
xxk )) +
k −kk1
=
c k f ( x
ccΔx j ff (( xxk )) k
k
) k −1
P22 ( xkk= − + − + =
 P2 ( xk= ) a ( xkkk − xkkk ) + b( xkkk − xkkk ) + =
2
c301 f ( xkkk )
que, resolvido diretamente, explicita os coeficientes a, b e c:
que, resolvido diretamente, explicita os coeficientes a, b e c: ΔX − J −1 ( X k −1 ) ΔF ( Δ
que, resolvido diretamente, explicita os coeficientes a, b e c:
que, resolvido diretamente, explicita os coeficientes a, b e c: ( ( ) )
que, resolvido diretamente, explicita os coeficientes a, b e c: J (X ) = J (X )+
−1 k −1 k −1

=a q ** f ( xkk ) − q (1 + q ) f ( xkk −−11 ) + q 22 ** f ( xkk −− 22 ) (31a) 2


(31a) ΔX  J T −1
(X ) k −1

=a q * f ( xk ) − q (1 + q ) f ( xk −1 ) + q 22 * f ( xk − 2 ) (31a)
=a q ** f ( x ) − q (1 + q ) f22 ( xkk−−11 ) + q 222 ** f ( xkk−−22 ) (31a)
ba= ( 2qq*+f1() xfkkk )( −
= xkkq) −(1(1++qq) )f22 (fx(k −x1kk)−−11 )+311 + qq 2 *** ff ( xxkkk−−−222 ) (31a)
(31b)
b== (( 2 1)) ff (( xxkkk )) −− ((1 q )) 22 ff (( xxkkk −−−111 )) + q 222 *** ff P(( xx( kkxk −−−)222 ))
(31b)
b 2qq+ +1 1++q +q (31b)
(31b)
cb== (12+q q+)1)f f( x(kkx)k ) − (1 + q ) f ( xk −1 ) + q * f (n xk − 2 ) (31b)
(31c)
= ((11 +
cc= + qq )) ff (( xxkkk )) (31c)




g ( x) =
Qm ( x)
(31c)
(31c)
c= (1 + q ) f ( xk ) (31c)
onde 314
onde
onde
onde onde x − x yi = ln( xi )
q = xxkkk − x -1
kk -1
(32)
− xxkk-1-1 315 (32)
q=
k -1
q = xxxkk k−−kk11 −− x (32)
− x Erro local | P (1.14) − f (1.14) | = 0.005625502141
kk-1-2
q = xkk −−11 − xkk -2 k -2

(32) = 2 (32)
x − x -2
f ( x) = ln( x) resolvendo
k − 1 k -2
Agora, encontramos
k −1 k -2 a nova aproximação xk+1 a
Agora,
Agora, encontramos
encontramos a
a nova
nova aproximação
aproximação xxk+1 resolvendo a
k+1 resolvendo a
equação de 2º grau
Agora, encontramos :
P22 ( xkk ++11 ) =a 0 nova 316
aproximação k+1 resolvendo a
xk+1
equação de 2º grau P ( x ) = 0 : k+1
equação de 2º grau P22 ( xkk++11) = 0 :
2 k +1 ai
equação de 2º grau P2 ( xk +1 ) = 0 : 2c 
xkk ++11 =xkk − ( xkk − xkk -1-1 )  2c 318
 (33)
2c
de
278 x − x CÁLCULO NUMÉRICO COMPUTACIONAL
q= k k -1
(32)
xk −1 − xk -2
Agora, encontramos
Agora, encontramos a nova a aproximação xk+1 xresolvendo
nova aproximação k+1
resolvendo
a a equação
de 2 grau P2(xk + 1) = 0::
o
uação de 2º grau P2 ( xk +1 ) = 0
 2c 
xk +1 =xk − ( xk − xk -1 ) 
 (33) (33)
 b ± b 2
− 4 ac 
Note que, na eq. (33), temos duas possibilidades de obter xk+1 ,
Note que, na eq. (33), temos duas possibilidades de obter xk + 1, a depender
depender do sinal escolhido para o radicando, mas esse sinal deve
do sinal escolhido para o radicando, mas esse sinal deve ser escolhido de
r escolhido de modo que o valor do módulo do denominador seja
modo que o valor do módulo do denominador seja sempre o maior possível,
mpre o maior possível, isto é, o sinal para o radicando deve ser
isto é, o sinal para o radicando deve ser o mesmo sinal de b. Essa escolha gera
um denominador maior em magnitude, evita possibilidades de denominador
mesmo sinal de b. Essa escolha gera um denominador maior em
nulo,
agnitude, minimiza
evita arredondamentos
possibilidades e gera um valor
de denominador xk + 1 mais próximo de
de minimiza
nulo,
x , dando mais estabilidade
redondamentos e gera um valor de x
k
ao método numérico, conforme
mais próximo de xk , dando vimos na seção
de erros por perda de significação do Capítulo 1.
k+1
ais estabilidade ao método numérico.
Assim, escolhemos a seguinte expressão para atualizar x ,
101
k+1
Assim, escolhemos a seguinte expressão para atualizar xk+1 ,
 2c 
xk +1 =xk − ( xk − xk -1 ) 
 (34) (34)
 b + sign(b) b − 4ac 
2

Então, aplicamos iterativamente a fórmula dada na eq. (34) até


Então, aplicamos iterativamente a fórmula dada na eq. (34) até que um
e um critério de parada seja satisfeito. Note que, se o radicando
critério de parada seja satisfeito. Note que, se o radicando gerar números
rar números Complexos, podemos obter raízes Complexas de f
Complexos, podemos obter raízes Complexas de f(x) = (x) =0
0 diretamente a
partir de valores iniciais Reais, o que é impossível de ocorrer com o método
retamente a partir de valores iniciais Reais, o que é impossível de
de Newton ou da secante.
orrer com o método de Newton ou da secante.
Exemplo 3.29: determine a raiz de x * ln(x) – 3.2 = 0 pelo método de Müller
Exemplocom 3.29: determine a raiz de x * ln( x) − 3.2
o máximo de dígitos significativos = 0 pelo método
disponíveis.
de Müller com o máximo de dígitos significativos disponível.
Solução:
Solução:
Escolhido o primeiro valor inicial xk = 2.5 para k = 0 em [2, 3] e gerado
Escolhido o primeiro valor inicial x
outros dois valores anteriores, kx=k –2.5 para k = 0 em [2,
e xk – 1, nessa 3] e
região de proximidade da
2
gerado outros dois valores anteriores, x
raiz, temos: k–2
e xk–1, nessa região
de proximidade da raiz, temos:
xk = 2.5
xxkk – =1 =2.5
xk * 0.99 = 2.475
= xxkk –−12 = xx=
k ** 0.99
0.98 = 2.475
2.450
k
= xk − 2 x= k * 0.98 2.450
Tabela 3.18 – Tabela de resultados do Exemplo 3.29
xk = 2.5
CAPÍTULO 3= x=
k * 0.99
xk −1 DE
– SOLUÇÃO EQUAÇÕES2.475
NÃO LINEARES A UMA INCÓGNITA 279
=
xk − 2 x=
k * 0.98 2.450
Tabela 3.18 – Resultados do Exemplo
Tabela 3.18 3.29
– Tabela de resultados do Exemplo 3.29
kk xkx–k–22 xxkk–1
–1
xk xxkk+1
+1
| xk +1 − xk |

00 2.450
2.450 2.475
2.475 2.500
2.500 2.95286713407486
2.95286713407486 0.45557167
0.45557167
1 2.475 2.500 2.95286713407486 2.95416246266100 0.0013017
12 2.475
2.500
2.500
2.95286713407486
2.95286713407486
2.95416246266100
2.95416246266100
2.95416552326093
0.0013017
3.0606e–06

23 2.95286713407486
2.500 2.95416246266100 2.95416246266100
2.95286713407486 2.95416552326093 2.95416552327888
2.95416552326093 1.7952e–11
3.0606e–06
4 2.95416246266100 2.95416552326093 2.95416552327888 2.95416552327888 8.8818e–16
3 5 2.95286713407486
2.95416552326093
2.95416246266100
2.95416552327888
2.95416552326093
2.95416552327888
2.95416552327888
2.95416552327888
1.7952e–11
4.4409e–16

4 2.95416246266100 Fonte: Elaboração


2.95416552326093 própria2.95416552327888
2.95416552327888 8.8818e–16

5 2.95416552326093 2.95416552327888 2.95416552327888 2.95416552327888 4.4409e–16


x6 = 2.95416552327888
Fonte: Elaboração própria.
Observe que encontramos a raiz x6 em 6 iterações com 16 dígitos
x6 =significativos de precisão, assim como no método da secante,
2.95416562327888

Observe que encontramos a raiz x6 em 6 iterações com 16 dígitos significa-


tivos de precisão, assim como no método da secante, ao passo que com o
método de Newton foram necessárias 5 iterações, para este mesmo exemplo.

Veremos agora um exemplo de polinômio com raízes Complexas.

Exemplo 3.30: determine uma raiz de x4 – 2x3 + 6x2 – 8x + 8 = 0 com o


máximo de dígitos significativos disponíveis pelo método de Müller (sabendo
que as raízes são: 1 + i, 1 – i, 2i e –2i).

Solução:
Vamos escolher o primeiro valor inicial xk = 2.0 para k = 0, dentro das cotas-
limite, e gerar os outros dois valores, xk – 2 e xk – 1, nessa região de proximidade
da raiz. Desse modo, temos:

xk = 2.0
xk – 1 = xk * 0.99 = 1.98
xk – 2 = xk * 0.98 = 1.96
xk = 2.0
280 =
xk −1 x=
k * 0.99 1.98 CÁLCULO NUMÉRICO COMPUTACIONAL

=
xk − 2 x=
k * 0.98 1.96
Tabela 3.19 – Resultados do Exemplo
Tabela 3.19 – Tabela3.30
de resultados do Exemplo 3.30
k xk–2 xk–1 xk xk+1 | xk +1 − xk |
0 1.96000 + 0.00000i 1.98000 + 0.00000i 2.00000 + 0.00000i 1.31997 + 0.66667i 0.95231
1 1.98000 + 0.00000i 2.00000 + 0.00000i 1.31997 + 0.66667i 1.13016 + 0.84954i 0.26357
2 2.00000 + 0.00000i 1.31997 + 0.66667i 1.13016 + 0.84954i 1.11082 + 1.04137i 0.19281
3 1.31997 + 0.66667i 1.13016 + 0.84954i 1.11082 + 1.04137i 0.99908 + 1.01479i 0.11485

24 1.00000 + 1.00000i 1.00000 + 1.00000i 1.00000 + 1.00000i 1.00000 + 1.00000i 0.00000

Fonte: Elaboração própria. Fonte: Elaboração própria

= x 1.00000 +1.00000i
x25 = 1.0000025+ 1.00000i
Observe que na 1ª iteração, efetuada em k = 0, já geramos uma
Observe que na 1a iteração,
1ª aproximação x efetuada em k = 0, já geramos uma 1a aproxi-
Complexa para a raiz e encontramos a raiz
k+1
mação xk + 1 Complexa para a raiz e encontramos a raiz convergida em 25
convergida em 25 iterações com 16 dígitos significativos de
iterações com 16raízes
os determinar as demais dígitospelo
significativos
processo de
de precisão.
redução de
precisão.
omo no próximo exemplo.
Podemos determinar as demais raízes pelo processo de redução de grau.

Exemplo 3.31: determine uma raiz de x3 – 3x2 + 3x – 1 = 0 com o máximo


plo 3.31: determine uma raiz de x3 − 3 x 2 + 3 x − 1 =0 com
de dígitos significativos disponíveis pelo método de Müller (sabendo que
imo de dígitos significativos disponível pelo método de
a raiz é 1.0 e tem multiplicidade M = 3).
r (sabendo que a raiz é 1.0 e tem multiplicidade M = 3).
ão: Solução:
Escolhemos um primeiro valor
hemos um primeiro valor inicial x inicial xk ==2.0
= 2.0 para k para k = 0, dentro das cotas-
0, dentro
limite, e geramos os outros dois valores, xk – 2 e xk – 1, nessa região de proxi-
k
tas-limite, e geramos os outros dois valores, x e xk–1 ,
midade da raiz: k–2
região de proximidade da raiz:
x = 2.0
2.0 k
x x= 1
= xk *1.98
xk*–0.99 0.99 = 1.98
k −1 k

xk − 2 xx= = xk *1.96
kk *– 0.98
2
0.98 = 1.96

Depois de 180 iterações, atingimos o critério de parada


s de 180 iterações, atingimos o critério de parada

| xk +1 − xk |=
3.57470423575603e − 16

z:
x =1.00000266769999 + 5.00575188652281e − 06i
x3 −15x2 + 12 x + 4 ⇒ P4′ (2) = 0

2 x2 − 30 x + 12 ⇒ P4′′ (2) = 0 281


CAPÍTULO 3 – SOLUÇÃO DE EQUAÇÕES NÃO LINEARES A UMA INCÓGNITA

24 x − 30 ⇒ P4′′′ (2) = 18

e a raiz:
3.31:
x = 1.00000266769999 + (5.0057518865228e − 06)i

com precisão de apenas 6 dígitos significativos, como acontece no método


de Newton clássico sem a devida correção da multiplicidade.

Na sua forma original, o método de Müller não é adequado para


214
determinar raízes múltiplas, não atingindo resultados no limite da precisão
digital disponível, como também ocorre no método de Newton clássico.

Agora, confira o algoritmo de Müller no arquivo Cap3Muller.m no seu Caderno


de Algoritmos.
Por fim, para aprofundar os estudos de cada capítulo, disponibilizamos um
Caderno de Exercícios e Respostas para download no link <http://sergiopeters.
prof.ufsc.br/exercicios-e-respostas/>.

3.4 CONCLUSÕES
Neste capítulo, cumprindo seu objetivo principal, tratamos da solução
numérica de equações a uma variável f(x) = 0 quaisquer. Conforme alertamos
no início da abordagem desse problema, esta não é uma tarefa simples,
especialmente devido à inexistência de um método ou mesmo de uma
metodologia geral que seja efetiva em todas as equações.
Apresentamos três metodologias, que não são as únicas existentes, e
analisamos detalhadamente o comportamento algébrico, gráfico, numérico
e computacional de pelo menos dois métodos típicos de cada uma.
Também tratamos minuciosamente da questão da influência da
multiplicidade nas soluções de equações polinomiais Pn(x) = 0, disponibili-
zando uma alternativa para obter todas as raízes de equações polinomiais
com a máxima precisão possível.
CAPÍTULO 4

RESOLUÇÃO DE
SISTEMAS DE
EQUAÇÕES NÃO
LINEARES

OBJETIVOS ESPECÍFICOS DE APRENDIZAGEM


Ao finalizar este capítulo, você será capaz de:
■■ aplicar métodos iterativos para obter a solução de um sis-
tema não linear e avaliar a precisão do resultado obtido; e
■■ utilizar os algoritmos disponibilizados.
444Resolução
Resolução
Resolução de
deSistemas
4de
44Resolução
ResoluçãoSistemas
Sistemas
de de
de
dede
deSistemas
Sistemas
Resolução Equações
Equações
Equações
de não
não
denão
deEquações
Equações
Sistemas não
não não
Equações
Lineares
Lineares
Lineares
Lineares
Lineares
Lineares

No
No
NoNo
NoCapítulo
Capítulo
Capítulo
Capítulo
Capítulo
NoNoCapítulo 2,
2,
2,2,
2,abordamos
abordamos
Capítuloabordamos
abordamos
abordamos
No 2,2,abordamosaaaaasolução
abordamos
Capítulo solução
2,solução
solução
solução
abordamos de
de
dede
desistemas
aasolução sistemas
sistemas
soluçãosistemas
sistemas
ade
de de
de
de
deequações
de
sistemas
sistemas
solução equações
equações
equações
equações
de dedeequações
equações
sistemas de equ
lineares
lineares
lineares
lineares
lineares AAAAA****XX
lineares
lineares *X
XX=
===
=BB
ABBB
A*e,
e,e,
e,
e,no
Xno
*no
X no
=no
lineares=BCapítulo
Capítulo
Capítulo
Capítulo
Capítulo
Be,e,
Anono = 3,
3,
3,3,
3,
* XCapítulo
B tratamos
tratamos
tratamos
tratamos
tratamos
Capítulo
e, no 3, da
da
dada
dasolução
3,tratamos
tratamos
Capítulo solução
solução
solução
solução
3, da de
de
dede
deequações
dasolução equações
equações
solução
tratamos equações
equações
dadede não
não
não
não
não
equações
equações
solução não
não
de equaçõ
lineares
lineares
lineares
lineares
lineares No com
com
comcom
lineares com
linearescomCapítulo
uma
uma
uma
umauma
comuma 2, abordamos
única
única
única
única
única
uma incógnita
incógnita
incógnita
incógnita
incógnita
única
única a solução
incógnitaff
incógnitaf(x)
ff(x)
(x)
(x)(x)==
==
=de
0.
0.
0.
0.0.sistemas
Neste
Neste
Neste
Neste
Neste de equações
Capítulo,
Capítulo,
Capítulo,
Capítulo,
Capítulo,
f (x)==0.0.Neste
Neste lineares
veremos
veremos
veremos
veremos
veremos
lineares com uma f (x)
única incógnita f (x) =Capítulo,
Capítulo,
0. veremos
veremosve
Neste Capítulo,
que,
que,
que, A *na
que,
que,  X = B
na
na
na
namodelagem
modelageme, no Capítulo
modelagem
modelagem
modelagem 3, tratamos
matemática
matemática
matemática
matemática
matemática dos
dos
dosdos
dos da solução de
fenômenos
fenômenos
fenômenos
fenômenos
fenômenos equações
físicos,
físicos,
físicos,
físicos,
físicos, não lineares
normalmente
normalmente
normalmente
normalmente
normalmente
que,
que,na namodelagem
modelagem matemática
matemática dos
dosfenômenos
fenômenos físicos,
físicos,normalmente
normalmente
com uma únicaque, na modelagem
incógnita f(x) = 0. Como matemáticana modelagemdos fenômenos
matemática físicos,
dos normal
estão
estão
estão
estão envolvidas
envolvidas
envolvidas
envolvidas
estão envolvidas
estão
estãoenvolvidas envolvidasrelações
relações
relações
relações
relações não
não
não
não lineares
lineares
lineares
lineares
não lineares
relações
relações entre
entre
entre
entre
entre várias
várias
várias
várias
não várias incógnitas,
incógnitas,
incógnitas,
incógnitas,
incógnitas, as
as
as
asas incógni
fenômenos estão
físicos, envolvidas
também podemnão não
estarlineares
relações lineares
envolvidas entre
entre
lineares várias
várias
relações nãoincógnitas,
entre incógnitas,
várias
lineares asas
quais
quais
quais
quais
quais geram
geram
geram
geram
entregeram
quais
quaisgeram
várias um
um
umum
um
geram sistema
sistema
sistema
sistema
sistema
quais
incógnitas, umumgeram
as de
de
de
dedeequações
sistema
sistema
quais equações
equações
equações
equações
um de
geramde equações
sistema um não
não
não
não
equaçõesnão lineares.
lineares.
lineares.
lineares.
delineares.
sistema não
não
de lineares.
equações lineares.
equaçõesnãonão lineares.
lineares,
Vamos
Vamos
Vamos
Vamos
Vamos
os mesmos iniciar
iniciar
iniciar
iniciar
iniciar
devem
Vamos
Vamos oooiniciar
ser ooestudo
estudo
estudo
estudo
estudo
Vamos das
das
das
dasequações
das
solvidos.
iniciar ooestudoequações
equações
estudoequações
equações
iniciardas
odas não
não
não
não
não
equaçõeslineares
lineares
lineares
lineares
lineares
equações
estudo das não apresentando
apresentando
apresentando
apresentando
apresentando
nãolineares
lineares
equações nãoapresentando
apresentando
lineares apresen
duas
duas
duas
duas Vamos
duasdefi
defi
defi
defi
defi iniciar
nições
nições
nições
nições
nições
duas
duas defi o estudo
importantes:
importantes:
importantes:
importantes:
importantes:
defiduas
nições
nições das
importantes:equações
importantes: não lineares apresentando duas
defi nições importantes:
definições importantes.
Defi
Defi
Defi
DefiDefinição
nição
nição
nição
nição
Definição Defi 1:
1:
1:
1:1:
Defi 1:
sistema
sistema
sistema
sistema
sistema
sistema
nição
niçãoDefi de
de
de
de
de de
1:1:sistema
sistema
nição equações
equações
equações
equações
nnequações
nnnnequações
1:de
de não
não
não
não
não
não
nnequações
equações
sistema de lineares
nlineares
lineares
lineares
lineares
lineares
não com
com
com
com
com
nãolineares
lineares
com
equações incógnitas
incógnitas
incógnitas
incógnitas
nnnnincógnitas
nincógnitas
nnão com
comnnincógnitas
incógnitas
é com
lineares toda n incógn
ééééétoda
toda
toda
toda
todaéexpressão
expressão expressão
expressão
éexpressão
expressão
do
toda
toda tipo: do
é dodo
do
dotipo:
expressão
expressão
toda tipo:
tipo:
tipo:
tipo:
dodotipo:
expressão tipo: do tipo:
ff1f1f1f(1(1(x(x(x1x1x1,1,1,x,x,x2x2x2f,2,12,fx,(x,1x3xx3x(3,...,
31,...,
x3,...,
,...,
,1,...,
x, 2xxx,x2nxnxx,n)n)n3x))f=
)===(00x0001x,nxx)n2)=, =
=
,...,
31,..., x03 0,..., xn ) = 0
ffff(((x(xxx,,,x,xxx,,,x,xxx,..., 
f 222(22x111,11x22f2,222fx(23x3(3,..., 31=x3,...,
=,...,
,...,
,==
1x, 2xxx,x2nxnxx,n)n)n3x))f,...,
= )= 00x000x,xx) ), x00,...,
32,...,
(= 3 =

xn )⇒⇒
⇒⇒ =
F
0==FF(((X
F=
F
= (X
(⇒ )))))=
XXX⇒ 00
F=F0(00X
( X) )⇒00=
F(X ) 0
   
1 n n2
   
     
fffnfnfn(n(n(x(x(x1x1x1,1,1,x,x,x2x2xf2,2,2f,x,(x,x3xx3x(3,...,
,...,
,...,
,...,
,...,xxxxx))))= )===
 n n 31x3,1x, 2x,2nnx,nnn3xf,..., (00x0001x,nxx)n2)=, =
=
3n,..., x03 0,..., xn ) = 0

EmEm
Em Em
EmEm queque
que
que
queque Em Emque que Em que
ff1f1f1f11  f1fff11f1f1f11xxx1x1x111fff1 x1xxx1x1x1x111f  xxx1  x1 
fffff   xxxxx11    1  1 1   
f2X f
fXf fff eeee2e222f2X xxx x x
f22  x2x222222f 2 x2xx22 
fXX
FF
FFF(2(2(2X XX===  e  X =  x2 
22
FFFFF(((X
(X
(XXX))))= ==F
)==F ( (
X X(X
()XXX
)
= e=
)))e)= e==F
)e=e=F X
F
(
X2X
X(
2222
( =X
=
X
2
===
) e)
=)e = = X X 2X
F =X(==
=X===
e)e e= X
          
              
fffnfnfnnn  fnfffnfnfnfnnnexxxnxnxnnfnnffnn xnxxxxnnxnxnnnf n  xnxxnn  xn 

Observe que temos um vetor F de n funções e um vetor X de n incóg-


14
14 14
nitas. Por exemplo:
260 Capítulo 44 –– Resolução
Capítulo Resolução de
de Sistemas
Sistemas de
de Equa
Equa
Capítulo44––Resolução
Capítulo ResoluçãodedeSistem
Sistem
+1.36284988456718 − 1.59235983373818i Capítulo 4 – Resolução de Si
Observe
286
Observe que
quetemos
temosum
temos um vetor
um vetor FFFde
vetor de funções
dennnCÁLCULO
funções
funções eeeum
um
um
NUMÉRICO vetor
vetor de
vetorXXXde
COMPUTACIONAL de
263
Observe que temos um vetor F de n funções e um vetor X de
nincógnitas.
incógnitas.Por
Porexemplo:
exemplo:
exemplo:
Observe
n incógnitas. ( xk ) que
Pn′′Por 2!temos
exemplo:
R3 funções ee um
um vetor F de n funções um vetor
vetor XX de
de
Δx = −Observe = − que temos um vetor F de n funções e um vetor X de
−333 === 000  ⇒  F = ff1f11(((xxx11,1, ,xxx222))) e  X = xx11x1 
33
 f11f(1x(11x,P1x,′′′22x()2 xPor
nn incógnitas.
incógnitas.
a) +223!
)=k=)xx1x11++exemplo:
2xxx2R223−
4 − 33
na)incógnitas.
 n
22xx2 −−33 == 0 ⇒ 
0⇒ FF == ff1((xx1,, xx2)) e  e e XXX===xxx112x 
( x , x11 )=11 322xPor
a)  ff ((xx ,, xx )) 2==2 xx11 ++2exemplo:
 f a)a) 2+ x 22− 27
 f2f( x(1x, x, 2x)=)= 33x1x ++ xx2 −− 77==3 0 = 0  ⇒   ⇒ FF ==fff222((1(xxx11,11, ,xxx2222))) e 
 e  X =  x 2 
 2ff ((1xx ,, x2x ))  2
 2 2 11ff 2f((2xx( x,, xx, x))==1)1 3=3xxx2222+++xx222x−−377−== 300=
269 0  22 11f11(22x11, x22))  xx22  xx11 
22 11 11 1 22 2
a)   f ( x , x ) = x + 2 x3 − 3 = ⇒  F =   f ( x ,x e   e 
0==000  f 22 ( x11,1 xf221())x 2, )xXX, x==)xx  x1   x 
111 22 2
 ff1f((xx(1x,, x8x, a)x ,, x,(x3xx)),7)1== 33)13=xxx1 2− − cos(
cos(
2cos( 1 xx21 xx3 )2)− 0.5
0.5
0.5 =
x 4== ⇒  f1f( x(1x, x, 2x, e 
  f x = 3 − x + x − 7 = − 0 F = x3+3.287061 x2, 3x)X) = 22  x1x 
P8 ( x1) = 11x
2
ff−2((22x3.4x ,,3x1x ,,+x2x2.35 )) =1= x33xx1+−−
6
4.32 2x x
cos( 5
x−xx7.1685)) −− 0.5
0.5 +00 1.56006 f2(ff1x111(1(,xx11x1,,21xx)222,,x2xx333)) 3   x2  xx11 1 1 
f ( x , x11 , 1x1)f22= ( x3x3 3,33x− )x=311x3xx 2 −+ 5x11 2= 33−07= 0
1 1 2 3 1 cos( 1 3

b)   ⇒  
b)b) f22b)
b) x , x , x )2 = x11x))11== −2−xxx3x111−−xx22=x2xxx310xx33 −
(2−x(112.480058
fb) ,1fxf222f2((2,xx(1x1x,3,3x3x),x22x=,,+xx,0.531441
2 x
33 ) =11 3 x 11−22cos( xx335−− 2= 0
5x5 =0= 00
1 x3 ) − 0.5 = 0
 ⇒ F
 ⇒ 
 ⇒ 

 ⇒  FFF===
F
==fff22f(((xx(x11x,,, xxx, 22x,,,xxx,33x)))) e
f 222( x11,f1fx(22(,xx2x,3,3)xx3, e , ex e
 e x
 e
)
X
)
X = xx22x
XX==X=xx=
  22   2xx11
   
030)0− 0.5 = 0ff33f333((x(x111x1,,1xx,2222x,,2xxf,33133)x)(3x)1 ,x2 ,x3 )xx33xx33x3  x1 
11 11 3xx x 1 22
 f f( x( 
x
, x, x , x, x ) )=
x11,1fxf3322f((2,xx(1x1x,3,3x3x)f,221x= = e e
x
1 112 22x1 x2 −x−
,,(xxe1),) x= x ln(
xxln(xx2 +
,e−x3ln()3−−=ln(
131 xx
+ 22xx xx )) =
22cos( =
xx33 xx) x)= 00
x=   f
f ( ( xx ,, xx
1
1
,, 11
xx )) 2

2 33
 f33 (3b) = 2e xln( +x1 −x++ )1 =
11 22

270   22 11 2 3,3 x3 ) = x1 − 1x1 x112 x23 −223 533 = 0  22 11 22 33   ⇒  FF == ff ((xx ,, xx ,,xx ))  e  e XX == xx  22
b)f ( x f,2x( x,1x, x)2 ,=x3 )x1 x= 2 x13 − x12x2 x3 − 5 = 0
e − ln( x + x x ) = 0  ⇒  F ff=((xxf,2, x(xx,1,,xxx)2),x3 )   e Xxx= x2 
 33
Definição
Definição 2:
| −3.4
Definição | solução
2:2:
Definição
Definição
solução
solução 11 2 de
2:33 solução
 f 3 ( x1 , de
2: solução
3
xde , xde
2de
F) (X)
F3F
F(X)= (X) x1 x=
Fe(X)
(X) =2=
1
é0éxétodo
=0−0=00ln( 2 todovetor
é étodo
todo
2 3
1todo
vetor
2 x3 )vetor
+ xvetor. =0 ... 33  11f3 (2x21 , x332 ,x3 )   x3 

αα==={{αDefinição
α α{α1=286
α ,{α2α,,211,,...,
,,1α
α
Definição
α...,
...,
,2:
22α
α α...,
n}
solução
α∈
n}}2: nn∈
∈  /
TTsolução
de
}∈//FF
F
/((α
(
F )())α(X)
F
αde
α
)=
==
F
=0=000 =é 0todo
(X) é
vetor ..
todo vetor .
αα1 = [α, α
= [α 2 , α, ,...,...,αα ]] , ,onde
n
1 1 22 ondeαα∈∈ ℂ / F(α)
nn F (α ) ==00 i i
Por Por
α = exemplo:
exemplo: {α11, α 2 , ..., α n } ∈  / F (α ) = 0
Por exemplo:
Por exemplo: α = { α , α , ..., α } / (α )
xx288
Por xx ==11 ∈
f ( 
x
 f ( x , x22= , x =)F
) x x −−=
x x = 1 000
1=
=1111 22exemplo:
1 2 n
 xx1xx12x2=
= 

⇒f f1((xx1111,,xx1212=
)=) xx11xx12122 −2−2 =12 0
 1 2 Por

 1xx22 ++exemplo:
xx22 −− 44xx ++ 22xx = =⇒44  f1 ( xff1(,(xxx2,,=
1
22 ⇒  
)xx )) ==x1xxx22 ++−x=
x12 −− 0
44xx ++ 22xx −− 44 == 00
 x122x1+2 +x222xx2x..,12−1x−Por exemplo:
 1 i =221,..., n211,x ...=  22 11 22 22 11 22 22
4 4
x=x +
1 +2 x = 4 4 ⇒  f f 2( xx,
1 x
fx (
2)x = =, x
xx=1)
2 ++ x
xx 2 x
2 − − 1
=x 1
11
 f2 ( x1 , x112 )11= 2x21 + x211 22− 4 x1 + 2 x2 − 4 = 000
( , ) 4 + 02 x2
22
− 4 ==
 x1 + x20.604068 −1 422xx11 x+ 2=x122 =
0.604068
1 2
4 ⇒ 2  1 2 f ( x1, x =
2 ) 22 x1 x222 −=
2 1 1 02
 α
0.604068 ==  xx297
0.604068 22
+ x
122 2
− 
 4 x + 2 x = 4 ⇒ f (x
1 1
, x ) = x + x − 42x11 ++ 22xx22 −− 44 = = 00
 11  222 f( x2 +
1.655442
1.655442  2 1 2 1 2
α= = 0.604068
1 2
1.655442 x1 +x2 1−Δ4xx,1x+2, 2, xx2) −=
1 1 1 f 4( x , x 2, , x1f ) ( x
2 ... n
 2 1 f, x( x2 ), x= , x,1x ++ Δxx2 −
2
1 1
1
2 ...
22
n ) −4f x( x+, x2,x, x−) 4 = 0
1 1 2 ... n n 1 1 2 ... n
= 1.655442
 0.604068
0.604068    Δx Δx
.... 1 2 
1.655442
1 n
 
α
 α =  Note = 0.604068
 fa(dificuldade
x + Δx , x , , x ) − de f ( xisolar,
2 ... , x , , x ) viaf métodos ( x , x , , x + Δabstrativos,
2 ... x ) − f (x , x , , x a )  solução
2 ... 2 ...
α 1.655442
a1.655442 =( X) ≅    2 1 1 n 2 1 n
....
2 1 (7) n n 2 1 n

αNote jáNote Jpartir


aa1.655442
dificuldade
dificuldade
 de n = 2 equações, Δde
x
de isolar,
isolar, via métodos
via
restando,
1 métodos abstrativos,
Δx
abstrativos,
por consequência, oa

solução
auso
solução
de n

Note a dificuldade  de isolar, via métodos abstrativos, a solução


αjájáa amétodos partirNote de  na=dificuldadeequações,de
nf =( x 2+2Δequações, restando,
isolar,fvia por consequência,
métodos abstrativos, o uso de
aasolução
⋮ ⋮

partir de iterativos. x , x , , x ) − f ( xrestando,


,x , ,x ) ( x por + Δx ) − fabstrativos,
, x , , xconsequência, ( x , x , , x )  o uso solução
de
Note a dificuldade de isolar, via métodos abstrativos, a solução
já a
métodos partir aiterativos.
já iterativos.
de
partirNote n =
n
a 2 1
equações,
dificuldade
1 2 ...
de restando,
n
isolar,
 de n = 2 equações, restando, por consequência,
n
via
1
por
2 ...
métodos
n
consequência,
....
abstrativos,
n 1
a
2 ...
soluçãoo uso
α
n

oo uso
de n n 1 2 ... n

métodos αα já  Δ x 1 Δ x
consequência, 
 uso de
de n

étodos já a partir
aαiterativos.
partir de n = de n = 2 equações,
2 equações, restando, restando, por consequência, por consequência,
o uso de métodos o uso de
métodos iterativos.
métodos iterativos.
iterativos.
métodos
Aqui
Aqui 305vamos vamos iterativos.
apresentar três
apresentar três métodos
métodos iterativos iterativos da da família
família newtoniana,
newtoniana,
que podem serapresentar
considerados a) extensões adaptadas daqueles que vimos
Aqui que
vamospodem ser
apresentar
Aqui vamos
considerados
três extensões
trêsmétodos
adaptadas
iterativos
métodos iterativos
daqueles
da família
da família
que vimos
newtoniana,
newtoniana, que podem
Aqui vamos
no
apresentar
no Capítulo
CapítuloX =3,
ser considerados
para
três
paraextensões
resolver
resolver
métodos
3,[0.785196933062355, adaptadas
uma
iterativos
uma0.496611392944656,
única
única equação
daqueles
equação
da
que
família
aavimos
uma
uma
newtoniana,
0.369922830745872]
variável.
no Capítulo
variável.
T
3, para
Aqui vamos
Aqui
que podem
Aqui apresentar
vamos
seruma
vamos considerados três
apresentar
apresentar métodos
três métodos
extensões iterativos
iterativos
adaptadas da família
da
da família
daqueles newtoniana,
quenewtoniana,
vimos
que podem resolver
ser vamos
Aqui única
consideradosequaçãotrês
apresentar a umamétodos
trêsvariável.
extensões iterativos
adaptadas
métodos
família
daqueles
iterativos que
da família
newtoniana,
vimos
newtoniana,
que
no podem
que podem
Capítulo
que ser
3, considerados
podem ser resolver
para
ser considerados
considerados extensões
uma extensões
única
extensões adaptadas
adaptadas
equação a uma
adaptadas daqueles
daqueles que
variável.
daqueles que
quevimos
vimos
vimos
no Capítulo que3,podem
b)para resolver uma única
ser considerados equaçãoadaptadas
extensões a uma variável.
daqueles que vimos
no Capítulo A
no Capítulo
Capítulosolução
3, para de um
3, resolver
paraum sistema
uma uma
resolver não
única linear consiste
equação
única equação em
a uma determinar
aa umavariável.
variável. pontos
no A solução 3, de
para sistema
resolver umanão linear
única consiste
equação em
uma determinar
variável.
no no Capítulon3,
subespaço para resolver
dimensional do uma
domínio únicadoequação
problema a uma variável.
que satisfaçam
pontos 211
o conjunto de equações. Para os sistemas lineares, temos apenasque
no subespaço n dimensional do domínio do problema três
A solução
satisfaçam de
o conjuntoum sistema
de equações. não linear
Para consiste
os consiste
não sistemas em
existência,lineares,
determinar
solução temos
única
A possibilidades
solução de de um quantidade
sistema denão
soluções:
linear em determinar ou
pontos no
apenas AA
A infinitas
solução solução
subespaçode um
solução
três soluções. de
n
de
possibilidades um
um
paraum sistema
dimensional
Jásistema sistema
os
de nãonão
sistemas
quantidade não
do
linearlinear
domínio
linear consiste
consiste
não lineares,
de soluções: do
consiste
podemos em
problema
emter
não em determinar
determinar que
determinar
nenhuma,
existência,
ontos no A
subespaço solução de
dimensional
nfinito sistema donão linear
domínio consiste
do problemaem determinar
queque
pontos
satisfaçamuma,
pontos
ontos no
solução o no
um
no
subespaço
única subespaço
número
conjunto
subespaço
ou de n
noudimensional
até
equações. um
dimensional
n dimensional
infinitas soluções. número
Para do
os
do
do domínio
Já para domínio
infinito
sistemas
domínio
os de
sistemas do
soluções problema
e
lineares,
do inexistem
problema
do problema
não temos
lineares, queque
atisfaçam pontos
o
formas deno
conjunto subespaço
de
determinar equações.n dimensional
algebricamente Para a os do
sistemas
quantidade domíniode do
lineares,
soluções problema
temos
de um que
apenassatisfaçam
três o conjunto de equações. Para os sistemas lineares, temos
podemos
atisfaçam opossibilidades
satisfaçam teronenhuma,
conjunto
satisfaçam
sistema conjunto
genérico
de
de
uma,
de equações.
o conjunto
F(X) = 0.
quantidade
equações.
deum ParaPara
número
equações. de soluções:
os sistemas
finito
osPara osou
sistemas não
até um existência,
lineares,
número
lineares,
sistemas temos
temos
lineares, temos
penas três
apenas possibilidades
três possibilidades de quantidade
de quantidade de soluções:
de soluções: não existência,
não existência,
solução
penas trêsúnica
infinito
apenasapenasde ou
trêstrês infinitas
soluções e
possibilidades
possibilidades soluções.
inexistem
de
possibilidades formas Já
de quantidade
quantidade para
de
de quantidade deosos sistemas
determinar
de desoluções:
soluções: não
não
soluções: não lineares,
algebricamente existência,
existência,
não existência,
oluçãoa únicaúnica
solução
quantidade ou infinitas
de ousoluções soluções.
infinitas de soluções.
um Já para
sistema Já para
F (X)sistemas
=os0. sistemasnãonão lineares,
lineares,
podemos
olução únicater nenhuma,
ou infinitas
infinitas uma,
soluções.
soluções. um
Jáos
para
Já parafinito número
os sistemas
sistemas finito
solução única ou infinitas soluções. Já para os sistemas não lineares,
solução
ouúnica não lineares,
nãonúmero
lineares, ou até um número
odemos ter
podemos nenhuma,
ter uma,
nenhuma, um
uma, número
um número ou
finito até
ou um
infinito de soluções
podemos e inexistem
ter nenhuma, formas
uma, de determinar
um número ou até um número
até um
finito algebricamente
número
utacional CAPÍTULO 4 – RESOLUÇÃO DE SISTEMAS DE EQUAÇÕES NÃO LINEARES 287

No Exemplo 4.1, vamos apresentar um sistema de duas equações


No Exemplo
não lineares com 4.1,
duasvamos apresentar
incógnitas, um geometricamente
no qual sistema de duas equações
as quatro
não lineares com duas incógnitas, no qual geometricamente as
soluções são os pontos de interseção dos gráficos das funções geradoras
quatro soluções
das duas são os pontos de interseção dos gráficos das funções
equações.
geradoras das duas equações.
Exemplo
Exemplo4.1: 4.1:localize geometricamente
localize as soluções
geometricamente de:
as soluções de:

 x1 + x2 − 9 =
2 2
0

 x1 x2 − 1 =0
Solução:
Solução:
Como este exemplo envolve apenas duas equações simples
Como
com duaseste incógnitas,
exemplo envolve
bastaapenas duas
gerar os equações
gráficos de simples com duas
x em função
incógnitas, basta gerar os gráficos de x2 em função de x12, correspondendo
ade x1, circunferência
uma correspondendo a uma circunferência
na primeira e uma hipérbolena
naprimeira e uma
segunda, resultando:
hipérbole na segunda, resultando:
Gráfico 4.1 – Interseção
Gráfico dos gráficos
4.1 – Intersecção dosdas funçõesdas
gráficos Exemplodo
do funções 4.1Exemplo 4.1
x2
x2

x1
x1

Fonte: Elaboração própria.


Fonte: Elaboração própria
Portanto, no Gráfico 4.1, temos quatro pontos de interseção das duas fun-
ções, que são
Portanto, noasGráfico
quatro soluções do sistema
4.1, temos quatrodado.
pontos de intersecção
das duas funções, que são as quatro soluções do sistema dado.

A aproximação geométrica de uma solução Real (ℝ), ou a


determinação de valores iniciais de uma solução Real, somente é
possível para sistemas de duas ou três equações.
Capítulo
Capítulo444–––Resolução
Capítulo Resoluçãodede
Resolução deSistemas
Sistemasdede
Sistemas deEqua
Equ
Eq

288 CÁLCULO NUMÉRICO COMPUTACIONAL


Para
Para
Para
Para uma
umauma
uma solução
solução
solução
solução geral
geral
geral
geralpor
porpor
pormétodos
métodos
métodos
métodos iterativos,
iterativos,
iterativos,
iterativos, normalmente
normalmente
normalmente
normalmente
Para
Para
Para uma
uma
uma solução
solução
solução geral
geral
geral por
por
por métodos
métodos
métodos iterativos,
iterativos,
iterativos, normalmente
normalmente
normalmente
tomamos
tomamos
tomamosvalores
tomamos valores
valoresiniciais
valores iniciais
iniciaisbaseados
iniciais baseados
baseadosem
baseados em emconhecimentos
em conhecimentos
conhecimentossobre
conhecimentos sobre
sobreas
sobre asas
as
tomamos
tomamos
tomamos valores
valores
valores iniciais
iniciais
iniciais baseados
baseados
baseados em
em
em conhecimentos
conhecimentos
conhecimentos sobre
sobre as
as
grandezas
grandezas
grandezas
grandezas A aproximação
físicas
físicas
físicas
físicas envolvidas
envolvidas
envolvidas
envolvidasgeométrica
no
no no
no de
modelo
modelo uma
modelo
modelo solução
matemático
matemático Real
matemático
matemático (ℝ), representado as
ou a
representado
representado
representado sobre
determinação
grandezas
grandezas físicas
de valores iniciais
grandezas físicas
físicas deenvolvidas
uma soluçãono
envolvidas
envolvidas no
no modelo
Real, somente
modelo
modelo matemático
é possível para
matemático
matemático representado
sistemas de
representado
representado
pelo
pelo
pelo
sistema
pelosistema
sistema
sistema de
dede
deequações.
equações.
equações.
equações. Além
Além
Além
Além disso,
disso,
disso,
disso, alguns
alguns
alguns
alguns sistemas
sistemas
sistemas
sistemas não
não não
não lineares
lineares
lineares
lineares
duassistema
pelo
pelo
pelo ou três equações.
sistema
sistema de
deequações.
de equações.Além
equações. Alémdisso,
Além disso,alguns
disso, algunssistemas
alguns sistemasnão
sistemas nãolineares
não lineares
lineares
podem
podem
podem
podem ter
terter
ter raízes
raízes
raízes
raízes
Para Complexas
Complexas
uma Complexas
Complexas
solução (ℂ),
(ℂ),
geral(ℂ),
porsendo
(ℂ),sendo
sendo
sendo
métodos necessário
necessário
necessário
necessário
iterativos, fornecer
fornecer
fornecer
fornecer
normalmente uma
uma
uma
uma
tomamos
podem
podem ter
podem ter raízes
ter raízes Complexas
raízes Complexas (ℂ),
Complexas (ℂ), sendo
(ℂ), sendo necessário
sendo necessário fornecer
necessário fornecer uma
fornecer uma
uma
solução
solução
solução
solução inicial
inicial
inicial
inicial
valores Complexa.
Complexa.
Complexa.
Complexa.
iniciais baseados em conhecimentos sobre as grandezas físicas
solução
solução
solução inicial
inicial
inicial Complexa.
Complexa.
Complexa.
envolvidas no modelo matemático representado pelo sistema de equações.
Além disso, alguns sistemas não lineares podem ter raízes Complexas (ℂ),
Nas
Nas
Nas
Nas sendo
próximas
próximas
próximas
próximas necessário
seções,
seções,
seções,
seções, fornecer
vamos
vamos
vamos
vamos uma solução
apresentar
apresentar
apresentar
apresentar três
três
três inicial
métodos
trêsmétodos
métodos
métodos Complexa.
iterativos
iterativos
iterativos
iterativosda
dada
da
família
família
família
família
Nas
Naspróximas
Nas próximasseções,
próximas seções,vamos
seções, vamosapresentar
vamos apresentartrês
apresentar trêsmétodos
três métodositerativos
métodos iterativosda
iterativos dafamília
da família
família
newtoniana,
newtoniana,
newtoniana,
newtoniana,
Nas pois
pois
pois
os
osos
pois
próximas os
de
de de
deoutras
outras
outras
outras
seções, famílias
famílias
famílias
famílias
vamos necessitam
necessitam
necessitam
necessitam
apresentar três de
dede
de
fundamentações
fundamentações
fundamentações
fundamentações
métodos iterativos da família
newtoniana,
newtoniana,pois
newtoniana, poisos
pois osde
os deoutras
de outrasfamílias
outras famíliasnecessitam
famílias necessitamde
necessitam defundamentações
de fundamentações
fundamentações
que
que
que
estão
estão
que newtoniana,
estão
estãoalém
além
além
além do
dodopois
do os de
escopo
escopo
escopo
escopo outras
deste
deste
deste
deste famílias
livro. necessitam de fundamentações que estão
livro.
livro.
livro.
que
alémestão
que
que estão
estão além
além
além
do escopo do
doescopo
do
deste escopodeste
escopo
livro. destelivro.
deste livro.
livro.

4.14.1
4.1 4.1
Método
Método
Métododede MÉTODO
Newton
de Newton
Newton DE NEWTON
4.1
4.1Método
4.1 Método
Métodode
deNewton
de Newton
Newton
No sistema não linear F(X) = 0,
No
No
No
Nosistema
sistema
sistema
sistema
No não
nãonão
não
Nosistema
No linear
linear
sistema
sistema linear
linear
não
não F
F (X)
(X)
(X)
F(X)
F
nãolinear
linear
linear==F0,
0,
=(X)
=
F
F 0,
0,
(X)===0,
(X) 0,
0,
 ff11((ff1xx1(11(,x,x1xx1,2,2x,.......,
fx,.......,(,......., )x)nn==)) =
(xxx11,1,,xxxx2x22n,.......,
f12f211(,......., x,.......,
n,......., 00=x00xxn )))===000
nn
 
 ff22(f(f2x2x(11(,x,x1xx1,2,2xf,.......,
x,.......,
f (
2f22 ( x
2 2 ,.......,
,.......,
( xx , , x
111 , xx xx x )x)
,.......,==
,.......,
222 ,......., x
nn nn )) 0
=0= 0
x 0
x nnn)))===000 (1)
(1)(1)
(1) (1)
    (1) (1)
(1)
     
   
 ffnn(f(fnxnx(11(,x,x1xx1,2,2xf,.......,
x,......., (,......., )x)nn==)) =
(xxx11,1,,xxxx2x22n,.......,
fnf2n2n(,......., x,.......,
n,......., 00=x00xxnnn)))===000

(0)
(0)(0)
Tomando
Tomando
Tomando
Tomando um
Tomandoum
Tomando
Tomando
Tomando um
um vetor
vetor
umvetor
vetor
umumumvetor solução
solução
solução
solução
vetor
vetor
solução
vetor inicial
inicial
soluçãoinicial
inicial
solução
inicial
solução XX
X(0)X ,,(0)calculamos
calculamos
,,Xcalculamos
calculamos
(0)
X, calculamos
inicial
inicial
inicial X (0)
um
umum
um
X (0),,,calculamos
calculamos
um vetor
calculamos vetor
vetor
umvetor
vetor
umvetor
um vetor
incremento
vetor
(0) (0)
incremento
incrementoDX
incremento
incremento = X –
incremento
incremento
incremento
∆X
∆ X X
∆∆XX
== =X e
=X∆Xobtemos
X
−−XX

∆ X
X (0)
(0)(0)
−===XXXX
X−
(0) o vetor
Xee−−−obtemos
eobtemos
eXXXobtemos
obtemos
(0)
(0)
(0) solução
obtemos
obtemos aproximada
oo ovetor
eeeobtemos vetor
o vetor
vetor
ooosolução
solução
vetorsolução
solução
vetor
vetor de incógnitas
aproximada
soluçãoaproximada
solução
solução X
aproximada= X
aproximada
aproximada de
aproximada
aproximada deDX,
dede + de
de
de
em que:
incógnitas
incógnitas
incógnitas
incógnitas
incógnitas
incógnitas
incógnitas ,X, em
em
,+,++em
em X,que:
∆Xque:
que:,em
emque:
,que:
em que:
que:
(0)
=
=X
X=
=XX X (0)
X XX==XX
(0)(0)
=
(0)
++ ∆
X +X

+ X
X
∆∆
XX
(0)
(0)
∆∆ X

(0)  (0) (0)


xx11(0)
x(0)
x11(0) xxx111(0) ∆ ∆xx∆∆ x11 ∆ ∆xx1x111x1−
∆ xx1x(0)
xx−11(0)
x−11 − (0)
1x
11−−
x(0) (0)(0)
−xxx11(0)  xx11xx11 xxx111
11x 1
 (0)   
               
1
      
(0) x (0)     
(0)
(0)  (0) (0) 
(0)(0)
xx22x(0)
x(0) xx222 ,∆ x22∆ ∆xxxxx2222x2x−−
∆ x2(0)222− −−xxx2(0) xx22xx22xxx222
(0)
(0) X    ∆xx∆∆ x   − xx
− (0)
xx
 x2x(0)
  22  
X (0)
(0)(0)
X265
XX == = = XX ==,,∆
(0)
22 = ,∆,
= =XX∆∆ = =X X  ,, ∆∆=
∆=X=X
=
=2
X=2  = = = 
=  ee eeX
22 22
X XX
== e==
eeX XX ===
                 
f ′ e f′′               
(0)     ∆
x  (0) 
277 xxx (0) xx (0) (0)
 ∆
∆ x x   x x (0)− xx (0)
(0)
 xx x  xxxn 
x
x x
 nn nn   nn   nn nn  nn nn nn nnn  n   nnxnn  nn 
(0)
(0)(0)
x   
 x
n   ∆∆ ∆∆ x   xx n x
nnx−− −xx
− (0)
(0)
x
x x
(0)

n n −− xn n 
xk +1
P2 ( xkAplicando
Aplicando
Aplicando xAplicando
− 2 ) = f ( Aplicando
Aplicando Aplicando
Aplicando
k − 2 ) , P2 ( xka−1expansão
aa aexpansão expansão
a expansão
expansão a)aa=expansão
expansão
expansão
f ( xem em em
em série
série em
série
série em
emde de série
série
série
k −1 )em série de Taylor em cada uma das n funções
de
de Taylor
Taylor dedeTaylor
de
Taylor
Taylor Taylor
Taylor
em
em em
em cadaem
cadaem
cada
cada cada
emumacada
cada
umauma
uma uma
uma
uma
das
das
das
das nndasn nnn
das
ndas
(0)
(0)
288 funções nãonãoflineares fifi(i(,.......,
,x1xx1,2,2fx,......., ),(xxx11i,1,,x=xx2xx22,......., )))torno
xxxntorno em torno dodoponto inicial ,XX ,,,
funções não lineares ,......., em torno do ponto (0)(0)X
inicial (0)
funções
funções
funções funções
não
não não lineares
lineares
lineares lineares
, xffx2ixi,(11(,x...,
i 1ffii (( x,......., ,......., em torno ponto inicial
(0)
XXX(0)
X,(0)
2n2 ,......., )x)nn...,
) em
)em
em em
funções não não lineares
lineares (x 1, n, ntorno
nem torno
torno do
do do
do ponto
ponto
do ponto
ponto
ponto inicial
inicial
inicial
inicial
inicialX ,, ,com
nnx

∆∆xx∆com ,..., ,,,nnn,,,analogamente àààexpansão em


emsérie de de
00
com
com, com
com
com ∆comΔx==x j=x=x=∆
com
x x∆

x
−x−
xxxjj−
x
x
−j−
=00==xx,,0x00jxx,,jj,jjjj−=−
j x −jx1,
=
=
j x1,
1,
= xj j01,
= ,
j1, , j
jjn,
 nn1,
,=,== ,,1,
analogamente
1, 
,, 
,n,nanalogamente
analogamente
analogamente
analogamente analogamente
analogamente
à expansão àà àexpansão em
expansão
à expansão
expansão expansão
expansão
sérieem
de
em em
em em
Taylor
série
série
série
sériesérie
série
aplicada
de
de de de
de
jj jj jj jj jj jj
294 Taylor no método aplicada de Newton no nométodo apresentado de deNewton no Capítulo apresentado3, temos: no
noCapítulo
Taylor
Taylor
Taylor
Taylor Taylor
Taylor
aplicada
aplicada
aplicada
aplicada aplicada
aplicada
no
no nono método
método
método
método no método
método
de
dede de Newton
Newton Newton
Newton de Newton
Newton apresentado
apresentado
apresentado
apresentado apresentado
apresentado no
no no
no no
Capítulo
Capítulo Capítulo
Capítulo
Capítulo
Capítulo 3,
3,3, 3, 3, 3,
3,
max Δtemos: x j = 0.375
temos:
temos:
temos:
temos:
temos:
temos:
300
al
Computacional
CAPÍTULO 4 – RESOLUÇÃO DE SISTEMAS DE EQUAÇÕES NÃO LINEARES 289

 (0) ∂f1 ( X (0) ) ∂f ( X (0) ) ∂f1 ( X (0) ) 2


 f1 ( X ) = f1 ( X ) + (0) ∂f1∆(xX1 + + ....
∂f1∆( xX2 (0) ) + ( Xxn(0)+)O(∆x j )
∂f1∆
(0) 1
)
 f
 1 ( X ) = f 1 ( X ∂ x
)1+ ∆∂x x
12+ ∆ x 2 + ∂ x
.... +
n ∆ xn + O (∆x j ) 2
 ∂ x ∂ x ∂ x
 ∂f 2 ( X (0) )
1
∂f ( X (0) )
2 n
∂f 2 ( X (0) ) (0)
f
 2 ( X ) = f 2 ( X (0)
) + (0)
∆ x
∂f 2 ( X1 ) +
(0) 2
∆ x
∂f 2 ( X2 ) +
(0)
.... + ∂f 2 ( Xxn +)O(∆x j )
∆ 2
  f 2 ( X ) = f 2 ( X ∂ )
x 1
+ ∆ ∂x x
12 + ∆ x 2 + ....
∂ x+
n
∆ xn + O x j ) 2 (2)
(∆(2)
   ∂x1 ∂x2 ∂xn (2)
  
  ∂f n ( X (0) ) (0)
∂f n ( X (0) ) (0)
(0)∂f n ( X )
 f n ( X ) =f f n((XX) =)f+( X (0) ) + ∂f n∆(xX1 + ) ∆x + ∂f n∆( xX2 + )....∆+
(0) (0)
( Xxn +)O(∆x j ) 2
∂f n ∆
  n n ∂ x ∂ x
12 x 2 + ....
∂ x+ ∆xn + O(∆x j ) 2

1
∂ x 1 ∂ x 2
n
∂ x n

Em cada Em
Emcada i
(X)fi=
f cada (X)0,=i =
0,=1,
f i (X) =...,n,
i0, 1,
i =...,
desprezando
1,n,...,n,
desprezando os termos
os termos
desprezando dede ordem
ordem
os termos desuperior
ordem
O(Dx
superior O )
( ∆
2
e
x ) 2
e reescrevendo
reescrevendo a eq. (2) a eq.
para (2)
a para
forma a forma
matricial, matricial,
resulta o seguinte
superior
j j O ( ∆x ) e reescrevendo a eq. (2) para a forma matricial,
j
2
sistema
resultaresulta linear:sistema
o seguinte linear:linear:
o seguinte sistema
∆x1  ∆x f1 ( X  )f ( X (0) ) 
(0)
 ∂f1 ( X (0)) f1 () X (0) ∂) f ( X (0) ∂) f1 ( X (0)∂)f ( X(0)
∂(0)
∂ f ( X .... )   
    
1

1 1
∂....
1    1

 ∂x1  ∂x1 ∂x2 ∂x2 xn ∂xn       
 ∂f ( X (0) ) f 2 )( X (0)∂)f ( X (0) ∂) f n ( X (0)∂)f ( X ∆(0)x2)   ∆x f2 ( X  )f ( X (0) ) 
(0)
∂ f ( X∂(0)
2 ....
2
  2 .... n    2   2 
 ∂x1  ∂x1 ∂x2 ∂xn ∂*x  *= −   = −   (3) (3) (3)
∂x2 

n
         
     
        
 ∂f n ( X (0) ∂) f ( X∂(0)f n )( X (0)∂)f ( X (0) ∂) f n ( X (0)∂)f ( X (0) )       
n ....
 
n
....   ∆x     (0)  (0) 
n
 ∂ x ∂ x ∂ x ∂xn n   ∆xnfn ( X  )f n( X ) 
1
 ∂x1 2 ∂x2 n

Resolvendo
Resolvendo
Resolvendo por eliminação
por
poreliminação
eliminação gaussiana
gaussiana
gaussianao sistema
o sistema linear
o sistemalinear dado
dadodado
linear pela
pela eq. eq.(3),
pela (3), determinamos
determinamos
eq. (3), determinamos ososvalores
valores de uma
de
os valores cada Dxj e aproximação
posteriormente
deaproximação
uma para cada paraobtemos
cada
∆x j e posteriormente obtemos os novos valores das incógnitas Dx
os novos valores das incógnitas do sistema não linear via x = x + doj,
(0)
∆x j e posteriormente obtemos os novos valores das incógnitasj do
j
j = 1, ..., n. Esse processo 0precisa
∆xxj0j, +jser repetido para melhorar a precisão da
sistema não linear
sistema via x =
não linear j viax j x+
= =∆1, j = 1,Esse
x j , ...,n. ...,n. processo
Esse processo precisa precisa
solução, atualizando o conjunto de valores iniciais X(0) pelos novos valores X
j
ser repetido
ser
calculados.para
repetido Commelhorar
para
o novo X(0)a, (0)
melhorar precisão
geramos a precisão da solução,
e resolvemos da solução,atualizando
o sistema atualizando
linear o
novamente o
conjunto de valores
conjunto
e o atualizamos iniciais
de valores
até X pelos
queiniciais
algum
(0)
X pelos
critério novos valores
novos
de parada X calculados.
valores
seja X calculados.
satisfeito. Tal critério
(0) (0)
Com oCom novoser
pode o ,mesmo
oXnovo geramos
X , geramos
entree resolvemos
aqueles e resolvemos o sistema
utilizados lineariterativa
o sistema
na solução novamente
linear novamente
de sistemas
elineares.
e o atualizamos
o atualizamos até que atéalgum
que algum critério de parada
critério de paradaseja satisfeito.
seja satisfeito.
Tal critério Observe
Tal critério
pode ser que,
pode considerando
ser o mesmo
o mesmo entre entreum contador
aqueles aqueles de na k,solução
iteração
utilizados
utilizados onamétodo
solução de
Newton para sistemas de equações não lineares torna-se:
iterativa
iterativa de sistemas
de sistemas lineares.lineares.
(k) *Observe
Observe que,
(k) considerando um contador de iteração
k, o k, o
J(X ) DXque, = – F(X considerando
) (4) um contador de iteração
método
método de Newton de Newton para sistemas
para sistemas de equações
de equações não lineares
não lineares torna-se:
torna-se:
X(k + 1) = X(k) + DX (5)
(k )
J ( X ( k ) )J*(∆XX = ) *−∆FX( X
= − F) ( X ( k ) )
(k )
(4) (4)
+1) X ( k=
+1)
XX( k ) + ∆X (5)
X ( k= X (k ) + ∆ (5)

Em que
Em que
Capítulo
Capítulo 4 – Resolução de 4 – de
Sistemas Resolução
Equaçõesdenão
Sistemas de Equaçõe
Lineares
290  ∂f ( X )
1 ()X ) ∂f ( X
 ∂f1∂(fX ∂f ( X ) ∂CÁLCULO NUMÉRICO COMPUTACIONAL
....1 )1 f1 ( X ) 
1 Capítulo 4 – Resolução de Sistemas de Equações nã
 ∂x  .... 
∂x∂1 x2 ∂x2 ∂xn  ∂xn 
Capítulo 4 – Resolução de Sistemas de Equações n
 1
 
 ∂f1 ( X ) Em ∂que f1f(2)X
f1∂(∂X ( X) )  ∂∂∂fff1∂1((fXX
2 ())
)X) ∂f∂(f1X (∂X)f n)( X  )  ∂f n ( X ) 
 .... 2 .... ....2
.... 
 ∂x J ( X )=∂f∂1x( X ∂∂x)x) = ∂ f1 (∂∂X ∂xxx)n∂2 x2  ∂f1∂(xX ∂x)n ∂xn  ∂x  (6)
  J 2( X1 1 ....  (6
 1
 ∂x ∂f1 ( X ) ∂x ∂f11 ( X ) ∂ 2
f ( X  )  n 
 ∂
 ∂f 2 ( X )  ∂f 2 (X2 )f ( X ) ∂ f ( X )  .... ∂ x
∂ f 1
( X )  
∂x1.... ∂x2  ....  ∂xn   
1 2 2n n n
 ∂x J ( X ) =∂f∂x(X ) ∂ f ( X ) ∂f ( X ) 
1 X )  2 ∂f 2n( X  (6)

2 ∂2f ( x ∂ x ∂ x  (6)
 1
 ∂x ∂n f 2 ( X ) ∂∂fxn∂(fX )) ∂
n ()X.... f nn (∂Xf∂n ()fn nX
....
(X )
 )  ∂f n ( X ) 
 J ( X ) =  )=1 ∂x∂1x  ∂2x∂
2
 .... n ∂x....
∂ x  (6) (6)
 J(X   1  ∂xx22  ∂ x ∂xn n  ∂xn  (6)
 ∂f ( X ) ∂f ( X )
1
∂f ( X )
2
 ∂f n ( X )
∂f ( X )
 n n ....
∂fn ( X ) 
.... n
 
 ∂x1 ∂
f
 A ( X )
∂x1
∂n x2matriz
 ∂f ( X ) 
(X∂∂fx)2ncontém ∂ f (
)J (X )ntodasX )
∂x  derivadas parciais de 1ª ordem
 ∂f n ( X )AJnmatriz n(X .... ∂f n (n X )as
contém todas as derivadas parciais de 1ª ordem
 ∂x1 ∂ x .... ∂xn  
possíveis da∂função
possíveis x1 da) F
2 ∂(Xx2 ) e éF
função denominada
(X∂)xas de jacobiana
denominada
en éderivadas dessa função.
de jacobiana dessa função
A matriz J (XA matriz
) contém (X
Jtodas contém
as derivadastodas parciais de 1ªparciais
ordem de 1ª ordem
AF matriz Jcontém ) e étodas
eis da possíveis
função da
(XA função
A)matriz
matriz (X )J(X)
e éJ denominada
F (X
(X )contém
contém xas
denominada
e de
x1todas
todas
2
as
=derivadas
+jacobiana de
asderivadas
e 1x1derivadas
+ x =
parciais
jacobiana
dessa função.
parciais
1
de
de
parciais 1a1ªordem
dessa
de 1ªordem
função.
possí-
ordem
Exemplo
possíveis
veis da
da função 4.2:
função resolva
F (X
F(X) eF4.2:) e
é(X é denominada
e é 2denominada
denominada  por
de Newton,
jacobiana
de jacobiana2 dessa com
dessa
função. 3 iterações
função.
possíveis Exemplo
da função )resolva 2 por Newton,
de jacobiana com 3 iterações
dessa função.

e x1 + x2 = 1 e 1x+1 x+2 x=
x
=
2 1 42 + x 2 =
xpor 4 com 3 iterações
Exemplo
mplo 4.2: resolva  2 4.2: resolva  Newton,
epor1 +2e xNewton,
x 1com 23 iterações
 x + =
x 1 = 1
 1x1 +2 x2 2=
2
4 + 4 por
1
2
Exemplo  xresolva
4.2: + xresolva
2 = +1por
por Newton, com 3 iterações
aExemplo
Exemplo
partir 4.2:
de resolva
14.2:
X (0)
=
a partir de+x1−1X1+x1x2+==
2 (0) ,
2 2 e calcule
x 2
4 = 4 ,
Newton,
e
Newton,
o erro
calcule
com
de
o
3 iterações
com a partir de
3 iterações
truncamento
erro de da
truncamento da
 +1      2
− 1 
artir de aX partir
(0)
=  de  ,, e(0)
(0)
eXcalcule= o erro
calcule o, erroede 
calcule  o errodade
de truncamento
truncamento truncamento
da atingida. da
solução
solução  −1atingida.
  +1−1+1
(0)
a partir desolução
a partir de X
X = atingida. = , e calcule o erro
 −, 1e calcule o erro de truncamento da de truncamento da
solução
ção atingida.
Solução: atingida.  − 1  
Solução:
Solução:
solução atingida.
ução: solução Solução:
Temos Temos
atingida.
Temos
Solução: Solução:
os Temos
 f1Temos( x1 , x2) =f (exx1,+x x)2= −e1x=1 +0x − 1= 0
Temos
( X ) = x1 f1((xXx1),−x=12=)= 01e x1 12+ x22 −2 1= 0 2
xF
1 , x2 ) = e F+ 
F ( X ) =  2(=fx2,(fx2x1 1(),x=1x,2xe)2 xf)=12= +(x2xe1x1 ,+x+−22x1x)2=2 = −−01x4=12= +
0 0x 2 − 4 = 0
2 1 x

F ( X f)
) =  x1 f+2(xx21 ,−x42 )= = 0x1 +22 x2 −2 4 = 0 2
, x)2 =
x(1X 1 1 2
 f ( x , x ) = x12 + x2 − 4 = 0
( x1 , x2 2 ) 1= x2a12 jacobiana
 f 2Obtendo + x2 − 4 = 0 e o sistema de equações lineares para essas
endo a jacobiana Obtendo
Obtendo e
a
Obtendo
ajacobiana
o jacobiana
sistema a jacobiana
e ode esistema
oequações
sistema edeo sistema
equações
lineares
de equações para
lineares
de equações
lineares
essas para
para essas
lineares
essas
duas
para essas
equações,
Obtendo
duas equações, a jacobiana conforme e o sistema de
asdeeqs. equações
(4) lineares para essas
Obtendo
duas a duas
equações, jacobiana equações,
conforme ee o(5), e conforme
sistema asaseqs. as eeqs.
equações
(4)
(5), temos:
(4)
linearese para
(5), temos:
essas
(4) ee (5),
(5), temos:
s equações, conforme conforme as eqs. as (4)
eqs. (4) temos:
(5), temos:
duas equações, conforme eqs. temos:
duas equações, conforme as eqs. (4) e (5), temos:
∂f ( X ) x ∂∂∂fff(1(X(XX)f))( X) ∆  ∆x  ∆ f1x)( X )  f ( X )
X) ∂f1 ( X∂)f11(∂Xf )( ∆    ∂fx (X1 ) f (X   
 ∂x 1 X )1  11∂∂fx1( X1 )   ∆11 x1  1f1 ( X 1)    1 
∂∂xf21 ( X∂x)11∂x1 ∂f1( X∂∂x)x2∂12x2 ∆x1*∂x2  f=1(−X  )   
1
(X  = −   *  *  ==− −*     = −  
X) 
∂f 2 (X ∂ f *
) ∂ f (
∂∂x)f 2( X ) ∂x∂f (2X )     X )   
  12 ∂f 2( X ) ∂2f22∂(f 2X(X)* )  ∂f=2 (−X)        

∂∂x x  ∂ ∂
x x  ∆ x   f ( X  )  
x1 x∆∂2 xx222 f 2f(2∆
∂∂xf22 ( X )11∂x∆1 x∂2f2( X∂)x2∂1x2f22 (X)∆ (2Xx) )  
X
 f2 ( X )
 ∂x      2
 1 ∂ x 2   ∆x2   f2 ( X )
1  ∆ eexxx111ex 111eex1x1 ∆ +∆x∆1xx1x211 −1e∆xex1ex +x1+x+x2 2x−−211−
x11 
) 1
1 1

*ex1 1= −∆2*x 2 =*e−


 *  * = =− − 
x1 +2 (*)
1
2x = − 21−  e (  x2 *−
+(*)
(*) (*)
22xx122x122xx22*x2x1 ∆ x∆x2x=
+1∆
2 
x2− 4  x xx1+2+2x+x2x−−244−42  (*)
 ∆
1 2 x2  
 2 x 2 x  2 2
 
    ∆
1x 1 2 2   
 2
 x + x2 − 4 
(*)
 2 x1 2 x2    ∆1x2  2  x1 + x2 2 − 4   1
1 2 2 2

Primeira iteração:  +1 X(0)(0) =++11+em


aplicamos 1 (*)
Primeira
meira iteração: iteração:
aplicamos X (0)
aplicamos
=  −1 em X (*)=(0) −1 em
X = (*) 1
(0)em +
Primeira iteração: aplicamos  +1
− 1 X  (*)
Primeira
Primeira iteração: aplicamos X =   em iteração:   aplicamos
(0)   −1(*) =   em (*)
 ∂x1 ∂x2   ∆x2   f2 ( X )

e x1 1   ∆x1  e x1 + x2 − 1
291
onal  * =− 2
CAPÍTULO 4 – RESOLUÇÃO DE SISTEMAS DE EQUAÇÕES NÃO LINEARES
 (*)
 2 x1 2 x2   ∆x2 
2
 x1 + x2 − 4 
onal
l
cional
tacional
acional
tacional
cional (0)  +1
al Primeira Primeira iteração:
iteração:aplicamos aplicamos X =   em em((*) *)
onal   − 1
1 e
1
1   ∆ x   e − 2   ∆ x = + 0.075766
 x1 (1)

 x (1)
= +1.0
ee1e11 1 111* ∆x∆
1
1*x 1  e −=2e−− 2 ∆x1 
1 = ∆
 ⇒ +0.075766
x = + 0.075766
1

(1)
= +1.0758 
 x (1)
 ⇒  = + 1.0758
1
11=∆x=1−x=−−e−e2−e ⇒  1=  xx11 == ++1.0758
(1)
∆xx1∆ 2 2x∆x= = x+1x0.075766  ⇒   (1)xx11 ⇒ 
0.075766
0.075766  == + 1.0758
+(1)1.0758(1)
(1)
1.0758 1
nal
e12e2e11 - 21-11***2*∆x∆   − ⇒ ⇒ 2− ⇒  11 ∆ ∆ 1
∆ = +x+ = − ⇒ 0.924234
1
x (1)
= −1.9
 ∆
xx∆∆ x 
=  
=
− − − 2  e −
2
 ⇒ 
2  ∆
 ⇒   ⇒    ∆−
= xx 
0.924234
= + 0.075766
0.924234
 ⇒ 
 ⇒   x 
 =  ⇒ 
 ⇒  −
 x
1.9242 1.9242= + 
1.0758
e2212e2 1---222-12 ∆x1∆ −  ∆ = − 
x 2 xx= +==1.0758 (1)
onal *
*∆
2

 222 x1
 2
e = −
x12=e −−2− −
2 −  2 e − 
− 2 1x = 
2 ∆  x
 ⇒ ∆ 2
= x  +  ∆
0.075766x
−1 0.924234
= + 2
0.075766
0.924234  (1) (1)
 ⇒ 
(1)

− 
−1 x
x (1)
1.9242 == +− 1.9242
2
1.0758
x*∆1x∆ −22∆ ⇒ 
∆
22
xx2x1 =

+0.075766
2
2= = −
0.924234
−−0.924234
 
 +1.0758

(1)
x1x2=2 −==1.9242
(1)
2 1.9242
−−1.9242
e  2 1 * -* 2 1 ∆
22
∆  =2x−  ⇒   ⇒   1x1 = ⇒  (1)
x 2(1)
 = 2−  
  ⇒    ⇒  

 2 2  2 - -22 -2∆ xx2 2∆x2 n −−nn22 −n 2∆∆xx2 2= −−0.924234 x2 =
∆0.924234 −0.924234
2
x2 (1)= −1.9242
(1) (1)
∆
 =  x(1)2 = −1.9242  x2 = −1.9242
∑
 Critério de parada: ∆ x = 1.000000 . 
Critério 1 de parada:
∑  x1 = +1.0758
∆xparada: n 0.075766
1
eCritério  de 1 e − 2n∆ ∆∆x1x=+=
1∑
jnx = 1.000000
jj x 1.000000
eCritério de parada:
∑ .
Critério de parada: = − ∆ = 1.000000 ..
Critério de parada: n  ⇒ 
.  ⇒ 
 *  ∆  

∑∑   −     ∆ j= + 0.075766  x(1)1(1) = +1.0758
1
Critério 1 de x 1 parada:
j =e 2 ∆ jx = x 1 1.000000.
∆ ⇒  x1xj∆j j= 21.000000
n
dd 19
Critério
2 Critério - 2 de *∆ de xparada:
2  = −∑
parada: n −∆2jx=1=
j
j ==11 n ∆
j= x= =
1.000000 −0.924234 ..   ⇒ x2 (1)= −1.9242
Critério de parada: j j =1 1.000000 1.0758
.−+0.924234
Critério
Segunda  2 Critério - 2de de

iteração:∆ x parada:
parada:aplicamos
2  ∑ j∑

=1
− ∆j 2=xj1=j1 = ∆ x
1.000000 ∆
Xj (1) =
x
(1) 2 1.000000
=
= .
X (1) = −1.9242
+ 1.0758 .  em(*)
 + 1.0758
x2 = −1.9242
(*) 
Segunda
Segunda iteração: iteração:njaplicamos aplicamos
=1 j =1 +
(1)++1.0758
+1.0758 
=1.0758 em
em (*)
 em (*)
Segunda Segunda iteração: iteração: aplicamos aplicamos X
 +X
(1)(1)
1.0758
 − =X
1.9242
= 
  1.0758   −((*)  
 (*) em (*)
Critério
Segunda Segunda Segunda
Segunda Segunda de parada:
iteração:
iteração: iteração:
iteração:
iteração: ∑
aplicamos
aplicamos x
n ∆aplicamosaplicamos
aplicamos = 1.000000
X (1)
=
(1)  (1) X  . (1)
+ ==
1.0758   − + 1.0758
1.9242
em
em
−∆1∆1.9242 1.9242
)   em
 em em (*)

(*)
= 
 2.9322372 1   ∆x1   0.0080029  *
j∑
j ∆ x = − 0.066295
−−∆−1.9242
X0.0080029 =X 
Segunda
Critério Segunda
2.9322372
 2.1515314
 2.1515314
2.9322372 deiteração: iteração:
parada:
11
− 3.8484686 j =1∆
aplicamos
=1*  ∆ x∆∆jxx11==
aplicamos
** x

−1.000000 0.0080029
== −−    −1.9242
2    0.8599495
−.1.9242   ⇒ 
   ⇒ 
 ⇒ 
1.9242

xxem
x1.9242
2 =
11 == −−(*)
+0.186389  em   (*)
0.066295
0.066295

2.1515314
2.9322372 2.9322372 1−3.8484686
− 3.84846861  ∆ x1∆∆xx∆22∆ x 1x1∆(1) x0.8599495
0.8599495
1 0.0080029
0.0080029 1.0758
+0.0080029 0.0080029
 ∆  ∆∆xx22 = = ++∆ =
0.186389
0.186389 ∆ x =−0.066295
2.9322372 2.9322372
2.9322372 1 11 ∆ 1x 0.0080029      x = 
1 em(*)1− 
0.066295
∆ x ∆x =x −
= − − 0.066295
0.066295 0.066295
Segunda 2.9322372 iteração: 1 aplicamos ∆ x *1 X = 0.0080029
= −  ⇒   
1
2.1515314 2.9322372
x1(2)  = + 1.0095 1 *  ∆ 
 x*  =
 * ∆x * =∆−x0.8599495 − 

 =
0.0080029
= −=− 
−   + 1.0758

 ⇒ 
  ∆  x ⇒  ⇒ 
=
⇒  ⇒ 
− 
  ∆
0.066295 x 1 1=
 −
  0.066295      
xx2.9322372  ∆=(1) 0.0080029
x−2 =0.8599495  
∆x21=  
*
Segunda2.1515314 (2) 2.1515314
2.1515314
(2)
(2)
112.1515314
== ++1.0095 − 3.8484686
iteração:
1.0095 −−1−
− 3.8484686 3.8484686
3.8484686
3.8484686     2 *∆
aplicamos
1 *
 ∆x∆2x 2x1X
  0.8599495
 
 1.9242
−0.8599495
   0.8599495
 ⇒     ⇒ 
 em 
+0.186389
 ∆ (*)
∆x ∆
1
x1=x ==
+=−+∆ x
 0.066295
0.186389
0.186389
+ =
0.186389 + 0.186389
2.1515314
2.1515314 − 3.8484686
− 3.8484686   ∆x2 ∆ x2 0.8599495  = −0.8599495 ∆x2  ⇒ 
  x = +0.186389 2
∆
2 2
x2 (2) = −1.7378 −1.9242
0.8599495  = +0.186389 2 2
xx=2.1515314 − 3.8484686 ∆x0.0080029 ∆x22 = +0.186389
(2)
2.9322372 xx1(2)(2) 22 + == −−1.7378
1.0095 1.7378
1   ∆ x 
  2   ∆ x  = − 
0.066295
xx==111 ++1.0095
(2)
(2)
(2)
=1.0095 1.0095
== ++1.0095
1.0095 

1
 = − 0.8599495 0.0080029 ⇒  ∆∆xx1= 0.066295 
1
2.9322372
x11(2)
x (2)
= + 1.0095 13.8484686 *n∆n∆
2.1515314 nxx1  = +−0.186389
 
parada:∑
Critério x
 (2) 1

  =x −
(2) 1.7378
(2) = de
+ −
1.0095parada:
1.7378  * ∆ 2x  = = − 0.2527
 .   ⇒    
j =1∑
x2.1515314
(2) x2−−1.7378 == − −−1.7378  ∆x ∆j x =   0.2527  
xx==1=(2)
22 =1.7378
(2)
(2) 2
1.7378
2 (2)
xCritério
2Critério
2(2) de
de parada:
− 3.8484686  2  jj 0.8599495 ..  ∆x2 = +0.186389

x1 2 x − 1.7378
(2)
=x2+1.0095 = −1.7378 n jj==11


n
∆xnnj n=
∆0.2527
n
Critério x(2)1(2) = +1.0095 de parada: n (2) .  +1.0095 
CritérioCritério
Terceira
 x2 Critério
CritérioCritério
= −1.7378 de
iteração:
de de
deparada:
deparada:
parada:parada:
∑∑
∑∑
parada: ∑
aplicamos ∆xnj ∆= xXxj =
x∆0.2527 =
j x = 0.2527
0.2527
= .  +1.0095
0.2527 0.2527
.. .  em (*)
2Critério de ∑∑
parada: j =1∆x j ∆ = ..  . em
j = 1 (2)
(2)
 xTerceira
Critério Terceira
(2)
= −1.7378 de iteração:
iteração:
parada: aplicamos
aplicamos
j =1j =1 ∆x
X = 0.2527 =
0.2527 − 
 −1.7378 1.7378 em (*) (*)
j =
j
Critério de parada: n
j =1
j
 + 1.0095
  
Critério de
Terceira parada:aplicamos
iteração: ∑ j∑
n ∆x j =1= j =
j
1 j = 1
0.2527
X (2)= .(2)
(2)

X0.0080029 =X
+1.0095
 = +
 +1.0095 +  em (*)
x11.0095
1.0095  (*)
Terceira
Critério  2.7441484
Terceira
Terceira iteração:
de 1iteração:
parada:
iteração:
aplicamos
=1 aplicamos
∆∆xx1 j =
aplicamos
0.2527  . −

X 1.7378
(2)
=  +
∆ 1.0095
=em

−0.0052822
+ (*)
1.0095
 em
 em(*) (*)
Terceira   2.7441484
2.7441484 iteração: 11
japlicamos
*    ∆∆xx11=−  0.0080029 X
0.0080029 (2)
− 1.7378
= 
 ⇒  +
−∆1.7378
  1.0095
∆∆ x
x == − − 0.0052822
0.0052822
  em em

Terceira iteração:
 x2aplicamos XX+(2)1.0095 
X ==   ⇒ 
 ⇒ 
(2)
x21.7378
= em (*)
11
Terceira  2.0189416
Terceira
2.0189416 iteração:
− 3.4756897
iteração:  aplicamos
=1 ∆
aplicamos
** 
xx  == −−0.0391360 0.0391360 (2)
    − −1.7378
=

+0.0081916
  em  (*)
(*)
Terceira
 2.7441484 Terceira
 2.0189416 −−
iteração:
iteração:
1
3.4756897
3.4756897 aplicamos
aplicamos
 
∆∆
∆ x 22  X0.0080029 (2) = 0.0391360
+  −
−∆x1.7378
∆ x

1.7378
= ∆
em
em
x
x

=
=
( +
(*)
−0.0052822
−22
0.0052822
+
*1.7378
) 
0.0081916
0.0081916
 
(2) −1.7378 1.0095 
  ⇒ ∆
1 1
Terceira  2.7441484
x1(3) (3) = +1.0042 iteração:1 1 aplicamos  * * ∆  ∆x1 = ∆ − X 0.0080029 =0.0080029 =
em ∆(*)
 2.0189416  (3)xx2.7441484
2.7441484
(3)
11 == + − 3.4756897
+1.0042
1.0042     x2  * = −x10.0391360      ⇒    x21= +0.0081916 x1 =−0.0052822
1 − 13.4756897 ∆ x∆ x10.0391360= − 0.0080029 −1.7378
0.0080029 ∆x ⇒  ∆ x1= = 0.0052822
−−0.0052822
2.7441484 x2(3)
2.0189416
2.7441484 
= −1.7297
2.0189416
2.7441484
− 3.4756897
1 1
 ∆  x2∆ *∆
 x
∆ 1xx2 = −
  0.0391360
0.0080029
0.0080029


2 = +0.0081916
 ⇒  ∆∆ x∆2xx1=

 =+0.0081916
− 0.0052822

2.7441484 (3)   
x1 (3)=2.0189416xx2.7441484
(3)
==
22 +1.00421 −− 1.7297
1.7297
− 3.4756897 
1   ∆x1*  ∆1x0.0080029   1 = −∆  x  
1  0.0391360
   0.0080029 ∆x1=   
 ⇒   
∆11x2 =
−0.0052822 ∆ 0.0052822
x 1 =
+0.0081916 −0.0052822
* *=∆  2==−− =  − 
 ⇒ 
 ⇒   x 0.0081916
2.0189416 x  = + 1.0042 − 3.4756897  
  ∆x  ∆2x0.0391360 −x   0.0391360
  ⇒    ⇒  ∆  ⇒  =  +
∆ x2 0.0391360
1  ∆∆xx1= ∆∆x22 =
* *   0.0081916
+0.0081916
x2.0189416
1− 3.4756897 =−0.0052822
=2.0189416 −− 3.4756897  *∆x2 1 ∆=x 0.0391360
2.7441484
20.0080029
2
2.0189416
(3) x−1(3)1.7297
2.0189416 = +−1.0042 3.4756897 3.4756897 0.0391360
 2 +0.0081916 ∆x2 = +0.0081916
Critério 2 (3)
x
2.0189416  
2 x1(3) = +1.0042
= (3)
− de
1.7297 − parada:
parada: ∑ ∆ =
3.4756897 ∑ ∆ ∆x = −20.013474


0.013474 ..
0.0391360
 ⇒ 
. ∆ x = + 0.0081916
xx1x(3)1Critério
Critério de
de parada:
      

(3)
=x=x1=(3)
(3) + ++=1.0042
2 1.0042
1.0042 1.7297
= +−1.0042 2 2

 1(3) 
 x
x
(3)
(3)
== − + 1.0042
1.7297

Critério

Podemos
 x(3)(3)
xxx2Podemos
Critério
= ==(3)
2Podemos
1(3)
12 +1.0042
x=2−(3)1.7297 de
−−=1.7297 obter
parada:
−1.7297
1.7297
de obter
obter
parada:
o erro
oo erro ∑∑de∆de
erro de∆
truncamento =
truncamento
truncamento
=
0.013474dessa
0.013474
. dessa
. dessa solução
solução aproximada
solução aproximada aproximada
x= 2−1.7297 = −1.7297
 x2

2
(3)
Critério deterceira parada: ∆ = 
 x (3)
=
1 0.013474 . 1.0042
 (3)xx11 dessa
(3)
(3)
Podemos alcançada obter na o terceira
erro deiteração truncamento == 1.0042 1.0042
solução , com aproximada critério de
Critério
Critério
Podemos alcançada
Critério
alcançada de obter na
dena
parada:
nde parada:
o
∑∑
parada:
terceira
erro
∑ ∑ de
n ∆ iteração
iteração
truncamento =


0.013474 
x= x
 = 0.013474
0.013474 =
0.013474
dessa
.− 1.7297 solução
.
. ,, com
com aproximadacritério
critério de de
Critério de parada:
∑ ∆ = .
(3)
(3)
o∑  
2
(3)
x
x = = = −−
1.0042 1.7297
1.7297
Critério Podemos de obter
parada: erro ∆xde ∆= truncamento = x1 0.013474 dessa .com solução aproximada
Critério de  

Critério de ∆parada:
nnparada: . 1.0042
∑ ∑ 0.013474 22
∆
1 (3)
alcançada parada Critério na xde j =
terceira 0.013474
parada: iteração j, por comparação == 0.013474 , comuma . critério solução de
Podemos alcançada parada
parada
Podemos ∑
jobter
=1 na ∆
obter
ox
terceira
jerro
j = 0.013474
o dej erro
= 1 iteração
truncamento de ,, por
por
truncamento
  x comparação
(3)comparação
 x2 = −11.7297 = dessa
 − x 1.7297
(3)
=solução dessa , com
1.0042com
com uma
uma
solução
aproximada critério solução
solução aproximada
de
Podemos Podemos Podemos alcançada obter
n jj==11
obter obter o o
erro erro
o erro
de de de
truncamento truncamento
truncamento 
(3)
dessa dessa
dessa
solução solução
aproximada aproximada
aproximada
parada Podemos
estimada ∑ ∆x j ona
n obter
com = dobro oterceira
0.013474 erro dede iteração
iterações,
, por truncamento x (3)2 conforme
comparação1 (3)=conforme
 1.0042
 x(3)(3) dessa
1= =
com vimos 1.0042 umasoluçãono , comCapítulo
solução critério
aproximada de
alcançada parada Podemos
estimada
estimada j∑ na com
com
∆ x obter
terceira = oo dobro
dobro
0.013474 o erro
iteração de
de , de
iterações,
iterações,
por truncamento
comparação 
 x
conforme (3)
− 1.7297
com, vimos
vimos
com dessauma no
no
critério solução
Capítulo
Capítulo
solução de aproximad
alcançada n j na terceira iteração
xx1.7297
= x1(3) ==métodos 1.0042iterativos. , com critério de
(3)
2 para soluções
=1
de sistemas  x(3)
lineares
2
por 1 (3)=
1.0042 1.0042
1.0042
2 (3)= −
alcançada alcançada ∑ j =1 na terceira na terceira iteração iteração xlineares , com ,
critériocomumade critério
soluçãode
1
alcançada 2 2 para
para
parada n soluções
soluçõesna ∆ terceira
x de
de= 0.013474
sistemas
sistemas iteração ,lineares
por em  1xpor
comparação
(3) por = métodos
métodos
− 1.7297 com com
iterativos.
iterativos. critério de
2
(3)
estimada alcançada
Nesse comna
exemplo, no dobro terceira
a j
solução de iterações, iteração
calculada  conforme = − x (3)
 =x
variável vimos
− =
1.7297 no
double 1.0042 , com
Capítuloatinge critério de
parada estimada Nesse alcançada
Nesse ∑exemplo,
ncom∆ x
n nj naa
exemplo, j = 1 o = dobro
0.013474aterceira
solução de
solução calculada iterações,
, por iteração
calculada
 x
comparação 2 conforme 

 x2em x 1.7297
(3) =
em=variável
2
1−
com vimos1.7297
−1.7297double
variável uma no Capítulo
solução
double atinge , com critério d
atinge
.0042
.7297
292
Critério de parada:
CÁLCULO NUMÉRICO COMPUTACIONAL
∑∆ 0.013474
=

Podemos obter o erro de truncamento d


o de parada: ∑∆ 0.013474 .
=
 x1(3) =
Podemos obter o erro de truncamento
os obter o erro de truncamento dessa solução aproximada dessa solução aproximada alcançada
alcançada na terceira iteração  (3) na
n  x2 =
 x1(3) = 1.0042 Capítulo 4 – Resolução de Sistemas de Equaçõ
da na terceira terceiraiteração
iteração  ,,com
comcritério
critério parada ∑ ∆x j =
deparada
de 0.013474,, por compa
(3)
n  x2 = −1.7297 j = 1

estimada com oiterações


dobro deou iterações, con
∑ ∆x j = por comparação com uma solução
0.013474 , por comparação com estimada com
uma solução o dobro de
Capítulo 4 – Resolução de Sistemas de Eq
j =1 com
 x1(6)o=quadrado do limite para o critério de 2parada,
+1.00416873847466 para soluções
conformede vimossistemas
no lineares
da com o⇒dobro Capítulo de iterações, conforme vimos
 (6) 2 para soluções de sistemas lineares por no Capítulo métodos
Nesse exemplo, iterativos. Nessede calculada
a4solução
Capítulo – Resolução Sistemas de Equaçõee
soluções exemplo, de = −a1.72963728702587
 x2sistemas solução
linearescalculada em variável
por métodos double
iterativos. atinge critério de conver-
critério
Capítulode convergência
4 – Resolução numericame
de Sistemas de Equações não Lineares

xemplo, gência numericamente nulo em 6


a solução calculada em variável double atinge iterações, no limite da precisão envolvida:
no limite da precisão envolvida:

 x (6)
= +
Então, os erros
1.00416873847466 de truncamento de cada incógnita x1 e x2 são:
⇒de convergência numericamente nulo em 6 iterações,
1
 (6) (6)  x1 = +1.00416873847466 | 1.0042 − ( 1.00416873847466) | 3.1262e − 05
(6)
teda precisão envolvida:
 x⇒ 2 =x1⇒ −1.72963728702587
 Erro =+1.00416873847466    
de truncamento X (3)20= =
 x2 = −1.72963728702587| −1.7297 − (−1.72963728702587) | 6.2713e − 05 
(6)
 (6)
 x2 = −1.72963728702587
Então,Então,
OosEntão,
erros
erroos osde
erros
máximo truncamento
de
errostruncamento
de deda
de
truncamento
de cada
cada
truncamento incógnita
incógnita
solução
de cada x1 ecom
obtida
incógnita x113eeiterações
x2 xsão: são:
xx22 são:
Então, os erros de truncamento de cada incógnita x1 e xn2 são:
é 6.2713 * 10 , Capitulo
ErroErro Erro
deErro de
enquanto
de truncamento
truncamento
truncamento
–05
| 1.0042
04.indd
XX(3) = =
(3)
o critério
|20 (3)1.0042
X
−de parada
− ( 1.00416873847466)
| 1.0042 ( 1.00416873847466)
= − ( 1.00416873847466) |  = 3.1262e ∑
∆| x| −j 05atingido
= =
3.1262e −−0505 
3.1262e
de truncamento | −1.7297 −| (−−1.7297 − (−1.72963728702587)=    − 05  
 
||− 056.2713e
6.2713e

j 1
 | −1.72971.72963728702587)
− (−1.72963728702587)
| 6.2713e − 05
em 3 iterações é 0.013474, então, nesse exemplo, o critério de 

20/12/2017 09:11:39
parada
O erro
O Omáximo
erro
erro também
máximo
máximo pode
de
de truncamento
de serdausado
truncamento
truncamento dacomo
solução
da limite
solução
obtida
soluçãocom superior
obtida
obtida com 3do erro é
com3 iterações
3 iterações iterações
O erro máximo de
deétruncamento. truncamento da solução obtida
n com
n
3 iterações
de ∑ n∑ ∆x j em
–05
é 6.27136.2713
* 10
6.2713 
–05–05
10
* 10 ,* enquanto , enquanto
, enquanto o critério
oocritério
critériode
deparada
parada parada atingido
∆x j atingido atingido
3 iterações
é 6.2713 * 10
–05
é 0.013474,
em 3 em
, enquanto
Nos
então, nesseoexemplo,
iterações
3 iterações
sistemas
critérioode
é 0.013474,
de então,
é 0.013474,
pequeno
parada
critério
nesse
j =1

então,
∑j =1∆xtambém
de parada
exemplo,
nesse
porte, em oque j atingido
critério
exemplo, pode ser
ode
j =1esse critério
métododeseja
usado
parada como
também
parada
limite
também
superior
pode ser usado
pode
do erro
ser como
de
usadolimite
truncamento.
como superior
limite do erro do erro
superior
em 3convergente,
iteraçõesNos é podemos
0.013474,
sistemas de então,
rapidamente
pequeno nesse
porte, em exemplo,
chegar
que à solução
esse método o seja
critério
com de
precisão
convergente,
de truncamento.
de truncamento.
nopodemos
parada limite
também das variáveis
rapidamente
pode adotadas,
chegar
ser ou com
à solução
usado como seja, atingir
precisão
limite a limite
no solução
superior dascom
do erro16
variáveis
dígitos
Nos significativos
adotadas, ou seja,
sistemas para variável
atingir
de pequeno a porte,
soluçãodouble,
em quee16
com obter errosignificativos
dígitos
esse de truncamento
método seja para
de truncamento.
variávelNos sistemas
double, e obterdeerro
pequeno porte,
de truncamento em naque esseordem
mesma métododos seja
erros
na mesmapodemos
convergente, ordem dos erros de chegar
rapidamente arredondamento.
à solução com precisão
convergente, podemos rapidamente chegar à solução com precisão
de arredondamento.
no limite das variáveis adotadas, ou seja, atingir a solução com 16
Nos no sistemas
limite das variáveis adotadas, ou seja, atingiresse
a solução com seja
16
dígitosExemplo 4.3:de
significativos parapequeno
resolva
variável porte,
o sistema
double, ede emerroque
equações
obter método
não lineares
de truncamento
Exemplo
dígitos 4.3: resolva opara
significativos sistema de equações
variável double, enão lineares
obter erro de truncamento
onvergente, podemos
na mesma ordem rapidamente
dos erros chegar à solução com precisão
de arredondamento.
na
 x1mesma
2
+ x22 + xordem3 −1 =
2
0dos erros de arredondamento.
o limite das2 variáveis adotadas, ou seja, atingir a solução com 16
Exemplo
2 x1 +4.3: x22 −resolva
4 x3 = 0o sistema de equações não lineares
gitos significativos
 Exemplo para
4.3: variável
resolva double,
o sistema de eequações
obter erro
nãode truncamento
lineares
 x12+3 xx122 +−x432 x−21+= x032 =
2
0
a mesma 2 ordem
 x 22 + x 2 +dos x032 −erros
1= 0 de arredondamento. 0.5
2 x1 + x12 − 4 x23 =
 Utilizando
2 2 x + x
2 2 o método de Newton. Tome o vetor inicial X
2 − 4x = 0
(0)
= 0.5
3 x − 4
 1e critério x 1 + x 2= 0 3
Exemplo  4.3:
3 x
2
2 resolva

3
4
de parada
x2 + x32 =
max ∆xi de
o0 sistema < 0.005
equações
. não lineares
0.5 0.5
 1  
Solução:
Utilizando o método de Newton. Tome o vetor inicial X = 0.5 (0)
0.5
 
 x1 +e xcritério
2
2 +Utilizando
2 2
x3 de − 1parada
= 0 o método
max ∆xdei <Newton. 0.5X =  0.5
0.005 . Tome o vetor inicial (0)

 2Solução:  
2 e critério de parada max ∆x < 0.005 .  
Exemplo 4.3: resolva 4.3:
Exemplo o sistema
resolvadeo equações não
sistema de linearesnão lineares
equações

 x12 + x22 + x32 −x112=+0x22 + x32 − 1 =0


 2CAPÍTULO 4– RESOLUÇÃO DE SISTEMAS DE EQUAÇÕES NÃO LINEARES 293
2 x1 + x2 − 4x23 x= 1 + x2 − 4 x3 =
2 2
0 2 0
 2 2 20
3 x1 − 4 x2 + x33 x= 1 − 4 x2 + x3 =
2
0
0.5 0.5
 
Utilizando oUtilizando
Utilizandométodo
o métododeoNewton.
demétodo
Newton,Tome
detomeoovetor
Newton. inicial
Tome
vetor o vetor
inicial X =inicial = 0.5
0.5 eXcritério
(0) (0)

de parada
e critério max
deeparada|Dximax
critério |de
< 0.005.
∆xi < 0.005
parada max. ∆xi < 0.005 . 0.5 0.5
Solução: Solução:
Solução:

A partir de de
A partir A partir de

 f1 ( x1 , x2 , x3 )= f1x(12x1+, xx222, x+3 x) 32= −x112 + x22 + x32 − 1



umérico Computacional 
) = Computacional
(Numérico
FloculoXNumérico
 f 2 ( x
F1 ,
( x
X
Computacional2 ,
) =
x 3 )= f 22(xx11 , +x2x, 2x3−) =4 x23 x1 + x2 − 4 x3
2 2 2 2
nal
 
 f 3 ( x1 , x2 , x3 )= f 33(xx11 , −x24, x23 )+=x33 x1 − 4 x2 + x3
2 2 2 2

obtemosobtemos a matriz jacobiana,


a matriz jacobiana, 2
obtemos
obtemos a amatriz
matrizjacobiana, jacobiana,
obtemos a matriz jacobiana,
 2 x1 2 x2 2 x3 
 
 2 xJ1 ( X2)x=2  42xx232x1x21 x22x2x2−422x3x3 
 J ( X )= 4 x 2 x −4 
1 2
J ( X ) =  4 x1 2J x(2X)6=−x14 41x1−4 22x22 x3 −4 
  44 22x3x 
 6 x1 −4 2x636x1x1 −−
  3
Aplicando iterativamente as eqs. (4) e (5), temos:
Aplicando iterativamente as eqs. (4) e (5), temos:
Aplicando
Aplicandoiterativamente iterativamente asaseqs.
eqs.(4)(4)e e(5),
(5),temos:
temos:
Aplicando iterativamente as eqs. (4) e (5), temos:
0.5
0.5 
Primeira iteração: para k = 00.5 = 0.5
e X (0) (0) 
0.5
 temos:
,
Primeira
Primeira iteração:
paraiteração: para k = 0 e X = 0.5, temos:

(0)= 0.5
PrimeiraPrimeira iteração:
iteração: para = 0 ee X para
kk = 0 (0)
= k0.5 = 0,,etemos:
 temos:      , temos:
X 0.5
0.5
0.5 
0.5 
1 1 1 
= 1J ( X1(0) ) 1 2 111 1 1−4 1 1 
(0)    4 

( X (0) )  2 = J=J(1X
( X (0)−)4)3  2−24 1 11 − − 4 
 3 −4 1    3 −42 1 2  3 − 4 1
 f1 = 0.5 +20.5 +20.52 −21 = −0.25
2  f 2= 0.5 2 2+ 0.5 2+ 0.5 2− 1 = −−0.25
Ff1( X = (0)0.5 + 0.5
f 2  f21+*=0.50.52 − 1+= 2−0.25
0.5 +*0.5 −−11.25= 0.25
1
)(0)=  = 0.5 + 0.5 − 4 0.5 =
 F ( X ) = f = 2 0.5 2
+ 0.5 2
− 4 0.5 = − 1.25
* 0.5 )2 f= + 0.52f 2 = +0.5 − 42 *= = −1.25
(0) * 2 2 *
( X (0) ) = f2 = F2( X 32 * − −24 *=
24*2*0.5
0.5 −0.5
1.25 0.5
  =
3 0.5 + 0.5 −1.00
 f = 3 0.5 − 4 0.5 + 0.5 2
= − 1.00
3 * 0.52 −43*f0.5 3 = −−41.00* 0.5 + 0.5 = −1.00
* 2 * 2
 f3 = + 0.52 =
3 *0.5
Aplicando a eq. (3), temos o sistema linear:
Aplicando
Aplicando a aeq. eq. (3),(3),temos
temos oosistema
sistemalinear:
linear:
Aplicando a eq. (3), temos o sistema linear:
 1 1 1   1 ∆ x  − 0.25 
∆x x   −−
1 1 1 2 ∆  0.25
 x2∆1=−  
1 1 x 1 1 1 1− 0.25
 1 1  −4  * ∆  
1  −1.25
  
 0.25
 
 2 1 −4  *2∆2x 11=−−− * * ∆
4 −4 1.25

∆x2x =− =−  − −1.25
1.25 
 
   2       3        
3 − 4 1   ∆ x  2  −1.00
 3 −4 1  ∆ 3 − 4 1
3x3 −4 1− 1.00 ∆ x − 1.00
   ∆3x3    −1.00 
   3 −24 1 2
2
 f12 = 0.52 + 0.5 + 0.5 − 1 = −0.25
 f1 = 0.5
 + 0.5 + 0.52 − 1 = 2 −0.252
 (0) ) = f = 0.5 + 0.5 + 0.52 − 1 = −0.25
(0) F ( 294
X  f2 = 2 2 * 0.5 2 + 0.5 − 4 * 0.5 =
2 1 2
−1.25 CÁLCULO NUMÉRICO COMPUTACIONAL
F(X ) =  f2 = 2 * 0.5 (0) + 0.5 − 4 * 0.5 = −1.25
F ( X ) = 2 f−2 4= 2 * 0.52 + 20.52 − 4 * 0.5 = −1.25
  f = 3 * 0.5 * 0.5 + 0.5 = −1.00
 3f = 3 * 0.53 2
− 4 * 
0.5 + 0.5 2
= − 1.00
 f3 = 3 * 0.52 − 4 * 0.5 + 0.52 = −1.00
Aplicando Aplicando
a eq. (3), a eq. (3),
temos o temoslinear:
sistema o sistema linear:
Aplicando a eq. (3), temos o sistema linear:
Aplicando a eq. (3), temos o sistema linear:
 1 1 1   ∆x   −0.25
1 1  1   ∆x1 1  1 1−0.25 
1 −∆1.25x1    −0.25
 2 1  2−4 1*  ∆−x4  *=−  ∆x 2  =−
 2 − 1.25   x  =−  −1.25

 3 − 4  1 2  ∆1x3  −4 *−∆1.00 2 
  
 3 −4 1   ∆x3   
 3 −4 −1.00 1   ∆x3 
   −1.00 

Cujaésolução é
cuja solução
Cuja solução é
Cuja solução é
 0.375 
 0.375 
∆X = (0)
.0   0.375 
∆X (0) =.0   
−0.125
∆X (0)=.0
 −0.125   
 −0.125
Então, os novos valores do vetor X são dados por:
Então, os novos valores do vetor X são dados por:
Então, os novos valoresEntão, os novos
do vetor X sãovalores do vetor X são dados por:
dados por:
  
0.5 0.375   0.875 
0.5  0.375   0.5
0.875
  0.375
(1)
X + ∆=
(0) 
X 0.5 +  0 =    com
 0.875
max ∆x j = 0.875 .
0)
+ ∆=
X 0.5 + (0) 0 =  0.500  0.500
 commax ∆x j =  0.875 .
com max ∆x = 0.875 .
X= X0.5+∆=
(1)
X−0.125

0.5  +  0.375
  0 =  0.500  com max |Dxj| =j 0.375.
   
0.5  −0.125  0.375 
0.5  −0.125  0.375
Capítulo
Capítulo 4 – Resolução 4 – Resolução
de Sistemas de Sistemas
de Equações não

Capítulo 4 – Resolução de Sistemas de Equações não


22  0.875   0.875 
 0.500 
Segunda Segunda
iteração:
Segunda aiteração:
iteração: apartir dea kkpartir
partirde X (1)k = 1 0.500
==11ee de e X (1) ,,=temos:
temos:  , temos:
 0.875  

0.375   0.375 
Segunda iteração: a partir de k = 1 e X (1) = 0.500 , temos:
0.78981660.7898166   0.375 
(2) X (2) = 0.4966216
= 0.4966216
 commax
com max com ∆x j = max |Dx∆jx| j= =
0.0851834 0.0851834.
.
0.0851834 .
0.7898166
0.3699324 
X (2) =0.3699324
0.4966216 com max ∆x j = 0.0851834 .
0.3699324  0.78981660.7898166 
  , temos:  , temos:
Terceiraaiteração:
partir dea kpartir
= 2 e de X (2)k == 20.4966216
e X = 0.4966216
(2)
Terceira iteração: 0.7898166  
 0.3699324 
Terceira
Terceira iteração:a apartir
iteração: partirde de k ==22 ee X (2) = 0.3699324
0.4966216   , temos:
temos: 
 
0.78521040.7852104   0.3699324 

(3) X (3) = 0.4966114
= 0.4966114 com max
 com max ∆x =
 ∆ x = 0.0046062 j 0.0046062
. .
0.7852104 j

(3)  0.3699228
 
0.4966114 com max
X =0.3699228  ∆x =
j 0.0046062 .
(3)
O 0.3699228
processo O processo
convergiu convergiu
para X (3) para com Xcritério com de critérioparadade parada
∆x j <max ∆xem
j <3 0.005 em 3 iterações.
iterações. Mantendo o mesmo procedimento,
max
O processo 0.005convergiu paraMantendo
X (3) com o mesmo
critério procedimento,
de parada
podemos podemos
chegar a chegar
uma a uma
solução solução convergida
convergida no limite noprecisão
da limite da precisão
max ∆x < 0.005 em 3 iterações. Mantendo o mesmo procedimento,
j
Terceira 0.3699324
X (2) =iteração: apartir
0.4966216 com max
de k∆=x j2= X (2) = 0.4966216
e0.0851834 .  , temos:

0.3699324   0.7898166
0.3699324  
295
Terceira iteração: a partir de k = 2 e X (2) =0.7898166
0.4966216  , temos:
CAPÍTULO 4 – RESOLUÇÃO DE SISTEMAS DE EQUAÇÕES NÃO LINEARES

0.7852104 
Terceira iteração: a partir de k = 2 e (2)
= 0.4966216  , temos:
X 0.3699324  
X (3) = 0.4966114  com max ∆x j = 0.0046062 . 0.3699324 
0.7852104 
 0.3699228 0.7852104 com
X (3) = 0.4966114 commax
max|Dx∆jx| =j 0.0046062.
= 0.0046062 .
 
X (3) =0.3699228
0.4966114 com max ∆x j (3) = 0.0046062 .
O processo  convergiu  para X com critério de parada
 0.3699228
max ∆x j <O0.005 em 3 iterações.
processo convergiu Mantendo o mesmo
para X (3) procedimento,
com critério de parada
(3)
O processo convergiu
em X
(3) para
3 iterações. X com
Mantendo critério
o mesmo |Dxj|parada
de
podemos chegar
O processo
max ∆ xa uma
convergiu
j < 0.005solução
para convergida
com critério noparada
de limite daprocedimento,
max precisão
< 0.005
max
em 3 iterações. ∆ x < 0.005
Mantendo em
j chegar a o 3 iterações.
mesmo Mantendo
procedimento, o mesmo procedimento,
podemos
das variáveis double, em 6 uma solução
iterações max ∆x j podemos
e convergida = no
0.0limitechegar
, dada
a uma
da por:
precisão
podemos
soluçãodas convergida chegar
no a uma
limite da solução
precisão convergida
das variáveis
variáveis double, em 6 iterações e max ∆x j = no limite
double, em da
6 precisão
iterações
0.0 , dada por:
e max |Dxdasj| =variáveis
0.0, dadadouble,
por: em 6 iterações e max ∆x j = 0.0 , dada por:
 − 0.785196933062355
 − 0.785196933062355 
X (6)
=  − 0.496611392944656


 − 0.785196933062355

X (6)= − 0.496611392944656
(6) 
X =  − 0.496611392944656 
 − 0.369922830745872 

 − 0.369922830745872 

 − 0.369922830745872 

Então, os Então,
Então, erros
os errosde
Então,
truncamento
os erros
deerros
os de de
cadacada
de truncamento
truncamento
de truncamento
deincógnita
, x2 e (x
cada incógnita
incógnita
de cada(xincógnita x3)1,obtida
x(xe, x2e3)ex 3x) 3)
(x21,1x2 em
1 3
obtida emobtida
iterações em 3 iterações
3 seriam:
iterações
obtida
seriam:
seriam:seriam:
em 3 iterações
| 0.7852104 −0.785196933062355 | 1.306694e − 05 
| 0.7852104 −0.785196933062355
| 0.7852104 | 1.306694
−0.785196933062355 |  1.306694e − 05   
e − 05
1.392945
Erro Truncamento
Erro Truncamento
(3)
X (3) = 0.4966114 −0.496611392944656
|| 0.4966114   |==1.392945
 e − 06

ErroErro
Truncamento
de truncamento X =
(3) X
| 0.4966114
= −0.496611392944656
−0.496611392944656 | =
| 0.3699228 
|
1.392945
   
e − 06   
e − 06
 −0.369922830745872 |  2.830746e − 06
| 0.3699228 −0.369922830745872 |   2.830746 e − 06  
| 0.3699228 −0.369922830745872 |  2.830746 e − 06  
OO erro
erro máximo
máximo de truncamento da
de truncamento da solução
soluçãoobtida
obtidacom com3 3
O erro máximo
máximode
iterações truncamento
ééde1.306694e–05, da da
enquantosolução obtida com 3 é
O erro iterações truncamento enquanto
1.306694e–05, solução oocritério
critério
obtida deconvergência
com
de 3convergência
iterações
iterações émax
max atingidoenquanto
1.306694e–05,
1.306694e–05, ∆∆xxj enquanto oem
critério deo convergência
3 iteraçõescritério de convergência
é 4.6e–03; max |Dxj| atingido
portanto,
j atingido em 3 iterações é 4.6e–03; portanto, também
também
em 3 iterações
max ∆x j nesse
atingido é 4.6e–03; portanto,
em 3ooiterações também nesse
deéconvergência exemplo,
4.6e–03; portanto, o critério
sertambém de
nesseexemplo,
exemplo, critério
critério de convergência podeser
pode usadocomo
usado como
convergência pode ser usado como limite superior do erro de truncamento.
limite o
nesseE exemplo, superior
critério do
deerro de truncamento.
truncamento.
convergência Eooerro
podeestimada
Eser erromáximo
usado máximodede
o errolimite
máximosuperior
de truncamento de
da solução exata, em 6como iterações
(6)
truncamento
truncamento da solução exata,
exata, estimada
estimada em
em 66 iterações
iterações XX(6)de , está
, está
limite
X superior do erro de truncamento. E o pois
erroatingiu
máximo
(6)
, está na ordem dos erros de arredondamento, critério de
na
na ordem
convergência ordem dos
dos erros de
numericamente arredondamento,pois
arredondamento,
nulo. poisatingiu
atingiu critério
(6) critério
truncamento da solução exata, estimada em 6 iterações X , está
de
deconvergência
convergência numericamente
numericamente nulo, max∆∆xxj j =
nulo, max = 0.0. .
0.0
na ordem dos erros de arredondamento, pois atingiu critério
de convergência numericamente nulo, max ∆x j = 0.0 .
utacional
acional
utacional
cional
putacional
utacional
acional
tacional
cional
ional
nal
onal
acional
cional
nal
al
ionalCálculo Numérico
al CálculoComputacional
Numérico Computacional
296 CÁLCULO NUMÉRICO COMPUTACIONAL

Newton com Derivadas Parciais Numéricas


4.2 Método
4.2
4.2
4.2
4.2 Método 4.2
4.2
4.2
4.2
4.2
4.2 Método
de Newton
Método
Método
Método
Método
Método
Método
Método
Método
de de
de
de
Newton de
dede
de
de
de Newton
com
Newton
Newton
Newton
Newton
Newton
Newton
Newton
Newton
com Derivadas
comcom
com
com
com
com
comcom
com
Derivadas Derivadas
Parciais
Derivadas
Derivadas
Derivadas
Derivadas
Derivadas
Derivadas
Derivadas
Derivadas
Parciais Parciais
Numéricas
Parciais
Parciais
Parciais
Parciais
Parciais
Parciais
Parciais
Parciais
Numéricas Numéricas
Numéricas
Numéricas
Numéricas
Numéricas
Numéricas
Numéricas
Numéricas
Numéricas
4.2
4.2
4.2
4.2 4.2
4.2
4.2
4.2
Método
Método
Método
Método
Método
Método
Método MÉTODO
de
de
de
dede
de
de
Newton
Newton
Newton
Newton
Newton
Newton
Newton 4.2com
com
comDE
Método
com
com
com
com
4.2 NEWTON
Derivadas
Derivadas
Derivadas
Derivadas
Derivadas
Método
Derivadas
de Newton
Derivadas de comCOM
Parciais
Parciais
Parciais
Parciais
Parciais
Newton
Parciais
Parciais DERIVADAS
Numéricas
Derivadas
Numéricas
Numéricas
Numéricas
com
Numéricas
Numéricas
Derivadas
Numéricas Parciais
Parciais
Numéricas
Numéricas
da necessidade PARCIAIS de obter previamente uma solução inicial
Além Além da Além
Além Além
Além
Além Além
AlémAlém
daAlém
necessidade necessidade
dadada
dada da da dada necessidade
necessidade necessidade
necessidade
necessidade
necessidade
necessidade
necessidade
necessidade deNUMÉRICAS obter de obter de dede de dedede de de
previamente obter
obter obter
obter
obterpreviamente
obterobter
obterobter previamente previamente
previamente
previamente
previamente
previamente
previamente previamente
previamente umauma solução uma uma uma umasolução
uma uma
uma umauma solução
solução
soluçãosolução
solução solução
solução
inicial solução
solução inicial inicial
inicial
inicialinicial
inicialinicial
inicial
inicial
inicial
r problema
(0) (0) (0) (0)
(0)
(0) (0) (0)(0)(0)
(0) (0)Além Além
do Além Além AlémAlém Além método da da da da da
da da necessidade
necessidade
necessidade necessidade
necessidade
necessidade
necessidade
Newton Além deéde de de dede
Além
terda de obter
obter obter
obterobter
obter
necessidade
obter
que da previamente
previamente
previamente
previamente previamente
calcularpreviamente
necessidade
previamente de asobter numa
uma uma uma
2
umade uma uma previamente
obter
solução
solução solução
solução
solução
solução
solução previamente 2inicial
inicial
inicial inicial
inicial
inicial
inicial
2 uma 2solução
uma solu in
X ,Xo maior ,(0)
XXX
X(0)o(0)
(0)XX
(0) XX
X(0)
(0) (0)maior
,,,,,o,o,oo ,o ,o o o
maior
maior
problema o
maior
maior
maior
maior maior
maior maiorproblema problema
problema
problemaproblema
problema problema
problema
problema
problema
do (0) método do (0) método
do do do do do do do dodo método
método método
método
método método
método
método
Newton método Newton Newton
Newton Newton
NewtonéNewton
Newton
Newton
Newton
Newton teré ter que ééééééque éter
éter
ter éter
terter
calcular ter ter ter que
que calcular
que
que que que queque
que calcular
calcular
calcular
calcular calcular
calcular
calcular
calcular
as calcular nas nas as
as asas asas2as2as
2n n2n2n22n22n22n2n2222
2n
arciais XXXXXXparaX,,,o ,o,o,o,o maioro
maioro
maior maior
obtermaior maiormaior
Além problema
problemaaproblema
problema
da problema
problema
problema
matriz X , ojacobiana
necessidade Xdo do
maior
do do do do do ,método métodométodo
ométodo
de método
método
método
maior problema
obter J (X), Newton
Newton Newton
problema
Newton
Newton
previamenteNewton
Newton
conforme do émétodo éééter éter édoter
éter terter
uma ter aque que método
que que queque que Newton
solução calcular
calcular calcular
calcular
calcular
calcular
calcular Newton inicial éas as as
teras asas as
nnX nnque nénn,tercalcular
(0)
que calca
derivadas
derivadas derivadas
derivadas derivadas
derivadas
derivadas
derivadas
derivadas
derivadas
derivadas parciais parciais parciais
parciais
parciais parciais parciais
parciais
parciais
parciais
paraparciais para obter para
para para
para
para obter
para
parapara
para aobter obter
obter
obter
obter
matriz obter
obterobter
aobter matriz aaaaaaamatriz ajacobiana
matriz
matriz
amatriz
matriz
matrizmatriz
matriz
matriz jacobiana jacobiana
jacobiana
jacobiana
jacobiana jacobiana
jacobiana
jacobiana
jacobiana
jacobiana
J (X), J (X), conforme JJJJJ(X), conforme
J(X),
J(X),
(X),
J(X),
J(X), (X),
(X), (X), conforme
conforme
conforme
conforme
conforme 2conforme
conforme
conforme a a aaaaaaaaa
conforme
derivadas
derivadas
derivadas
derivadas o maiorparciais
derivadas
derivadas
derivadas problema
parciais
parciais
parciais
parciais
parciais
parciais derivadas para
para para do
para parapara para método
derivadas obter
obter obter
obter obter
obter obter parciais aaaNewton amatriz
amatriz
aamatriz
matriz
parciais
matriz
matriz
matriz para éjacobiana ter
jacobiana
jacobiana
jacobiana
jacobiana
jacobiana
obter
para
jacobiana que obter acalcular matriz
JJJJ(X), (X),
J(X),
J(X), J(X), a(X),
(X), as
matriz
conforme
conforme
conforme conforme n derivadas
jacobiana
conforme
conforme
conforme jacobiana aaaaJaaa(X), conform J (X), co
eq. eq.
(6). eq. (6).
eq.
eq.
eq.
eq.
eq. eq.
eq. eq.
parciais (6).
(6). (6).
(6).
(6).(6).(6). (6).(6).para obter a matriz jacobiana J(X), conforme a eq. (6).
rnativa eq.
eq. eq.
eq.
eq.
eq.
eq.
mais (6).
(6). (6).
(6). (6).(6).(6). simples para eq.contornar (6).eq. (6).esse problema consiste
A alternativa A alternativa A A A A A A A A
alternativa
A alternativa
alternativa
alternativa
alternativa alternativa
alternativa
alternativa
alternativa
alternativamais mais simples mais mais
mais mais
mais simples
mais
mais
maismais
mais simples
simples
simples simples
simples
para simples
simples simples
simplessimples para contornar para para
paraparacontornar
para
para para
para
para para contornar contornar
contornar
contornarcontornar
contornar
contornar contornar
contornaresseesse
contornar problema esse problema
esse
esse esse
esse
esseesse
esseesseesseproblema problema
problema
problema problema
problemaproblema
problema
problema
problema
consiste consiste consiste consiste
consiste
consiste
consiste consisteconsiste
consiste
consiste
consiste em
A A A AA A alternativa
Aalternativa
alternativa alternativa
alternativa
alternativa
alternativa ∂mais
mais mais
mais
fmais imais(mais X simples A)simples
simples
simplessimples
alternativa
simples
simples A para alternativa
paraparapara
para
parapara mais
contornar
contornar
contornar contornar
contornar
contornar
contornar simplesmais esse esse esse
simples
esse esse
esseesse
para problema
problema problema
problema
problema
problema
problema contornar para contornar consiste
consiste
consiste consiste
consiste
consiste
consiste esse problema esse problem con
as n derivadas parciais
2
através ∂fi (de X )i aproximações
∂ f ( X ∂ ∂ ∂∂
f∂)
f ∂
f ∂
f ∂
(
f ∂
(
f (
f (
f
X (
X
fX( (
X X( )
X(X) )
X )
X) )) ) )
em em simular simular
em
emem
emem
ememem em
simular simular
simular
simular simular
simular
assimular simular
simular simular nas 2
asderivadas nas 2
as
asas
asderivadas
asas
derivadas asas
n n n n n nn
2222 ∂x j derivadas
derivadas
derivadas
derivadas
n
2222222222
n derivadasderivadas
derivadas
derivadas
derivadas parciais parciais parciais parciais
parciais
parciais parciais
parciais parciais
parciais
parciais
parciais poratravés
∂∂∂f∂ff∂(∂f(∂f(X meio
iiiii iiiii
fX(fX (X através
()(X )X)X )))) através
através
atravésatravés
de
deatravés
através através
através através de
aproximações
aproximações aproximações
de de de dede dede de de aproximações
∂fi ( X ) ∂fi ( X )aproximações
aproximações aproximações
aproximações
aproximações aproximações
aproximações
aproximações numéricas,
ememem
ememem
em simular
simular simular
simular
simular
simular
simular as as as as asas
nasnn2n22n2nderivadas derivadas
nemderivadas
derivadas
derivadas
derivadas
derivadas simular em simular parciais
parciais parciais
parciaisparciais
as
parciais
parciais n∂2x derivadas as ∂xinjiii2i∂∂i∂iderivadas xjxatravés
jjatravés
∂x∂ix∂x∂xjx∂j∂xjxjatravés jjatravés
j através
através
parciais
através de parciais
de de de de de de aproximações
aproximações
aproximações aproximações
aproximações
aproximações
aproximações através através de aproxima de apro
conformeconforme feito nofeito método no método da secante da secante
j
do Capítulo ∂∂∂x∂xx∂j∂xjjCapítulo
do ∂xjxjxjj j 3. 3. ∂x j ∂x j
numéricas,
numéricas, numéricas,numéricas,
numéricas,
numéricas,
numéricas,
numéricas,
numéricas,
numéricas,
numéricas, conforme conforme conforme
conforme
conforme
conforme conforme conforme
conforme
conforme feitofeito
conforme nofeito feito
feito
feito
feito no
feito
métodofeitofeito
feito método
no no nono no no
no nono método
métodométodo
método
método
da método
método
método
método da secante
secante da da dada
da da da dada secante
secante
secante
secante
secante
do secante
secante
secantesecante do Capítulo
Capítulo dodo dodo do dodo dodo Capítulo
Capítulo
Capítulo Capítulo
Capítulo Capítulo
Capítulo
Capítulo
Capítulo
3. 3. 3. 3.3.
3.3. 3. 3. 3.3.
efinição, numéricas,
numéricas,
numéricas,
numéricas,
numéricas,
numéricas,numéricas,
sabemos Porconforme conforme
conforme
conforme
definição, conforme
que conforme
conforme numéricas,
a derivada feito
sabemos feito
feito
feito
numéricas,
feito
feito
feito no no no no no conforme
no no
que
exata método
método método
método
método
método
método
a derivadaconforme
de uma dada da
feito
da da da da secante
secante secante
secante
exatasecante
secante
secante
no
função feito método
dedo do no do
uma do dodo do Capítulo
método
Capítulo Capítulo
Capítulo
Capítulo
Capítulo
função Capítulo
da secante da
com 3. 3. 3. 3.3. 3.secante
3.uma do Capítulo do Capí3
Por Por definição, PorPor definição,
Por
Por
Por Por
Por Por
Por definição,
definição,
definição,
definição, definição,
definição,
definição,
definição,
definição,
sabemos sabemos sabemos
sabemos
sabemos sabemos
sabemos sabemos
sabemos
sabemos
quesabemos que a que
derivada que a
que
que
que
que
quequederivada
que a a a a a a a a
derivada
derivada
a
derivada
derivada
derivada derivada
derivada
derivada
derivada
exata exata de exata
exata
exata exata
exata
exata
exataexata
uma de
exata umade de dede de dede
função de de uma
uma uma
uma
uma função
uma
umaumauma função
funçãofunção
função
função função
função
função
função
riável é:variável Por Por Por Por Por Por Por é:definição,
definição,
definição, definição,
definição,
definição,
definição, sabemos
sabemos sabemos
sabemos
sabemos
sabemos
sabemos
Por definição, Por que
que queque quequeque definição,
aaaaderivada aderivada
aderivada
aderivada
derivada
sabemos
derivada
derivada sabemos exata exata
exataexata
que
exata
exata
exata de ade dede quede
derivada
de de uma uma uma uma umauma
uma
a derivada função
função função
função
função
função
função
exata exata de uma de funum
comcom uma com
com
com uma
com
com
com com
com com variável uma umauma uma uma variável
umauma uma
uma variável
variável
variávelvariável
variável variável
variável
é:variável
variável é: é: é: é:
é: é: é: é: é: é:
com
com com
com
com
com
com umauma umauma umauma uma variável
variável variável
variável
variável
variável
variável f ( xcom é:
+ é: é: é:∆é: é: é:xuma )com − f (variável xuma ) variável é: é:
f ′( x) = lim f ( x f+(∆xx+ ff)ff(f(f∆− −+∆+
(f(xf(xfx(x(x(+x(f+x)+x+x+(+
∆ ∆
x∆+∆ x∆ x)∆xf∆
x)∆
x)x)x()−)x−x)x− )−f−
)−)−)− f−ff(f(f(f(xf(xfx(x()x()x()x))xx))))
∆x →0 f ′( xf) ′= (∆xxlim f)fff′f= ′x()′x()x()x))x=x=
′f(′f(′f(′(fx′(x′x(lim ))== )= )== lim= =
limlimlim
lim lim
lim limff(f(f(xfx(fx(x(++
flim (xx++ x∆+∆ +∆ +∆xx∆x∆ )x∆
)x)− x)−x)−)−)−f−f−f(f(f(xfx(fx()x()(x)x)x))) f ( x + ∆f x()x−+ f∆(xx))− f ( x)
fff′f′∆(f′(fx′(xfx(→ ′′x()x′()0(x)x= )∆= x)x=)=)→= lim=lim = 0lim lim ∆lim
∆∆ lim
x∆xlim
∆x→∆
x→ ∆x∆
→ ∆
→x∆→ x0∆
x0x→ → 0→
x0→ 0→00x 000 ∆x f ∆ ′∆(∆∆∆ x∆x∆x∆x∆ )xxxx= xf ′lim ( x) = lim
∆∆∆x∆x∆ x→ x→∆
→x∆→ x→

0x0→0x0→ 0→ 000 ∆∆∆∆ xx∆x∆x∆xxx ∆x →0 ∆x →0 ∆x ∆x
xtensão, a derivada Por extensão, parcialaexata de uma função deuma várias
PorPor extensão, Por extensão,
Por Por
Por
Por Por
Por Por
Por extensão,
extensão,
extensão,
extensão, extensão,extensão,
extensão,
extensão,
extensão,
a derivada a derivada aaderivada
aaaderivada aderivada
aderivada
aderivada
aderivada
derivadaderivada
derivada
derivada
parcial parcial parcial parcial
parcial
parcial
parcial
exata parcial
parcial
parcial
parcial
parcial exata
exata de exata
exataexata de
exata
exata de
exataexata
exata
uma exata uma de de de
de de
função dede função
de
deumauma
uma
uma
umafunção
uma uma uma uma função de
função
função
de função
função
funçãofunção
função função várias
de várias
várias de de
de de
de devariáveis
de
de de várias
várias
várias várias
várias várias
várias
várias
várias
definida por: é definida Por Por Por Por Por Por Por extensão,
extensão,
extensão, extensão,
extensão,
extensão,
extensão,
por: a a a a a
derivada
derivadaaderivada
aderivada
derivada
derivada
Por
derivada extensão, Por parcial
parcial parcial
parcial
parcial
parcial
parcial
extensão, a exata
exata exata
derivada
exata
exata
exataexata a dedede
derivada
de de de de
uma uma uma uma parcial
umaumauma função
função função
função função
função
parcial
função exata de de de de de de de
exata
várias
várias
várias váriasvárias
várias
uma
várias defunção uma função de vá
variáveis
variáveis variáveis
variáveis variáveis
variáveis
variáveis
variáveis
variáveis
variáveis
variáveis
é definida é definida éééééédefinida édefinida
édefinida definida
édefinida
definida
definida
definida
por: definida por:por: por:
por:
por:
por:por:
por:por:
por:
variáveis
variáveis
variáveis
variáveis
variáveisvariáveis
variáveis f ( x1 , xééé2édefinida édefinida
,...,édefinida
édefinida
definida
definida
definida
x +variáveis ∆xpor: por: por:por:
,...,por:
por:por:
variáveis x )é−definida fi ( xé1 , definida x2 ,K por: , x j ,..., por: x )
xn ) +,..., ∆ + + + + + + ∆ +
∆ ∆
+ ∆ ∆∆ ∆ ∆ − )n−)n−)x2−)−)1− −
∂f=i ( x∂lim
f1 ,i (K x∂∂∂1∂f∂f,∂fii,∂fi∂fi(∂if(xfiK
(x(fi(ifxnix(i1x(i1x()1,x(1x,1,x1,x1,1x1K
,1,K ,nK
K ,K K)K K,K ,,,x,xx,x,nxn,xn,nx)n)xj)xn)nfn)n)ni))() x1f,i jx( x2 1,..., x(i1x(1,x(1x,j1,x1,x1,x1+1x,1x,2x2,x2,2,...,
ff,fififxi(if(fi(2x(fi(ifxnix(i1,..., x∆ ,...,
,...,
2xx2,...,
2j2,...,
2x,...,
2,..., ,...,
x x x
,..., xx xx +
x x x ∆
,..., x
)x x x −
x x x ,...,
x
,..., ,...,
x,...,
f )
,...,
,...,
i x
,...,
,..., ,...,
( xxxn1xnfxnnx),ni)x)xn)nx(n− ,−fKf,−fffx(f(f(x(f(fx,ix(i1,x(i1x(K x,1x,2x,2x2,2x,2xK
,x(x,,x1j,x1,x11,..., ,x2,K ,K
2Kj,2K ,...,
,xK,K
,K
,K ,,,x),xx,x,xj,jx,j,...,
xj,...,
xj,...,
xn,...,
j,...,),...,
jj,..., ,...,
,...,xxxxxxx))x)x))))))
∆x j ∂ →∂∂f∂0fi∂fi∂if(i∂(fi(xfix(fi1x(i1x(1,1(x,1x,1x,1K ,K
1,K ,K=K ,,K
K ,x,xlim xn,x,nn=,n)xn)xx)n)nn)lim ))=======lim == ∂lim
lim limlimlim
flim limf(fifixif(i(fi1(xfix(f,i1x∆
lim (i1x(∂1,1(x,1K
xxf,x1x,1xixj2,1(x,22,,...,
2x x,...,
2,...,x21,...,
22,...,
,n,...,
,...,
)xK xxjxjjxj+
j
xj,+x+
j
jxj+
jj
j+

j j
∆ +∆
j j
+∆
j
x)x∆x∆jx∆
j j n
xj,...,jj
xjf,...,
jj,...,xj,...,j j
ij,...,
jn j
(j,...,xxx1xn,xnnn)xn)xx)n−
j jj
,..., j
f2)n−ni)− )−
,..., ()n− f−xfi−fi1if(i(,fi(xfiix(fii1ix(iij1x(1i2,12i(x,i1+,x1x,1x1x12,1x1∆
x,..., ,22,2x,2xK x,K
2,x 2K 2,j,K
K ,2K
2
j,...,,K +,x,xx,njx∆
,jj,,...,
xjx,...,
,...,
jx jn,...,
j,...,
j)
,..., x−jxj xnxnnn)xfn)xxin)nn)n(nnn)n)xn)nnn1n−, xf2i,(K
,..., x1 , x2j ,,...,
K ,x
∂x j ∂x j ∂∂∂∂x∂x∂x∂x∂xj∂jxjxj∆xjxjxjjjjj→0= ∆= x= =j =→ =lim
=lim
lim 0lim
∆∆lim∆x∆lim
x∆xlim
j∆
xj∆ j∆

x→ →jx∆
→i
xj→
xxj→ 0xjj→
0j→ 0→
0j→ 0→ 00000 = lim n
∆ x =j ∆lim x j ∆∆∆∆∆ x∆ x∆xx∆∆ xjjxjxjxjxjjjjj
∂∂∂x∂x∂xj∂xj∂jxjxjxjj j ∆∆∆x∆x∆ xjxj∆
→xj∆
j→ →
x∆
j→
jx→0jx0j→
00j→ 0→ 000 ∂x
j ∂x j ∆x j →0 ∆x ∆ j∆ → ∆∆ xx0∆x∆jx∆
jjx jx jxjj j ∆x j ∆x j
lizarmos um ∆x j relativamente pequeno, podemos obter
Se utilizarmos Se utilizarmos Se Se SeSe
Se Se SeSe SeSe utilizarmos
utilizarmos
utilizarmos
utilizarmos
utilizarmos utilizarmos
utilizarmos
utilizarmos
utilizarmos
utilizarmos um um ∆x jum um um∆um um um um xum
um
relativamente um jDx ∆relativamente
∆∆∆∆ x∆ x∆ x∆x∆ xrelativamente
jrelativamente
xjxjxjrelativamente
xjjrelativamente relativamente
jjrelativamente
jrelativamente
jrelativamente
relativamente
relativamente pequeno, pequeno, pequeno,
pequeno,
pequeno,pequeno,
pequeno,
pequeno, pequeno,
pequeno,pequeno,
podemos podemos podemos
podemospodemos
podemos
podemos
podemospodemos
podemos
podemos
obter obter obter
obter
obterobter
obter
obter obter
obter obter
mação paraSe Se asSe Se Se Se Se utilizarmos
utilizarmos
utilizarmos utilizarmos
derivadas utilizarmos
utilizarmos
utilizarmos um um
parciais: um um um um um Se ∆∆∆ ∆xutilizarmos
x∆x∆jx∆ jjx jx relativamente
jrelativamente
Sejrelativamente
jrelativamente
jx jrelativamente
relativamente
relativamente
utilizarmos um pequeno, pequeno,
∆pequeno,pequeno,
xum
pequeno,
pequeno,
jpequeno,
pequeno,relativamente ∆x j podemos relativamente
podemos
podemos podemos
podemospodemos
podemos
podemos obter
pequeno, obter
obter obter
obterobter
obter
obter uma
pequeno, podemos podeo
umauma uma
uma
umauma
aproximação aproximação
uma
uma uma
uma uma
aproximação aproximação
aproximação
aproximação aproximação
aproximação aproximação
aproximação
aproximação
aproximação para para para asas para
para para
parapara
derivadasas
para para
para para
derivadas derivadasas as as as as as as as as derivadas
derivadasderivadas
derivadas
derivadasderivadas
derivadas
derivadas
derivadas parciais:
parciais: parciais: parciais:
parciais:
parciais:
parciais:
parciais: parciais:
parciais:
parciais:
parciais:
uma
uma uma
uma
uma
uma
uma aproximação
aproximação
aproximaçãoaproximação
aproximação
aproximação
aproximação uma para
para para
para paraparapara aproximação
uma as as as as as as as derivadas
derivadas derivadas
derivadas
aproximação
derivadas
derivadas
derivadas para parciais:
parciais:parciais:
parciais:
parciais:
parciais:
parciais: as para derivadas as derivadas parciais: parciais:
K , xn ) fi ( x1 , x2 ,..., x j + ∆fx (j ,..., xn ) − f i ( x1 , x2 ,K , x j ,..., xn )
+ ∆ + +++ ++
∆ +∆ ∆
+ ∆ ∆∆ ∆ ∆ − − − − − − − − −
∂f≅i ( x∂1f,i (K x∂∂∂∂f∂f,∂f∂,f∂f(∂f(xfK ((xf(fxx(x(x()1x,(1x,1,x1,x1,1x1K
,1,K ,K
K ,K )K
K fK,K ( x , x x f f
,...,, f f x
f( f( f( (
f
x (
f
x x( ,...,
(
x x ( ,
x( x, ,x ,x ,x + ,
x x, x , ,
xx ∆
,...,
,...,x ,...,
x ,...,
,...,,...,
x ,...,
,i,,x,xx,,,x,x1))x)x)i)))))2 1 iiiiii2iii1i111j1111112222222j222 j jjjjjjjjjj n jjjjjnjjjjji n1nnnninnnnn2 1 iiiiii2iii1i11111j1111222222222j2 n jjjjjnjjj,...,
,..., ,..., x x x
,..., x x xx +
x x x ∆
,..., x) xx x x− x x,...,
x,...,
,...,
x ,...,
f )
,...,
,..., ,...,
,..., ,...,
( x x x x x f
x )
x,)
x)
x)−
(
x) ) )
x ) ) , f f
K, f f fx
( f(
f ((
f
x (
f
x
, x( ,
(
x x ( K ,
x( x, ,
x ,
x ,x ,
x ,
x
,..., x, ,
x,
x ,x ,
Kx,K ,
K K, ,
K x
K,
,...,
K, K,,
K , ,
x),
x,
x ,
x x, ,
x ,...,
,...,
x
,...,
x ,...,
x j),...,
,..., j,...,
,...,xxxxnxnxnnx)n)x)xn)nn)n)n)))
∂∂∂f∂fi∂fi∂if(1i∂(fi(xfiix(fii1ix(ii1x(1i,1i(x,i1xin,i11xi,11K ,K
,1K ,K ≅K ,n,K
K ,x,xx,nx,nn≅,n)xnx)xn)nn)nnnn)n)nn)nn≅n≅f≅≅ f≅ if≅ if(i≅
i≅ (f≅
i∂(xfix(fi1fx(∆ (1i,1(x,1(xx,x1,x1x,21jx,212,,...,
i1x 2x ,,...,
2 x2∂,...,
x,..., 22,...,
K f,..., ,..., x( x x
, x j x
j j+xj+,x +
j +
j)∆j+

K + ∆
+∆
x x∆∆
x x,∆j j j,...,
,...,
x xfj ,...,
x i,...,
j j (
,...,
j,...,
) ,...,
x x1 x x, x
nn )
x
n )
x
n )
x
f
n2−)−
nin− −
,...,
) )
( )− fx −
f −f
1 i i(
f i ,(f
ix (
f (
x
if
xix
1(
ji(
x
1
21,
1 (
x,+
,...,
1x ,
x 1 ,
x 1 x,
21∆ x,
2 2,
2x ,
x
2Kx , K2x, K
2 ,
K
2
j ,j ,...,
K ,K +
,
K ,x ,
x ,
x∆x, j ,
x
jj,...,
xj,...,
,...,
x nj,...,
j ,...,
j)j,..., −
,...,
x x x xn
n f)xnx)ix)n)(nnn)x))1−, xf2i,(K
n x1 , x2j ,,...,
K ,xxn j)
∂x j ∂x j ∂∂∂∂x∂x∂x∂x∂xj∂jxjxjxjxjjjjj ≅≅≅≅≅≅≅
j
i 1n
∆≅x j ∆ j n
x≅
n
∆ ∆ ∆ ∆ ∆x ∆x∆
x ∆
x ∆
x xx x x
i j n

∂∂∂x∂x∂x∂jxj∂jxjxjxjj j ∂x j ∂x j ∆∆∆ j

xx∆x∆jx∆ jjx jx
jjjjjjjjjj
jxjj j ∆x j ∆x j
, geramos uma aproximação numérica da matriz jacobiana
Então, Então, Então,
Então,
geramos Então,
Então,
Então,
Então,Então,
Então, geramos
Então, geramos
geramos
geramos
geramos geramos
uma geramos
geramos
geramos
geramos uma aproximação umaumaumaumaaproximação
uma umauma uma uma aproximação
aproximação
aproximação
aproximação aproximação
aproximação
aproximação
aproximação
aproximação numérica numérica numérica
numérica
numérica
numérica numérica numérica
numérica
numérica
numérica
da matriz da matriz da da da dada dada da da matriz
matriz
matriz
jacobianamatriz
matriz
matriz matriz
matrizmatrizjacobiana jacobiana
jacobiana jacobiana
jacobiana
jacobiana
jacobiana jacobiana
jacobiana
jacobiana
Então,
Então, Então,Então, Então,
Então, Então, geramos
geramos geramos
geramos
geramos
geramos
geramos uma uma uma uma uma uma
Então,
uma aproximação
aproximação
aproximação aproximação
aproximação
aproximação
aproximação
Então, geramos geramos uma
numérica
numérica
numérica numérica
numérica
numérica
numérica aproximação
umada da aproximação
da da da da da matriz
matriz matriz
matrizmatriz
matriz
matriz numérica jacobiana
jacobiana
jacobiana jacobiana
jacobiana
jacobiana
jacobiananumérica da matriz da matriz
jacob
através
através através
através
através
através
de: através
através
através
através
através de:Então, de:de:de:de:
de:de:de: de:de:geramos uma aproximação numérica da matriz jacobiana por
através
através
através
atravésatravés
através
através
meiode: de: de:de: de: de: de: de: através através de: de:
x1 , x2 ,..., xn ) − f1 ( x1 , x2 ,..., xn ) f1 ( x1 , x2 ,..., xn + ∆xn ) − f1 ( x1 , x2 ,..., xn ) 
∆fx1 ( x1 +f1∆ ( xx11,+ fxf1f1f∆ x(fx1f(f1x1xf1((x1,(1+(x+
2(1f1(f,...,
1( 1x(x+1x+1x+ 121∆
∆ + ∆
++x+∆

n1 )1−
,..., x+∆xx∆1∆,x1∆ x,1x,x1x,f1x21x,....
1,∆ n12,x 2,2(,x,...,
1,..., x2−
),x2,...,
x,...,
,...,
x221,...,
2,...,,...,
2,,...,fx1xnx2nx(n)nx,...,
x,..., )xn)x− )xn1−xn)n−n)− ,)n− ))fx−)fx−1−f12−
f(1− f(,...,
f(x(fxf(fxxf(,(x(,(x,x(,xx,xx,,x,...,
n11)11111111121n12122222222 ∆
,,x,...,
),x,...,
x,...,
x,...,
x,..., ,...,
,...,
,..., xxnxnxn)fnx)1xn)x)xn(xn)nn)x)n))1), fx12(,...,
x,..., x1 , fxfx1f12f(1nf1(,..., f1(x(fx+
1f(f1x1xf1(,(x1(1,∆ (x,1x(,x1x,1x21x,n12,x1,...,
2,n2,x x,2+
,..., ,...,
x),..., x22−
x2,..., 2∆
,..., ,...,
,...,
2,..., xfxnx1nxnnx(+)xn+xx+
x,..., n+x−
nn+ ∆ ∆+∆+∆+x+f∆ +∆
1nn, x1n2nnn,...,
xx∆∆ x(∆)∆ x)xn)x− )xn1− xn)n−n)− ,)n− ))fx−)fx−
1− f12−
f(1−
n11)11111111121n1212222222
f(,...,
f(x(fxf(fxxf(,(x(,(x,x(,xx,xx,,x,..., ,,x,...,
)x,,...,
x,...,
x,...,
x,..., ,...,
,...,
2,..., xxnxnxn)nx)xn)x)xnxn)nn))n)))
x,...,
(+ x1+(x+1∆ +
x1∆∆ + .... x))n),...,
xxnxnxnf)1n1)x)n,n)x(n)xnx.... ....
....
........
....
....
........
....
f....
 1  ff1f1f(1f1((x11(fxxf1(x1f1(x+ 1 1 1∆ x+∆ x+ xx∆,∆ x,∆,x,xx,x,x,...,
∆111x11111212212∆
,,...,
x,...,
2,2,...,
x2,...,xx2,..., 2,...,
x,...,
xxnxnxn)∆ n)∆
x)nn∆− )x∆ −x−
n)
x∆x n−∆
x)x∆n− )fx∆f∆
∆ −
)fx−
x
1 1fx (1x−f1(x(x11(fxxf1(x1f,1(fx1,(1,x11,(x(x,12x1x2,x2,..., 1,21,..., x+
x,...,
2,2,...,
2,...,
x2,..., ∆x,...,
2,..., n21 + ∆x1n,)fx f1− 1f1(,...,
12f( (x11(fxxf1(x1f,1(x1,(,x11,(xx,12x12n,x2,..., 1,2,...,
)x,...,x−
,2,...,
2∆ 2,...,
x2,...,
x 2,..., xxn1xnxn(n+
xf,..., ∆ xn+n+
x+ x∆
1nx +n,∆ )∆
n+ ∆
x+∆x+ xn2x∆ n∆ ∆
xn,...,
)n∆
∆ )x∆ −
)nn∆)xx∆ −nx)x−∆xn− x∆)∆ n−
x ∆)fx∆x f1−)xfx− n1fx(1x− f1()(x11(fxxf1(x1f,1(x1,(,x11,(xx,12x12,x2,..., 1,2,...,x,...,
2,2,...,
x2,...,
x2,..., 2,...,x,...,xxnxnfxn)1n)x)n(n)xn)xn)1n),)+x2∆ xn )x−n +f1 ∆
,..., ( xx1n, )x− f1 ( x1n,)x2,
2 ,...,
....
........
....
....
....
....
.... .... ....  ∆ x
x1 , x2 ,...,xn ) − f 2(x1,x2,...,  xn ) 1
∆ ∆ ∆ ∆x ∆x x ∆
x ∆
x ∆ x fx121x11(11x11111, x2 ,..., xn + ∆xn ) −∆fx2 ( x1 , x2 ,..., ∆ x xnn)  ∆ n
∆∆ ∆x ∆x x ∆
x ∆x ∆ x x
nnnnnnnnnn
x  ∆ x 
 f 2 ( x1 +f 2∆ (xx11,+ffx2ff2∆ 2(f2(f2,...,
(xf(f2xf(21xf21x1(2(x21,(1+(x+ (x+1x+1x+121∆
∆ +1∆
+ +x+
∆ )∆ x+∆ x∆
1∆
− ,x1∆ x,1x,x1x,f1x2....
1,∆ x2− xn)x1− )xn− xn)1n−n)−,)n− ))f−x)f−2x−f−f2−2(fn2(,..., )x,2,..., f2(xf(f2x+ f(21xf2x1(2,(x211(1,∆ x,2+ 2∆
x22− xfxnxn2xnnx+)(xn+xx+ +− nnnn+
nn+ n1∆
∆ +
n∆ +,∆+xf∆ x+∆ xn2x∆ n∆ x∆ (n∆ xn)x− )xn− xn)1n−n)−,)n− f−
))f−x)f−2x− f2−2(fn2(,...,
f2(xf)(f2xf(21xf2x1(2,x(21(1,x(,1x(,x1x,1x21x,n12,x12,..., x2,..., xxnxnxn)nx)xn)x)xnxn)nn))n)))n 
,..., ,2,x,...,
)(x,2,..., x2,...,
(7)
11,..., f1xx1n21xn2x1n)(nx1),...,
1x 1x 1x ,n12,x12,..., x,...,
,...,
x22,...,
21,...,
2,...,
,1x,..., f2(xf)(f2xf(21xf2x1(2,(x21(1,(x,1x(,x1x,1x21x,n12,x12,...,
,2,x,...,x,...,
x2,...,
x22,...,
2,...,,...,
2,..., xxnxnxn)fnx)xn2)x)xnxn)(nn))nx))1),fx212(,...,
x,..., x1 , fxf2xff22(fn2(,..., (x,1x(,x1x,1x21x,n12,x12,...,
,n2,x,...,,...,
x),..., ,..., ,...,
,...,
2,...,
x,..., nx
nnnnn
n) x),..., ,2,x,...,
)x,2,...,
x,...,
x22,...,
2,...,,...,
2,...,
x,..., n

∆)xJ1J≅JJ(J((JX xxnxfnxn1)2n)x,)nn()x∆ )xn)21xn),...,


x.... )n+ ∆.... x....
....
....
.... xf....
,....
)....
.... ....
n 2
 ff2ff22(f2((2xf2(xf2x1(xf211(x2+
≅≅≅ ≅ ≅ ≅
≅ ≅ ≅ (+ x1+
(x+1∆ +
x1∆∆ + ∆ x+∆ x+x1x∆ ,∆
x1,∆,x11,xx,12x12,x2,...,,2,...,
∆x,...,
,2,...,
x2,..., xx2,..., ,...,
x,...,
xxnxnxn)∆ )∆x)nn∆ −
)x∆− x−
)∆ −
∆ )x∆ −∆)fx∆f∆ −
)2fx− fx2((2xf2(xf2x1(xf21,1(x21,(,x11,(xx,12x12,x2,...,
fx2x2(− ,2,...,
x,...,
,2,..., x2....
x+2,..., ,...,,...,
∆ x,..., −f2f2f22(f,...,
(f(2x2(xf22x1(xf21(,1x21,(x,11,(x1x,12nx1,2x2,..., )1,2,...,
x,...,−
,2,...,
x22,...,
x2,..., ,..., x2xnxn(xnn+
fx,..., xn+n+
∆ x1n+nxx∆
+,n)∆∆+x∆x+∆ x2+
xnx∆ ∆
,...,
)
xn∆ ∆ ∆)x∆
)nn∆ −)xx∆ −)x−∆ −x∆)∆ − x∆)f∆ f−
)x2fnx− f2x2(x−
)f2((2xf2(xf2x1(fxf21,12(x21,(,x1(1,(xx,12x12,x21,..., ,2,...,
,x,...,
,2,..., x2(7)
xx2,..., ,...,,..., xxnfxn2xn)n)x()nn)xxn(7)
x,...,
,..., )xn1n)n),)+x2∆ x(7)
(7)
(7)
,..., (7)
(7)x(7)
(7)
)(7)
−(7) f 2 ( x1n,)x2
+f 2∆( x1n,)x−2 ,...,
J(X ) ≅ 
J ( X (
JX(
J
JXX(
J(
X
)((
)
X (
)
X)
X≅
  ∆x1
X )X) )
)) ) 1 1 1 11 1 2 2 n xn xn x n x 1 2 2 n
....
....
....
....
....1n
....
.... 2 ∆xn
2 2 n n n
.... nx x
n n x x .... 1 2 2 2 n n

JJJJ(J(M(X
1
∆J∆∆∆ x∆(xxx∆ X∆ x∆ xx)x≅ J ( X ) ≅ 
1111111111
M .... ∆x1 ∆x1  ∆∆∆∆
n
x∆ xxx∆∆ x∆
nnnnnnnnnn   (7) (7)
(7) (7)
(7) (7)
(7) ∆xn 
(JX(X
JXJ()X())X X)≅X
()≅ ≅≅)≅))≅
≅≅ M M 1111M11MM1M1M1MMMMM M  M nnnnMnnMMnMnMnMMMMM
xxx
  ∆ xn 
x1 , x2 ,...,xn ) − f n(x1,x2,...,  xn ) .... MMMMM MfMnM( x1, x2 ,..., xn + ∆xn ) − f nM ( x1 , x2 ,..., M xn )  MMMMM MMM   M M 
f ( x +f ∆ ( xx ,+f f x f f ∆ f
( (f (f
x (
f
,..., xf ( xf x ( (
x ,(
∆xn1 1 1nn2nnnnn1n1n111111n1 1111111212122222212 n2nnnnnnn nnnnnnnn1n1n111112....+ (
x + x( +
x +
x x+
∆ ∆
+ ∆
+ ∆
+ +
,...,
x) ∆ +
x∆x ∆

x ∆x
, ∆ ,∆
x ,
x ,x x ,
f x ,
x ,
x , ,
x
,...,)
,...,
(,
x ,...,
x x −
,...,,...,
x ,..., ,,...,
,...,
,...,
x ,...,
f x x x x (
) x) x )
,...,x −
)x −x) −) − ,
) −
) )−
f )
x −
f −
f
x− f − f
( (,...,
f (
f
x) (
f xf ( x
f x ( ,(x (, (
x ,(
x,
x x ,
x x,
12122,
x , ,
x)
,...,
,..., ,
x,...,
x,...,
x ,...,
x ,...,
,...,,...,
,...,x ,...,
x x x x x
)
f )x )
x )x x)
( ) )
x)) ), fx ( x
,..., , f x
f x f f f( (,...,
f (
f
x (
f x+
f ( xf x ( ,(
x ( , ∆
(
x ,(
x ,
x x , x
nnnnnnnn1n1n1111121212n222222 n nnnnnn1n n2nnnnnnn nnnnnnnn1n x, ,x , ,,...,
x
,..., ,
x +,...,
x
),...,
x x −∆
,...,
,...,
,...,,...,
,...,
x ,...,
x x
f x x +
x)(x+x +
x +
x− +
∆ ∆+ ∆
+ ∆
,+ x+∆
f x+ x∆ ∆
x ∆ x∆ (
) ∆
x ) x )
x
,..., −
)x −
x) −)− ,
)−
) )
f − )
x
f− −
x f−f − f
( (,...,
f (f
x) (
f f
x ( xf x ( (
x
, (, (
x ,
x(
1n1111121212222,
x x, x x, ,x , ,
)
,...,
x
,..., ,
x ,...,
,...,
xx ,...,
x ,...,
222 n ,...,
,...,
,...,
x,...,
x x x x
n ) x) x
nnnn)
x )
x )
x
n ) ) ))
nn ) 
n
f ff
1
f (
f ((f
x( x
f x( f
x (
x + ( +x +( x+
1

n
+
x ∆ ∆+ ∆ x+ ∆x +x
2

x
1
,∆
x , ∆
,x , x ,
x x , ,
,...,
x ,...,
,...,
x, ,...,
x x
n1
,..., ,...,
,...,
x ,...,
x x x
2
x) ) x ) −)
x
n
−)
x− − ) − )
f −
)
f f
1
− f
n

(
f ( (
f
x ( x
f (
x
2
f
x ,(
x ,
( , x ,( x ,
x
n
x ,x,...,, ,...,
,...,
x, x+
,..., x
1
n
,..., ∆
,...,,...,
x ,...,
x xx f
2
22222 nnnnnnnnn 1
x) ) x,
)()
x∆
....)
xx ) x),..., )n+ ∆
n
....
....
x
n
....
.... ....
,)....
....
....
2
....
....
x
f −f f
1
f ( ,...,
f (f( f
x( x
f (
x
2
f
x ( , (x ,(x, x ,( x x,
n
x , ,x ) ,
,..., ,...,
x x −
,...,
,,...,
x x
1
n
,..., ,...,
,...,,...,
fx 
,...,
x x
2
x( x +
x x + +
x +
n

x +
,)∆∆+ ∆
x x+ ∆
x +
x x
n
∆ ∆
,...,
)
x ∆
) x) − )
x
n
− )x− − ) − x )
f −
f) f
1
− f
n
(−
)
f ( (xf ( xf x(
f
2
f
x , (x ,
( ,x( ,
( x ,
x
n
x ,x ,
,...,,...,
,
,...,
x, ,...,
x x
1
n
,...,
x ,..., ,...,
x ,...,
,...,
x xfx
2
)
x ) x(
) )
x x )x ) )
, )+ x
n
∆ ,...,
x )x − +f ∆( x ,)x− ,...,
f ( x ,)x
112121212222222 nnnnnn
  nnnnnnn1n11n111111 ∆111x11111212212∆ 222x 22 nnn∆
1
n∆ nn∆ ∆xn∆ xn∆1x x∆
n∆
1x 1∆ 1∆ xn1xxn1xn1xn11nn1n1n11n111121221222222 nnn1nnnnnn21n.... ....
....
........
....
....1n n2nnnnnnn1n11n111112
.... n122122∆ 2222x2 nnnnn∆
n
nn1nnxnn 2nnn∆
n
n∆ ∆
nn∆
.... x∆ nx∆ xnnx∆ n∆
nx ∆nn∆ xxnnxxnnnxnnnnnnnn1n11nn11....   nn1nn2n n n 1n 2 n 1n 2
 ∆∆∆∆ x∆ xx1x∆11∆ x1∆ x1x1x11 
1
 ∆x1 ∆x1 ∆∆∆∆ x∆ xxnx∆ n∆ xnn∆ xnnxnxnn  ∆xn ∆xn 
T
α = [α1 , α2 , ..., αn ] , onde αi ∈ ℂ / F (α ) = 0

288

.., i = 1,..., n , ...


2355, 0.496611392944656, 0.369922830745872]T

297
 f1 ( x1 + Δx1 , x2 , ..., xn ) − f1 ( x1 , x2 , ..., xn ) f1 ( x1 , x2 , ..., xn + Δxn ) − f1 ( x1 , x2 , ..., xn ) 
....
 Δx1 Δxn 
 
 f 2 ( x1 + Δx1 , x2 , ..., xn ) − f 2 ( x1 , x2 , ..., xn ) Δxn 
....
f 2 ( x1 , x2 , ..., xn + Δxn ) − f 2 ( x1 , x2 , ..., xn )  (7) ....
J ( X ) ≅  Δx1 Δxn  (7)

f n ( x1 , x2 , ..., xn + Δxn ) − f n ( x1 , x2 , ..., xn )  x1 , x2 , ..., xn )


 ⋮ ⋮  
 Δxn  
 f n ( x1 + Δx1 , x2 , ..., xn ) − f n ( x1 , x2 , ..., xn ) .... f n ( x1 , x2 , ..., xn + Δxn ) − f n ( x1 , x2 , ..., xn ) 
2 1 2 n n 2 1 2 n
 ....
 Δx1 Δxn
f ( x , x , ..., x + Δx ) − f ( x , x , ..., x )  (7)  x1 , x2 , ..., xn )

CAPÍTULO 4 – RESOLUÇÃO DE SISTEMAS DE EQUAÇÕES NÃO LINEARES

Δxn  ....
1 1 2 n n 1 1 2
f ( x , x , ..., x + Δx ) − f ( x , x , ..., x )  n , x2 , ..., xn ) 1

305
a)
X = [0.785196933062355, 0.496611392944656, 0.369922830745872]T
297

b) i
OO
+ n) cálculos
e n no(nponto custo
inicial). decomputacional
custo computacional
valores
Precisamos das funções
estabelecer, i parapara aproximar
(são
fainda,
i
aproximar
n funções uma uma J (X
nos ) é) de
pontos
J (X é de
incrementados 2
(n (n 2 e n no ponto inicial). Precisamos estabelecer,
+ cálculos
+incógnita
n) exnj.de
n) cálculos valores
de valores dasdas funções
funções (são
fipor 2 2
funçõesainda,
nestabelecer,
fi (são n funções nos pontos
nos pontos
l para incrementados
cada no ponto
Neste inicial).
livro, optamos Precisamos ainda,
um ∆xum inicial
incrementados para cada incógnita
e neno ponto x . Neste livro, optamos por
jacobianaj 298o∆incrementados
x j inicial
mesmo ∆xpara
j
n no
cada
calculado no inicial).
ponto
incógnita
incremento xjPrecisamos
j inicial). Precisamos
. Neste do livro,
CÁLCULO estabelecer,
NUMÉRICO estabelecer,
optamos ainda,
porainda,
COMPUTACIONAL
usar nausarmatriz
umna um jacobiana
xinicial o mesmo
para cada ∆ x calculado
incógnita no
xj. xNeste incremento
livro, do
optamos doporpor
wton. No caso ∆matriz
dex∆ j inicial
jacobiana
jocorrer para cada
o mesmo
convergência, incógnita
∆x aj calculado . Neste no livro, optamos
incremento
j tanto matriz j
método de
usar Newton. No caso de ocorrer convergência, tanto a matriz
método
érica quanto ana
usar de matriz
na matriz
Newton.
solução jacobiana
No
convergem casoode
jacobiana mesmo
oocorrer
mesmo
simultaneamente calculado
calculado
∆xconvergência,

j xj
no incremento
no
tanto a matrizdodo
incremento
jacobiana O custo
numérica computacional
quanto a solução para aproximar
convergem uma J(X (k) ) é de
simultaneamente
método
jacobiana
precisão. método de de
Newton.
numéricaNewton. NoNo
quanto caso
acaso de de
solução ocorrer
ocorrer convergência,
convergem convergência, tanto
tanto
simultaneamente a matriz
a matriz
com a com (n2 + n)precisão.
mesma cálculos de valores das funções fi (são n2 funções nos pontos
jacobiana
ajacobiana
ernativa incrementados
para mesma
o métodonumérica
numérica
precisão. quanto
e ndenoNewton, quanto
ponto acom solução
inicial). a solução convergem
derivadas
Precisamos convergem simultaneamente
estabelecer,simultaneamente
ainda, um
Essa com
Dx alternativa
com a
Essa
inicialmesma
a mesma para
precisão.
alternativa
para cada o método
precisão.
para
incógnita ox método
. de
Neste Newton,
de
livro, com
Newton,
optamos derivadas
com
por derivadas
usar na matriz
ricas, é indicada
j para a resolução de j sistemas em
parciais numéricas,
jacobiana é indicada
Dx para a resolução de sistemas em
fim deparciais
facilitar a oentrada
Essa mesmo
Essa
numéricas, deéj calculado
alternativa
alternativa para
indicada
dados, oo
para noque oincremento
método
para método de de
a resolução
permite do método
aNewton,
Newton, de
comNewton.
com
de sistemas No
derivadas
derivadas
em
computador caso
parciais a
de fim
parciais de
ocorrer facilitar
convergência,
numéricas,
anuméricas, a entrada
tanto
é indicada
é indicada ade dados,
matriz
parapara o
jacobiana
a resolução
adados,que
resoluçãopermite
numérica
de de aquanto
sistemas
sistemas a em
aem
do seu computador
algoritmo. fim de facilitar a entrada de o que permite
soluçãodo
generalização convergem
seudo simultaneamente com a mesma precisão.
algoritmo.
computador
computador
generalização a fim de
a fim
seu facilitar
de facilitar
algoritmo. a entrada
a entrada de de dados,
dados, o que
o quepermite
permitea a
Essa alternativa para o método de Newton, com derivadas parciais
generalização
generalização
numéricas, dodo
é indicada seu algoritmo.
seu
para aalgoritmo.
resolução de sistemas em computador a fim de
xemplo, vamos utilizar
facilitar essa alternativa
a entrada de dados, omanualmente
que permite acom generalização do seu algoritmo.
No próximo exemplo, vamos utilizar
No próximo exemplo, vamos utilizar essa alternativa manualmente
essa alternativa com com
manualmente
amente didáticos.
objetivos unicamente
Nopróximo
próximo
No
objetivos didáticos.
próximoexemplo,
unicamenteexemplo,vamos
vamos
didáticos. utilizar essa
utilizar alternativa
essa manualmente
alternativa manualmente comcom
No exemplo, vamos utilizar essa alternativa manualmente com objetivos
unicamente
objetivos
objetivos didáticos.
unicamente
unicamente didáticos.
didáticos.
x1 * x2 = 1
4: resolva o sistema não linear  pelo  x1 * x2 =x1 * x = 1
Exemplo Exemplo 4.4: resolva
4.4: resolva o sistema
o sistema
 x não
− não
e x2
linear
=linear
0   1 pelo 2pelométodo de
Exemplo 4.4: resolva o sistema 1 não linear  x1 − e x2 x= 0 pelo
  x *xx2x * =x021= 1
ewton utilizando
Newton derivadas
utilizando parciais
derivadas numéricas para  − e
 1aproximar =
oparciais numéricas para a matriz
1 2
Exemplo 4.4:4.4: resolva sistema não linear pelo
1
métodométodo de Exemplo
Newton utilizando resolvaderivadaso sistemaparciais não linear
numéricas  para pelo
de Newton utilizando
 1 derivadas parciais 
 x 1
−
numéricas x 1e − e=
x2 x2
para
0= 0
matriz jacobiana.
jacobiana.
método Tome
Tome de X (0) =   , , incremento
Newton incremento inicial
1 Dx1parciais
inicial = 0.1, para jnuméricas
= 1, 2 e critério
aproximar a método
matriz de Newton
jacobiana.  1utilizando
Tome X (0)derivadas
utilizando = derivadas
  ,  j  parciais
(0)incremento
numéricas
inicial para
para
aproximar a matriz jacobiana. Tome1X =   , incremento inicial
ra j = 1, 2deeparada critério
aproximar
max de|Dx aparada
| < 0.00001.
matriz max ∆x j <Tome
jacobiana. 0.00001  1= ,1incremento
. X1=(0) 
aproximar . inicial
j
∆x j = 0.1 , para j = 1, 2 ae matriz
critério jacobiana.
de parada TomemaxX (0)
∆ x  , incremento
j1<10.00001 inicial
∆x j = 0.1 , para j = 1, 2 e critério de parada max    ∆x j < 0.00001 .
Solução: ∆x j∆=
Solução: x j0.1 = , para
0.1 , para j = j1,=21,e2critério
e critério de de paradaparada max max ∆x ∆ <j 0.00001 . .
< 0.00001
dado, temos: Solução: j x
Do sistema Do Solução:
Dosistema dado,
Solução:
sistema dado, temos:
dado, temos: temos:
x1 x2 −= 1 0
 f ( x , x2= DoDo sistema 1x x0dado,
sistema dado, temos:temos:

x1 −e x 1 =10 
2 f)1 ( x1x,1xx22= )−= 1 2 −= 1 0
 f 2 ( x1 ,
 x )(=
 2f 2
x − e x= =)0
12 ,)x12= −x1exx2x1−x==
10−=
2

 fx11
(,1xxf12,()x= 2
2 10 0
ração:  
12 ,)x=2 )x=1 −x1e − e=0=0
x x
Primeira  ( xf 21 ,( xiteração:
iteração:
f 2 2 2

Primeira
 ∆x1  0.1
 x1(0)  Primeira
e incremento inicial
Primeira
Primeira iteração: iteração:
∆ =  ∆x=
Xiteração:  0.1  ∆x1   ∆ 0.1
)
= = (0) 
x1.0
(0)
 e 1.0 
incremento  inicial
  ∆=
X = x1  0.1
 1

(0) (0)  e incremento inicial ∆  ∆=   = x ∆x0.1
Xx2  = xX2   ∆
2
(0)
 1.0
    0.1
 ∆  0.1
0.1
x x 1.0  1.0  
1.0  x   
(0)
x
(0) (0)
2   1  e incremento
ee incremento
incremento inicial
inicial
inicial ∆= = 2  1 1
=
∆ =
1
=X
ndo numericamente=X  =  = 
(0) (0)  as    derivadas
 da jacobiana, X X       
Determinando 1.01.0
 x2 x2 numericamente   as derivadas da∆x2∆jacobiana,
x2 0.10.1  
q. (7), resulta: Determinando numericamente as derivadas da jacobiana,
conforme conformeeq.
Determinando (7),eq.
Determinando resulta: numericamente
(7), resulta: numericamente as as derivadas
derivadas dada jacobiana,
jacobiana,
Determinando numericamente as derivadas da jacobiana, conforme eq. (7),
conforme
resulta: conforme eq.eq. (7),(7), resulta:
resulta: 25
25
co Computacional
utacional
utacional
tacional
tacional
CAPÍTULO 4 – RESOLUÇÃO DE SISTEMAS DE EQUAÇÕES NÃO LINEARES 299
o Computacional
tacional
utacional
rico Computacional
utacional

J ()X≅(0)  aa)11≅ aaa1211 a12 


JJ (( X (0)
X (0) )) ≅≅ aa11
(0)  a1111 aa1212  
JJ (( X
X (0) ) ≅ 
 21 a
a 21
12
22
a11  a22 a 
a a 22  12 (0)
(0)
J ( X (0)J)( ≅ Xaa21 )21 ≅aa12 
(0) 11 12
21 
a11 (0)faa12(22x + ∆(0)x , x (0) ) −(0)f ( x(0)
aa2111)(0)≅∂aa2222
22
J ( X (0)) ≅ ∂(0) fffa11 ((21
11
* 1 − 1) − (1.0 * 1 − 1)
(0) (0)
(0)1+(0) ∆1 x , x (0)1) −(0) 1 ), x2 (1.1 ) *(1.1 11 − − * 1 − 1)
J ( ∂X fa1J)(=≅X∂af∂111a(fff21
12 xx(0) 2 f ( x(0) (0)1, x(0) 1) (1.0
x = + Δ ≅ x , x
+ ∆  ) − f ( x − , x ) (1.1 1 −≅ 1) − (1.0 −(1.0 *1 − 1 −1) 11 = 1
11)−
1
≅a f
1≅∂afx1a (  
x 1
+ ∆ xx 1
, , x
x (0)
2
) ) −
1 a+ 2∆x1 , x2 1 ) −1∆f1x( x21 , x2 ) ≅ (1.1 * 1 − 1) − ff 1
(( xx (0)
1
,, x x 2 (0)
)) ≅ (1.1
(1.1
* *1 − 1)
1) (1.0 ***1 1) =
a11 = aa1111≅== ∂∂ xf1121≅≅ ∂f22
a 11 = ∂ af 1 1 22 1 ( x

(0)
11
1(0) 22  1(0) 2∆
1 (0)
2
x
1
1 1(0)
(0)
1 (0) ≅
1 (0)
2
2 (0) ≅ (0)
*
(0) −
0.1 (1.0 0.1 − 1) = 1 =
= 1
∂ xa111 = ∂∂axxxf111 =≅ f 1(f(1xx1(0)
11 21
+f1∆ ( xx11 , x∆∆ +(0)
2 xx∆
(0)
1) x − ,fx2( x(0) ) −, xf21 ( )x≅1 ,(1.1 x2 *)10.1 − 1)(1.1 − (1.0 * 1 −*1) 1 −−1)(1.0 = 1 * 1 − 1)
1 1≅ +Δ ∆x(0) x11(0), x∆(0) x11)1 −1 f11((0) x11 (0), x2(0) )(0)≅(0) (1.1 (0) * 1 − ≅1)0.1 0.1
− (1.0 * 1 − 1) =
0.1 1 = 1
a11 = ∂∂∂ xff11 ≅∂∂∂ff11xf((1xx1(0)
11 1111 (0)
f1,(f+x1x((0) xx1+,1 ,x∆x2+∆2xx∆+1))x1∆
1∆(0)
2 (0)
−,xxff221∆)((x−
− x)1(0) −f1,(0),(fx1x(0) (12 x1),)(0)
(0)
≅x,2 x(1 (1.1 ) *(11−*−(1.1
2) * 1.1 1.11)0.1− −* 1(1(1.0
1) −*−1)(1 *− *(1.0
10.1
− 1)=
−1.0 −*111)− 1)
a11 == ∂∂∂∂12axff111f11=1 =≅≅ ff11f(1(x≅(x(0) 1) 1.0 1)
(0) x
1x≅ x,(0) 2x2 + + ∆∆xΔ x2)x)2−−) f−f11((xfx1(0) 1( x,1 x(0) 2, x)2 ≅)(1 *≅ (1≅*−−1.1 −−(1 1)(1 *−1.0 (1−*−1.0 −= 1)1 = = 1
1 1
(0)
1 1 ,,, x
(0) (0) (0)
1.1 1)0.1 1.0 1) =
a12 12 =
= = ∂∂∂ xfx111 ≅≅∂≅∂xf112(x1x11(0) x22(0) 2 + +(0)∆ ∆xx∆22x2x1(0) )1− fx11∆2(x111(0) 1 ,, x x22(0) 2 ) ) ≅≅ ≅ (1
(1≅** 1.1
1.1 − 1)1) 0.1 −
−0.1 (1 **0.1 1.00.1 − 1) 1) = = =1
12 = ∂ ∂∂ xf2 ≅ f ( x , fx1(0) x1+ ∆∆, xxxxxxΔ 2)x− f (xx(0) , x21 ( )x≅1 ,(1x*21.1 ) −1)1)(1 −1.1 (10.1 − 1)−−1)(1=
(0) (0) (0) (0)
∂ xxf221122=≅ ∂f11f(1x11(0)
(0) (0)
, x22((0) 1 21) − * 1.0 − 1)
12
2222) −2+f∆ , x2f(0)
12 0.1 * 1.0
0.1
−*1(1
12 = ∂ax (0)+
≅ (0)1 ( x1 (0) )(0)≅(0)(1(0) * 1.1 − ≅ 0.1 * 1.0 − 1) 1 = 1
= ∂ ∂ 12f ≅
x ∂ ∂ f f
∂∂21axfff22=12 =≅∂ff22fx12((2≅1(xx(0) f( x x(0)f(0),(fx
(0)
1≅1 2+1+
(0) x (
∆ x
12 x
(0)
+ , ∆
Δ11x,, 1xx,(0) x
(0) x
x2
x
(0)2
(0), )+
x −
xx2122))2 −−)2 − ∆ f
ff 2∆) x
1(fx

(2x(0)x)
(0) f− ( ,
(0)
(1x2,,1xx(0) f
x x (
(0)
1,2x
(0) x
(0) , )
x
(0)≅ ,
))12 2≅)(1.1 x (1
) )
2 (1.1
* −1.1
(1.1 −(1
ee11 ))−−
1 − 1)
e
* e
0.11.1
1−) (1
(1.0) −−− 1)1.0
(1.0
(1.0
− * −
ee11 ))0.1
1 −(1

− e 1)
e*1=
1.0
)) − 1) =
a
12
= ∂
a
a12 ===∂∂ ff1222 ≅≅∂≅∂ffx22x(( xx1(0) + ∆ x (0)
( x 2
1(0)
(1.1 ≅ − ≅
≅ −− ee1 )) −− (1.0 −0.1 (1.0 − 1 =1 =
= 1
1 =1
) ≅ )) =
2
∂∂ xxx212 ≅≅ 21 2 11(0) ++ ∆ )x2 − −
1 2 (0)
1 2
aaa2121 21 =
∆xx111,, xx22(0) 2 )
∆xΔ − ∆ff x22∆(( xxx1(0) 1 ,, x x2(0) 2 )
≅ (1.1
(1.1 1 0.10.1
(1.00.1 − ee10.1 = 111
= ∂ ∆ 2x1 2 1(0)12(0) 2 (0) ≅ ≅ 0.1 1 = =
∂ xf f ( x + ∆ x , x ∆
(0)
2xx∆ ) − f ( x , x ) (1.1 − e )0.1− (1.0 − e )
a21 = ∂∂axxf11212 =≅ ∂f 22f(2x11≅(0)(0)+f 2∆((0)xx(0)
(0) (0) (0) 1 1
1, x∆
∆2+ x11)1 −x1 ,f 2x2(0) 1) − f2(0)2 ()x , x2 −)e1 )0.1 −(1.1(1.0−1−e e)11.0 )1 (1.0
− 1 −1 e ) =
21 1 (0) (0) 1
11(0) (2x1(0) , x(0) 2 (0) ≅(0)(1.1
1(0)
≅ 0.1 = 1
a21 = ∂∂∂21 xfff12=22 ≅∂ ∂∂fff22xf2f(2(≅2x(x(0) +)x)x−∆21−x,)f2x− −(f(0) ,xx≅2 , )x) −2 e)(1 (1−)−−e−(1.1 −−e−e(1.0 e=
1.1 1.0
x1f12, (fx+x(0) 1(x
2,2(0) ,2+x∆ xx22Δ (2,x(x,1xf(0) ee0.1 ee−
(0)
12x(,)x
(0) 1.1
) −)−−)(1.0 1.0(1
)) 1)− e )
(0)
a∂22
(0) (0)
∆x2x+1,1x∆ +∆ x∆
(0)
f)∆
2 2(
2x x x)2f1− (0) (0) (0)
2 1)2 (1 (1.1 ≅
1.1 1
(1 1.0 ))−
e(1 0.1
aaa22 = a xf =≅≅ f ( x ≅
1(0) , x + ∆ x ) 1
− f ( x 1(0) , x 2(0) ) ≅(1 − ≅ e 1.1
≅) − 0.1(1 − ) = 1 = 1
21 = ∂ ∂∂∂ ffxx212212 ≅≅ ≅∂ ff∂x2222((xxx111 ,, xx222 + +∆ 2)1− 2 ) ≅ (1 − e1.1 ) − −
(0) 1.1 1.0
1
∆∆xx∆ f 2( x (0) 1 , x (0)
1
− (1 ee1.0 ))
Δ−x∆fx22 2(∆xx11 , x22 ) ≅≅ (1 − e 1.1)0.1 −0.1
(0) (0)
aaa2222 22 = 22x)x (10.1 0.1 1.0 0.1
22 = ∂ ∂ x xf 212≅ f (1x (0) , x (0) + ∆
∆ ∆ x x x 2)1− 2f ( x1(0) , x (0) ) ≅(0) (1 − e 1.1 0.10.1
) − (1 − 1.0 )
e1.1
aaa22 =≅a f222≅≅−∂2.85884195487388
∂−x2.85884195487388
2 f 2f(2x1 , fx22( x+1(0)∆∆,xx2(0)
2 1(0) (0)
2 (0) 2 (0)
22) −+f ∆
2
2 (xx21 ) −
2 (0)
1 , x2f 2 ()x(0)
(0) 2
1≅ (1 , x(0)(0)
−2 e ) )0.1 −(1 (1−−1.1 ee )) − (1 −1.0e1.0 )
22 =
≅ ∂∂− ax2.85884195487388
f22 =≅ ∂∂fx2f(2x≅ (0)
f 2 2( x1+ ,∆∆xx222) +− ∆f 2x(2 x)1− ,fx2 2( x1)≅ , x(1
(0) (0) (0)
2 −) e 0.1
≅0.1
1.1
(1
) −−(1 e − )e− 1.0
(1
) −e )
1≅ , x
22
a aa2222 ≅≅
= ∂− −a2.85884195487388
2.85884195487388
22
x =≅ ∆ x ∆ x ≅ ≅ 0.1
a22 22 ≅ −2.85884195487388
22 2 2 2 2
22 22
x2 ∂ x2 iterativamente
∂−2.85884195487388
≅Aplicando ∆x2 ∆x2as eqs. (4) e (5),0.1 temos: 0.1
aa22
Aplicando 22 ≅ −a ≅
2.85884195487388− iterativamente
2.85884195487388 as eqs. (4) e (5), temos:
Aplicando
Aplicando −iterativamente
iterativamente as eqs. (4)
as (4) e (5), temos: temos:
as eqs. eqs. (4) ee (5),
22
Aplicando a22 ≅ −a2.85884195487388 22 ≅ iterativamente 2.85884195487388 (5), temos:
Aplicando 1 1 iterativamente 1iterativamente x (4)
as eqs.∆x (5), (4) (5), 0 temos: 
−ee(5),
Aplicando 1 as eqs. ∆  1e(4) = eqs. temos:  
Aplicando 1 Aplicando iterativamente iterativamente ∆as x*11 eqs.
 as
0
(4) temos:e (5), temos:
1 1 1Aplicando 1 1
1 − 2.85884195487388 iterativamente 
**∆∆xas  ∆ x
1
∆===x− = − 
−(4)
2as
0 0
0 e −(5),
eqs. (4) etemos:
(5), temos:
1.71828182845905 
 
Aplicando iterativamente * ∆∆xxx221eqs.
* 1
11 − − 2.85884195487388 − −− − 1.71828182845905 
 1 −
1 − 2.85884195487388
1
2.85884195487388
2.85884195487388
1  *∆x221  = ∆
0
1.71828182845905
1.71828182845905
x−1.71828182845905
0 
1
∆1x1 =+0.445284323264077 1  *  ∆x  = ∆ −  = 1.445284323264077
0 0 
1 1x− 
(1)
11∆x− − =  1
2.85884195487388 1   ∆ x    − x   0 
11.71828182845905 
  ∆ 1 =  + 0.445284323264077
2.85884195487388
+   ∆x221  *⇒ x
(1)
1 
(1)
 1 = = −
=−1.445284323264077
1.445284323264077

1.71828182845905 
∆x11 = ∆ xx = + 0.445284323264077
1+1x0.445284323264077
−= 2.85884195487388
0.445284323264077 ⇒  
  x
x11∆
x= (1)
− =
∆x=2x1.445284323264077 = −
1.445284323264077 1.71828182845905
−−1.71828182845905 
 ∆ 
*
 1 ∆
2.85884195487388 −0.445284323264077
2.85884195487388
*
⇒ x2
(1)
1
 1.71828182845905
(1)
= 0.554715676735923 
 1∆x2−= +− 2 −
0.445284323264077  ⇒ ⇒ 
 xxx(1) (1)x=
(1)
2− 
0.554715676735923  

2
∆ ∆ x
xx2112 = =
= = −
+ − 0.445284323264077
0.445284323264077  
xx21(1)

(1)
21 =
2
(1) == 1.445284323264077
0.554715676735923

 ∆
 Critério = − 0.445284323264077 ⇒ 
 = 0.554715676735923
1.445284323264077
0.554715676735923

2
∆− ∆x0.445284323264077
x11 = ++de 0.445284323264077
parada: max⇒∆xj2(1) =
(1) 0.445284323264077  (1)
1.445284323264077 1.445284323264077
xx1(1)1 ==1.445284323264077 .
Critério
 ∆ ∆∆xxx21 = =
 −+ =
0.445284323264077
0.445284323264077
de parada: 0.445284323264077 max ∆
∆ xx j = = 
 xx2(1)
0.445284323264077
 1⇒ = ==0.554715676735923
0.554715676735923
 ..
Critério
Critério    de
de parada:
parada: maxmax
max ∆x jj = ∆ x ⇒ = 
 0.445284323264077
x 2 ⇒ 
0.445284323264077
 .
Critério
2
= ∆−xde 2 = parada:
x0.445284323264077−−0.445284323264077
0.445284323264077
j 0.445284323264077 (1)
0.554715676735923 0.554715676735923
xx2(1)2 ==0.554715676735923 .
Critério ∆x2Segunda ∆ de 2 =
parada: iteração: ∆ =  x2(1) =
0.445284323264077 
Segunda
Critério
Critério de deiteração:parada:
parada: max
max
max |Dxj∆
x =
| =x j0.445284323264077.
j 0.445284323264077 ..
Segunda
Segunda iteração:
iteração: max 0.445284323264077
Segunda Critério Critério
xCritério
(1)  de iteração: parada: de
de parada: parada: max ∆max x j =
∆∆ xxj j=
0.445284323264077 =
∆x0.445284323264077 +0.445284323264077 . . .
1.445284323264077 1
=Segunda
Segunda
X  (1)(1)
x   = 1
  iteração:
iteração:
1.445284323264077  e ∆ 
= X ∆ x 1   = + 0.445284323264077 
( )
xx((1111))  (1)
1 
1.445284323264077  e ∆ 
= ∆∆xxx1= 1  ∆x ++0.445284323264077
 −0.445284323264077
0.445284323264077  
= X ∆  2+
=X(1)(1)  0.554715676735923
x21.445284323264077 X
==X(1)(1) Segunda =xx11(1) Segunda
= 1.445284323264077
Segunda
 iteração:
0.554715676735923 iteração:  e e ∆∆= = ∆ =1= − 
0.445284323264077  
=X
X Segunda



=

 x(1) (1) 

 
 0.554715676735923
(211)  iteração:  e ∆=
0.554715676735923   X
X ∆∆∆xx= x
x 2  −0.445284323264077
    − +
0.445284323264077
0.445284323264077  
 x    1.445284323264077 0.445284323264077
 −+0.445284323264077
0.445284323264077
 x ( )  ∆∆xx221=
 = xx221   x(2) 0.554715676735923 2
(1)
2
1.445284323264077 e ∆=
XX  ∆x=
1
=X (1) = (2)  1 (1) = 1.762918095884706
(1) 1
X
=
 x =  x0.554715676735923
1.762918095884706
(1)
0.554715676735923  e ∆=    −
∆ x1   + +
0.445284323264077 0.445284323264077 
1)  1.445284323264077 x 0.445284323264077  
(1)
  x
xxx(1)

(
(1)(2)
2(1)   x
 =1.762918095884706
(2)11.445284323264077
1.762918095884706 
 1.445284323264077  
 ∆   ∆x2x1   − +   ∆ 10.445284323264077
0.445284323264077 
11  =
e
1
  
(2)
e e ∆ =
2
X =
(1) =
 X = = e ∆ = X =
1
=X = =Xx 2(2)
1 =
(2)   x
 = 
1.762918095884706 0.569994120607396

  ∆= X  =           
x (2) = 0.569994120607396
xxx(2)
1(1)
2(2) =
2 (1)
xx20.554715676735923
2  
1.762918095884706
0.569994120607396
(1)
 0.554715676735923
0.554715676735923 −
2   − 0.445284323264077
  ∆x2  ∆∆x−x20.445284323264077
0.445284323264077
  
122 =
xx221(2) = 0.569994120607396
(2)
= 1.762918095884706
0.569994120607396
 (2) (2) Critério de parada: max ∆x j = 0.3176337726206295 .

xxx221 =
Critério (2) ==
0.569994120607396
(2)
xx1(2) 1.762918095884706
==1.762918095884706
0.569994120607396
1.762918095884706
1 de parada: max ∆ xx j = 0.3176337726206295 .
Critério
Critério  (2)
 (2) Repetindo de
de parada:
parada: max
max ∆

∆xx jj ==
= 0.3176337726206295
0.3176337726206295 ...
Critério de
(2)
xx22 ==esseparada:
esse processo
max
0.569994120607396
0.569994120607396 iterativo até
0.3176337726206295 a 5ª iteração, temos:
Critério
Repetindo
 x2 =
Repetindo 0.569994120607396
deesse
parada:
esse processo
max ∆ ∆ processo iterativo até a 5ª iteração, temos:
iterativo=
j
até a 5ª iteração,
0.3176337726206295 .
iteração, .temos:
Critério
Repetindo
Repetindo de parada:
esse processo
max
processo xxjj =
iterativo
iterativo até
até aa 5ª
5ª iteração, temos:
0.3176337726206295 temos:
Critério(5) 
Repetindo Critério
(5)
=parada:
x1 dede 1.763222834351872
essedeprocesso
parada:
maxmax ∆=max
|Dxj|iterativo
processo ∆∆ xxj jaté
= 0.3176337726206295
x0.3176337726206295.
iterativo 0.3176337726206295
até . .
Critério
Repetindo

 xx(5)
(5)  Critério
= parada:
essede parada:
1.763222834351872 maxj = = aa 5ª
5ª iteração,
iteração, temos:
0.3176337726206295 temos:
.


 x 1 =
= 1.763222834351872
1.763222834351872
 2 = 0.567143290409792
(5)

(5)
x11(5) 
1
=Repetindo
x1.763222834351872
esse processo iterativo
até a até aa5ª5ªiteração, temos:
Repetindo esse processo iterativo 5ªaté
iteração, temos:

 (5) Repetindo
x(5) esse
= 1.763222834351872
0.567143290409792 processo iterativo iteração, temos:




 x 2
(5) =
= 0.567143290409792



x (5)
1 2 0.567143290409792
1.763222834351872
x221 = 0.567143290409792
 (5)
=
(5)




(5)
(5)
xxx221 = = x(5) 1.763222834351872
=1.763222834351872
1.763222834351872
0.567143290409792
x0.567143290409792
1 =
 x1 = 1.762918095884706
(2)

 (2)
 x2 = 0.569994120607396
300 CÁLCULO NUMÉRICO COMPUTACIONAL

Critério de parada: max ∆x j =


0.3176337726206295 .
Repetindoesse
Repetindo esse processo
processo iterativo
iterativo até a 5até
a a 5ª iteração,
iteração, temos: temos:

 x1(5) = 1.763222834351872

 (5)
 x2 = 0.567143290409792

Critério de parada atingido: max |Dxj| = 1.43228360503785e–08.

Você já fez o download do Caderno de Algoritmos apresentado no Capítulo 2?


Caso ainda não o tenha feito, acesse o link <http://sergiopeters.prof.ufsc.br/livro-
calculo-numerico-computacional/> para conferir o algoritmo do método de Newton
no arquivo Cap4SistemasNaolineares.m.

Considerações importantes sobre o método de Newton com derivadas 20/12/2017 09:11:4


exatas e numéricas:
a) Quando resolvemos o Exemplo 4.2 pelo método de Newton com
derivadas exatas, atingimos a solução exata em 6 iterações, e se
usarmos derivadas numéricas, como no Exemplo 4.4, necessitaremos
de 7 iterações.
b) No método de Newton com derivadas numéricas não podemos convergir
os incrementos Dx até valores muito pequenos (abaixo do limite de
precisão das variáveis utilizadas), por exemplo, para um valor de x1(0) = 1;
não podemos atingir valores de Dx1 menores do que O(10–16),
pois esse Dx1 perde totalmente sua significação em x1 = x1(0)+ Dx1, e
o valor incrementado fica igual ao valor inicial, x1 = x1(0)+ Dx1 = x1(0),
gerando derivada nula. Assim, também usamos como critério de
parada um valor mínimo para Dxj.
c) O método de Newton com derivadas numéricas é genérico e
mais fácil de ser implementado, bastando fornecer um vetor de
funções, entretanto exige maior esforço computacional. Então,
sempre que possível, é mais rápido usar o método de Newton
fornecendo também as funções das derivadas parciais exatas.
O problema desse método é o custo da quantidade de operações
aritméticas a serem executadas em cada iteração, pois, para gerar
a jacobiana, precisamos obter n2 valores de funções derivadas,
ou n2 + n valores de funções, no caso da derivação numérica, e
O(2n3/3) operações para solver cada sistema linear por Gauss.
CAPÍTULO 4 – RESOLUÇÃO DE SISTEMAS DE EQUAÇÕES NÃO LINEARES 301

P ( x)
8 apresentar um método que reduz o custo do processamento de
A seguir, vamos
cada iteração em relação ao método de Newton.

4.3 MÉTODO DE BROYDEN


Para tentar resolver um sistema não linear F(X) = 0, procedemos
desta forma:

a) Tomamos uma solução inicial X(0).


b) Obtemos, usando a derivação numérica (ou a analítica, se possível),
a matriz jacobiana J(X(0)), a sua inversa J –1(X(0)) (conforme vimos
no Capítulo 2) e efetuamos a primeira iteração como no método
297
de Newton via:
 f1 ( x1 + Δx1 , x2 , ..., xn ) − f1 ( x1 , x2 , ..., xn ) f1 ( x1 , x2 , ..., xn + Δxn ) − f1 ( x1 , x2 , ..., xn ) 
....

DX = –J (X ) F(X Δ) (8a)
–1 (0) * (0)
x1 Δxn 
 
 f ( x + Δx , x , ..., x ) − f ( x , x , ..., x ) f ( x , x , ..., x + Δx ) − f ( x , x , ..., x ) 
X(1) = X(0) + DX (8b)
2 1 1 2 n 2 1 2 n
....
2 1 2 n n 2 1 2 n

J (X ) ≅  Δx1 Δxn 
ou  ⋮ ⋮ 
297(1) (0) –1 (0) 
X =X ( x1 +(X
ff(n–J Δx1 ,)x*2 ,F(X
..., xn(0)
) −) (8c)
f n ( x1 , x2 , ..., xn ) f n ( x1 , x2 , ..., xn + Δxn ) − f n ( x1 , x2 , ..., xn ) 
 1 x1 + Δx1 , x2 , ..., xn ) − f1 ( x1 , x2 , ..., xn ) ( x1 , x2 , ..., xn + Δxn ) − f1 ( x1 , x2 , ..., xn ) 
f1 ....
 Δx .... Δxn  
Δx 1 1 Δx n
 (k + 1) 
c) Para cada f 2 (uma
x1 + Δdas
x1 , xdemais iterações k, determinamos
2 , ..., xn ) − f 2 ( x1 , x2 , ..., xn ) f 2 ( x1 , x2 , ..., xnX+ Δxn )sem− f 2 (calcular
x1 , x2 , ..., xn ) 
302  .... (7)
aJ (jacobiana
X) ≅  novamente Δx1 (essa é a grande vantagem deste Δxn método), 
(8a) e (8b), ou (8c), –1 (k)
obtendo  diretamente a⋮ sua inversa J (X ), por meio da⋮ fórmula de 
 
 f n ( x1 + Δx1 , x2(BURDEN;
Sherman-Morrison , ..., xn ) − f n ( xFAIRES,
1 , x2 , ..., xn )2011) f n (,xusando
1 , x2 , ..., xn os
+ Δvalores
xn ) − f n (iniciais
x1 , x2 , ..., xn ) 
311
obtidos no item (b), considerando Δx1
....
DF = F(X(k)) – F(X(kΔx–n1)): 


302 ( ΔX − J −1 ( X k −1 ) * ΔF ) ΔX T  J −1 ( X k −1 )
J (X ) = J (X ) + 
(8a)
−1
e (8b), ou
k
(8c), −1 k −1 
(9)
ΔX  J ( X ) * ΔF 
T −1 k −1

311
Xk +1Superíndice −1
( X na
= X k −, Jpresente k
T)equação
* (X )
k
(9), indica matriz transposta.
( ΔX − J −1 ( X k −1 ) * ΔF ) ΔX T  J −1 ( X k −1 )
J (X ) = J (X ) + 
−1 k −1 k −1  (
X T  Jtemos:
d) Substituindo a eq. (9) na eq.Δ(8c), −1
( X k −1 ) * ΔF 

X k +1 = X k − J −1 ( X k ) * ( X k )
310 (10) (10)
302 CÁLCULO NUMÉRICO COMPUTACIONAL

e) Repetimos os passos (c) e (d) até que algum critério de parada seja
satisfeito. Note que, nesse método, a partir da segunda iteração,
executamos O(n2) operações em cada iteração, pois efetuamos
Capítulo 4 – Resolução
Capítulo 4de–Sistemas
ResoluçãodedeEquações não
de Lineares
SistemasCapítulo
Equações
apenas adições e multiplicações de matrizes. 4 – Rn

Capítulo 4 – Resolução de Sistemas de Equações


e 1 + x2=
x
e x11 + x2 = 1 Capítulo 4 – Resolução de Sistema
Exemplo 4.5:
Exemplo resolva
Exemplo4.5: 4.5:resolva
resolva 2 2
por Broyden, por
por e x1
+
com
Broyden,
 Broyden, x 3=
2 com1
iterações a
com3 3iterações
iterações a Capítulo
a partir de 4 – Resolução de S
Exemplo
 x1 + x2 4.5:
2
= x14x1+resolva x22 = 4  2 por Broyden, com
Capítulo34 –iterações
Resolução de Sis
e + x2 = x1 2
4com 3 iterações
Exemplo  2 2e +por xx2 1= +1 x2 =
 +4.5:
 resolva Broyden, a
1 Capítulo 4 – Resolução de Sistemas de E
1(0)
Exemplo  +4.5:1 resolva  por Broyden, com 3 iterações a
partir de =  X  ., Calcule
e calcule ax1solução+ x2a= 24 com 1 precisão máxima.
(0)
X de
partir = , e calcule a solução
 x
com precisão máxima.
também
+xx11 +eex1 2++=
solução
x2x42=
com
11 por Broyden, com 3 iterações a
=precisão máxima.
2
−1Exemplo  −1 x
 partir  de  4.5: (0)resolva
, e calcule 4 aprecisão
Solução:Solução: Exemplo  +1 X +1=e +x22x12=
4.5: resolva porsolução
Broyden,comcom 3precisão
iteraçõesmáxim a
partir de (0)
, e 
calcule  −
1

1
a x
solução+ +1x 2x22=
=4
com máxima.
X = 4.5:
Exemplo xresolva  e2 calcule
 12 2por Broyden, com 3 iterações a
partir x1 , xde
f1 (Solução: )f=1−X
( ex11, x+=2 x)=2 −e1x=,++ 04a solução com precisão máxima.
(0)
 2
 x 01x+
1
−x12 = = 1
Solução:
FSolução:
( X ) = F ( X ) = 
Temos Temos − 1  1  2
 2+1 2 , e calcule a solução com precisão máxima.
x1partir (de
(0)
Solução: x1 ,X+xX2(0)x)+22= 1=−=x41
x=+−f110x(,2xe1−,calcule
2
f 2 (partir
, x2 )f 2=de  4x2= ) =0 eax1 solução
+ x2 − 1=com 0 precisão máxima.
partirTemos de
Solução:
 Xf (F
(0)x (
=, x
X )
) = = e, − e 1 +
calcule
 x − 1 = a 0
solução
1
com precisão máxima.
1 1  
2
( XSolução: 2 x
−f11 ( x1 , x2de ) = eNewton, + x2 −21= obtendo 02
Temos
Temos Fiteração a) 1ª = iteração 1
Aplicando Aplicando a 1ªTemos do) =método do método( , ) de Newton, a
obtendo a
F ( X   
 f x x = x + x 2 −4= 0
2 2
Solução: f ( x , x )
 2 1 2 f ( x1,f1x( x)12,= x2x)2= +xe1x 21 += x +2 x 1 − 4 2 = 0x 1
x − 1 = 0
acobiana inicial einicial sua inversa, − 4 = 0
jacobiana
Temos Temos e sua
FF( X Xaplicando
 ) 2= f11 ( xaplicando
(inversa,
)f()a =−(1)x1ª
21 , x2as ) =1eqs. e 2+(8a), asx2 eqs. − 1(8b)
2 = (8a),0 e (8c) (8b) e (8c)
Aplicando Aplicando a 1ª iteração 
 do, x f iteração
) =
método
( x e
,
x1
x +) =x x−
de2do
1 += 2métodoobtendo
0
Newton,
x − 4 = 0 de Newton,
a obtendo
calculando )F,f 2(temos:
( )
e Aplicando
calculando= ∆F Aplicando
Temos Fa= (1X ∆a F F
k
()X−F)Fa
iteração (=X (X (
1ª
k k
do)iteração
1
−método
1 2 ( k
(X2x1 ,1xde
− 1)
))2, =Newton,
2do
temos: 2 2
xmétodo1+ x 2− 2
4de
obtendo = 0Newton, obtendo
a jacobiana inicial a
21 2

∂f1 ( X )  ∂∂ef1f(1sua
jacobiana
(XX) ) inversa, jacobiana
jacobiana
inicial
∂)f1 (Aplicando ) aplicando
XAplicando
e suainicial
inicial inversa,
f 2as ( x1 eqs.
a)e1ª1ª sua , x2e) sua
inversa,
iteração
x1 +inversa,
aplicando
= (8a) 2
ex(8b), − 4as
aplicando
2do = ou
método aplicando
0eqs. (8c) (8a),
as
(8b)as
eeqs.
de (8a),eqs.
e (8c) DF(8a),
calculando
Newton, (8b) = (8b)
e (8c)
obtendo a e (8
∂ f ( X
 1 eFcalculando ) ∂ f( ( X   a iteração do método de Newton, obtendo a
 ∂ f 1 X ) ∂ f ( X )  , temos:
( k ( k 1)
aFx (1ªX )∆ F ( X( kF ) ) (−

 ∂(X x ) e– calculando
(k)
F(X x=
ee2calculando (k ∆F1), temos:
– 1) −F ) (X
( k ) (
(, Xtemos: k − 1)
) , temos:
= ( X k −1)F
1 1
∂x1 ∂x1 2 ∂∂x1xAplicando F1iteração )do Fmétodo de Newton, obtendo a e (8c)
∂x1 jacobiana ∆inicial F1e( eX
2 =∂xjacobiana ∂xe2x= e1=  sua −inversa, )aplicando asaseqs.
eqs. (8a),(8b)
(8b)
1 1

J ( X ) = 
1 1
inicial e x
 sua inversa, aplicando (8a), e (8c)
∂)f=2 ( X J) ( X ∂)∂f=2f(12(X (XX) )) jacobiana
 ∂∂f 2f1(2(X X = ) 
)calculando 2(XxXinicial  = 
 2(exX2= sua 
inversa, ( k ) )aplicando ( k −1) ) as eqs. (8a), (8b) e (8c)
fexcalculando 2)f) 22(Xxx∂ , temos:
( k ) ( k 1)
 ∂f 2 ( X )  ∂∂f 2f(12(X (XX∂) f))1(e ∂ X ∂ 1∂
) (f X
f (2 )x ∂ 

 ) f 
∆
) F  F ( X
F) ( X ) − F ( X
− F ( X −
) , temos:
∂1f 2(1X)1 1e)x∂2 f112(= x1∆∂)F f2(xX
1
 ∂∂xx 2
∂∂x1x22∂∂x1f∂∂x(∂x2X2f1)=(∂X
X
∂x1
J (X )∂=x1 1  ∂∂xe
 12 x calculando ∆∂F∂f x(eX1x F)1(eXx1 ( k ) )1x−exF ( X 1( k −1)) , temos:
1

1 12 ∂x
1
 =
x

J ( X ) = ()X)=)= ∂f2∂(fX1 ∂(1)1X  ∂1x2 (xX ) e  1 x
1 1
x1)∂∂fx1 ( X 
(2)∂Xxf)=11)(X222∂)xxf=∂12(f∂
2
e1 (0) 1 1e1∂Jf(2J(Xe1X 1X )2x==2xexx = 1e   1 
1
1
∂Jf1(2(X
J1X
 ∂∂(f)f)X=
( X)eX)=
( 1 )∂ 
∂ f21x∂(∂fX1∂(f()X
f
1
X ) ∂ x 2 2 x

((0)X ) =  (0)e  = 1∂ 
x  e   
1=12e
( X ) = 2 21 −
 ∂ ∂∂ f
x∂f ∂f (

( x X X( X 1)
)  ) e∂ 2
x ∂ 1∂
f∂ ∂
1
f
f
(xX (( X
)2X)) 1  22x
1 
∂ x  2
e  
 1 x
2 x
= )2x1e12xex22 x12 12 x   
∂xf∂2x(∂1Xx1)1 22 ∂∂exfx22=(2X
1
2 * 1) =2( 1 −J−∂1) 2 1∂2=
J1)( Xx2=1)=
1

 2* 1) =22(
2 2 1
J − (X 1) ∂2xX1(x−1X)-2 ) =
2*1 J∂(J2( x=(22X)∂)f2 (Xe)21xx2=1x1 21x222xx2 12 x  2 
=
∂∂∂=2xf∂(21xX(1X)∂2∂)f2x2 2(-2
1
2 ∂f 2 
 2 * 1 J1(2(X− 1)
1

) =   ∂ f X1
∂ ∂f)2x∂(2 xX
 e 1   
J ( X1∂)f1=2 (1X ) 0.13447071068499  e  ∂ 1 f ∂
 (x X ) ∂ f 
( ∂ X x
 )    1 2
0.268941421369995
J ((0) X (0) ) =0.268941421369995
(0) (0)  e  e
0.268941421369995 = ∂
0.268941421369995
  1f 2∂(x∂1Xx1)∂2f2∂(e1xXe∂)f12∂0.13447071068499
0.13447071068499
( x2 2 x1 2 x2
x∂X1x)222∂x=x1 2 220.13447071068499 
XX (0)))J==−1(JX
J ( X 2( X )
1 2( =  
) =−1)(0) ∂x)e2(
 1 
 21e−12∂∂=x11x21  = 1 

 =e∂x2 1 1  2 
2 e  2 
1 x  2 x 
 
(0.268941421369995  J
*(0)
( X )(0)
J=(2)X
0.268941421369995  *= 1
2 * 11 = −
2(− 
∂ 1) 0.365529289315002

x 1)  e 
1 2 2-2−
− ∂= 1
x
 2
0.365529289315002
e  1  e 1  
0.268941421369995  (0)   e  1 
e1)−1)
  
1e22  21−
    
e)0.268941421369995
2(0) )2=1)*2( 11 − 12( −=0.365529289315002 -22=−e0.365529289315002
1
J ( X(0)J 1( )X=
e* 1(0) 1
e 1 
 0.268941421369995
J ( X  = J  ( X
1 =  e  e   = 1 10.13447071068499
 2  − =
2  1
2 -2  -2  
( X0.718281828459045
(0)
) = J ( 0.718281828459045
X (0)
) =   ( X 2*2e1)*1 1=2(
J0.268941421369995
0.268941421369995 (0)


2(
= −211)
2
−* 11) 2(

1
 2−
 2( 
− e1)

1) 2    20.13447071068499
=1 0.13447071068499

 
X 0 ) J=
(0) J (0.718281828459045
− −
1 1
(X (0)
X )J)=
(0)
(=
0.268941421369995

X120.718281828459045
(0)
 * 1) = 2( − 1)
 0.268941421369995
2  
 * 12 −2(
*
− 2 
=−1)
0.365529289315002  2 -2   
0.13447071068499
  
) =F(−X−1 2.000000000000000
X−2.000000000000000 0
) = J (0)− (0.268941421369995
 X  0.268941421369995
(0)
0.268941421369995 
)0.268941421369995
2= 
* 1 2( −1)

 


0.268941421369995
 
   2 -2−−0.365529289315002 0.13447071068499
0.13447071068499
0.365529289315002 
0.13447071068499
(J−X (0)
)−J)2.000000000000000
=−)=1=(−0.268941421369995 0.268941421369995 0.268941421369995  0.13447071068499 0.13447071068499   
J−1−2.000000000000000 −0.365529289315002    
1
1 (X

J ( X (0)
0.718281828459045 −1 X
0.268941421369995
J 1 (0)(0)
( X (0) ) )== 0.268941421369995  0.13447071068499 0.13447071068499 
0.268941421369995
( 0.268941421369995
(0)0.268941421369995  
0.268941421369995
)   − − 0.365529289315002
0.365529289315002
0.13447071068499   
    
(0) J ( X (0)
0(0) J −1
J
) = ( X0.718281828459045 X = 
(−X0.9242343145200196
 − ) = −  0.9242343145200196
0.9242343145200196
F F ( X  )− =
0.718281828459045
0.268941421369995
0.9242343145200196
) = ) = 0.718281828459045     −0.365529289315002
0.268941421369995
0.268941421369995
0.268941421369995
 −0.365529289315002
 − −0.365529289315002
−0.365529289315002
0.365529289315002 
== ∆X ∆=  − 2.000000000000000
= F((0)  X−2.000000000000000
0
) =  0.268941421369995
0.718281828459045
    −0.365529289315002  
X
0.0757656854799806
 0.0757656854799806 − 2.000000000000000
X(0)))=)=0.718281828459045
0.0757656854799806
F (0)  0.718281828459045
= 0.718281828459045   0.718281828459045         
0.718281828459045 
 F − ( )X(0.0757656854799806
(F(0)
X
0.9242343145200196 F   ( X0− 02.000000000000000
) =  0.718281828459045
0−2.000000000000000
0.718281828459045    
F
1.07576568547998 ( X =
(F F0(0.9242343145200196
 −F0.9242343145200196
−− )(X −X=− )) =  −2.000000000000000
2.000000000000000
2.000000000000000 
     
∆(1)X1.07576568547998
∆ = 
X  1.07576568547998
= X 
2.000000000000000− 0.9242343145200196
 −− 2.000000000000000
2.000000000000000

X = 1 ∆ 1.07576568547998
X ∆=
0.0757656854799806
X = − 2.000000000000000
        
= X =
−1.92423431452002
 −1.92423431452002−1.92423431452002 0.0757656854799806
 −1.92423431452002
  −−0.9242343145200196
0.0757656854799806 − 0.9242343145200196

0.9242343145200196
 − 0.9242343145200196
     
∆X=∆ X−= X
=
0.9242343145200196 0.0757656854799806 0.9242343145200196
−0.9242343145200196
0.0757656854799806     

0.00800289814302335
 ∆1.07576568547998
X
 ∆ X
=
1.07576568547998
 ∆ ∆X
 −=
1.07576568547998
= −
0.9242343145200196  0.0757656854799806
0.0757656854799806
 
      
X (1)
(1) X = 0.00800289814302335
0.00800289814302335∆ X
∆X
1= (1) 0.00800289814302335  = =
0.0757656854799806 
0.0757656854799806

1.07576568547998  0.0757656854799806   
 
X 1 )= X  =
−1 )1.92423431452002
=−1.92423431452002
) =F(X0.85994950723254249
X0.85994950723254249 X (1)=
1    1.07576568547998 
0.0757656854799806      
0.0757656854799806 
   − 1.92423431452002
  1.07576568547998
  1.07576568547998      
0.85994950723254249
X (1) X (1)X
0.00800289814302335
=
0.85994950723254249
 =
(1)
X
= 1.92423431452002
1.07576568547998
1−1=1.07576568547998
=

1.07576568547998
1.92423431452002
1.07576568547998 
      
( X ) =  1(1)X  −1.92423431452002
(1)
X  = X
10.00800289814302335
0.00800289814302335
1 −  
1.92423431452002
 − 1.07576568547998
1.92423431452002       
 
FF((XX ) =) = X
0.85994950723254249 1− =
− −0.00800289814302335
1.92423431452002
1.92423431452002 1.92423431452002
  F)=   ( k −1)   
X ( k−1)iniciar
∆FF(0.85994950723254249 0.00800289814302335
Calculamos X0.85994950723254249 (=∆ F−( k1.92423431452002 ( X( X( k ) ) − )F (para ) para oiniciar método de
)
Calculamos = (1) X
0.00800289814302335 ) −F0.00800289814302335
F o método de
 0.718281828459045
0.718281828459045   
F ( X (0) ) =  (0)0  0.718281828459045  
FF( (XX−2.000000000000000
)=   0.718281828459045
0.718281828459045  
F ( XF(0)()X−=2.000000000000000
0
) =0   0.718281828459045
  
F2.000000000000000
(X−2.000000000000000
) −=2.000000000000000
    
 
−0.9242343145200196
CAPÍTULO 4 – RESOLUÇÃO  −2.000000000000000
  DE EQUAÇÕES
DE SISTEMAS  NÃO LINEARES 303
∆X ∆=  −0.9242343145200196
 −0.9242343145200196 

X ∆= −0.9242343145200196
  −0.9242343145200196 
 X ∆=
0.0757656854799806
 X
=
0.0757656854799806     
 ∆0.0757656854799806
X = 
 1.07576568547998  0.0757656854799806
 0.0757656854799806
   
 1.07576568547998
1.07576568547998
X = 1 (1)   1.07576568547998
(1)
  
X X= − =(1)
−1.92423431452002
1  1.07576568547998 
1.07576568547998
   
XX == 
 1.92423431452002
 −X1.92423431452002
−=
1
   
  −1.92423431452002
0.00800289814302335
1.92423431452002
 −1.92423431452002
 
F ( X (1) ) =  (1)1 0.00800289814302335
0.00800289814302335  
FF((X X )) =
= 
0.85994950723254249  
0.00800289814302335
0.00800289814302335  

F ( XF ()X 0.00800289814302335
 
 
1
(1)
= ) =
0.85994950723254249
0.85994950723254249
 1
 F ( X0.85994950723254249  
 ) 0.85994950723254249
=   
0.85994950723254249 
Calculamos= ∆F F ( X ( k ) ) − F (( kX) ( k −1) ) para iniciar o método de
Calculamos= ∆(k)F F ( X(k – 1)) −( k )F ( X ( k −1) )( k −para iniciar o método de
Calculamos
Broyden: Calculamos
DF = F(X =
) ∆
– F
F(X F ( X ) para ) − F ( X
iniciar 1)
para iniciar
o)método o método de
de Broyden:
Broyden:
Broyden:
 −0.710278930316022 
= ∆F F ( X (1) ) − F ((1)X= (0)
)  (0)  −0.710278930316022  
= ∆F F ( X ) −(1)F ( X= ) (0)  −0.710278930316022
2.859949507232542   
= ∆F F ( X ) − F ( X= ) 2.859949507232542
 2.859949507232542  
culo Numérico Computacional
mérico Computacional  
utacional E, aplicandoiterativamente
E, aplicando iterativamente as eqs.as eqs.
(9) eas(9)(10), e (10), temos:
E, aplicando iterativamente eqs.temos: (9) e (10), temos:
E, aplicando iterativamente as eqs. (9) e (10), temos:
mérico Computacional
utacional Primeira iteração: a partir de k = 1, por Broyden, via eqs. (9)
Primeira
Primeira Primeira
iteração:
iteração: iteração:
a partir dea kpartir
= 1, pordeBroyden,
k = 1, porviaBroyden, via eqs. (9)
eqs. (9) e (10),
e (10), a partir de k = 1, por Broyden, via eqs. (9)
e (10), e (10),
Primeira 0.2921643816775817
iteração: a partir 0.0990520599255256
k =de  eqs.
por Broyden, via eq. (9)(9)
Primeira ) =iteração:
(1) ( X  0.2921643816775817
a partir de k = 1,Broyden,
1, por
0.0990520599255256  via eq.via
(9)eqs.
−1 (1)
−1 J 0.2921643816775817  0.0990520599255256  (9)via
via eq.
(9)(9)
−1 (1)J ( X ) = 
J ( X ) = e (10),e 0.2073926822465813  0.2073926822465813 − via
0.2716578247461259  eq. 
o 04.indd 29
Capitulo 04.indd  29
 (10),
0.2073926822465813 −0.2716578247461259
−0.2716578247461259 
 
Capitulo 04.indd 29  0.988247753569072 
(1) −1  X (2)0.2921643816775817
0.29216438167758170.988247753569072
=
0.988247753569072
(1)   0.0990520599255256
0.0990520599255256
via via
eq.eq.
(10)
 via eq.via
eq. (10) (9)eq. (9)
−1
J ( XX ) = J
(2) (
= X X (2)
) =   − 1.692282044505352  via
 (10)  
via eq. (10)
 0.2073926822465813
 0.2073926822465813
−1.692282044505352
 −1.692282044505352

 −0.2716578247461259
−0.2716578247461259  
n
 n (2)
X (2) = X ∆=x ∑ ∆∑
 n 0.988247753569072
0.988247753569072
x
∆x j =
=
 
0.319470201925577
0.319470201925577
via eq.via
(10)eq. (10)
∑ j −=
−1.6922820445053520.319470201925577
1.692282044505352
j
j =1 
j =1  
j =1
Segunda iteração: k = 2
n
Segunda Segunda
n
iteração: iteração:
k=2 k=2
∑ ∑
∆x j(3) = ∆ = 0.319470201925577
x j1.00301691571886
0.319470201925577 
 (3) X j =11.00301691571886
=
j =11.00301691571886   
X (3) = Segunda X =  iteração:  −1.72788110366784
k = 2  
 −1.72788110366784
− 1.72788110366784
 iteração: 
Segunda Segunda k = 2 k = 2
iteração:
n
 n(3)  n1.00301691571886
1.00301691571886 
 0.0503682213122766
X = X =  ∆∑ ∆x j =
∆x j ∑
(3)
x = 0.0503682213122766
 
∑ −=
−1.72788110366784
j =1
0.0503682213122766
1.72788110366784
j =j1  
j =1
n Terceira iteração: k = 3
n
Terceira iteração:
k=3 k=3

Terceira∆x j∑ = iteração: 0.0503682213122766
∆x j 1.00417409441167
=
0.0503682213122766 
(4) X j =11.00417409441167 
(4)
=
Xj =11.00417409441167  
X (4) = =  −1.72962989476839  
Terceira  − 1.72962989476839
Terceira
iteração: 
iteração:
k= 3 k = 3

 −1.72962989476839
n
 n (4)  n1.00417409441167
1.00417409441167 
 0.00290596979335936
X (4) =X = ∑ ∑ ∆x j =
∆xj =j1 = 
0.00290596979335936

∑ ∆x j −= 1.72962989476839
−1.72962989476839
j =1
0.00290596979335936
 
j =1
n Seguindo os passos iterativos, chegamos à solução:
X (3) = X (3) =  1.00301691571886 
Segunda
(3)
 1.00301691571886 iteração:
−1.00301691571886 k = 2  
 1.00301691571886
1.72788110366784

=  −1.72788110366784 
(3)
=  X =X 1.00301691571886
− 304
 −
1.72788110366784 − 
1.72788110366784 
1.72788110366784 
 X =n  n 
(3)
  CÁLCULO NUMÉRICO COMPUTACIONAL

n ∑ ∑ ∆x =
 −n1.72788110366784
∆x j =0.0503682213122766
n

0.0503682213122766
j
∑ ∆x j ∑
=n ∆
j =1
x∑= = 0.0503682213122766
0.0503682213122766
∆x = 0.0503682213122766
j j
=1

∑ ∆x Terceira
j
j =1 Terceira
Terceira
j =1 iteração: k =k 3= 3
0.0503682213122766
iteração:
jj=1
j =1
iteração: k=3
Terceira Terceira
 iteração: Terceira
1.00417409441167 iteração: 3 k= 3 k =3
k = iteração:
X (4) = Terceira  1.00417409441167
iteração: k = 3
X
(4)
= 1.00417409441167
−1.00417409441167
 1.00417409441167
(4) 1.72962989476839
  −1.72962989476839    
=  X (4) =X 1.00417409441167
(4)
=   
=  −1.72962989476839
 −X1.72962989476839  −1.72962989476839    
 −1.72962989476839
n


n
∆xnj = 0.00290596979335936
n n ∑ ∆x j = 0.00290596979335936
∑ ∆x j ∑ ∆x∑
x 0.00290596979335936
jn=1
= ∆
0.00290596979335936 =
j ∆x j =
j 1 0.00290596979335936

=
= 0.00290596979335936
j =1 Seguindo
j =1
j =1
jj=1 os
Seguindo os passos passos iterativos, chegamos
iterativos, à solução:
chegamos à solução:
Seguindo Seguindo
Seguindo osSeguindopassos os ospassospassos
iterativos,
os passos iterativos,
iterativos, chegamos
iterativos,chegamos
chegamos à à solução:
solução:
à chegamos
solução: à solução:
Seguindo 1.00416873847466 os passos iterativos, chegamos à solução:
X =  X =  1.00416873847466 
em k = em 8 iterações
1.00416873847466
 1.00416873847466
1.72963728702587
X−1.00416873847466
 1.00416873847466 − 
1.72963728702587     k = 8 iterações
X
X =
= 
 −1.72963728702587 =  −1.72963728702587  em k =  8 em k =
em
iterações 8 k = 88 iterações
iterações
iterações
− −1.72963728702587  em k= 8 iterações
  n1.72963728702587  n   
saber ∑ ∆xnj =
∑ 2.62331707805421 e − 16 e − 16
ber
Para
n nn ∆x j = 2.62331707805421
∑ xj ∑ ∆xx∑ 2.62331707805421 e − 16 ee−−16 16e − 16
j =1
j ==
mais
ber
Para
aber ∆mais
saber = 2.62331707805421
∆ jj = ∆ xj =
1 2.623317078054212.62331707805421
re o
mais mais Exemplo
mais j = 1 sobre o j
j =
=11 j =1 4.6: elabore um algoritmo que resolva o sistema não não
oede
re ométodo
Exemplo 4.6: elabore um algoritmo que resolva o sistema
sobre ode
Exemplo
den,
de Broyden,
ométodo
Exemplo
linear
Exemplo 4.6:Exemplo elabore
linear 4.6: elabore
4.6: elabore
um
4.6: algoritmo
elabore umalgoritmo
um algoritmo
umque queresolva
que
resolva
algoritmo resolva o osistema
o sistema
que resolvasistema
não não não
não
o sistema
de
Exemplo
linear 4.6: elabore um algoritmo que resolva o sistema não linear
linearconsultelinear
 x12 +linear
ulte
den,
en,
11)
Broyden, x22x+2 x+32 x−21+= x032 − 1 = 0
ulte
Faires (2011)  22
ulteconsulte 1 2 2
2 x 2+ x 2 2 2+ x 2 2− 1 = 20
(2011)2
x1 +em: +
x2 +211x13 −+x1221x2=
2 x +
2 x −
+023x42x+3x 2= 1 = 0
x3 0− 1 = 00
 2   22 x−1 3+
em:
11)
2 − 4 x3 =
11)
isponível
res

222 4x 2 = 0
org/
3−xxx11142 x+−
+32x4x=x322x1x−
em: 2 2
2 4xx323 −
02−+ = 400+x3x 2=
2 2 2 2
2 xem: 1 + x 00
em:
wikipedia.org/
−234 x=
ponível
 3 =
de_
org/
org/

%A9todo_de_
ipedia.org/ 3 x1 2 − 2
 
2 4 x22 + x32 =
1 2
0
2
x32 x+1 x−334=
3 x1em:−34utilizando
x + 4xx3 2= +0x3 = 2
 x1 02 −os 0
m:
de_3
de_
Acesso
m:
9todo_de_
16.3 utilizando métodos os de Newton
métodos e de Broyden
de Newton , com critério
e de Broyden de
, com critério de
m: 3
nov.
esso em: 3 utilizando os métodos de Newton e de Broyden, com critério de
2016.
utilizando
16. utilizando osutilizando
métodosnde n os métodos de Newton e de Broyden, com critério de
os Newton
métodos ededeNewton
Broydene, com ,critério
de Broyden de critério de
, com
16.
nov. 2016. utilizando
parada
parada ∑
nn ∑
parada n os
n
j =1 ∆−x
∆xmétodos
jn < 10
∑< 10
∆ −x
−14 de Newton
14
,<e10
Newton
−14 de Broyden
eeBroyden com com critério
derivadas
j, e Newton e Broyden com derivadas parciais parciais
, e Newton e Broyden com derivadas
de parada
parciais
parada parada ∑ ∆∆xparada xjj <
j =1
∑j< =11010∆x∑ −14
14
j
j,,ee∆
j= 10
<1Newton
Newton
−14
x j <,10 e Newton
−14
eeBroyden
Broyden e Broyden
, e Newtoncomcom com derivadas
derivadas
e Broyden
derivadas comparciais
parciais
parciais
derivadas
numéricas eparciais
critério
jj==11 j =1

de parada min |D xi| < 10–14 partindo de um vetor inicial X(0) = [0.5, 0.5, 0.5]T.
Calcule o resíduo máximo das equações e compare os resultados entre 20/12/2017 os 20/12/2017 09:11:43
20/12/201
09:11:43
métodos aplicados. 20/12/201720/12/2017
20/12/2017 09:11:43 09:11:43 0

Para saber mais sobre o método de Broyden, consulte Burden e Faires (2011) e o artigo disponível em:
 <https://es.wikipedia.org/wiki/M%C3%A9todo_de_Broyden>. Acesso em: 3 nov. 2016.

Esse critério de parada com mínimo desvio é necessário para que, na simulação das derivadas não
sejam geradas derivadas nulas por perda de significação.
vetor inicial X (0) = [ 0.5 0.5 0.5] . Calcule o resíduo máximo das para que,
Comparação entre os métodos: mínimo
equações e compare os resultados entre os métodos aplicados. simulação
desvio é

Solução:
CAPÍTULO 4 – RESOLUÇÃO DE SISTEMAS DE EQUAÇÕES NÃO LINEARES 305 não sejam
necessário
a) Método de Newton com derivadas parciais exatas: vadas nula
para que, n
Comparação entre os métodos:
Solução significaçã
simulação d
Solução: X = [0.785196933062355, 0.496611392944656, 0.369922830745872]
não sejam
a) Método de Newton com derivadas parciais exatas: vadas nulas
Resíduo
Comparação entremáximo
Solução F = 2.22044604925031e − 16
os métodos: significação

Número
X de iterações k = 6 0.496611392944656, 0.369922830745872]
= [0.785196933062355,
a) Método de Newton com derivadas n parciais exatas:
Critério máximo
Resíduo de paradaF atingido: ∑ | ∆x j | =
= 2.22044604925031
X = [0.785196933062355, 0.496611392944656,
j =1
7.14758491003723
e − 16 e − 17
0.369922830745872]T
b)Número
Resíduo de
Método iterações
máximo
de NewtonF =com= 6derivadas parciais numéricas:
k2.22044604925031e–16
n
Critério
Critériode
Solução deparada
parada atingido:
atingido: ∑ | ∆x
j =1
j |=
7.14758491003723e − 17
Número de iterações k = 6 0.496611392944656, 0.369922830745872]
X = [0.785196933062355,
b) Método de Newton com derivadas parciais numéricas:
Resíduo máximo F = 3.13082892944294e − 14
Solução
b) Método de Newton com derivadas parciais numéricas:
X = [0.785196933062355,
Critério 0.496611392944656, 0.369922830745872]
de parada atingido:
X = [0.785196933062355, 0.496611392944656, 0.369922830745872]T
min | ∆x jmáximo
Resíduo |=2.40985795343054e − 17
Resíduo máximo F == 3.13082892944294e–14
3.13082892944294e − 14
Critério de
Número deparada k = 6 min |Dxj| = 2.40985795343054e–17
atingido:
iterações
Critério de parada atingido:
Número de iterações k = 6
c) min | ∆x jde
Método |=2.40985795343054e
Broyden − 17parciais exatas:
com derivadas
Solução iterações k = 6
c) Número
Método dede Broyden com derivadas parciais exatas:
X = [0.785196933062355, 0.496611392944656, 0.369922830745872]
c) Método de Broyden com0.496611392944656,
X = [0.785196933062355, derivadas parciais 0.369922830745872]
exatas: T
Resíduo máximo F = 2.77555756156289
Resíduo máximo F = 2.77555756156289e–16 e − 16
Solução n
X = [0.785196933062355,
Critério
Critério de
de parada atingido:
parada atingido: ∑
0.496611392944656, 0.369922830745872]
2.67455660204432
∆x j = e − 15
Númeromáximo F =k2.77555756156289
de iterações =8 j =1
Resíduo e − 16
Número de iterações k = 8 n
Critério de parada atingido: ∑ ∆x j =
2.67455660204432e − 15
d) Método de
d) Método Broydencom
de Broyden comderivadas
derivadas
j =1
parciaisnuméricas:
parciais numéricas:
Solução
X = [0.785196933062355,
Número 0.496611392944656, 0.369922830745872]T
de iterações k = 8
X = [0.785196933062355,
Resíduo 0.496611392944656, 0.369922830745872]
máximo F = 2.77555756156289e–16
d) Método de Broyden com derivadas parciais numéricas:
Critério de
Resíduo paradaFatingido:
máximo min |Dxj| = 4.03368022884459e–16
= 2.77555756156289 e − 16
Solução
Número de iterações k = 8
Critério
X de parada atingido:0.496611392944656,
= [0.785196933062355, min ∆x j = 4.03368022884459 e − 16
0.369922830745872]
Os algoritmos
Número de Newton e Broyden
de iterações =aplicados
8 ao Exemplo 4.6 estão no Caderno de
Resíduo
Algoritmos máximo
no arquivo F = k2.77555756156289
Cap4SistemasNaolineares.m. e − 16
Critério de parada atingido: min ∆x j =
4.03368022884459e − 16
Número de iterações k = 8

o 04.indd 31

04.indd 31
306 CÁLCULO NUMÉRICO COMPUTACIONAL

4.4 CONCLUSÕES
Tomando como referência apenas resultados típicos, como os colhidos
no Exemplo 4.6, com a aplicação dos quatro métodos abordados neste
capítulo, podemos concluir que:
a) Os métodos de Newton são os mais recomendados para sistemas
não lineares de ordem baixa ou moderada. O Newton geral, quando
for possível a determinação direta da jacobiana; o Newton com
derivadas numéricas, quando não. Já para sistemas de ordem mais
elevada, sugerimos o método de Broyden, o qual normalmente
necessita de mais iterações para a mesma precisão, porém o custo
de cada iteração é compensadoramente menor.
b) A recomendação anterior é válida para os casos em que ocorre a
convergência, pois, se os métodos em questão continuarem divergindo
depois de várias tentativas de tomada de novas soluções iniciais
X(0), indicamos a utilização de outros métodos matematicamente
mais robustos e que façam uso das derivadas direcionais, como o
método das estimativas descendentes, que encontram um mínimo
local da função somatório dos quadrados das funções não lineares
de modo que esse mínimo local corresponde à solução do sistema
não linear, independentemente do valor inicial adotado (BURDEN;
FAIRES, 2011).

Antes de iniciar o estudo do próximo capítulo, aplique o seu conhecimento


respondendo aos exercícios do Caderno de Exercícios e Respostas disponível para
download no link <http://sergiopeters.prof.ufsc.br/exercicios-e-respostas/>.
CAPÍTULO 5

APROXIMAÇÃO
POLINOMIAL POR
INTERPOLAÇÃO, SPLINE
E CURVAS DE BÉZIER

OBJETIVOS ESPECÍFICOS DE APRENDIZAGEM


Ao finalizar este capítulo, você será capaz de:
■■ efetuar interpolações de funções com uma ou várias variá-
veis independentes;
■■ executar aproximações de funcões por interpolação spline; e
■■ executar aproximações de funções e não funções por curvas
de Bézier.
Nos Capítulos 5, 6 e 7, abordaremos o tópico central do cálculo
numérico: a aproximação de uma função y = f(x), x ∈ [a, b], por meio de
outra função z = g(x).
Você pode se perguntar: por que utilizamos uma função aproximadora,
ou representante, em vez de usar diretamente a função original? Há dois
motivos básicos para essa opção:

Motivo 1: podemos conhecer apenas um conjunto discreto de pontos da


função y = f(x), do tipo

xi x1 x2 .... xn + 1

yi = f(xi) y1 y2 .... yn + 1

Isso ocorre em situações como:

a) Coleta de valores amostrais em experimentos para geração de


bases de dados, por exemplo, a amostra a seguir contém a relação
entre o tempo de uso e o respectivo índice de desgate de uma peça

x (Tempo de uso em meses) 1 2 4 5 6

y (Índice de desgaste) 0.05 0.09 0.18 0.23 0.31


310 CÁLCULO NUMÉRICO COMPUTACIONAL

b) Em sistemas de computação gráfica, o usuário indica alguns


pontos de referência, ou controle, e o computador deve preencher
os caminhos intermediários desses pontos sem distorções e com
alta velocidade de resposta. Para tanto, precisamos obter funções
aproximadoras desses caminhos.

Motivo 2: a função y = f(x) pode possuir expressão conhecida, porém ser


indisponível, ineficiente ou até impossível de ser utilizada.
Isso ocorre em situações como:

a) A construção de funções predefinidas para bibliotecas de linguagens


computacionais, que devem ter rotinas para obter valores confiáveis
de funções como y = ex, y = sen(x), y = cos(x), y = tg(x), entre outras,
utilizando apenas as operações aritméticas elementares.

b) Nos sistemas dedicados, muitas vezes temos que obter, em tempo


real, valores de funções extensas e compostas de outras funções
específicas, por exemplo:

f ( x) = sen exp
 ( 3
)
coth( x) 

316
Nesses casos, o tempo de processamento acumulado de cada uma
das subfunções pode ser inviável, sendo obrigatória a aproximação
Grafico 5.3
da f(x) por uma função g(x) única com tempo de resposta factível.

c) Alguns modelos matemáticos são representados por funções, cuja


expressão algébrica pode ser de uso inviável. Por exemplo, para
Erro = | Pn ( x) − f ( x ) | 2 2
efetuar analiticamente a integral definida I = ∫ e−x dx , temos que
0
obter uma aproximadora z = g(x) da função integranda original
f(x)= e–x que tenha primitiva conhecida, pois f(x)= e–x tem primitiva
2 2

impossível de ser expressa como uma função elementar.

Para fazer uso da função aproximadora, a questão fundamental que precisamos


responder é: quem pode ser a aproximadora z = g(x)?
265
f ′ e f ′′
277POLINOMIAL POR INTERPOLAÇÃO, SPLINE E CURVAS...
CAPÍTULO 5 – APROXIMAÇÃO 311
xk +1
P2 ( xk −2 ) = f ( xk −2 ) , P2 ( xk −1 ) = f ( xk −1 )
288 é que a função z = g(x) deva ser simples e “bem
A premissa básica
comportada”, isto é, ser contínua,
, com Δx j = xfacilmente
j − xj ,
0 computável, derivável, integrável
etc. Por consequência,294o universo de busca das famílias de aproximadoras
z = g(x) restringe-semax
às funções do tipo:
Δx j = 0.375
300 n+1
Δx jg( x ) = ∑ a x
a) Polinomiais:
i−1
= Pn ( x ) , cujas vantagens são:
1
301 i=1

i) envolvem somente operações elementares;


J (X ) = J (X )+ 
ii) facilmente −1deriváveis,
k −1 integráveis
k −1 etc.;
( )
 ΔX − ( J −1 ( X k −1 ) ) ΔF ( ΔX T )  J −1 ( X k −1 )
 
ΔX  J ( X algébricas
T
iii) formam um anel, ou seja, todas as transformações
−1 k −1
) ΔF 
nelas aplicadas resultam em outro polinômio.
311
Pn ( x)
b) Racionais: g ( x) = , em que Pn(x) e Qm(x) são polinômios de
Qm ( x)
graus n e m,314
respectivamente, e permitem a aproximação de fun-
yi = ln(assintótico,
ções com gráfico xi ) X = [0.785196933062355,
como o Gráfico 5.1. 0.4966113929446
315
Erro local
Gráfico 5.1 – Função =| P2 (1.14) − f (1.14) | = 0.00562550214195459
assintótica
f ( x) = ln( x) c)
316
ai X = [0.785196933062355, 0.4966113929446
318
xi ≠ x j
319 d)
Li ( x)
323
X = [0.785196933062355, 0.4966113929446
v ≠ xi
325
Pn ( x) = y1 +No
Δy1(capitulo
x − x1) + Δ25y1tentar
( x − x1)(manter
x − x2 ) + ...uma alinhamento la
mesma pagina, se possível.
+ Δn y1 (x − x1 )...(x − xn )
326 311
Fonte: Elaboração própria.
f (5.0) ≅ P3 (5.0) = 2.233
m
f (7.5) ≅ P3 (7.5) = 2.203
c) Trigonométricas:
328
g ( x ) =
i =1

( ai * sen(i * x) + bi * cos(i * x) ) que,
Δk yi = Δk −1 yi+1 −Δ
fornecem aproximações −1
yi
de kfunções representativas de fenômenos
oscilantes. 330 312

| Pn ( x ) − f ( x ) |< ε

315
312 CÁLCULO NUMÉRICO COMPUTACIONAL

Em virtude de suas características, as funções polinomiais são as mais


utilizadas como aproximadoras. Contudo, tais vantagens teriam pouca valia
se não existisse o suporte teórico de que podem sempre aproximar funções.
Tal garantia encontra-se no teorema de Weierstrass:

“Se y = f(x) for contínua em [a, b], então ∀ε > 0 sempre existe Pn(x) e
n dependente da precisão ε, tal que |Pn(x) – f(x)| < ε, ∀x∈[a,b].”

Ou seja, sempre existe uma aproximadora polinomial Pn(x) que esteja


tão próxima quanto se queira de uma f(x) contínua no domínio [a, b]. Como
esse teorema assegura a existência da aproximadora, mas não fornece um
modo de determiná-la, temos mais uma questão a responder: como obter
essa aproximadora?

A resposta dessa questão será abordada em todas as seções deste capítulo.


A resposta dessa questão será abordada em todas as seções deste capítulo.

5.1 APROXIMAÇÃO POR INTERPOLAÇÃO


5.1 Aproximação por interpolação polinomial
POLINOMIAL
Para aproximar uma função y = f(x) contínua em [a, b], podemos
Para aproximar uma função y = f ( x) contínua em [a, b] , podemos proced
proceder como segue:
como segue:
a) Tomamos n + 1 pontos (xi yi = f(xi)) com i = 1, 2, ... n+1, xi∈ [a, b],
Tomamos n + 1 pontos ( xi , yi = f ( xi )) , =
a)conforme: com i 1, 2,..., n + 1 , e

xi ∈ [a, b] , conforme:
xi x1 x2 .... xn + 1
xi x1 x2 ....... xn +1
yI = f(xi) yi =y1f ( xi )y2 y1 .... y2 yn .......
+1 yn +1

com x1 = a e xn + 1= b, ou usamos uma função já representada por n + 1


com e xntabela
x1 =dea uma
pontos +1 = b ,proveniente
ou usamos de uma função já representada
um levantamento de dados. por n +

pontos de uma tabela proveniente de um levantamento de dados.


b) Tomamos
b) Tomamos umum polinômio
polinômio genérico
genérico de grau
de grau n: n:
n +1
Pn ( x) = ∑ ai xi −1 = a1 + a2 x +  + an x n −1 + an +1 x n (1) (1)
i =1

E aplicamos a seguinte condição de aproximação:


pontos de uma tabela proveniente de um levantamento de dados.
P=
n ( xi ) y=
i, i 1, 2,..., n + 1
b) Tomamos um polinômio genérico de grau n :
CAPÍTULO 5 – APROXIMAÇÃO POLINOMIAL POR INTERPOLAÇÃO, SPLINE E CURVAS... 313
n +1
Pn ( x) = ∑ ai xi −1Isto
DESTAQUE = a1 +é,  + an x n −1 + aan +1 xcondição
a2 x +impomos n
de que essa
(1) fu
i =1
E aplicamos a seguinte
aproximadora condição
polinomial de aproximação:
deve passar por todos os n + 1 po
E aplicamos a seguinte condição de aproximação:
tabelados
P=
conforme item (a), ou seja, o erro ou desvio, sobre e
n ( xi ) y=
i, i 1, 2,..., n + 1  (2) (2)
pontos escolhidos para definir a aproximadora, é nulo. FIM
Isto é, impomos a condição de que essa função aproximadora polinomial deve passar
DESTAQUE
DESTAQUE n + 1 pontos
 por todos os Isto tabelados conforme
é, impomos a item (a), ou seja,de
condição o erro que
ou desvio,
essasobre função
esses pontos escolhidos para definir a aproximadora, é nulo.
aproximadora polinomial deve passar por todos os n + 1 pontos
Dessa condição, resulta a expressão:
Dessa condição,
tabelados conformeresulta a expressão:
item (a), ou seja, o erro ou desvio, sobre esses
pontos
 Pn ( x1 )escolhidos
= a1 + a2 x1 +para
 + adefinir
n −1
+ aan +1aproximadora,
x1n = y1 é nulo. FIM DO
n x1

DESTAQUE
P (x ) = a + a x + + a x + a x = y
n −1 n
n 2 1 2 2 n 2 n +1 2 2
 (3a)

 P ( xcondição,
Dessa
 n n +1 ) = a1 + resulta
a2 xn +1 +aexpressão:
+ an xnn+−11 + an +1 xnn+1 = yn +1
 Pn (éx1 )um
Que = a1 sistema
+ a2 x1 + com n −1 n
+ an x1 n ++a1n +1equações
x1 = y1 lineares e n + 1 incógnitas
 é um sistema com n +n −11 equações
Que n lineares e n + 1 incógnitas
 Pn ( x2 ) = a1 + a2 x2 +  + an x2 + an +1 x2 = y2
ai. Quando
Quando reescrevemosesse
reescrevemos esse sistema
sistemananaformaformamatricial, temos:
matricial, temos:(3a)

P (x ) = a + a x + n −1 n
2 n +1 x n −1+ an x
  n 1 n +1 x 1  xn1n+1 + ana+11xn +1 = yny+11 
1 1
 é um sistema comn −1    lineares
 y  e n + 1 incógnitas a .
Que 1 x2  x2 n + 1x2nequações
* = a2  (3b) 2 i

            
Quando reescrevemos esse sistema na forma matricial, temos:
     
 1 xn +1  xn +1 xn +1   an +1   yn +1 
n −1 n

Resolvendo o sistema (3b), obtemos os n + 1 coeficientes ai do


Resolvendo
polinômio que opassa
sistema (3b),
por todos os n obtemos
+ 1 pontos os 1 ))coeficientes
(xi,yi n= +f(x . 210
i

polinômio que passa por todos os n + 1 pontos ( xi , yi = f ( xi )) LINK


 Note que o número de pontos é igual ao número de coeficientes incógnitos ai.
que o número de pontos é igual ao número de coeficientes incógnit
Esse polinômio aproximador é denominado de interpolador da função.
FIM LINK. Esse
Os elementos uij dapolinômio
matriz dosaproximador
coeficientes doésistema denominado Y interpo
U * A =de
dado
da na eq. (3b) têm lei de formação genérica dada por:
função.
Os
uij =elementos
xij – 1 uij da matriz dos coeficientes do sistema U
(4)* A = Y da
eq. (3b) têm lei de formação genérica dada por:
uij = xij −1

Resolvendo o sistema linear U * A = Y pelo método mais adequado


uij = xij −1 (4
314 CÁLCULO NUMÉRICO COMPUTACIONAL
Resolvendo o sistema linear U * A = Y pelo método mais adequado en
aqueles que abordamos no Capítulo 2, obtemos os coeficientes
Resolvendo o sistema linear U * A = Y conforme abordamos no
polinômio interpolador.
Capítulo 2, obtemos os coeficientes do polinômio interpolador.

Exemplo 5.1: aproxime, por interpolação, a função y = ln(x), x ∈ [1.0, 2.0]


Exemplo 5.1: aproxime, por interpolação, a função y = ln( x) , x ∈ [1.0, 2.0] , dividin
dividindo esse intervalo em n = 2 subintervalos iguais e estime ln (1.14). Estime
esse ainda o erro
intervalo em donln(1.14) obtido pelo aproximador
= 2 subintervalos de grau
iguais e estime 2 comparando-o
ln(1.14) . Estime ainda o erro
com seu valor exato.
ln(1.14) obtido pelo aproximador de grau 2 comparando-o com seu valor exato.
Solução:
h Solução:
= (b – a) / n = (2.0 – 1.0) / 2 = 0.5

h =−
i (b a ) / n =
(2.0
1 − 1.0) / 2 =
0.5 2 2+1=3

xi i 1.0 1 1.5 2 2.0 2+1=3


xi 1.0 1.5 2.0
yiy= =
ln(x ) 0.000000000000000 0.405465108108164 0.693147180559945
ln(i xi ) 0.000000000000000 0.405465108108164 0.693147180559945
i

n + 1 = 3 pontos ⇒ n = 2 subintervalos ⇒ P2(x) = a1 + a2x + a3x2


n +1 =3 pontos ⇒ n = 2 subintervalos ⇒ P2 ( x) =a1 + a2 x + a3 x 2

Aplicando Aplicando
o sistema odado
sistema
na dado na eq.temos:
eq. (3b), (3b), temos:

(1.0) (1.0)1 (1.0) 2   a1  0.000000000000000 


 
(1.0) (1.5)
1
(1.5) 2  *  a2  = 0.405465108108164 
 1
(2.0) 2   a3   0.693147180559945
(1.0) (2.0)

E resolvendo esse sistema por eliminação de Gauss, com variáveis double, temos:
E resolvendo esse sistema por eliminação de Gauss, com variáveis
double, temos:

a1 = −1.164279323185479
a2 = 1.399845394498246
a3 = −0.235566071312767

Assim,
P2 ( x) = −1.164279323185479+1.399845394498246 x − 0.235566071312767 x 2 ≅ ln( x)

Valor aproximado local: P2 (1.14) = 0.125402760264449 ⇒ avaliação por Horne


a1 = −1.164279323185479
a = 1.399845394498246
CAPÍTULO 5 – APROXIMAÇÃO POLINOMIAL POR INTERPOLAÇÃO, SPLINE E CURVAS... 315
2

a3 = −0.235566071312767
Assim,
Assim,
P2 ( x) = −1.164279323185479+1.399845394498246 x − 0.235566071312767 x 2 ≅ ln( x)

399845394498246 x − 0.235566071312767 x 2 ≅ ln( x)


Valor aproximado local: P2 (1.14) = 0.125402760264449 ⇒ avaliação por Hor

f=
Valor exato local: ⇒ avaliação(1.14)porln(1.14)
= 0.131028262406404
) = 0.125402760264449
Valor aproximado local: P2(1.14) =Horner.
0.125402760264449 ⇒ avaliação por
= Horner.
) ln(1.14) ⇒
0.131028262406404 Erro local = | P2 (1.14) − f (1.14) | = 0.00562550214195459

ocal = |Podemos − favaliar


Valor
P2 (1.14) exato| =alocal:
(1.14) aderência
f(1.14)da= função
0.00562550214195459 ln(1.14)interpoladora P2 ( x) com a⇒função e
= 0.131028262406404
Erro local = | P2(1.14) – f(1.14) | = 0.00562550214195459
a função f ( x)interpoladora
= ln( x) no Gráfico
P2 ( x)5.2.
com a função exata
Podemos avaliar a aderência da função interpoladora P2(x) com a
função exata f(x) = ln(x) no Gráfico 5.2.
Gráfico 5.2 – Função interpoladora P2 ( x) e função exata f ( x) = ln( x)
Gráfico 5.2 – Função interpoladora P (x) e função exata f(x) = ln(x)
rpoladora P2 ( x) e função exata f ( x) = ln( x) 2

Fonte: Elaboração própria.

Podemos também representar o erro local exato entre P2(x) e f(x) no


intervalo x ∈ [1.0, 2.0], conforme o Gráfico 5.3.
f ( x) = sen exp
 ( 3
)
coth( x) 

316
316
CÁLCULO NUMÉRICO COMPUTACIONAL

Grafico 5.3

Gráfico 5.3 – Erro local exato entre P2(x) e f(x)

Erro = | Pn ( x) − f ( x ) |

Fonte: Elaboração própria.

Observe que os erros locais, entre a função aproximadora P2(x) e a


339
exata f(x), são nulos sobre os pontos usados para definir o interpolador
 fi,:yℝi =
(x x f(x
ℝ→ )), e o erro máximo é ErroMax ≅ 0.006. Observe também que os
i ℝ

erros têm pico máximo na região intermediária de cada subintervalo entre
 ( x , y ) → z = f ( x, y )
os pontos (xi, yi = f(xi)) interpolados e serão maiores nos subintervalos das
duas extremidades, conforme pode ser visto no Exercício 5.3.

No Caderno de Exercícios e Respostas, disponível no link <http://sergiopeters.


prof.ufsc.br/exercicios-e-respostas/>, você encontrará os exercícios atualizados
deste livro.

Já no Caderno de Algoritmos, disponível no link <http://sergiopeters.prof.ufsc.


br/algoritmos-livro/>, apresentamos um algoritmo que implementa a interpolação
polinomial geral no arquivo Cap5exem5.1coefinterPn1D.m, contendo o cálculo dos
coeficientes ai do polinômio interpolador e seu uso.

Veremos, nas seções 5.1.2.1 e 5.1.2.2, que existem algoritmos alternativos para determinar
 o polinômio interpolador.
9
Fazendo
CAPÍTULO uma análise
5 – APROXIMAÇÃO da técnica
POLINOMIAL de aproximação
POR INTERPOLAÇÃO, por interpolação
SPLINE E CURVAS... 317 polino
devemos considerar pelo menos três questões fundamentais:
a)Fazendo
Será que
umaoanálise
sistema
da U * A = Y , dado pela eq. (3b), sempre tem solu
técnica de aproximação por interpolação
polinomial,
Casodevemos
exista considerar pelo será
solução, esta menosúnica?
três questões fundamentais:
b)a) Será possível
Será que o sistemamelhorar a eficiência
U * A = Y, dado computacional
pela eq. (3b), (menor temp
sempre tem solução?
Caso exista
resposta solução, esta
e demanda deserá única? para a obtenção e o uso do Pn ( x)
memória)

Qualpossível
c)b) Será melhorar
é o erro a eficiência computacional
de truncamento (menor tempo
máximo associado ao de
se tomar
resposta e demanda de memória) para a obtenção e o uso do Pn(x)?
como aproximador de f ( x) , ∀ x ∈ [a, b] com x ≠ xi ?
c) Qual é o erro de truncamento máximo associado ao se tomar Pn(x)
como aproximador de f(x), ∀x∈[a,b] com x ≠ xi?
Vamos Vamos
tratartratar
de responder
de responder aa cada
cada uma
uma dessas
dessas questões
questões nas atrês
nas três seções seções a seg
seguir.

5.1.1 Unicidade do interpolador


5.1.1 Unicidade do interpolador
Conforme
Conforme detalhamos
detalhamos anteriormente,
anteriormente, para
para obter
obter o polinômio
o polinômio interpolad
interpolador de uma função definida por:
uma função definida por uma tabela de pontos:
x x1 x2 ....... xn +1
xi x1 x2 .... xn +i 1
yi = f ( xi ) y1 y2 ....... yn +1
yI = f(xi) y1 y2 .... yn + 1
geramos um sistema de equações lineares dado pela eq. (3b), cuja matriz U
geramos um
coeficientes sistema dedevido
é especial, equações lineares
à lei dado pelados
de formação eq. (3b),
seuscuja matriz U Esse ti
elementos.
dos coeficientes é especial, devido à lei de formação dos seus elementos.
matriz é denominado de Vandermonde, cuja forma simples e eficiente de ob
Esse tipo de matriz é denominado de Vandermonde, cuja forma simples
seu determinante é: o seu determinante é:
e eficiente de obter

 1 x1  x1n −1 x1n 
 
1 x2  x2n −1 x2n 
Det (U ) = Det  = ∏ ( xi − x j ) (5a)
       i= n +1,2
  j = i −1,1
 1 xn +1  xnn+−11 xnn+1  (i ≠ j )

ou
ou
318 CÁLCULO NUMÉRICO COMPUTACIONAL

Det (U ) = ( xn +1 − xn )( xn +1 − xn-1 )....( xn +1 − x1 )


* ( xn − xn −1 )( xn − xn-2 )...( xn − x1 )
⋮ (5b) (5
* ( x3 − x2 )( x3 − x1 )
* ( x2 − x1 )
334
f (4) (x) Como no conjunto de pontos (xi , yi = f(xi)) geradores da matriz U não
340 existem valores de x repetidos por se tratar de uma função, isto é, xi ≠ xj para
u = 8.7 = 5.5
i ≠ej, vlogo Det(U) ≠ 0, conforme a eq. (5a) ou (5b), e o sistema U * A = Y
377 dado na eq. (3b) terá solução única. Assim, o polinômio gerado será único,
independentemente
Max f ( n +1) ( xda
) maneira h n +1 de expressá-lo. Essa demonstração genera-
Erro Pn ( x ) <
liza o fato conhecido de ∈[ a ,b ]por dois pontos quaisquer passa uma única reta.
xque

4( n + 1)
413 Na sequência, vamos mostrar formas mais eficientes de determinar o polinômio
x ∈ [0.1, interpolador
1] de grau n.
441
(a10 , a20 ) = (1.,
5.1.2
1.) Determinação eficiente do interpolador
a1 = 367.001181444968 e ada
A consequência 1.00152293682138
2 =unicidade do interpolador é que podemos tentar
449 determiná-lo sem a geração do sistema linear (3b), que demanda a ordem
de O(n2) multiplicações para gerar a matriz U e cuja solução por elimi-
∂D(a,nação
b) dem Gauss
( ) ( )
−1 −2
= 2  a +ouaCrout
/ T 2 exige
− V número
 ( −1) de
a operações
+ a / T 2 aritméticas
1 = 0 na ordem
 1
∂ade O(2nk =1/ 3).
3  2 k 
 
 1 2 

456 Para a função discretizada
b
I =  f ( x) dxi = F (b) − F1(a ) = A2 ..... n+1
a
463
xi x1 x2 ..... xn + 1
f ′( x) = − (1 + x)−2
464 yi = f(xi) y1 y2 ..... yn + 1
| Tn − I e |
Tn* propomos representações de polinômios interpoladores em bases alter-
nativas, pois a eq. (1) é escrita como uma combinação linear direta da base
| Tn* − Ie |
canônica dos polinômios: {x0, x1, ..., xn–1, xn}, com coeficientes ai, ou seja,
465
b
lim T( i , k ) =  f ( x ) dx
k →∞
a
470
(4) −5
propomos representações de polinômios interpoladores em bases alternativas,
a eq. CAPÍTULO
(1) é escrita comoPOLINOMIAL
5 – APROXIMAÇÃO uma combinação linear
POR INTERPOLAÇÃO, direta
SPLINE da base319
E CURVAS... canônica

{ }
polinômios: x 0 , x1 , , x n −1 , x n , com coeficientes ai , ou seja,
n +1
Pn ( x)= ∑a x
i =1
i
i −1
= a1 x 0 + a2 x1 +  + an x n −1 + an +1 x n

5.1.2.1 Expressão
5.1.2.1 do interpolador
Expressão polinomial
do interpolador na(x)base
Pn ( x) P
polinomial dosdos
na base polinômios
n
polinômios de Lagrange
Lagrange
Nesse caso, o interpolador Pn(x) é expresso na forma de uma
Nesse caso,
combinação o interpolador
linear é expresso
Pn ( x) por
da base definida nade
polinômios forma de uma
Lagrange de combin
grau n, Li(x), i = 1, ..., n + 1,
linear da base definida por polinômios de Lagrange de grau n , Li ( x= ) , i 1,...,

Li ( x) = ∏
n +1
(x − x ) j
(6a)
j =1 (x − x )
i j
j ≠i

com as propriedades:
com as propriedades:
Li(xLii)(=xi 1) =para qualquer
1 para i e Li(xi j)e= L0i (para
qualquer j ≠0i (6b)
xj ) = para j ≠ i

DESTAQUE Cada polinômio Li ( x) se anula em todos os pontos conhecidos x j


Cada polinômio Li(x) se anula em todos os pontos conhecidos xj,
com exceção
exceção de um deles, de umx deles, xi. Os polinômios de Lagrange podem ser
i . Os polinômios de Lagrange podem ser considerados
considerados uma função “peso”, com valor 1 sobre xi e 0 sobre xj. Cada Li(x)
funçãoé definido em torno
“peso”, com valorde1um xi e éxiuma
sobre e 0função
sobre linearmente
x j . Cada Lindependente
i ( x ) é definido em tor
de outro Lr(x) com r ≠ i.
um xi e é uma função linearmente
Por exemplo, para o conjunto de 5 pontos: de outra L j ( x) .
independente

Por exemplo,
i
para o conjunto
1 2
de 5 pontos:
3 4 5

xi i1 1
3
2 3
4
4
6
5
8
xi 1 3 4 6 8

O polinômio O de Lagrange
polinômio de graude4 grau
de Lagrange definido em torno
4 definido em torno 3 =x34 =
de xde L3 ( x) resu
, 4,
L (x) resulta no Gráfico 5.4.
Gráfico3 5.4.

Gráfico 5.4 – Polinômio de Lagrande L3 ( x) de grau 4 em x3 = 4


320 CÁLCULO NUMÉRICO COMPUTACIONAL

Gráfico 5.4 – Polinômio de Lagrange L3(x) de grau 4 em x3 = 4

Fonte: Elaboração própria.


Fonte: Elaboração própria.

Observe que o polinômio L3 ( x) do Gráfico 5.4 tem valor nulo sobre x1 = 1 , x2 =


Observe
Fonte:que o polinômio
Elaboração própria. L3 ( x) do Gráfico 5.4 tem valor nulo sobre x1 = 1 , x2 =
x4 = 6 , x5 = 8 e valor unitário em x3 = 4 . FIM DO DESTAQUE
x4 = 6 , x5 =Observe
8 e valor queunitário em xL33(x)
o polinômio . FIM
= 4 do DO 5.4
Gráfico DESTAQUE
tem valor nulo sobre
x1 = 1, x2 = 3, x4 = 6, x5 = 8 e valor unitário em x3 = 4.

Assim, um interpolador genérico Pn ( x) de grau n pode ser expresso co


Assim, um interpolador genérico Pn ( x) de grau n pode ser expresso co
combinação Assim, um interpolador
linear da base de genérico
polinômios de n Lagrange
Pn(x) de grau pode ser expresso
Li ( x) , pondera
como combinação linear da base de polinômios de Lagrange L Li(x) ,
combinação linear da base de polinômios de Lagrange i ( x ) , pondera
ponderados
diretamente pordiretamente
coeficientes coeficientes
por com valorescom valores
iguais a yiguais a yi, em fun-
i , em função das proprieda
diretamente por coeficientes
ção das propriedades com valores
estabelecidas iguais
na eq. (6b), a yi , segue:
conforme em função das proprieda
estabelecidas nas eqs. (6b), conforme segue:
estabelecidas nas eqs. (6b), conforme segue:
n +1
Pn ( x) = ∑
n +1 yi Li ( x ) (7) (
Pn ( x) = ∑i =1 y L ( x )
i i (
ni =+11 n +1
( x − xj )
Pn ( x) = ∑
n +1 yi ∏
Pn ( x) = ∑
( x − xj )
i =1 y j =1 ( xi − x j )
n +1 (
i∏
(8a) (
j =1 ( xi − x j )
j ≠i
i =1
ou j ≠i
ou

ou
CAPÍTULO 5 – APROXIMAÇÃO POLINOMIAL POR INTERPOLAÇÃO, SPLINE E CURVAS... 321
Pg. 321
( x − x )( x − x ) ... ( x − x )
Pn ( x) = y1 ( x − x 2)( x − x 3) ... ( x − x n +1) +
Pn ( x) = y1 ( x1 − x22 )( x1 − x33 ) ... ( x1 −nx+1n +1 )
( x1 − x2 )( x1 − x3 ) ... ( x1 − xn +1 )
( x − x )( x − x ) ... ( x − x )
+ y2 ( x − x1)( x − x 3) ... ( x − x n +1) +
+ y2 ( x2 − x11)( x2 − x3 3 ) ... ( x2 −n+x1n +1 ) (8b)
( x − x )( x − x ) ... ( x2 − xn +1 ) (8
+ 2 1 2 3
+ ⋯
( x − x1 )( x − x2 ) ... ( x − xn )
+ yn +1 ( x − x1 )( x − x2 ) ... ( x − xn )
+ yn +1 ( xn +1 − x1 )( xn +1 − x2 ) ... ( xn +1 − xn )
( xn +1 − x1 )( xn +1 − x2 ) ... ( xn +1 − xn )

 Pn ( x1 ) = y1

P ( x ) = y2
Pg. 322
ComoComo Li ( xi )L= (x ) = 1 e L (xj) =
i 1i e Li ( x ij ) =
então  n 2
0 ,0,então
 
 Pn ( xn +1 ) = yn +1
( x − x )( x − x )( x − x )
P3 ( x ) = y1 2 3 4

Ou seja, Pn ( x) (passa x1 − x2 )(por x3 )( x1 os


x1 −todos )
− x4pontos ( xi , yi ) .
Ou seja,( xP−n(x) x1 )(passa
x − x3por x4 ) os pontos (xi , yi).
)( x −todos
ComoComo o yinterpolador
+ Pn (Px)(x) dado pela eq. (8a) passa por todos os n + 1 po
x4 ) pela eq. (8a) passa por todos os n + 1
2 o interpolador
( x2 − x1 )( x2 − x3 )(nx2 − dado
pontos (xi , yi), ele será o mesmo que o obtido anteriormente pelo sistema
( xi , yi ) , *ele será ( x mesmo
o − x1 )( x − xque2 )( xem 4)
−o xobtido anteriormente pelo sistema U * A = Y
U A =+Yydado pela eq. (3b), consequência da unicidade do polinômio
( xNa x1 )( x3 − 2 )( x3 − x4 )não temos a necessidade de gerar e nem
3
interpolador. 3 − forma de xLagrange
pela eq. (3b), em consequência da unicidade do polinômio interpolador. Na form
de resolver um (x − x )( x −linear,
sistema x2 )( x −basta
x3 ) substituir diretamente os valores dos
Lagrange + y4temos a1 necessidade
não de gerar e nem de resolver um sistema li
pontos (xi , y(ix) 4e−oxx1 )(desejado
x4 − x2 )( x4 − x3 (8a).
na eq. )
basta substituir diretamente os valores dos pontos ( xi , yi ) e o x desejado na
Exemplo (5.2: x − 1)( x − 3)( x − 4)
determine ( x − 0)( x − de
o interpolador 3)( xLagrange
− 4) para a função dis-
P3 ( x ) = 2 +4
(8a). cretizada:(0 − 1)(0 − 3)(0 − 4) (1 − 0)(1 − 3)(1 − 4)
( x − 0)( x − 1)( x − 3) ( x − 0)( x − 1)( x − 3)
+0 +1
(3 − 0)(30− 1)(3 − 14)
xi determine (43− 0)(4 −41)(4 − 3)
Exemplo 5.2: o interpolador de Lagrange para a função discretizada:
yi = f(xi) xi 2 04 1 0 3 1 4
Pg. 333
yi = f ( xi ) 2 4 0 1
do Teorema 1, se M = max f ( x) , en
( n +1)
Corolário 1: sob
Aproxime ase f(x
f(x = 2) hipóteses
= 5). x∈[ x1 , xn+1 ]

Aproxime f ( xM = 2) en +1 f ( x = 5) .
Pn ( x ) ≤
Erro Solução: ∏ ( x − xi ) em um ponto específico x = x .
( n + 1)!
Temos n + 1 = 4 pontos de f(x) e n = 3.
1
Solução: i =

Temos n + 1 =4 pontos de f ( x) e n = 3 grau de Pn ( x) .

( x − x2 )( x − x3 )( x − x4 )
P3 ( x) = y1 +
( x1 − x2 )( x1 − x3 )( x1 − x4 )
( x − x1 )( x − x3 )( x − x4 )
322 CÁLCULO NUMÉRICO COMPUTACIONAL
Pg. 322

( x − x2 )( x − x3 )( x − x4 )
P3 ( x ) = y1
( x1 − x2 )( x1 − x3 )( x1 − x4 )
( x − x1 )( x − x3 )( x − x4 )
+ y2
( x2 − x1 )( x2 − x3 )( x2 − x4 )
( x − x1 )( x − x2 )( x − x4 )
+ y3
( x3 − x1 )( x3 − x2 )( x3 − x4 )
( x − x1 )( x − x2 )( x − x3 )
+ y4
( x4 − x1 )( x4 − x2 )( x4 − x3 )
( x − 1)( x − 3)( x − 4) ( x − 0)( x − 3)( x − 4)
P3 ( x) = 2 +4 +
( x − 1)( x − 3)( x 4) ( x − 0)( x − 3)( x 4)
P3 ( x ) = 2 (0 − 1)(0 − 3)(0 − 4) + 4 (1 − 0)(1 − 3)(1 − 4)
P3 ( x) =+20 (0 1)(0 3)(0 −−4)
4)3) (((1
++41 x−−0)(10)(xx−−−3)(1
1)(xx−−−4)4)
( x( x−−−1)( x x−−−3)(
0)( 1)(x x− x − 0)( 3)( 3) +
(0(3( x − 0)( x − 1)( x − 3)
− 1)(0 − 3)(0 − 4) ( x − 0)( x − 1)( x − 3)
(1 − 0)(1 − 3)(1 − 4)
+ 0 − 0)(3 − 1)(3 − 4) + 1 (4 − 0)(4 − 1)(4 − 3)
((3 0)(3 1)(3 − 4)
x −−0)( x − 1)( x − 3) (4
( x −− 0)(4
0)( x−−1)(4
1)( x−−3) 3)
+0 +1
Resultando nas(3estimativas: − 0)(3 − 1)(3 − 4) (4 − 0)(4 − 1)(4 − 3)
Resultando nas
2) estimativas:
Pg. 333f ( x =
Resultando
2) ≅ P3 ( x =
nas estimativas:
= 2.167
do Teorema 1, se M = max f ( x) , então
( n +1)
Corolário 1:5) ≅sob
ff (( xx =
= P ( xas
= hipóteses
5) = 8.667
2) ≅ P33 ( x = 2) = 2.167 x∈[ x1 , xn+1 ]

M n +1
≤ 5) ≅ P3 ( ∏
Erro Pnf((xx) = x= (5)
x −= i ) em um ponto específico x = x .
x8.667
(n + 1)! i =1
Também poderíamos expandir algebricamente a expressão de Pn ( x) dada pe

eq. (8b) e Também poderíamos


chegaríamos expandirexpressão
à expandir
mesma algebricamente
dadaa expressão
pela de P(1)
eq. (x)com
dada coeficiente
Também poderíamos algebricamente a expressão n
pela eq. (8b) (base de Lagrange) e chegaríamos à mesma expressão dada pela de Pn ( x) dada pe
dadoseq.
pela
(1)eq. (3b),
(base possivelmente
canônica) com menos erroseq.de(3b),
arredondamento.
eq. (8b) e chegaríamos àcom coeficientes
mesma dados pela
expressão dada pela eq. possivelmente
(1) com coeficiente
com menos erros de arredondamento.
Já para efeitos de otimização do algoritmo, podemos reescrever a expressã
dados pela Jáeq.para
(3b), possivelmente
efeitos comdomenos
de otimização errospodemos
algoritmo, de arredondamento.
reescrever a
dada pela eq.
expressão (8a) desta
dada pela forma:
Já para efeitos de eq. (8a) desta do
otimização forma:
algoritmo, podemos reescrever a expressã
dada pela eq. (8a)n +1 desta forma:

 Num
= ∏ ( x − xj )

j = 1
n +1

 P ( x) =∏ (yx − x j ) Num
Num
= (8c)
n +1
(8
 n ∑
j =1 i n +1
, ∀ x ≠ xi

 P ( x) =
i =1
n +1

( x − xi )Num ( xi − x j ) (8
206
 n ∑ yi j =1
nj+≠1i
, ∀ x ≠ xi

i =1
( x − xi )∏ ( xi − x j )
 j =1
 j ≠i
Antes de continuar a sua leitura, teste os algoritmos na forma da eq. (8a) e na form
otimizada da eq. (8c) disponíveis no Caderno de Algoritmos no arquiv
Antes de continuar a sua leitura, teste os algoritmos na forma da eq. (8a) e na form
6071312767 x x≅ ln(
566071312767 x) x)
≅ ln(

CAPÍTULO 5 – APROXIMAÇÃO POLINOMIAL POR INTERPOLAÇÃO, SPLINE E CURVAS... 323

r ≠r i≠. i .
mom
Antes de continuar a sua leitura, teste os algoritmos na forma da eq. (8a) e na
forma otimizada da eq. (8c) disponíveis no Caderno de Algoritmos no arquivo
Cap5exem5.2PnLagrange1D.m.

Observe que o número de operações envolvido nesse algoritmo


otimizado, eq. (8c), fica reduzido a 2n2 + 9n operações aritméticas para cada
avaliação de Pn(v) ≅ f(v), com a restrição de que v ≠ xi.

5.1.2.2 Interpolador de Gregory-Newton com diferenças


Há duas definições importantes a considerar em relação ao polinô-
mio de Gregory-Newton.

Definição 1: para a função discretizada

i i 1 1 2 2 ....... ....... n +n1+ 1


xi xi iii x1 x1 11x12 x2222....... .......x n +x
.......
.......
....... n1nnn++ ++ 111 1
iii 111 222 ....... ....... n
....... nn+++111
yi y=i =f ( xf i()xxxxxixxii)iiii y1 y1 xxyxxxx1111211 y2xx.......
xx ....... .......yn +x
.......
.......
.......
xx222222222 .......
....... yx1xxxxnnnnnn+n+++++11+11111
i ii 111 nn+n+1+11
yyy === fff(((xxx))) yyy yyy ....... ....... yyy
.......
yyyiiiiiiiii===fff(((xxxiiiiii)iii)) yyy111111111 yyy222222222 .......
.......
....... yyynnnnn+n++++11+1111
nn+n+1+11

definimos
definimos
definimos
definimos asdiferenças
as
as as diferenças
diferenças
diferenças divididas ∆∆
divididas
divididas
divididas ∆∆kkkkkykyyyiii,iiii,,no
kkkk
,no
nosentido
nosentidoascendente,
sentido
sentido por: por:
ascendente,
ascendente,
ascendente, por:
por:
definimos
definimos
definimosas asdiferenças
as diferenças
diferençasdivididas divididas
divididas∆∆∆ yyyi i,i,,no no
nosentido
sentido
sentidoascendente,
ascendente,
ascendente,por:por: 212212
por:
yyyiiii++ii+++11+1111−−−yyyiiiiii
=
==∆∆∆ yyy yyy −−−yy=
111111
y=
i= ∀iii 1,...,
i i,,, ∀
∀ 1,...,nnn
1,..., ⇒⇒⇒ diferença
diferença
diferençade
de
de1ª1ª
1ªordem.
ordem.
ordem.
=
==∆∆∆11y1yyiiiiiiiii xxxii+ii+ii++11++1111−−−x=xx = = ∀iii 1,...,
,,,∀∀ 1,...,nnn ⇒ diferença de 1⇒
1,..., a
⇒ordem.
⇒ diferença
diferença
diferençade
de
de1ª1ª
1ªordem.
ordem.
ordem.
xxxii+ii+ii++1+1+1111−−−xxxiiiiii
ii i

∆∆∆yyy −−−∆∆∆yyy
∆∆∆222222222yyyiiiiii =∆
=∆ =∆∆∆yyyiii+iii++iii+++1+11++111111−−−∆∆∆yyyiiiiiiiii,,, ∀
=∆(((∆∆∆yyyiiiii)i))=
= ∀iii=
∀ = 1,...,nnn−−−111 ⇒⇒
=1,...,
1,..., ⇒
⇒ diferença
diferença
diferença
diferença de
de
de2ª

de 2a ordem.2ªordem.
ordem.
ordem.
∆∆∆ yyyi ii=∆ =∆ (∆∆yyyi i)i))==
=∆((∆ = xxxii+i++222−−−xxxiii ,,,∀∀ ∀iii== 1,...,nnn−−−111 ⇒
=1,...,
1,..., ⇒
⇒ diferença
diferença
diferençadede
de2ª

2ªordem.
ordem.
ordem.
xxxii+ii+ii+++2+22222−−−xxxiiiiii
k−−1−111
∆∆kkk−
y −−∆∆∆kkkkk−−kk−−1−1−−11111yyyiiii
∆∆
∆kkkkkkkyyyiiii=

= ∆kk−k−1−1y1yyyyii+ii+iii++1+1++11111−−−
−∆∆∆ yyy , ∀∀
= i 1,...,
1,...,nnn+++111−−−kkk ⇒⇒
⇒ diferença de -ésimaorde
ord
∆∆ = xxxii+i++kkk−−−xxxiii i ii,,,,,∀
= =

= iiiii 1,...,
1,..., diferença
⇒ de k-ésima
diferença
diferença de
deordem.k-ésima
-ésima ord
∆∆∆ yyyi ii= = =

=

= 1,...,nnn+++111−−−kkk ⇒
1,..., ⇒
⇒ diferença
diferença
diferençade de kkkkk-ésima
de -ésima
-ésimaorde
ord
ord
xxxi +iii++k+kkk−−−xxxi iii
Note
Note
Note aaa semelhança
semelhança
semelhança entreentre
entre as
as
asdefinições
definições
definiçõesdas das
dasdiferenças
diferenças
diferenças divididas
divididas
divididas eeedas
das
das derivada
derivad
derivad
Note
Note
Noteaaasemelhança
semelhança
semelhança
Note a semelhançaentre
entre
entre
entreas
as
asdefinições
as definições
definições
definições das
das
dasdiferenças
diferenças
diferenças
das diferenças divididas edivididas
divididas
divididas
das eeede
derivadas das
das
dasderivada
derivad
derivad
várias
várias várias
váriasordens
ordensde
ordens ordens
de de
deuma
uma uma função
umafunção com
funçãocom
função expressão
comexpressão
com conhecida.
expressãoconhecida.
expressão conhecida.
conhecida.
várias
várias
váriasordens
ordens
ordensde de
deuma
uma
umafunção
função
funçãocom
com
comexpressão
expressão
expressãoconhecida.
conhecida.
conhecida.

Exemplo5.3:
Exemplo
Exemplo 5.3:determine
5.3: determinetodas
determine todasas
todas asdiferenças
as diferençasdivididas
diferenças divididasda
divididas dafunção
da funçãodiscretizada
função discretizada
discretizada
Exemplo
Exemplo
Exemplo5.3:
5.3:
5.3:determine
determine
determinetodas
todas
todasasas
asdiferenças
diferenças
diferençasdivididas
divididas
divididasdada
dafunção
função
funçãodiscretizada
discretizada
discretizada
iii 111 222 333 444
iii 111 222 333 444
xxxiiiiii 1 11 3 33 4 44 777
xxxi ii 111 333 444 777
∆ k yi = ∆ yi +1 − ∆x yii ,, ∀ = ii 1,..., nn + 11 − kk ⇒ diferença de k -ésima orde
∆ k yyii =
∆ = xxii++1k − , ∀
=

= i 1,...,
1,..., n +
+ 1 −
− k ⇒
⇒ diferença
diferença dede kk -ésima
-ésima orde
orde
− xxii
xii ++ kk −
i

324a semelhança entre as definições das


Note diferenças
CÁLCULO divididas
NUMÉRICO e das derivada
COMPUTACIONAL
Note
Note aa semelhança
semelhança entre entre asas definições
definições das das diferenças
diferenças divididas
divididas ee das
das derivada
derivada
várias ordens de uma função com expressão conhecida.
várias
várias ordens
ordens dede uma
uma função função com
com expressão
expressão conhecida.
conhecida.
Exemplo 5.3: determine todas as diferenças divididas da função discretizada
Exemplo 5.3: determine todas as diferenças divididas da função discretizada
Exemplo
Exemploi 5.3:
5.3: determine
determine 1 todas
2
todas as
as3 diferenças
4
diferenças divididas
divididas da
da função
função discretizada
discretizada
ii 1
1
2
2
3
3
4
4
xi xii 1 3 1
1 4 2
3 7
4
3
7
4
xxi 11 33 44 77
yi = f(xi) yyi = fi 2( xi ) 0 2 1 0
00 3 11
1 3
y = ff (( xxi ))
i =
i i
22 33
Solução:
Solução:
Solução:
Solução:
Aplicando
Aplicando a definição11na
a definição temos:
tabela, a seguir, temos:
Aplicando
Aplicando a definição 1 na tabela,
a definição 1 na tabela, a
a seguir,
seguir, temos:
temos:
i xi y ∆11yi ∆2 y ∆3 y
ii xi i yi ∆1 yi ∆22 yi i ∆33 yii
xxi yyi
i i i ∆1 yyii
∆ ∆2 yyii
∆ ∆3 yyii

[(0) − (2)] 2
1 11 1 22 −1 –1 2/3 2/3 −1/8–1/8 ∆11 y1 =[(0) − (2)] =
[(0) − (2)]
−2 =
− 22 =
−1
1 11 22 −1 2/3
2/3 −1/8 ∆1 y1 = (3 − 1) =
∆ y1 = (3 − 1) = −2 =
−1
−1
1 −1 −1/8 (3 − 1) 2
[(1) − ( −1)] 2
3 00 11 - –
2
2 −1/12 ∆ 2 y1 [(1) −=
= (−1)] 2
2 32 33 00 11 −1/12
–1/12 -- ∆ 2 y1 [(1)(4−=
= −(1)
−1)] 32
2 −1/12 ∆ y1
= (4=− 1) 3
[(−(4 − 1) − (2 3/ 3)]
1/12) 1
4 1 2/3 - -
3
3 ∆ 3 y1 =[(−1/12) − (2 / 3)] = − 1
3 44 1 11 2/3 -- – -- – ∆ 3 y1 =[(−1/12) − (2 / 3)] = − 1
3 43 2/3
2/3 ∆ y1 = (7 − 1)
(7 − 1) = − 88
(7 − 1) 8
4 7 3 - - -
4
4
77 33 -- -- --
4 7 3 – – –

Observe
Observeque
queas diferenças
a diferença divididas
dividida ∆3 yi no
, em1º
i ponto, em i = 1em(destacados
= 1 (destacada negrito), em neg
Observe
Observe que
que as
as diferenças
diferenças divididas
divididas no
no 1º
1º ponto,
ponto, em
em ii =
= 1
1
(destacados
(destacados em
em neg
neg
depende de todos os pontos e de todas as diferenças anteriores.
calculadas ao lado da tabela de resultados, dependem de todos os pontos.
calculadas
calculadas ao lado
lado ada tabela de
de resultados,
resultados, dependem
dependem de de todos
todos os
os pontos.
Definiçãoao
2: para da tabela
função discretizada pontos.
Definição 2: para a função discretizada
Definição
Definição 2:
2: para
para a a função
função discretizada
discretizada
i 1 2 ..... n+1
ii 1 2 ....... n +1
ix
1 2
xi 1x 2x 1 .......
....... n
nx + +1 1 ..... xn + 1
....... 3
xxii xx1 xx2 .......
1 2
....... xxn ++11
n

yii = fy(i x=i )f(xi) y11 y222 .......


....... 0 ynn++11 ..... yn + 1
yyi = f ( x ) y
= f ( xi ) y1 y2 .......y yyn +1
i i 1 2 n +1

definimos o polinômio interpolador Pn(x) de grau n, na forma de Gregory-


Newton, como combinação linear da base
n
{ x0 , ( x − x1 ) , ( x − x1 )( x − x2 ) ,..., ∏ (x − x ) } j
j =1

325

... diferenças divididas, Δk y1 , conforme segue:


Qm ( x)
314
yi = ln( xi )
efinimos
finimos oopolinômio
polinômio
CAPÍTULO
315
interpolador
interpolador
5 – APROXIMAÇÃO PnP(n x( x) )de
POLINOMIAL POR grau nn, ,na
degrau naforma
INTERPOLAÇÃO, forma
SPLINE E de
CURVAS... 325
deGregory-Newton,
Gregory-Newton,
Erro local =| P2 (1.14) − f (1.14)
| = 0.00562550214195459 nn 
 
omo
mo combinaçãof ( x) =oln(
definimos
combinação
ponderada
x) da
polinômio
linear
linear dabase
base
diretamente
1,1,( x( x−−xP1xn),1(),x()x( x−de
interpolador
pelos coeficientes
−x1xgrau
)(1 )(x x−−xn2x),...,
dados pelas
∏∏
2 ),..., ( x
, na forma
diferenças
( x−−xde
xj )j ) Gregory-Newto
, ,ponderada
divididas,
ponderada
316  j =j1=1 
 

aki y1 conforme
Δpelos segue: dados  n

iretamente
etamente pelos coeficientes
coeficientes
como combinação linear da base 
318
dados pelas
pelas1, ( x −
diferençasx
diferenças

1 ), ( x − x )( x −
divididas,
divididas,
1 x 2 ∏
),...,
conforme
conforme
j =1
( x − x jsegue:

)segue:
 , pondera
xi ≠ x j
diretamente pelos coeficientes nn  k k
dados   pelas diferenças divididas, conforme segue:
P nP(n x
319
Li ( x)
∑∑ ∏

( x) )==y1y1++ ∆∆k yk 1y1* *  ( x( x−−xxj )j )  (9a) (9a)
(9a)
k =k1=1
n j =j1=1
 k
  
u 323
v ≠ xi
∑ ∏
Pn ( x) = y1 + ∆ k y1 *  ( x − x j )  (9
ou 2k2=1 
PnP(n x( )x=)= y1y1++∆∆y1y(1x( x−−x1x)1 )++∆∆y1y(1x( x−−x1x)(  nn
xx−−x2x)2 )++......++∆∆y1y(1x( x−−x1x)...( xx−−xnx)n )
1 )( 1 )...(
j =1
(9b)
(9b)
ou 325
Pn ( x) = y1 + Δy1( x − x1) + Δ2 y1( x −2x1)( x − x2 ) + ...
esulta quePnP(nP
sulta que xpassa
)= y1 +por
x(n)x()passa ∆y1 (todos
x − x1 )os y1 ( x − xdiscretizados,
+os∆pontos n
y1 ( x − x1 )...( x − xn(9b)
)( x − x2 ) + ... + ∆pois ) (9
n portodos pontos 1discretizados, pois
+ Δ y1 (x − x1 )...(x − xn )
326
Presulta
P x x que Pn ( x)P passa porpor todos osos pontos
pontosdiscretizados, pois
( (
nn 11 = ) )
= f y(5.0)
resulta 1y1 ≅que P3 (5.0)n(x) passa
= 2.233 todos discretizados, pois
 f (7.5) (≅y
PnP(n x( 2x)2 )= (P2y3 (7.5) = 2.203
2−−y1y)1 )
=
328 Pyn1y(1+x+
1 ) = y1 ( x( 2x2−−x1x)1 )==y2y2
 k ( x(k −2x12−−x1x)1 )k −1
 Δ=Pynyy(i x=2Δ) =yyi+11+−Δ ( y2 y−i y1 )
PnP(n x(3x)3 )=330 ( x2 − x1 ) = y2
33 ( x2 − x1 )
 P ( x ) = y
  n 3 3
PnP(n x( nx+n1+)1)==yny+n1+1
 
  Pn ( xn +1 ) = yn +1
Todas
Todasessas essasigualdades igualdadespodem podemser sercomprovadas
comprovadaspor porindução
induçãofinita.
finita.Logo,
Logo,oo

linômio PnPTodas
olinômio (n x( x) ) dado essas
dado pela igualdades
pela eq.
eq. (9a) (9a)podem
também
também ser écomprovadas
é uma formapor
uma forma indução do
alternativa
alternativa finita.
do únicoLogo,
único
Todas essas igualdades podem ser comprovadas por indução
polinômio
nterpolador
erpolador definita.
degrau grauPLogo,
n (n xn) que
odado
que polinômio
passapelasobre
passa eq.
Pn(x)(9a)
sobre dado
todos também
todos pela
os eq. é uma
(9a)
ospontos
pontos formaé uma
também
discretizados,alternativa
discretizados, formacomo
assim
assim do úni
como
alternativa do único interpolador de grau n que passa sobre todos os
sformas interpolador
formas dadas
dadas de grau n que
anteriormente
anteriormente passa sobre todos os pontosdados
discretizados, assim com
pontos discretizados,pela pela
assim eq.
eq. (1),
como(1),com
ascom coeficientes
coeficientes
formas dados por
dadas anteriormentepor(3b),
(3b),
pelaseepela
pela
q.
. (8a). as formas
(8a). equações dadas (1)anteriormente
e (8a). pela eq. (1), com coeficientes dados por (3b), e pe
eq. (8a).
Exemplo 5.4: determine o interpolador de Gregory-Newton da função
Exemplo
xemplo 5.4:
5.4:determine
determineoointerpolador
interpoladordedeGregory-Newton
Gregory-Newtonda
dafunção
função
xi 1 3 4 7
Exemplo 5.4:
xx determine
11 o interpolador
33 44 de Gregory-Newton
77 da função
i i
y = f(x ) 2 0 1 3
yiyi==f f( x(ix)i ) x2i 2 i 10i0 3 11 4 33 7
y = f ( xi ) 2 0 1 3
Estime f(x i= 5) e f(x = 7.5).
stime f f( x( x==5)5)ee f f( x( x==7.5)
Estime 7.5). .
Estime f ( x = 5) e f ( x = 7.5) .
Solução:
olução:
Solução:
emos
emosnn++11= =44 ⇒ ⇒ nn==33
Temos n + 1 =4 ⇒ n2 =2 3
P3P(3x( )x=)= y1y1++∆∆y1y(1x( x−−x1x)1 )++∆∆y1y(1x( x−−x1x)( xx−−x2x)2 )++∆∆3 y3 1y(1x( x−−x1x)(
1 )( xx−−x2x)(
1 )( xx−−x3x)3 )
2 )(
P ( x)= y + ∆y ( x − x ) + ∆ y ( x − x )( x − x ) + ∆ 3 y ( x − x )( x − x )( x − x )
2
xxi 11 33 44 77
i
yyi == ff((xxi )) 22 00 11 33
i i
326 CÁLCULO NUMÉRICO COMPUTACIONAL

Estime ff ((xx == 5)
5) ee ff((xx==7.5)
7.5). .
Estime
Solução:
Solução:
Solução:
Temos n + 1 n= 41= ⇒ n=3
TemosTemos
n +1 = +4 ⇒4 ⇒nn==33
P3 ( x)= y1 + ∆y1 ( x − x1 ) + ∆ 2 2y1 ( x − x1 )( x − x2 ) + ∆ 3 y31 ( x − x1 )( x − x2 )( x − x3 )
P3 ( x)= y1 + ∆y1 ( x − x1 ) + ∆ y1 ( x − x1 )( x − x2 ) + ∆ y1 ( x − x1 )( x − x2 )( x − x3 )
Usando as diferenças divididas obtidas no Exemplo 5.3, temos:
Usando as diferenças
Usando as diferenças divididas
divididasobtidasobtidas no Exemplo
no Exemplo 5.3,
5.3, temos:
temos:
P3 ( x=
) 2(1) + (−1)( x − 1) + (2 / 3)( x − 1)( x − 3) + (−1 / 8)( x − 1)( x − 3)( x − 4)
P3 ( x=
) 2(1) + (−1)( x − 1) + (2 / 3)( x − 1)( x − 3) + (−1 / 8)( x − 1)( x − 3)( x − 4)
E efetuando as estimativas, resultam:
E efetuando as estimativas, resultam:
Ef (5.0)
efetuando as estimativas,
≅ P3 (5.0) = 2.233 resultam:
f (5.0) ≅ P3 (5.0) = 2.233
f(5.0) ≅ P3(5.0) = 2.233 2

f(7.5) ≅ P3(7.5) = 2.203

Na algoritmização desse interpolador, podemos fazer o armazenamento


das diferenças divididas na forma de um vetor, haja vista que apenas as
diferenças no 1o ponto, em i = 1, são utilizadas na forma final, portanto não
há necessidade de uma matriz para esse fim. No momento da determinação
de todas as diferenças, bastará usar mais um vetor auxiliar.

Confira o algoritmo de Gregory-Newton no Caderno de Algoritmos no arquivo


Cap5exem5.4PnGregoryNewton1D.m. A seguir, apresentamos algumas considera-
ções sobre os interpoladores estudados até este momento.

O número de operações aritméticas executadas em cada tipo de inter-


polador é:
a) Interpolador geral de base canônica: (n – 1)n para gerar o sistema,
O(2n3 / 3) para solvê-lo e 2n operações para obter f(v) ≅ Pn(v).
b) Interpolador de Lagrange (otimizado): 2n2 + 9n operações para
obter f(v) ≅ Pn(v).
c) Interpolador de Gregory-Newton: 3(n2 + n)/2 operações para obter
as diferenças divididas e 4n operações para obter f(v) ≅ Pn(v).
CAPÍTULO 5 – APROXIMAÇÃO POLINOMIAL POR INTERPOLAÇÃO, SPLINE E CURVAS... 327

Cada método será mais eficiente de acordo com a aplicação


e o número de valores a serem estimados. Por exemplo, devido às caracte-
rísticas das expressões algébricas, Gregory-Newton é mais eficiente
quando temos que efetuar muitas estimativas em um mesmo conjunto de
pontos, pois as diferenças divididas podem ser calculadas previamente
e reutilizadas quantas vezes forem necessárias. Já o método de Lagrange
é mais eficiente quando temos de efetuar estimativas em várias funções
discretas com os mesmos valores independentes x, de modo que os
produtórios que envolvem apenas x, e que acompanham os valores
dependentes y i, possam ser calculados previamente e reutilizados.
No método de Gregory-Newton é possível acrescentar um ponto
qualquer no final de um conjunto de pontos discretos existente, mesmo
que a sequência de pontos fique desordenada, e avaliar o novo interpolador
correspondente incluindo mais uma parcela de diferenças divididas.
Por exemplo, para acrescentar o 5o ponto (9,5) à função discretizada do
Exemplo 5.3, procedemos desta forma:

i xi yi ∆1 yi ∆2 yi ∆3 yi ∆4 yi

1 1 2 –1 2/3 –1/8 3/160

2 3 0 1 –1/12 1/40 –
n
ii xxii yyii
1 2 3 4
∆∆1 yyii { x 0 ∆2 yi
∆, (yxi − x1 ) , ( x∆∆−3 yyxii1 )( x − x2 )∆∆ 4 y
yii ∏ ( x − x j ) }
,...,
3 4 1 2/3 1/15 – –
11 11 22 −1
−1 2/3
2/3 −1/8
−1/8 3/160
3/160 j =1
4
22
7
333 00 1 11 – 325 −1/12
−1/12
– –
1/40
1/40 --
33 44 11 2/3
2/3 1/15
1/15 -- --
... diferenças divididas, Δ k
y , conforme seg
5 494 775 33 – 11 – – -
-
– -- 1-
-
55 99 55 -- 327 -
- -- --

Assim,
Assim, acrescentamos
acrescentamos
Assim, acrescentamosapenas o termo Δooy1termo
apenas ( x − x1)(x∆−y1x1(2x)(−x x−11)(x3x)(−xx−22)(x4x) −aox33)( x − x44)
4 termo ∆44 y ( x − x )( x − x )( x − x )( x − x )

interpolador PP33((xx)) Pexistente,


interpolador
interpolador existente,
3
(x) existente,gerando
gerando
gerando oo oPP44P((4xx(x)
)) aaaseguir:
seguir:
seguir:
P4 ( x) = 2 + (−1)( x − 1) + (2 / 3)( x − 1)( x − 3) + (−1
P ( x ) 2 ( 1)( x 1) (2 / 3)( x 1)(
P44( x) = 2 + (−1)( x − 1) + (2 / 3)( x − 1)( x −−3)
= + − − + − x 3)++((−−1/ 1/ 8)(xx −−1)(
1)( x − 3)(xx −−4) 4) +
+ (38)(
/160)( x x−−1)(3)( x − 3)( x +− 4)( x − 7)
++ (3 /160)(xx −−1)(
(3/160)( 1)(xx −−3)(
3)(xx −−4)(
4)(xx −−7) 7)
328
No método
método de
de Lagrange,
Lagrange, também
também podemos
podemos acrescentar umde
ponto qualqu
No acrescentar
Assim, nas um
estimativas ponto f(
qualqu
valores
+ (3x/160)(
+ (3 /160)( − 1)( x −
x− 1)(x x−−4)(
3)( 3)(x x−−7)4)( x − 7)
No
No método
método de de Lagrange,
Lagrange, também também podemos podemos acrescentar acrescentar um um ponto
ponto qualquer
qualquer
No método No328método
de Lagrange, de Lagrange, também podemos
também acrescentar
podemos CÁLCULO NUMÉRICO um ponto
acrescentar um qualquer
COMPUTACIONAL a
ponto qualquer
um
um conjunto de pontos existente utilizando o método de Neville, que faz uso
conjunto de pontos existente utilizando o método de Neville, que faz uso
onjunto
um conjunto de pontos de pontos existente utilizando
existente o método
utilizando de Neville,
o método de Neville, que fazque usofazdeuso d
relações
relações de de recorrência
recorrência para para avaliar
avaliar o o novo
novo interpolador
interpolador (BURDEN; (BURDEN; FAIRES, FAIRES, 2011)
2011)
ões de recorrência
relações de No recorrência para avaliar
método depara o novotambém
Lagrange,
avaliar ointerpolador podemos
novo interpolador (BURDEN;acrescentar
(BURDEN; FAIRES, 2011). 2011).
um ponto
FAIRES,
Para
qualquer
Para dados
dados (( xxi ,, =
a um conjunto yyi )) de
= ((ii pontos
1,
1, 2,..., nn ++ 1)
1) com
2,...,existente xxi +1 >
utilizando
com oxmétodo e espaçamento
de Neville, constan
= ( i i 1, i 2,..., n + 1) i +1 > xii e espaçamento constan
Para dados Para ( x
dados , y )
i (x , = com
(i de1,recorrência x
2,..., n + 1) para com > x e espaçamento
e espaçamento constante
que faz uso
i
i yi )
de relações i +1 ix
i +1 > o
avaliar xi novo interpolador constant
(( xxi +1 − x = h , ∀ i ) , os cálculos das diferenças divididas ∆ kk y podem ser simplificado
xii = h, ∀ i )FAIRES,
−(BURDEN; , os cálculos 2011). das diferenças divididas ∆ yii podem ser simplificado
− x(i x= hi +,−1 ∀xi i=) ,h,os∀ cálculos
i ) , os das
cálculos diferenças
das divididas
diferenças ∆ k yi podem
divididas ∆ k
y ser simplificados.
podem ser simplificados
i +1 Para (xi , yi) (i = 1, 2, ..., n + 1) com xi + 1 > x1 e espaçamento i
kk cons-
Nesse
Nessetante caso,
caso, definimos as chamadas diferenças finitas ∆
finitas ∆ ∆ yyik,, no sentido ascenden
e Nesse
caso, definimos (xi +definimos
– x = h, ∀i),
1 asi chamadas
as os chamadas
cálculos
diferenças
diferenças
das diferenças ∆ kdivididas
finitas finitas yi , no i y no sentido
podem ser ascenden
caso, definimos as chamadas diferenças ∆ ksentido
yi , no ascendente,
i sentido ascendente
por: simplificados. Nesse caso, definimos as chamadas diferenças finitas ∆kyi, no
por:
por: sentido ascendente, por:
∆ − yyii ⇒ diferença de 1a ordem.⇒
∆yyii == yyii ++11 − ⇒ diferença
diferença de
de 1ª
1ª ordem.
ordem.
∆yi = yi∆
+1y−= yi y − y ⇒ diferença
⇒ de 1ª ordem.
diferença de 1ª ordem.
i i +1 i
k k −1 k −1
∆ k yyi == ∆
∆ ∆ k −1 yyi +1 − −∆ ∆ k −1 yyi ⇒ diferença de⇒ ⇒k-ésimadiferença
ordem. de
diferença de kk -ésima
-ésima ordem.
ordem.
∆ k yi = ∆∆kk−1yyi=+i 1 ∆−k∆−1ky−1 yi +i −1 ∆ k −1 y i ⇒ diferença
⇒ de k -ésima
diferença de k ordem.ordem.
-ésima
i i +1 i
Logo,
Logo, a a relação Logo, das
relação a relação
das diferenças
diferenças das diferençasfinitas finitas
finitas com
com asascom as diferenças
diferenças
diferenças divididas
divididas
divididas é
éaaéseguinte:
a
seguinte:
, aLogo,
relação das
aseguinte: diferenças finitas com as
relação das diferenças finitas com as diferenças divididas é a seguinte: diferenças divididas é a seguinte:
kk
k kk

∆ yyi
∆ ∆
∆ y y
y =
= k i
k i i ∆ hy
i
∆ k yi = ∆h k kyi! =
kk
h k! k
i !
hk k !
Essa
Essa expressão
expressão substituída substituída na na eq. eq. (9a)
(9a) resulta
resulta no
no seguinte
seguinte interpolador:
interpolador:
Essa expressão
Essa expressãoEssasubstituída
expressão substituída na eq. na
substituída (9a)naeq. resulta
eq. no seguinte
(9a) resulta
(9a) resulta nono interpolador:
seguinte
seguinteinterpolador:
interpolador:
n) = ky + k ∆
nn
∆ kk yy1  kk 
Pnn ( x) =∆ y11y1+ ∑∆ k ykk1 1 k∏ (( xx −
P ( x n − xx jj))  (1
(1
Pn ( x) = Py1 (+x)∑ kk∏ h
( x k −! x ) (10)
n = y k + ∑
k =1 h k !  j =h
1
 = 1
=1 k h
1 k!
k !
 ∏

 j j =
(
1
j =1 x − x j )  
 (10) (10
k =1  j =1  
Assim,
Assim, nas
nas estimativas
estimativas de valores ff (( β
de valores β ))≅≅ Pnn (( β
≅P β )) ::
Assim, Assim,Assim,
nas estimativas nas estimativas
de valores de
f ( β
valores
) ≅ P f(β)
(
nas estimativas de valores f n( β ) ≅ Pnn( β ) :β ) : P (β):
a) Se β
a)a) Se β∈ ∈ [[a b
a,,b], ,, temos
b]]temostemos uma
uma interpolação.
interpolação.
interpolação.
a) Se a) [aSe
β ∈Se , βbβ]∈,∈[a,
temos uma uma
interpolação.
[a, b] , temos uma interpolação.
b) Se β
b) Se β
β ∉ [[a

∉[a,
b
a,,b], ,, temos
b]]temostemos uma
uma extrapolação.
extrapolação.
extrapolação.
β ∉b) Se
b) Se b) [ a , b ] , temos uma uma
extrapolação.
Se β ∉ [a, b] , temos uma extrapolação.
2
2
Caso queiramos obter o valor de x = b = ?, correspondente ao valor 223 22
y = g, f(b) = g, teremos uma interpolação inversa. Para efetuá-la, podemos:
CAPÍTULO 5 – APROXIMAÇÃO POLINOMIAL POR INTERPOLAÇÃO, SPLINE E CURVAS... 329

a) Se os pontos discretos forem de uma função injetora, isto é,


∀ xi ≠ xj ⇒ yi ≠ yj, inverter as variáveis, tornando os yi independen-
tes e os xi dependentes; efetuar a interpolação em (yi , xi), obtendo
o polinômio Pn(y), e a estimativa nesse polinômio em y = g gerará
b = Pn(g).
b) Se os pontos discretos não forem de uma função injetora, obter o
interpolador Pn(x); igualar esse polinômio ao g, resultando numa
equação polinomial Pn(x) = g; resolver essa equação Pn(x) – g = 0
conforme vimos no Capítulo 3; e desconsiderar as n – 1 soluções
espúrias.

Exemplo 5.5: na função, a seguir, representamos o consumo de energia


elétrica, em anos, de um determinado local. Determine quando (t = ?) o
consumo C atingirá o limite instalado de 7.5 MW.

Tempo t (ano) 85 89 93 95 96 ... ?

Consumo C (MW) 5 5.7 6.2 6.7 7.0 ... 7.5

Solução:
Neste exemplo, temos um problema de extrapolação (para fora dos limites
de dados disponíveis).
Como os dados são de uma função injetora, se invertermos as variáveis, ela
resultará na função:

Consumo C (MW) 5 5.7 6.2 6.7 7.0 ... 7.5

Tempo t (ano) 85 89 93 95 96 ... ?


330 CÁLCULO NUMÉRICO COMPUTACIONAL

No Gráfico 5.5a, temos a expressão de tempo em decorrência do consumo.


Gráfico 5.5a – Comportamento do tempo t (ano) em função do consumo C (MW)
Gráfico 5.5a – Comportamento do tempo t (ano) em função do Consumo C (MW)

Fonte: Elaboração própria. Fonte: Elaboração própria

Obtendo o interpolador de Gregory-Newton para o tempo (t) como função do


Consumo C (KW), temos:
Obtendo o interpolador de Gregory-Newton para o tempo (t) como
C ) = 85 + (5.7143)C(C(KW),
função dot (Consumo4 temos:
− 5) + (1.9048)
* (C − 5)(C − 5.7) + (−3.4734) (C − 5)(C − 5.7)(C − 6.2)
* *

+ (2.9546)*(C − 5)(C − 5.7)(C − 6.2)(C − 6.7)

t4 (C ) = 85 +Logo,
(5.7143)( C − 5)C+=(1.9048)(
se Consumo C − 5)(
7.50MW, então C −t 5.7)
tempo + (−
= 101.37 3.4734)(
anos 5)(algoritmo
C − via
(calculado C − 5.7)(C − 6.2)
+de(2.9546)( C − 5)(C − 5.7)(C − 6.2)(C − 6.7)
Gregory-Newton). Então, depois do quarto mês de 2001, o consumo deverá
331
atingir 7.5MW.
C4 (t ) = −3.00325e − 04 * t + 1.11426e − 01 * t −1.54789e + 01 *t
4 3 2

Logo, se + 9.54391
Consumo e + 02 * C
Alternativamente, 2.20353
t −podemos
= 7.50MW, + 04 então
etambém tempo tuma
obter diretamente = 101.37
expressão(calculado
para o via
333
algoritmo de Gregory-Newton). Então depois do quarto mês de 2001, o
consumo C em função do tempo t:

f (4) (x) = −6/deverá


consumo x4 atingir 7.5MW.
Tempo t (ano) 85 89 93 95 96 ... ?
334 Consumo C (MW) 5 5.7 6.2 6.7 7.0 ... 7.5

f (x)
Alternativamente,
(4)
podemos também obter diretamente uma expressão para
Com n + 1 = 5 pontos, obtemos o interpolador de grau n = 4 expresso na forma geral:
oMConsumo C em
= f (0.4) = 234.375
(4) função do tempo t:
C4 (t ) = −3.00325e − 04 * t 4 + 1.11426e − 01 * t 3 −1.54789e + 01 *t 2 + 9.54391e + 02 * t − 2.20353e + 04
335
(t) = 7.5, t4 = ?
P4(4) 219
f (x) = −6/ x
M = max | f ( 4) ( x ) |= max | − 6 / x 4 |= 6 (0.4) = 234.375
4
x∈[0.4, 0.7 ]
Tempo t (ano) 85 89 93 95 96 ... ?
336
( x) = exC(MW)
fConsumo
(4)
f (5) ( x) = e5x 5.7 6.2 6.7 7.0 ... 7.5
f ( n +1)
( x)
337
f (4) ( x) = −3!/ x4
339

x
Alternativamente, podemos também obter diretamente uma expressão para o
consumo Cuma
m obter diretamente em função do tempo
expressão para t:o
CAPÍTULO 5 – APROXIMAÇÃO POLINOMIAL POR INTERPOLAÇÃO, SPLINE E CURVAS... 331
Tempo t (ano) 85 89 93 95 96 ... ?
Consumo C (MW) 5 5.7 6.2 6.7 7.0 ... 7.5
85 89 93 95 96 ... n
Como ? + 1 = 5 pontos, obtemos o interpolador de grau n = 4 aqui
5 5.7 6.2 6.7 7.0 ... 7.5
expresso na forma geral:
Com n + 1 = 5 pontos, obtemos o interpolador de grau n = 4 expresso na forma geral:
rpolador de grau n = 4 expresso na 4forma geral:
C4 (t ) = −3.00325e − 04 * t + 1.11426e − 01 * t 3 −1.54789e + 01 *t 2 + 9.54391e + 02 * t − 2.20353e + 04
1 * t 3 −1.54789e + 01 *t 2 + 9.54391e + 02 * t − 2.20353e + 04
219

Fazendo C4(t) = 7.5 , obtemos t219 = 97.64 via Método de Newton, excluindo
soluções Fazendo
expúrias. Assim, depois dovia7Método
C (t ) = 7.5 , obtemos t = 97.64
4
o
mêsdedeNewton,
1997, o consumo
excluindo soluções deverá
atingir 7.5MW.
expúrias. Assim, depois do 7º mês de 1997, o consumo deverá atingir 7.5MW.

Gráfico 5.5b – Comportamento do consumo de energia C (MW) em função do tempo t (ano)


Gráfico 5.5b – Comportamento do consumo de energia C (MW) em função do
tempo t (ano)

Fonte: Elaboração própria. Fonte: Elaboração própria

Corolário 2: se na função discretizada ocorrer xi +1 > xi (pontos ordenados) e


Observe que, em casos de extrapolação (avaliações fora do intervalo [a, b]), n +1
x − x = h (igualmente espaçados) ∀ i , então Erro P ( x) < M h com
podemos ter comportamentos diferentes daquele observado
i +1 i
4(n +no
1) intervalo de
n

medições M[a, b]. No


= max f (Gráfico
x) em todo 5.5a,
x∈[ x1 , xn+1 ]
observamos
( n +1)
x do intervalo x ∈[ x , x ] .um crescimento acentuado
1 n +1

do tempo a partir do consumo 7.0MW e, no Gráfico 5.5b, observamos uma


inversão inesperada
Segundo passo: de obtemos
consumo ampartir
(n + 1)( do ano
+ 1) valores amostrais = f=
2000z (t ( x , 100).
y ) da Logo, o
ij i j

resultado aproximanda,
mais confiável deve ser o mais
conforme a matriz a seguir:
conservador, com o tempo de 97.64
anos para atingir o consumo 7.5MW. Esse é um exemplo típico de aplicação
em um problema de previsão por extrapolação.
xi
x1 x=u
 No Capítulo 7, abordaremos
yj uma xmetodologia
2 x3
mais adequada para esse tipo dexnproblema.
+1

220
332 CÁLCULO NUMÉRICO COMPUTACIONAL

Por fim, a aproximação por interpolação polinomial também pode


ser estendida a funções com várias variáveis independentes, como veremos
na seção 5.2.
5.1.3 Avaliação do Erro de Truncamento na Interpolação
5.1.3 Avaliação do erro de truncamento na
interpolação
Quando aproximamos uma função y = f ( x) com expressão conhecida por u
Quando aproximamos uma função y = f(x) com expressão conhecida por
interpolador Pn ( x) e xP∈(x)
um interpolador [ x1e, xxn∈ , cometemos
+1 ][x um erro
, xn + 1], cometemos um de
errotruncamento em cada x ≠
de truncamento
n 1

a ser em cada x ≠definido


estimado xi a ser estimado
por: definido por:
5.1.3 Avaliação do Erro de Truncamento na Interpolação
Erro P=
n ( x) Pn ( x) − f ( x) , ∀ x ∈ [ x1 , xn +1 ] (11)
e x ≠ xi (1

A relação A relação entre


Quandoentre aaproximamos
aaproximanda
aproximanda uma função f ( xey) =sua
f(x) fe( xinterpoladora
)sua interpoladora
com expressão conhecida
Pn(x) pode Ppor ) pode s
n ( xum

ser observada
observada no exemplo no exemplo
interpolador Pn ( x) e xdo
do Gráfico
∈[ xGráfico
5.2, 5.2,
1 , xn +1 ] enquanto
, cometemos
enquanto
um errooderespectivo
truncamentoerro
o respectivo erro
em cada pode x ≠ xi
pode ser visto n
ser visto no Gráfico 5.3.
a ser estimado definido por:
Gráfico 5.3.A delimitação do erro de truncamento
Erro Pn ( x) = Pn ( x) − f ( x) , ∀ x ∈ [ x1 , xn+1Erro ] e xP ≠ nx(x = x), para qualquer (11)
i
x ∈[x , xn + 1], indicará do oerro grau de confiança dos resultadosPfornecidos pela
A delimitação
1 A relação entre a de aproximandatruncamento f ( x) e suaErro n ( x = Px
interpoladora ) , pode
n ( x)
para ser qualqu
aproximação Pn(x) ≅ f(x).
] , observada
x ∈ [ x1 , xn +1Podemos indicará obter oo erro
no exemplo grau de confiança
do Gráfico
de truncamento 5.2, enquanto odos resultados
respectivo
do interpolador erro pode serfornecidos
polinomial visto no pe
aproximação
Pn(x) antes Pn de
( x )determiná-lo
Gráfico ≅ f (x ) .
5.3.
via:
A delimitação do erro de truncamento Erro Pn ( x = x ) , para qualquer
Podemos obter o erro de truncamento do interpolador polinomial Pn ( x) antes d
Teoremavia: 1:x ∈se[ xP1 ,nx(x) , indicará o grau de confiança dos resultados fornecidos pela
n +1 ] é o interpolador de
determiná-lo aproximação P ( x ) ≅ f ( x ) .
n
Podemos obter o erro de truncamento do interpolador polinomial Pn ( x) antes de
Teorema 1:
i se Pn ( x1) évia:
determiná-lo o interpolador
2 ... de n + 1
Teorema 1: se Pn ( x) é o interpolador de
xi x1 i x2 1 2... ....... xn +n1 + 1
ix 2 .......
xi 1 x1 2 x
....... n + 1
....... n +1
yi = f(xi) y1 y2 x i ...x1 x2 y xn +1
....... n + 1
yi = f ( xi )yi = fy(1xi ) yy21 y2 ....... yynn++11

com f(x) continuamente diferenciável


com f ( x) continuamente em [x , xem
diferenciável ],[ xentão
1 , xn +1 ]
, ∀ x ∈ [x
então ∀1,x x
∈n[+x11,],xn +1 ],
com f ( x) continuamente diferenciável 1 em n + 1 [x
n +1 1
, xn +1 ] , então ∀ x ∈ [ x1 , xCódig
n +1
f ( n +1) (ξ )∏
n +1( x − xi )
 Forma
∃ ξ ∈(x1, xn + 1) / Erro PErro
n
(x)P=
n ( x|P
) = (x)
P ( x–
n n
) −f(x)|=

f ( x ) f= ( n +1) (ξ ) i =1 ( x − x )
(n + 1)!
i

∃ ξ ∈ [ x1 , xn +1 ] /∃ Erro
ξ ∈[ x1 ,P
xnn+(1 ]x/) = Pn ( x ) − f ( x ) =
i =1
. .
(n + 1)!
f(n + 1)(x)LINK
( n +1)
( x) refere-se
f à derivada
refere-se à derivada
de ordem (n + 1) de de
f(x)ordem ( n + 1) dedaf expressão
. A demonstração ( x) . Essadodemonstração
erro contida da
 no Teorema 1 e das demais fórmulas simplificadas na sequência podem ser encontradas na obra Cálculo
expressão do erro contida no Teorema 1 e das demais fórmulas simplificadas na
LINK f ( n +numérico: aspectos teóricos e computacionais, de Ruggiero e Lopes, 2 edição, 1997.
na obra (“Cálculo
n + 1) de
a
1)
( x) sequência
refere-se à derivada
podem de ordem
ser encontradas
f ( x) Essa demonstração
Numérico: .aspectos teóricos e d
computacionais”, de Ruggiero e Lopes, 2ª edição. FIM DO LINK
expressão do erro contida no Teorema 1 e das demais fórmulas simplificadas n
g. 322
( x − x2 )( x − x3 )( x − x4 )
P3 ( x ) = y1
( xx1 −− xxPOLINOMIAL
( x − x )( x − x )(
CAPÍTULO 5 – APROXIMAÇÃO 2))( x1 − x3 )(
POR − x4 )
x1 INTERPOLAÇÃO, SPLINE E CURVAS... 333
P3 ( x ) = y1 2 3 4
( x1 − x2 )( x1 −+ xy3 )( x1( x− −x4x)1 )( x − x3 )( x − x4 )
( xx2 −−xqual
x1))( x2é− ox3valor
)( x2 − dex4 ) ξ , apenas conhecemos a sua regiã
2
b)( x −não sabemos
x1 )( x − x3 )(
+ y2 A determinação do
4 erro de truncamento usando a expressão do
(
Teoremax − x )( x
localização;−
11 é muito x )(( x
x e−
− x x )() x − x )( x − x )
2
+ y3 3 difícil,
2 2 14 pois: 2 4

( x − x1 )( x − x2 )( ( xx3 −−xx41))( x3 − x2 )( x3 − x4 )
+ y3 c) a) para cada valor x a ser estimado, temos que reavaliar o Erro Pn ( x )
( x3 − xpode ser complicado, ) x − xou impossível, obter f (n + 1)(x) (derivada
1 )( x3 − x2 )((xx 3 − x14 )( 2 )( x − x3 )
+y
n + 1-ésima de f(x)); de difícil aplicação, tem grande valia devido aos
Embora ( x − xo1 )(Teorema ( xx4 −−1xx31seja
x − x42 )( ))( x4 − x2 )( x4 − x3 )
+ y4
próximos( xcorolários.
− x1 )( x4sabemos
4b) não − x2 )( x4 qual
− x3 ) é o valor de ξ, apenas conhecemos a sua região
( x − 1)( x − 3)( x − 4) , apenas ( x − 0)( x − 3)( x −a4)sua região de
b) não P (de ) localização;
= 2 qual é eo valor de ξ +
xsabemos 4 conhecemos
( x − 1)(3x − 3)( x −(0
4)− 1)(0( x−−3)(00)( x−−4)3)( x − 4)(1 − 0)(1 − 3)(1 − 4)
P3 ( x ) = 2 localização; e + 4
c) para cada
(0 − 1)(0 − 3)(0 − 4)
Corolário 1: sob as
( x
valor
− (1x
hipóteses
0)( x − −
a ser
0)(1
1)( x− estimado,
−3)(1
do
3) − 4)( x
temos
Teorema
− 0)( x
que
− 1)( se
− 3)
M =o Erro
1, xreavaliar maxPn(x). f ( n +1) ( x) , e
c) para cada 0− 3) x a(ser
+xvalor
( x − 0)( x − 1)( x−
estimado, +
0)( x −− 1)(
− 1)(3 x −1 3)
x∈[ x ,
temos que reavaliar o Erro Pn ( x ) . 1 n+1 x ]

+0 (3
M o Teorema
n +1 −+ 1 de difícil aplicação,(4tem
0)(3 4) − 0)(4 − 1)(4 − 3)
Pn (3
Erro Embora 0)(3
( x −) ≤ − 1)(3 − 4)
Embora
o Teorema

x −(4
1 (seja xi −)1 0)(4
n + 1)! i =1 corolários.
seja
emde 1)(4
−um − 3)aplicação,
difícil
ponto específico x = x aos
tem grande
grande valia devido .valia
dois devido
dois(próximos
aos corolários.
próximos
Pg. 333
g. 333 Corolário 1: sob as hipóteses do Teorema 1, se M = max f ( n+1) ( x) , então
Corolário 1: sob as hipóteses do Teorema x∈[ x , x ] 1, se( n +1) M = max f ( n+1) (
orolário 1:Corolário
DESTAQUE Trata-se
sob as 1:hipóteses do do Teorema
majorante do erro
1, 1,sese M
local,
= max
em f
um (
pontox ) específico
,, então
então
1 n +1

n sob as hipóteses do Teorema x∈[ x , x


1 n+1 ]
M
+1
x∈[ x1 , xn+1 ]
Erro Pn ( x ) ≤
(limite superior do
∏ M n +1 um ponto específico x = x .
( x − xi ) em
i =1 erro em x = x ). FIM DOponto
DESTAQUE
Erro
( n
n +
M Pn ( x ) ≤
+11)!
em∏
( x − xi ) específico
em um
em um ponto x=x.
específico x = x.
x = xespecífico
rro Pn ( x ) ≤ ∏ ( x − (xni )+ 1)!
(n + 1)! i =1
um ponto
i =1
.
DESTAQUE Trata-se do majorante do erro local, em um ponto específico x = x
(limite superiorTrata-se do xmajorante
do erro em erro local, em um ponto específico x = x
doDESTAQUE
= x ). FIM DO
Exemplo 5.6:
(limite delimite
superior do oerroerro
emdex = truncamento
x). cometido em x = 0.65 ao aprox
f ( x) = ln( x) por um interpolador polinomial, considerando x ∈ [0.4, 0.7] e
Exemplo 5.6: delimite o erro de truncamento cometido em x = 0.65 ao aproximar
subdivisões.
f ( x) =Exemplo
ln( x) por 5.6: delimite o erro de truncamento cometido em x = 0.65 ao
um interpolador polinomial, considerando x ∈ [0.4, 0.7] e n = 3
aproximar f(x) = ln(x) por um interpolador polinomial, considerando
subdivisões.
Solução: x ∈ [0.4, 0.7] e n = 3 subdivisões.
Para
Solução: n = 3 , então h = ( 0.7 − 0.4 ) / 3 = 0.1
Para Solução:
n = 3 , então h = ( 0.7 − 0.4 ) / 3 =0.1
Para n =i 3, então h = (0.7 1 – 0.4)/3 = 0.12 3 4
i 1 2 3 4
x
xi i 0.4
0.4 0.5
0.5 0.6 0.6
0.7
0.7
yy= =f ( xf )( xi ) 206
t4 (Ci i) = 85i + (5.7143)( C − 5) +−0.693147181
−0.916290732
−0.916290732 (1.9048)(−0.693147181
C − 5)(−0.510825624
C − 5.7) + (−3.4734)(C − 5)(C − 5.7)(
−0.510825624
−0.356674944 C − 6.2)
−0.356674944
+ (2.9546)(C − 5)(C − 5.7)(C − 6.2)(C − 6.7) 331
Aplicando o Corolário 1, temos:
C4 (t ) =o−Corolário
Aplicando
Aplicando 3.00325e − 041,
o Corolário4
1.11426
+1,
* t temos:
temos:e − 01 * t 3 −1.54789e + 01 *t 2
f ( x) = ln( x) ⇒ f ′( x) = 1/ x ⇒ f ′′( x) = −1/ x ⇒ f ′′′( x) = 2 / x ⇒ f iv ( x) = −6 / x 4
2 3
+ 9.54391e + 02 * t − 2.20353e + 04
f ( x) = ln( x) ⇒ f ′( x) = 1/ x ⇒ f ′′( x) = −1/ x 2 ⇒ f ′′′( x) = 2 / x3 ⇒ f iv ( x) = −6 / x
f ( x) 333
iv
é uma função de módulo decrescente em [0.4, 0.7] , e o seu máximo local é
iv
f M ( x )= f (4) (x) = −6/ x4 decrescente em [0.4, 0.7] , e o seu máximo lo
= f ivé(0.4)
uma234.375
função de módulo
. Então,
334
iv (x) 234.375
fnf(0.65)
(4)
=MErro P= (0.4) 234.375 . Então, 234.375
3
≤ ∏ (0.65 − xi ) =
(3 + 1)! i =0 (3 + 1)!
(0.65 − x1 )(0.65 − x2 )(0.65 − x3 )(0.65 − x4 )
M = f (4) (0.4) = 234.375
.6
825624 0.7yi = f ( xi )
−0.356674944 −0.916290732 −0.693147181 −0.510825624 −0.35667494
iPn′( xo0 )Corolário
Aplicando 1 1, temos: 2 3 4
0825624 334
−0.356674944
fx(i x) =o ln( x) ⇒0.4f ′1, = 1/ x ⇒0.5f ′′( x) = −1/ x 2 ⇒
0.6 f ′′′COMPUTACIONAL
( x) = 2 / x3 0.7
CÁLCULO NUMÉRICO
Aplicando Corolário ( x)temos: ⇒ f iv ( x) = −6
yi = f ( xi )
iv f iv334
x) = 2 / x3 f⇒ ( x) fé((xxuma −0.916290732
4 −0.693147181 −0.510825624 −0.356674944
do de Newton,
)) == −ln(
f(4) (x) é uma excluindo
x/ )x ⇒ de
6função f ′( módulo
função soluções
x) = 1/ x ⇒ f ′′( x) = −1/em
decrescente x2 ⇒ f ′′′(0.7]
[0.4, x) =,2e/ xo3 seu
de módulo decrescente em [0.4, 0.7], e o seu máximo ⇒ f máximo
iv
( x) = −
0.7] oxlocal
, 2e/deveráiv⇒ éo M ( x=) =f7.5MW.
(4)
(0.4) é 234.375
= . Então,. Então,
f seu máximo 6local
3 iv
x) =Aplicando
sumo= M ( x) =
iv
fatingir
(0.4)
Corolário / x1,4 temos:
−234.375
é uma função de módulo decrescente em [0.4, 0.7] , e o seu máxim
f ( x) = ln( x) ⇒234.375f ′( x) = 1/3 x ⇒ f ′′( x) = −234.375
1/ x 2 ⇒ f ′′′( x) = 2 / x3 ⇒ f iv ( x) = −6 / x 4
a0.7] , eW)oM seu máximo localt (ano)
é.∏
iv
C=(M Erro
em fn (0.65)
P=
função
449
(0.4)do 234.375
≤ tempo Então,
(0.65 − xi ) = (0.65 − x1 )(0.65 − x2 )(0.65 − x3 )(0.65
f iv ( x) é uma função (3de+ 1)!
módulo i =0 decrescente(3em + 1)! [0.4, 0.7] , e o seu máximo loca
0.65 − x2 )(0.65 D(a, b≤)−234.375
−n x∂(0.65)
3 )(0.65 x4 )m  (0.65
1)!( 1∏ (0.65 2 −k x) ) = ((0.65 k ) −
234.375 2 −1 234.375 2
Erro P 3 − 0.4)(0.65 − 0.5)(0.65 − 0.6)(0.652− −0.7) ≤ 9.15*10−4
  
M Erro =iv
f (0.4)
Pn (0.65) =
234.3752 
∂a1 ≤ (3 +k =1)!
(3.+Então,
1
a + a / T
i
− Vk
 
( −1 ) a1 + a / T
− 2x1 )(0.65 
1 = 0
 x2 )(0.65 − x3 )(0.6
i =0 (3 + 1)!
−4
5 − 0.7)
(0.65 − x 9.15*10
≤)(0.65 − ()(0.65
a, b)com
x3234.375 − xmo4 )valor
3
234.375
∂ ≤D 234.375
∏ ( ) ln(x−)(0.5)(0.65
1) ( a1 −+x− / Tk2 )− x2 ()(0.65
Tk2 )−≤=x9.15
−1 −2
2Comparando
Erro PErro
n (0.65)
Pn (0.65) ≤ = 2 + −exato
(0.65
a1 (0.65 2 de
a2x/i−)T0.4)(0.65
= −V ,−(0.65
temos: )(0.65
1a0.6)(0.65 −1/0.7) 03 )(0.65
*10 − x4 )
−4
∂a(3 + 1)! 

(3k =+1 1)!
i = 0
k
(3 +k 
1)!
 
 2 

2

4= 0.65) = ln ( 0.65 ) = −0.430782916


f ( x−234.375
65 −Erro
0.7) P≤ (0.65)
9.15*10
n ≤ (0.65 − 0.4)(0.65P ( x = 0.65)
−30.5)(0.65 − 0.6)(0.65 −=0.7) −0.431019619
≤ 9.15*10−4 por Lag
479 (3 + 1)!
Comparando com o valor exato de x) , temos:
Erroln(exato Pn ( x ) = Pn ( x ) − f ( x ) = 2.36703 * 10−4
Comparando
Comparando f ( xcom
com o valor
o valor m (exato x) , temos:
exato deln(ln(x),
= 10 : =de−0.430782916
temos:
2280.65 ) Em
Para
= 0.65) = ln x = 0.65 , vemos que o erro exato 2.36703 *
f ( x = 0.65) = ln ( 0.65(2)m=) −0.430782916 20!
Max f ( x) truncamento
= f (20) (1) = (−máximo
1)20 1.1601Corolário
dado= pelo * 10
12 1, E
x =1 (1 + 1) (20+1)
2
P3 ( x = 0.65) = −0.431019619
P3 ( x = 0.65) = −0.431019619por
porLagrange.
esperado. por Lagrange.
Lagrange.
Observe que x = 0.65 é um ponto médio
228
−4
Erro exato Pn ( x ) = Pnn ( x ) − f (nx()x )= −2.36703
Erro exato P ( x ) = P fum
( x ) dos
= *2.36703
−4
. * 10de ..maior erro de truncamento de to
10pontos
503
0.65 ,xEm
= 0.65 4
x =Em ,0.65,
vemos
x =Excluir
vemos que um que oo erro
erroexato
parêntesis
o erro
vemos que exato exato
2.36703
no final *2.36703
).
2.36703 10é−menor
10−4 * é10*–4menor é do
menorquedo
doque que de
oo erro
erro o erro d
Seria interessante
Corolário ter o≤≤majorante , 4 do erro eg
de truncamento
dado máximo dado
pelopelo P1,n (0.65)
Erro
ErroP≤nP(0.65) 9.15 * 10–4−
truncamento máximo dadoCorolário Corolário
1, Erro 1, n (0.65)
* 109.15 * 10 , era como
−4
amento máximo pelo 9.15 , como
como era esperado. Observe que x = 0.65 é um ponto médio de um dos
intervalos xé =um não apenas
0.65pontos em um ponto específico x = x . Assim
esperado.
rado. Observe quee deve
Observe ser um
x = que
0.65 dos deponto
maior
é ummédio
ponto erro
umdedos
médio
de truncamento
de um dee todo
dos intervalos
intervalos deve ser e deve s
intervalo [a, b]. erro no intervalo [a, b] dado pelo Corolário 2.
os um dosde
pontos pontos
Seria de
maior maior
erro erroterde
de truncamento
interessante truncamento
de todo
o majorante de todo intervalo
intervalo
do erro global em a, b] .
b] . o[intervalo
[a,todo
[a, b] e não apenas em um ponto específico x = x. Assim, temos o limite
superior global do erro no intervalo [a, b] dado
Corolário 2: sepelo naCorolário
função 2.discretizada ocorre
ópria Seria interessante
Seria interessante ter o majorante
ter o majorante do erro do erroem
global global
todoem [ a, b] e [ a, b]
todo o intervalo
o intervalo

er não
apenas Corolário
xi +1 >apenas
emxi um em2:um
ponto
(pontos seordenados)
na
pontoforma
específico discretizada
específico xxi =
x e=xix+1.−Assim,hx .aproximanda
=da Assim,
(igualmente
temos otemosocorrer
limite o xi + superior
limite
espaçados)
superior > xi do
1 global ∀global
i, e
(pontos ordenados) e xi + 1 – xi = h (igualmente espaçados) ∀i, então
erro no intervalo
no intervalo [a, bpelo
[a, b] dado ] ndado pelo Corolário
+1 Corolário 2. 2.
então Erro Pn ( x) < M h com
com M = max f
( n +1)
( x) em todox intervalo
em todo do intervalo x ∈ [ x1
4(n + 1) x∈[ x1 , xn+1 ]
[x1, xn + 1].
lário
1 , xCorolário
n +1 ] 2:
. se na 2: função
se na função
discretizada ocorrer ocorrer
discretizada xi +1 > xi x(pontos
i +1 > xi (pontos ordenados)
ordenados) e
DESTAQUE Trata-se do majoranten +1doMerro h n +1 globa
h (igualmente
xhi +1 − x(igualmente espaçados) ∀ i , então M h co
xi = i = espaçados) ∀ i , então Erro Pn ( xErro
) ≤ Pn ( x) ≤ com
DESTAQUE 4(n + 1) 4(n + 1)
M = max 2:
Corolário
Corolário
Corolário f se
2:
2: sese( xna
)naem
na todo xdiscretizada
função
função
função do intervalo ocorrer
discretizada
discretizada ocorrer
ocorrer .>xxixi i (pontos
x ∈ [ x1 , xxnxi+xi+1+i1+1]1>> (pontos
(pontos ordenados
ordenado
ordenado
x∈[ x1 , xn+1 ] ( n +1)
M = max f ( x) em todo x do intervalo x ∈ [ x1 , xn +1 ] .
x∈[ x1 , xn+1 ]
MMhhhnn+n+1+11
M
i i=
=
= hhh (igualmente
xxixi++i1+11−−−xxixCAPÍTULO 5(igualmente
(igualmente espaçados)
espaçados)
espaçados)
– APROXIMAÇÃO POLINOMIAL ∀∀iii,,, então

POR INTERPOLAÇÃO, então
entãoE CURVAS...
SPLINE Erro
Erro 335
ErroPPnPn(n(x(xx)))≤≤≤
4(nnn+++1)
4(
4( 1)
1)
DESTAQUE Trata-se do majorante do erro global, em todo x do intervalo. FIM
DESTAQUE
M
M max fff((nn(Trata-se
M=== max
max +n+1)
+1)1)
((x(xx))) em
emdo
emtodomajorante
todo
todo xxxdo
do do erroxxxglobal,
dointervalo
intervalo
intervalo ∈∈[[[xx1x1,1,,xxxnn+em
∈ todo x do intervalo. FIM
1]]...
1]
DESTAQUE xx∈∈
x[∈
[xx[11x, 1,xx,nnx++1n1+]1] ]
n+1+

DESTAQUETrata-se do majorante do erro global, em todo x do intervalo.

Exemplo
DESTAQUE
DESTAQUE
DESTAQUE 5.7:
Trata-sedelimite
Trata-se
Trata-se doomajorante
do
do erro de truncamento
majorante
majorante doerro
do
do erro
erroglobal, máximo
global,
global, em
em
emtodo no
todointervalo
todo xxx do
do x ∈ [0.4,FIM
dointervalo.
intervalo.
intervalo. FIM0.7
FIM
Exemplo
Exemplo 5.7: delimite o erro de truncamento máximo no intervalo x ∈ [0.4, 0.7
aproximar
DESTAQUE
DESTAQUE
DESTAQUE f (5.7:
x) =delimite
ln( x) por o erroum de interpolador
truncamento máximo polinomial e comx ∈n [0.4,
no intervalo = 3 subdivis
aproximar f ( x) = ln( xf(x)
0.7] ao aproximar ) por = ln(x)
um por um interpolador
interpolador polinomial
polinomial e come comnn==33 subdivis
Considere
subdivisões.os+ (5.7143)(
t4 (C ) = 85 ordenados
xiConsidere xi eordenados
C − 5) +os(1.9048)( igualmente
C − 5)(C −e5.7) +espaçados.
igualmente
(−3.4734)( C − 5)(Avalie
espaçados. o − erro
Avalie
C − 5.7)( C o exato
6.2)
4 (C )exato
terro
Considere 85 + em
= os (5.7143)(
x ordenadosC − 5) + (1.9048)(
e C −
igualmente5)( C − 5.7) + ( −3.4734)(
espaçados. C − 5)(
Avalie C − 5.7)(
o C
erro − 6.2)
exato
Exemplo
Exemplo
Exemplo5.7: 5.7:
5.7:+delimite i x =Co
(2.9546)(
delimite
delimite 0.65 5)(
o−oerro Ce −compare
erro
erro 5.7)(
de
de se C
− 6.2)(
detruncamento
truncamento
Ctruncamentoele− 6.7)
fica máximo
abaixo
máximo
máximo dono
no erro
no máximoxxxdo
intervalo
intervalo
intervalo ∈∈∈[0.4,
[0.4,
[0.4, 0.7]
0.7
0.7
x = 0.65 e compare
intervalo [a, + (2.9546)(
b]. se ele fica abaixo do
C − 5)(C − 5.7)(C − 6.2)(C − 6.7) erro máximo do intervalo [ a , b ] . 331
331
C4 (t )e=compare
−3.00325e −se 04 *ele
t +4 1.11426
4
e − 01 * tdo
3
−1.54789 e + 01 *t do
2
a=,33b3] subdivisõ
x = 0.65
C4 (t ) =ff−f((3.00325
aproximar
aproximar
aproximar x(xx)))===ln(
ln(exx−x))04
ln( ) por
por
*por
fica
t + um
umumabaixo
1.11426 interpolador
interpolador
interpolador erro polinomial
máximo
polinomial
polinomial
e − 01 * t 3 −1.54789 e + 01 *t 2 eee comcom nnn[==
intervalo
com .subdivis
subdivis
+ 9.54391e + 02 * t − 2.20353e + 04
Solução: + 9.54391e + 02 * t − 2.20353e + 04
Considere
Considere
Considere
Solução: 333 os osos xxixi i ordenados
ordenados
ordenados eee igualmente igualmente
igualmente espaçados. espaçados.
espaçados. Avalie Avalie
Avalie ooo erro erro
erro exato exato
exato
333
f (4)
( x ) = − 6/ x 4
Solução:
nf =ee(3 )compare
excompare 6/ x4 hse se0.7 ele−fica 0.4 abaixo
(4)
xxx===0.65
0.65
0.65
334 ==
compare−⇒ se ele
ele
= fica
fica abaixo
abaixo
0.1 do dodoerroerro
erromáximo
máximo
máximodo do intervalo[[a[aa,,b,bb]].]..
dointervalo
intervalo
334 0.7 −
3 0.4
nf =(3x) =
(4)
⇒ h = 0.1
( x()x)=(4)ln( x) ⇒ f ′( x3) = 1/ x ⇒ f ′′( x) = −1/ x 2 ⇒ f ′′′( x) = 2 / x3 ⇒ f iv ( x) = −6 / x
ff (4)
M = f (0.4) = 234.375
Solução:
Solução:
Solução: f ( x=) f=(4)ln(
M
x) =⇒234.375
(0.4)
f ′( x) = 1/ x ⇒ f ′′4( x) = −1/ x42 ⇒ f ′′′( x) = 2 / x3 ⇒ f iv ( x) = −6 / x
335 ( iv )
M = max | f ( x) |= max | −6 / x |= 6 (0.4) = 234.375
Mf (4) =(x)x∈=max
335 −⇒6/
⇒⇒ x | f ( iv )0.7
[0.4, 0.7]4
0.7
0.7
(=x= )−− |=−0.4
0.4
0.4
max 0.1 −6 / x 4 |= 6 (0.4) = 234.375
|0.1
4
nnn =333 x∈[0.4,
==(4) == = 0.7] 4(h h h = 0.1
Então,M f o=(erro xx∈)max 6/| xf 4) ( x ) |=de
= −máximo
[0.4, 0.7 ]
max 3 | − 6 /ox 4intervalor
33todo |= 6 (0.4) =é:
4
234.375
fff (( x
( x x
) ))= = = ln(
ln(
ln(xx x
))) ( 4) fff′′(( ′x
( x x
) ) )=== 1/
1/
1/ xx x ′′
′′′′
Então,336 Mo=erro maxmáximo |⇒ f⇒ ⇒( x )de |= max todo | − 6o ⇒ ⇒ fff ((x(xx)))===−é:
intervalor

4 / x |= 6 (0.4) = 234.375
4 4
1/ ⇒ fff′′′′′′′′′((x(xx)))===222///xxx333⇒
1/xxx222⇒
−−1/ ⇒ ⇒ fffiviviv((x(xx)))===−−−666///xxx4

x∈[0.4, 0.7 ]  234.375(0.1) 
f (4) ( x)P=n (exx )≤ f (5)
Erro
336 ())x) ) = ex 4  ≤ 0.00146484375
MMM =n=+=1) (max max
max 
|| |fff234.375(0.1)
((iviv
( iv
((x(xx))4)||==|*=4max
max
max||− 666///xxx444||==|=666(0.4)
|−− (0.4)
444
(0.4) ===234.375
234.375
234.375
ff ((4)
Erro x
P )
(xxx∈∈x[0.4, (
)∈[0.4, x )
n= e0.7]
[0.4, x
0.7] ≤
 f ( x) = e
0.7] (5) x
 ≤ 0.00146484375
337 ( n +1) Então, o  erro máximo 4*4  todo o intervalo é:
Então,foooerro
Então,
Então, erro
erro( x) máximo
máximo
f (4) ( x) = −3!/ x4máximo de
dedetodo todoooode
todo intervalor
intervalor
intervalor é:
é:
é:
337
339 x234.375(0.1)
f (4)
( x ) = − 3!/ 234.375(0.1)444 
4234.375(0.1)
Erro
Erro
ErroPPP (xx)))≤≤<≤
n(x
nn( ≤=
≤≤0.00146484375
0.00146484375
0.00146484375
339 xi  444**4
*44 
x1 x2 x3 … x =u ⋯ xn+1
yj
x
O erro y1 ide truncamento
zx z 21x2 máximoz 31 x3 de…todo
… o intervalo,
↓ x = u dado
… ⋯ peloz( nCoro-
+1)1 xn +1
lário 2, Erro y j P (x)11<1 0.00146484375, é sempre maior do que o erro máximo
y2 3 z12 z 22 z 32 … ↓ … z( n+1) 2
em algumyponto 1 doz11intervalo,
⋮ ⋮
z 21 como z 31em x =

…0.65, Erro
⋮↓
↓P3(0.65) <
…9.15 * 10 z(–4 ,
n +1)1 ⋮
do Exemplo
y =y2v 5.6. →z →z 22 →z 32 … … f ( u,v ) =↓? … … ⋮ z( n+1) 2
12

⋮⋮ ⋮ ⋮ ⋮⋮ ⋮ ⋮ ↓ ⋮ ⋮
Exemployy5.8:
= v obtenha
z1( m→ o erro
z 2( m→ de truncamento
z 3( m +→ … … máximo
f ( )cometido
u,v = ? … …ao
z( naproxi-
m+1 +1) +1) 1) +1) ( m +1) ⋮
marmos f(x) ⋮
= ex e⋮x ∈ [2, ⋮2.4] via ⋮Pn(x) com os xi ordenados e igualmente ⋮
340
espaçados em n z= 4 intervalos. Avalie o erro exato em x = 2.33…e compare
z
ym+1= 5.5 1( m +1)
e yt
z z …
se = 8.7fica
xt ele abaixo do erro 2(máximo
m +1) 3( m +1)
do intervalo. ( n +1) ( m +1)

xi 8.5 8.9 9.3 9.5 9.6


340
j 5.5
xt = 8.7 e yty=
5.0 xi 8.5 8.9 9.3 9.5 9.6
5.7
9.54391em
do intervalo,+x como e + 02x* = 2.20353
t −0.65 e + 04Pn (0.65) ≤ 9.15 * 10 , do Exemplo 5.6.
, Erro
4] via PnP( x()x=)com
ErrofExemplo
eos i ordenados
x ∈x[2,
e 0.00146484375
≤ 5.8: 2.4], évia
obtenha o Pne( xde
erro
sempre
igualmente
) maior
com os xi espaçados
truncamento
do que ordenados
o máximo
em
e igualmente
cometido
erro máximo espaçad
ao aproxima
em algum ponto
333
n

alie do
o Exemplo
erro
n336
Exemplo
Exemplo
intervalo,
(4)
()x=
ff=( 4xexato )intervalos.
=e5.8:
− 6/e
em
x5.8:
5.8:
como x4xobtenha
=Avalie
x[2,
obtenha
obtenha
∈em x2.33
2.4]
= 0.65 eo
ooovia , compare
erro
erroerro
erro Pnde
Erro x)exato
(de
de seem
≤ ele
Pntruncamento
truncamentoxxi fica
truncamento
com
(0.65) os9.15
CÁLCULO
= −4abaixo
máximo
máximo
2.33
* 10máximo
ordenados
, do
NUMÉRICO
do
e Exemplo
compare
cometido
cometido
cometido seao
eCOMPUTACIONAL
igualmente
5.6. eleaproximar
ao
ao fica aba
aproxima
aproxima
espaçado
Exemplo 334 x5.8: obtenha o erro de truncamento máximo cometido ao aproximarm
valo. ffferro )===(4máximo
((x(nxfx))(4) x
eee xxx∈
eeexintervalos.∈∈ do[2,intervalo.
[2,
[2, 2.4]
2.4] viao PPerro
2.4] via
via n(n(x
nP (x)x)) com
com
comos os
emxxixi xi ordenados
os ordenados
=ordenados eeeigualmente
igualmente
se eleespaçados
igualmente espaçado
espaçado
x x)
= Avalie exato 2.33 e compare fica abaix
f ( x) = e e x ∈ [2, 2.4] via Pn ( x) com os xi ordenados e igualmente espaçados e
nnnSolução:
Exemplo M
Solução:
==erro
= f5.8:
444 =intervalos.(4)
intervalos.(0.4)
intervalos.
máximo obtenha
=do234.375
Avalieo erro
Avalie
Avalie
intervalo. de truncamento
oooerro
erro
erro exato
exato
exatoem em xxxmáximo
em 2.33 eee
===2.33
2.33 cometido
compare
compare
compare aose
seaproximarmos
se ele
ele
elefica
fica
ficaabaix
abaix
abai
erro
erro =intervalos.
nf=( x4) 335 x
emáximoe x ∈ [2, Avalie
2.4] 2.4viao− erro
2Pn ( x) exatocom os emx xordenados

= 2.332.4e−compare e2 igualmente se ele
espaçadosfica abaixo em
erro nmáximo
Solução:
=máximo
4 ⇒
= do
do
do4h
intervalo.
intervalo.
intervalo.
= 0.1 n = 4 =
i
h = 0.1
erro f (x) = −do
(4)
6/ x 4
4máximo
n Solução:
=Solução:
Solução:intervalos. intervalo. Avalie o4 erro exato em x = 2.33 2.4 e compare
−2 se ele fica abaixo do
M = max | f ( x ) |= max | − 6 / x |= 6 (0.4)
( 4) 4n = 4 ⇒= 4
= 234.375
h = 0.1
Solução: ⇒−−4−ff22v2′′′((xx)) == eexx ⇒ f iv ( x) = e x ⇒ f v ( x)
f ′( xerro emáximo⇒ f ′′f(do
x∈[0.4, 0.7 ] intervalo.
) =Temosx (xx))==eexx ⇒ ⇒ f ′′′f (′(xx) )==eex x⇒ ⇒ fiv′′((xx)) == eexx2.4
Temos
336 nnn===444 f ⇒ =⇒= ⇒
= hhh =

2.4
2.4
= = 0.1 0.1
0.1
Solução: ⇒ 2.4 − 4244
f ( x) = ef ( x)(5)
Temos
(4) x
= f e ( x⇒
(5)x
) = ef(5)′( x) = e ⇒=
x n = 4 x
2.4 f ′′ ( h
x ) = e= x
⇒ f ′′′ 0.1
( x ) = e x ⇒ f iv ( x) = e x ⇒ f v ( x) =
(5) M =
f (2.4) f ( ne+1)x∈([2, max
2.4 = f ( x ) f
= (2.4) e 2.4 − 4
2
x) 2.4] xxx n=4 ⇒
Temos fff((x(xx)))===ee(5)
Temos
Temos e ⇒ ⇒ ⇒ fff′′(′(x((5) xx)))===eeexxx⇒ ⇒ ⇒= ff′′′′(′′(xh(xx)))====
f2.4 eeex4xx⇒⇒⇒ fff′′′0.1
′′′′′′((x(xx)))===eeexxx⇒⇒ iviv xx
⇒ fff iv((x(xx)))===eee x⇒
vv
⇒ fff (v(x(xx)))===

Temos 337
M= f ( xmax ) = e= x f ⇒( x)f ′( x= )f = (2.4)
e ⇒ f ′′e( x) =2.4e ⇒ 5f ′′′( x) = e ⇒ f ( x) = e ⇒ f ( x) = e x
x x x iv x v

f f((xx))==2.4
(4) x∈[2, 2.4]x
−e3!/ x 5 f′( x(5)
4
e x ⇒ f e′′ee2.4 x2.4) = eex ⇒ (0.1) f ′′′( x) = e x ⇒ f iv ( x) −=6 e x ⇒ f v ( x) = e x
Temos
M
M M === max
Então max
max, oe ===
erro (0.1)
fff(5)
(5)
(5)
(⇒x(xx))) =
(máximo f=f)(5)
f= =(2.4)
(5)
(2.4)
(2.4)
Erro P ( (2.4
x )
−6≤   ≤ 5.51159 * 10
o Erro P
M = n339 (
maxxx)
x
∈∈ ≤
x∈[2, 2.4]
[2,
[2,
= 2.4]
2.4]
(5)
f (5) (4x*)5 = f(5)≤ 5.51159
(5) (2.4) e 2.4 n
* 10 2.4 4 * 5 5 
, fo erro 
 e (0.1) 
M = xEntão
∈max
[2, 2.4]= ( x) máximo =f  (2.4)Erroe 2.4 Pn ( x) ≤   ≤ 5.51159 * 10−6
x∈[2, 2.4] xi eee2.4 2.4 4 * 5555
 x = u
x2.4
2.4
Verificação: x1 Erro x2PPP((x(xx)))≤≤<≤ (0.1)
(0.1)
(0.1) xn+1
Então
Então
EntãoEntão, ,,,oooerroerro
oerro
erro
yj máximo
máximo
máximo
máximo Erro
Erro nnn 2.4
e  3
  (0.1)
…5
 ≤=≤≤5.51159
5.51159
5.51159**10 10−−⋯
*10
6−66

Então , o erro máximo Erro Pn ( x) ≤    e (0.1) 4 4


5
4 **5
*55 ≤5.51159
 *−10
−6
Verificação:P4 ( 2.33 y1 ) = 10.2779431277041  ≤ 5.51159↓* 10
6
Então , o erro máximo zErro Pn z( x) ≤  z 4 * 5 … … z( n +1)1
79431277041 11 21   4
31 * 5 
Verificação:
Verificação:
Verificação: P y2 ) = 10.2779431277041
4 ( 2.33
z12 z 22 z 32 … ↓ … z( n+1) 2
Verificação:
Verificação: e 2.33
= 10.2779415330434
Verificação: ⋮
79415330434 PPP444((2.33
(e2.33
2.33 )))
= ⋮
==10.2779431277041
10.2779431277041
10.2779431277041
⋮ ⋮ ↓ ⋮
y
2.33
=
Erro) ==exato v = 10.2779415330434 … f ( u,v ) = ? …
PP44 ( 2.33 10.2779431277041( x = 2.33 ) = 10.2779431277041 − 10.2779415330434
10.2779431277041 → → → ⋮= 1.59466 * 1
2.33 ) = 10.2779431277041
2.33 ⋮
2.33
2.33 ⋮ − 10.2779415330434
⋮ ⋮ = 1.59466 * 10 . ⋮
−06
ee
2.33e Erro ==
exato=10.2779415330434
10.2779415330434
10.2779415330434
( x = 2.33 ) = 10.2779431277041 − 10.2779415330434 = 1.59466 * 10−
e
Observe
e 2.33 =
y= 10.2779415330434
que o erro exato
z1( m +1) z 2( m +1) z 3( m +1) em x = 2.33 fica abaixo z ( n +1) ( m +1) erro
do m
m+10.2779415330434
1
… …
erro exato em x = 2.33
((xx2.33 fica abaixo do erro máximo:
Erro
Erro
Observe
Erro Erro exato
exatoexato ( x (=
exato
−que
06
x=o==2.33
2.33
) = ))10.2779431277041
2.33
erro )== 10.2779431277041
10.2779431277041
=exato
−06
10.2779431277041 −−−10.2779415330434
2.33 10.2779415330434
10.2779415330434
em x−=10.2779415330434
fica abaixo =1.59466 do===1.59466
1.59466 −06 **10
1.59466
erro
* 10
10−−0
*10
. −máx
−061.59466 * 10 ( x < =5.51159
=2.33 ) *=1010.2779431277041
, como– era esperado. 06
Erro
340 exato
Erro exato (2.33) |10.2779431277041 − 10.2779415330434
10.2779415330434| 101.59466
= 1.59466 * = –06
. * 10 .
59 * 10 ,
Observe como
Observe
xt
Observe = 8.7 era
e queyt
que
que
− esperado.
=
06 5.5
o oo erro
erro
erro exato
exato
exato
− 06 em
em
em x
xx==
= 2.33
2.33
2.33 fica
fica
fica abaixo
abaixo
abaixo do
dodo erro
erro
erro máx


Observe1.59466 que * 10 o < 5.51159
erro exato * 10 ,em
comoxera
= 2.33 fica abaixo do erro máximo:
esperado.
Observe Observe que06 o que xerro 8.5 exato 8.9 em
9.3 x = x2.33
9.5 = 2.33
9.6 fica do abaixo do erro máxim
−06 −−06 i o erro−06 −−06 exato
−06 em fica abaixo erro máximo:
1.59466
1.59466
1.59466
1.59466
Exemplo
* 10**10
*10
10 <
5.9:< 5.51159
5.51159
<−065.51159
< 5.51159* 10 **10
–06 calcule−06 *10
10, como
o* 10
06
grau , ,,como
comoera
como era
era
era esperado.
esperado.
esperado. esperado.
–06 n mínimo do interpolador polinomial P ( x ) nece
1.59466 1.59466* 10
−06* 10
< y j < 5.51159
5.51159 * 10 , como , como era era esperado.
esperado. n
e o grauExemplo n mínimo do interpolador polinomial P ( x ) necessário
5.0 calcule o grau n mínimo do interpolador polinomial Pn ( x) neces
5.9: n
para
Exemplo
Exemplo 5.9: calculeque o
5.9:erro
5.7 máximo
calcule o grauo grau nentren o interpolador
mínimo
mínimo dodo interpolador
interpolador Pn ( x)polinomial f ( x) = ln(
epolinomial x) seja
Pn (Pxn)(x)necessário menor
Exemplo
imo entreExemplo
Exemplo o
necessário
para 5.9:
5.9:
interpolador
5.9:
que opara calcule
calcule
calcule
erroque
6.2
P o
(ox
o grau
)grau
on erro máximo
máximo e
grau f (
n
n x
n
entre o entre) =
mínimo
mínimoln(
mínimo x ) do
do
seja
do interpolador
interpolador
menor
interpolador
o interpolador
interpolador Pn ( x) ePn(x) do polinomial
polinomial
que polinomial
f ( xe) f(x)
= ln(=x)ln(x) sejaPPP( (x
(x)
x)
nnn menor) neces
neces
neces
do
Exemplo
para1seja
−6 5.9: calcule o grau
10 menor o, erro
emdo todo intervalo n
x ∈ mínimo
[1, 2] , do interpolador
dividindo-o emf ( x )n= polinomial
ln(
partes x ) iguais. P ( x ) necessá
*que 6.7que 1 10 , em todo intervalo x n∈ [1, 2], dividindo-o em n par-
máximo * entre
–6 o interpolador P ( x ) e seja menor
n do que
valo para
xpara
para [1,
∈−tes que
que−6 , o
que
2] ooerro
erro
erro
dividindo-o máximo
máximo
máximo em entre entre
nentre partes ooointerpolador
interpolador
interpolador
iguais. PPnPn(n(x(x)x)) eee fff((x(xx)))===ln(
ln(xxx)))seja
ln( seja
sejamenor menor
menordo do
d
1 10 iguais., em 7.0
todo intervalo xo∈interpolador
[1, 2] , dividindo-o em n( xpartes iguais.
para *
que
1 * 10Solução:
6 o erro
, em todo 7.5 máximo entre
intervalo x ∈ [1, 2] , dividindo-o emn n partes iguais. P ( x ) e f ) = ln( x ) seja menor do q
−−6−66
111**10
*10
10 ,,,em
−6Solução:
em
emtodotodo intervalo xxx∈∈∈[1,
todointervalo
intervalo [1,
[1,2]2]2],,,dividindo-o
dividindo-o
dividindo-oem emnnnpartes
em partes
partesiguais. iguais.
iguais.
* 10Uma
1Solução: Solução:
341, em possibilidade
todo intervalo é usar
x ∈ [1, o Corolário
2] , dividindo-o 2 e em estabelecer
n partes tentativas
iguais. com valore
usar o Corolário
Solução:
Solução:
Solução:
Uma 2
possibilidade
(possibilidade
xi , y possibilidade e estabelecer
é usar o tentativas
Corolário 2com
e valores
estabelecer de n
tentativas valoresvalores
com
j)
Uma Uma
(inteiros) paraé calcular é usar
usar o Corolário
o Corolárioo valor 22do ee estabelecer
estabelecer
erro máximo tentativas de com
tentativas com valores
truncamento, de n
facilita
Solução: de n (inteiros) para calcular o valor do erro máximo de truncamento, facili-
oUma
Uma
Uma
ular (inteiros) possibilidade
possibilidade
possibilidade
(inteiros)
valor do para
para erro
calcular éééusar
calcular
máximo usar
usar
o ooode
valor Corolário
Corolário
Corolário
valor do 2máximo
dotruncamento,
erro 2erro
2eeeestabelecer
estabelecer
estabelecer
máximo
facilitando detentativas
de truncamento, tentativas
tentativas
truncamento,
a com
com
comvalores
facilitando valores
valoresa d
facilitan
Umaobtençãotando
possibilidade das derivadas
a obtenção é dasusar derivadas
o f ( n +1)f( (nx)+:1) (x):
Corolário 2 e estabelecer tentativas com valores de
das f (inteiros)
(inteiros)
((inteiros)
obtenção obtenção
n +1)
( x) : das para
para
para
derivadas
das calcular
calcular
calcular
derivadas f o
( n +1)
oo( x
f valor
)(valor
valor
n +1)
: ( x ) do
:dodo erro
erro
erro máximo
máximo
máximo de
de
de truncamento,
truncamento,
truncamento, facilitand
facilitan
facilitan
(inteiros) para calcular o valor do erro máximo de truncamento, facilitando
obtenção
obtenção
obtençãodas das derivadas fff((n(n+n+1)+1)1)((x(xx))):::
dasderivadas
derivadas
obtenção das derivadas f ( n +1) ( x) : 230
230
M = f (4) (0.4) = 234.375
335
CAPÍTULO 5 – APROXIMAÇÃO POLINOMIAL POR INTERPOLAÇÃO, SPLINE E CURVAS... 337
f (x) = −6/ x
(4) 4

M = max | f ( 4) ( x ) |= max | − 6 / x 4 |= 6 (0.4) = 234.375


4
x∈[0.4, 0.7 ]

336 tentativa: n = 3 2 −21− 1


Primera
Primera tentativa:
Primera tentativa: n = 3x ⇒⇒
= h=h= =0.333333333...
0.333333333...
(4)
f ( x) = e  f ( x) = e
x (5)
3 3
f tentativa:
Primera ( n +1)
( xtentativa:) ⇒= 2 2 −−11
Primera f ( x ) = ln( x ) n f=n′(3=x3′) =⇒ 1/ x = h h f2= = − 1 0.333333333... 0.333333333...
f
Primera tentativa: ⇒ ( x ) = ln( x ⇒ ) n = 3 ⇒= f ( x ) = 1/ ⇒ x
h ⇒= ′′ 3(f3x′′)(=x)0.333333333...
−=1/−1/ x 2 x⇒ 2
⇒ f ′′′(fx′′′)(=x)2!/= 2!/x3 ⇒ x3 ⇒ f iv (f xiv)( =x)−=3!/ −3
337 322−−−111
Primera
Primera tentativa:
tentativa: n =
n = 31)( n +1)⇒ 3 ⇒=⇒ = h− 1= 2 = 0.333333333... 0.333333333...
Primera
f ()(x(= n)+1)
ff (( nxf+ftentativa:
(4) 1)
(xx)=ln( )=(−x3!/
tentativa: x
ln( )=)(x− x⇒ )
4 n nn
1)(−⇒ n1) n=f!′3x(nf x−=′!(()xnx3+=−⇒ ) 1/
= 1/ x hx⇒
= h2h= = 0.333333333...
′′2(′′(x−32x3)231)−0.333333333... x 22 ⇒ ff ′′′′′′((xx))==2!/ 2!/xx3 3⇒ iv iv
Primera
f (
Primera x ) = ln( x
tentativa: ) f ′ ( x
n ) = 1/ =
x⇒⇒ ⇒ f f ′′ −=11−−1/
= 1/ ′′′ 3 ⇒f f (iv x()x=) −= 3!/ −3!/x4
Primera
Primera
339 tentativa: n = 3 tentativa: tentativa: ⇒ n n= =3 = 3 3 ⇒ = ⇒ = =
h hf
3h
2 −1 3 (= x = )= = − 1/ x
0.333333333...
0.333333333...
0.333333333... ⇒ f ( x ) = 2!/ x ⇒ f ( x ) = − 3!/
Primera
Primera
Primera +1)f(fmax n(=(+x1)x)max )tentativa:
=ln(
=tentativa: ln( (4) xfx)()(4) )xn⇒ ⇒ fn3!(fn
′n′−(′+=((1)
= x⇒
xn3! +)3 )34==
−1) = −1/
1/ 4⇒ h⇒xx ⇒ ⇒ = 3 3x2
hff′′′′(′′(x(2 x=
)−)−=1=1−−21/
0.333333333...
1/ x2x2 ⇒
2
⇒ ff′′′′′′((xx))==2!/ ⇒ fivfiviv((xx))== −−3!/
2!/x3x33 ⇒ 3!/x4
Mff (((nM = f ( x ) = = ln( f ( =
− x 1) = ⇒ )n ( nx ) −
! x f = ( x 1
=) = 1 1/ x6 ⇒ = 6= h f )
= = − 1/ 0.333333333...

0.333333333... f ′′′
3 x ⇒2 2f2 ′′′( x) =′′′2!/ x ⇒3 3f3 ( xiv) =iviv−3!/ x x
x ( x ) = 3 x ⇒iv f ( x ) = −3!/
2!/
f nxf+f)1)(xf=x∈f(((n([1, xx))=2](⇒ (1)−n1)fn′!(nxx!−)x(=n +1/
(=2][1, 1) x ⇒ f ′′( x ) = −1/
3
x)(ln(
4
xx)
n+x+1) =)1) =ln(xln(
∈ ) = ln( −
x)x)⇒⇒ x ) ⇒ nnf ′f( x( f ′ ′ (
−)−(xn(= x ) = 1/
=1) 1/x x⇒⇒
)n++1)1/ x ⇒ ′′ 3
f ′′f(f′′x()(xx=))=−= 1/ −−1/ x xx⇒⇒
1/ ⇒f ′′′f(f′′′x()(xx=))==2!/
2!/ x xx⇒⇒
2!/ ⇒ f ff( x()(xx=))=−= 3!/ 3!x
−−3!/
f (( nx+)1)fff=( nf+ln( 1) ((xx)= )i(4)
=⇒
 6
(n(−−1)
 xf1)1n′(−nx(nn!)+!x1)x=
(0.33333333) − ( n1/
′ −+x41)2−4x ⇒ 4 f4x′′3( x ) = −
  … 1/ x 2 ⇒ x2f2=′′′u( x) =′′′2!/ ⋯ x 3 ⇒ 3f3 iv x(nx+1) =iviv −3!/ x 4
M = max
(f=P ( x ( )x
y+1))1)xj =
x((1)n()nx+=max =
)
f = = ln( ( ( x− )1) 6 n !3!
= x
(0.33333333) f ′
1 ( x ) = 61/ x ′′
)=(≤(x−(4) f= (−−x1(4n)+1)= 1/6x ⇒≤f 4.6496 f x x f x x f x
)x(2]f(x≤x)ln( )n( !x⇒
fErro M −(4)f1)= (4)
nx

) nnn3! ⇒ ( ) =
′′( x) *=10−−1/ − 1/ ⇒ ( )
3 −x3 ⇒ f ′′′( x ) = 2!/ x ⇒ f ( x ) = −−
= 2!/ ⇒ ( ) =
Com
Com M =Erro
( n +fM
xfmax
(n
∈f+[1, nx( (2]
∈ P[1,
x n()(= =)= xn((4)
(−)−1)
1) 1) n ! nn!−+!3!
=
x x1)(xn1−+(1)n +1)−−44 6  ≤4.6496 * 10 , precisamos
, precisamosaumentar aumentar o on
f M 1) x(∈x =
[1, ==2]
( n()n
max
max
y ( −  1)ff(4) = =
 n z
(!(xxx))nn4 *−3!
− ( =4 3!
=
z *−(1 41n4+1) 66
− z  … ↓ … z
M =Mmax x)=)=(f 6 x1)
+x+ 1) (
f= max
f[1, 1)
x
∈[1,∈ 1( f(x=
[1, (4)
2] 2]
x= )(4) (−11 −
((0.33333333) )1)3!
= nn1!3! =!xx214 −
1 −6−444 46 31
n + 1) 4 ( n +1)1
f6fdo 6(0.33333333)
x()(0.33333333)
(4)
xM max x)) então
(xerro, 3!1−141 vamos 46
Com
baixar
baixar
Com Erro
esse M M
esse ∈=
Plimite (x=2]∈xP
=max ∈max
x[1,yxlimite
[1,
)[1, 2] f (4)
≤ do = = =
(erro, 3!
= 3!
= =
então 46
6vamos ≤ 4.6496 tentar tentar**10 n
−−33
= n,
, 6 =precisamos
. 6 .
precisamos aumentar
aumentar on npa
Erro x ( n +1) 2 o o
ComCom M Erro = Erro max P n
( x (
n2)f2]≤
x∈ [1, (4)
= ) 
2] ≤ (≤< x≤  )z(4)
  6
12 3!
(0.33333333)
6 (0.33333333)
= 14z 22 4 6
− 4 
44 432
≤
z ≤ 4.6496 4.6496 10
… * 10 −,−33 precisamos
− 3 ↓ … aumentar z oo nnn
Com
Com MErro
x∈ M [1, = n = max
2] P

P (
n 6 
nmax
(
2]
x x 
) ) f= 6=
(4)
f(0.33333333) 4
(xx)4) 4* 4* 43!
((0.33333333) *
= 3!
= 11 4 4466
−− ≤ ≤ 4.6496
4.6496 * 10
* 10 ,,,precisamos
precisamos
precisamos aumentar
aumentar
aumentar o
Com Com Erro Erro P n P ( x )
x ∈x ≤ 
⋮ n ( x) ≤6⋮ 6(0.33333333)
∈[1, [1, 2] 2]   6 (0.33333333)
(0.33333333) 4 4 ⋮* * 4 4 4
≤  4.6496  * 10 −3 −3
,
⋮≤ 4.6496 * 10−3 −,−33precisamos aumentar precisamos ↓ aumentar o n
⋮ o npara p
baixar
Com Com
Com
n
baixar esse
para Erro
esse Erro
Erro limite
baixar P
y( x=)limite
limiteP(Pnxn()(esse
v≤ dodo do
xx≤)6)do ≤
 ≤erro,  
(0.33333333)
limite
erro, 4 *então4 do
4então 4 erro, vamosvamos
 então  ≤  ≤ tentar
≤tentar
4.6496 4.6496
4.6496
vamos * 10n
n**10 =
tentar
=106 ,
6 .
. , nprecisamos
precisamos
,precisamos
= 6. aumentar
aumentar
aumentar o oon nnp
baixar
Com baixar
baixar esse
Erro esse esse
P limite n
limite erro,
do
→   6erro,
erro, então
(0.33333333)
4 → *
4 4então
então 4 4 vamos vamos
vamos
→ ≤  4
2 4
4.6496− 
2tentar
1 − …
tentar
tentar
1 10 n− 3
n =f
n
, =(6
= u,v
6.
6 .. )
precisamos = ? … aumentar ⋮ o n p
Segunda
Segunda
baixar Com
Com esse tentativa: Erro
Erro ntentativa:
limite PPnndo ((xx))erro, ≤≤ n=6n64então (0.33333333)
=* 64 ⇒vamos * * *
⇒ = h=  h  =  =
tentar
 ≤tentar
*
0.16666666...
4.6496
≤4.6496 n= 0.16666666...
6*=.*10 10−−33,, precisamos
precisamos aumentar aumentar oo
baixar
baixar
baixar
baixar esse
esse esse
esse limite
⋮limite limitelimite do
dodo ⋮do erro,
erro,erro, então
⋮4 4**44 vamos
então
então vamos
 ⋮ 6 tentar
vamos
vamos tentar
6tentar n
nn =n= 6 .
6=.66.. ⋮
erro, então
baixar esse limite(7)do (7) erro, então −7 −7 vamos 2 −tentar1 n = 6 . z( n +1) ( m +1)
MM max
= tentativa: ytentativa:
m+f1 = f (= xz)1((nxmdo =1)6! = 1z m1+então 720 z720
Segunda 662(6⇒ 1−1…
baixar
baixar =esse esse max limite
limite +)
do 6nerro, erro,6!
= 1)então
= h 3( mvamos vamos
= 2−2−= 21− tentar nn==66..
10.16666666...
tentar …
Segunda
Segunda
Segunda ∈[1,xtentativa: tentativa: 6== ⇒ ⇒ ⇒ h2hh−2=
1)
n n=n= ⇒ +
Segunda
SegundaSegunda xtentativa:
tentativa:
∈ 2] tentativa:
[1, 2]
⇒ = = =h= =
1
6 = 0.16666666...
0.16666666...
0.16666666...
0.16666666...
Segunda tentativa: n = 6 = ⇒h⇒ = 2
26=6−22= −6 61
1−0.16666666...
−11 0.16666666...
Segunda
Segunda
Segunda
340=M
M max tentativa: tentativa:
tentativa:
f (7) (7)
720(0.1666667)
x =
(7)720(0.1666667) nn6! ==
n n= 616=−676 −⇒ −77 ⇒ =7= = =h7 h26h−=
h 16= 0.16666666...
0.16666666...
0.16666666...
Segunda M tentativa: = = maxmax = (7)( f f = ) n( ( x x
=) ) =6 6!
= 6!
= −⇒ 7−171 = 720 720
720 66
Com
Com Erro
M
Segunda
xt ==M M
Erro
= 8.7 max P
= (max P x )
yt ( f≤ x
ftentativa: = ) f ≤
(5.5=(7)
( x )(7)( ) x ) 6!= 6!
=
n1n* = 1 1
=6−6−77720 720720
h⇒ = ≤ = 9.1858
h6h =≤ 6 2
9.1858
2 − − 1
* 10
1
0.16666666...-05 -05
10 , ainda , ainda precisamos
precisamos aumentar
aumenta
Segunda −−77 ⇒ =
M x
max∈ [1, n e ntentativa:
2] x x
∈ ∈ [1, [1, (7)
=2]
=2]
x(7) (7) 6! = − 7
= *0.16666666... 0.16666666...
MM xM x∈= ∈ ==max
[1,
[1, x =
2]∈ max
[1,
2] max max 2]

f f = =
f
(7)
f  = (=( x x()()
x x )) 4 6!=6!
= 7
4
6!
= 6!
= 1 1
* 711 720
720 
720720  6 6
M =Erro max f2][1, (7) 2](720(0.1666667)
x≤)x(7) (7) 8.51−7 8.9720
720(0.1666667)
720(0.1666667)
6!
7
9.3  ≤9.5
7 7
9.6
(= =
x∈ x∈ x[1,
[1, x∈
∈ [1, 2] 2]
Com Com
ComErro Erro P xP)P (xx))720(0.1666667)
≤ fnf720(0.1666667)
720(0.1666667) 17−−7777777720 ≤ 9.1858 9.1858 **1010
-05-05 -05
,, ainda
ainda precisamos
-05, ainda precisamos aumentar
precisamos aumentar aumentar
então vamos n (= tentar ≤ 9.1858
≤7720 *10
então vamos xM M
∈ [1, 2]= nmax
max ntentar i=
= = n ( 8(x=x.))8 . 6! = 6!
= 1
Com
Com Com Erro
Erro Erro Pnn((P
P xxn)x)∈(x≤∈[1, x ≤[1,
y )   ≤2] 720(0.1666667)
     720(0.1666667)
720(0.1666667)
720(0.1666667)
4 7 4 4 * 7 7  ≤   ≤
 ≤
9.1858
  9.1858
9.1858 10 -05 -05
10 , ,,
ainda ainda
ainda precisamos
precisamos
precisamos aumentar aumentar
aumentar o on
PPnnP(P(nxnx()()xjx≤)≤720(0.1666667)   ≤7≤≤9.1858
2] * * *
Com
Com Com
Com
Com ErroErroErro Erro )≤  <≤    4 4 *7
*
4*7 7 7
 9.1858
≤9.1858 *10 **1010, ,ainda
-05 -05
-05
,,ainda
ainda
ainda precisamos
precisamos
precisamos
precisamos
precisamos au-
aumentar
aumentaraumentaoo
aumentar
 
( x)n≤≤= ==884.4.*4*477**77  ≤ 9.1858
*
Com então
entãoErrovamos vamos tentar
tentar n8 n720(0.1666667) ≤≤9.1858 , ainda precisamos aumentar o
-05
então vamos Pn (tentar x) ≤ 5.0 720(0.1666667) 7
*10
Com . ..8 ,, ainda
ainda precisamos
precisamos aumen aumen
-05
então Com vamos Erro
Erro tentar PP nn(x )nn =vamos  =
8 4 .* 7tentar n=2 −   1 9.1858**10 10-05
então
então vamos
mentar
então
Terceira
então vamos
tentativa: vamos
vamos o tentar
n, 5.7
então
tentar tentar
tentar =
n 8 n== 88=8.8.8⇒ .. 44 **7h 7= 8. 21 −
então
Terceira
então vamos
vamos tentativa: tentar
tentar n n=nnn=8= ⇒
= h = =  0.125 0.125
então vamos tentar 6.2tentar n = 8. 822−8−11
entãovamos
então vamos tentarnnnn ===8 =888..⇒
Terceira
Terceira tentativa:
tentativa: −9 −⇒ 9 = = hh2 −= 1= 0.125
0.125
= maxf6.7 2 − 1
(9) (9)
MM
Terceira
Terceira =tentativa:max
tentativa: = f (= xn)n(=x=)888! = 1⇒=
8!
⇒= 1= h 40320
h 40320
= 2= 2 2 − − 2
−18
21 81− 0.125
− 1 0.125
1
Terceira
Terceira
Terceira
Terceira
Terceira
Terceira tentativa:
x∈[1, tentativa:
tentativa:
x∈ 2] tentativa:
tentativa:
tentativa:
[1, 2]
7.0ff= n n=nn=8n==n8= 8=88 ⇒ ⇒⇒ = ⇒⇒9= h= h= h2
hh40320 8h= 8 2= 1−= =1 0.125 0.125 0.125
0.125
Terceira tentativa: ) 8−8! 1⇒ 1−−9= = −= = 0.125
0.125
(9)
Terceira M M=
tentativa: = maxmax (9)
= n((= xx)8 = 8!
=

9−9 = h 40320 = 8 88 8 8
2 −
0.125 1
Terceira ff7.5
tentativa: (40320 nn1= 898−9 40320 9 ⇒=
9 =
8 2 − 1
xx)(9) (0.125) 1=(0.125) −−9⇒ h8h =
9
Terceira
MM= = max max tentativa: (9)
= (9)
(9)((9) )(= 40320 8!
= = -06 0.125
= ()(xx)8! = 40320
x x
∈ ∈ [1,[1, 2] 2]
(9) 0.125
Com
Com Erro
M Erro =MM
M
M xxM P==[1,
max

∈ n (xmax
[1,=
=
=
P2]
max2] xnxmax
max )∈xmax
(∈[1,2]f≤x[1,(9)
=)2]f2]f≤f= = f(9)
((9)= xf= ()(xx40320
x ) )
40320
)8!
= 8!
=8!
=
8!
=
8!
=−8!
=
1(0.125)
11−−9191 40320
91
−(0.125)  9≤
940320
40320
40320 
40320
40320
 8.3447
≤ 8.3447 88*10*10, também
-06
, também precisamos
precisamos aumentar
aument
ComM
Com = Erro
Erro max
x ∈ [1, ∈ [1,
2]
P P f( (=x x ) ) ( ≤ ≤x  ) (9) 48!
= * 941 9 40320
−9   ≤
− 9 ≤ 8.3447
8.3447 1010 -06
-06
, também
também precisamos
precisamos aumentar
aumentar
M = max
nn  40320 f=f = ( x
( x(0.125) ) *
8!
= 9
1
1 940320 -06 40320 ,
Com 341
(9)
xM ∈[1, = x ∈x2] max

[1, [1, 2] 2]
)(0.125) 8!
= **
[1,2]2] 99 99999≤98.3447
9
Com Erro P
Erro Pn ((xx))x∈x≤≤ ∈
[1, (xx≤)40320 40320 40320 40320 40320
(0.125) 44*(0.125)
(0.125) *(0.125)
≤≤ 
8.3447 *10
*10
também
, -06
-06
também precisamos
precisamos aumentaraumentar o n
(
Com x , y ) ,-06 também precisamos aumentao
-06
ComCom Erro Erro Erro P P ( P x ( ) 
n  40320 ) ≤

 
≤ 40320
40320
  4 9
(0.125) (0.125)
(0.125)    ≤ ≤8.3447
8.3447
98.3447
8.3447 *10 **10 10
-06,, também ,,também
também precisamos
precisamos aumentar
aumentar
Com
por
por
Com Com
Com Erro
isso isso
Erro i vamos
Erro
Erro j P
P
n
vamos ( x
(PxPn)n((≤n ) n≤
tentar
xx))≤tentar ≤ 40320 n =
4n*4=
40320
*
10 9*410 .
49*(0.125)
*9(0.125) 
9. ≤≤8.3447 ≤ 9
8.3447
≤8.3447  10 -06
*10 , ,também
*10
*10
* -06-06 também
,também precisamos
precisamosaumentar
precisamos
precisamos aumentar
aumentaroo
aumentar
por
Com isso nnvamos
PPnn((xxtentar )≤<≤ 44n*n4
)tentar 4=9*=*910 9 ..   ≤≤8.3447 também precisamos aumen aumen
-06
por
Com
Com isso ErroErro vamos *9 10 8.3447 **1010 -06
, ,também
, também precisamos
precisamos
por isso vamos tentar  n= 10 . 44**99  
porpor por
por
isso isso isso
isso
vamos vamos vamosvamos tentar tentar tentar
tentar n =n10 =n10
n == . 10 . ..
10
por poraumentar
isso isso vamos vamos otentar n, por
tentar tentar isso
nn ==n10 10vamos
=10 10.. . tentar n = 10.
porpor isso
portentativa: isso vamos
isso vamosntentar vamos tentar tentar n = n
n = 10 = . 10.. 2 −21− 1
Quarta
Quarta
Quarta
Quarta tentativa: tentativa:=nn10
tentativa: n===10 10 10⇒= ⇒
⇒ ⇒h == = hhh−= 1=
22= −−11 0.1
=0.1 0.1
0.1
Quarta tentativa: n = 10 ⇒= h
2
=
10 1010
10
2 0.1
− 1
Quarta tentativa:n n 10 ⇒⇒ ⇒ 2 2
− 1− 1
Quarta
Quarta tentativa: tentativa: =n10 ==10 = = =h 10 h2 h− −= 11 = =0.1 0.1
0.1
Quarta
Temos:
Quarta
Temos:
Temos:
Quarta
Temos: tentativa:
tentativa: tentativa: nn = ==n10 10 ⇒⇒
⇒ == hh 2= 2= 2−10 −110 12−
10 0.1

0.1 1
Quarta Quarta tentativa:
Quartatentativa:
Quarta tentativa:
tentativa: nn==10 n 10 = 10 ⇒
10 = =
⇒ ⇒
h= h = 10
h
10= =
2h− 1 = 2 = 10.1
0.1 0.1 0.1
Quarta
Temos:
MM
Temos:
Temos: =M M tentativa:
max ===max maxmax f
= (11) (11)
f= f = (
f= x
(11) (11) n)((x(=xx))10 ) 10!
= 10!
= = 10!
= ⇒
1 −11 =
1 1 − h113628800
−−11
11 =
10 10 10
3628800
3628800
3628800 10 0.1
Temos: (11) 10
Temos:
Temos: M = xmax ∈[1,x∈ 2] x∈
x[1,
∈ [1, f[1,
= 2]2]2] ( x ) (11) 10! = 1−11 −113628800
Temos:
Temos: Temos:
Temos: MM xM ∈= [1,= = 2] max
max max f
= (11)(11)
f= f= ( x ()(xx)) 10! = 10!
= 10!
= 1
−11
11−1111 11 3628800
113628800
3628800
Temos:
MM =
= max
max x∈ x∈
f
=
f
=
[1,[1, (11)
(11)
2] 2]
(
( x
x 3628800
)
)  3628800
3628800
3628800 10!
=
10!
= 1
1
−−11(0.1)
(0.1)11 (0.1)
(0.1) 3628800 11 
3628800 3628800 6−66..−6
Então,Então,
Então,
Então, Erro MErro M Erro
Erro
=
[1,P
x∈[1,
max
=(P x P
2]
max P
) n(n( ≤ )x)(3628800
(xf= )≤
(11)
≤f= ≤)(x()(xx10!
(11)(11)
) 10! = (0.1)
− 11
1 113628800
−10!
= 11 − −11 11
3628800
≤ ≤≤ ≤8.2473
8.2473 8.2473 * 10 **1010 -07
-07-07-07éé menor
é menor
é menor
menor dodo
do que
que
que −610
10−−10
10 .
do que 10 . −6 −−66 .
do que
M = xM max =2] max f
= (11)
x f
= x =) 1 10!
= 11
  3628800 8.2473 10
x3628800 ≤≤8.2473
x∈ ∈ 2]
Então, Erro [1,
Pmax n
x∈ ([1, xx∈ )[1,
xn∈ 2] [1,≤f= ((11)
2]2] )3628800
3628800 4*10! * 11
44***11
4 11 11
(0.1)
−11 (0.1)
(0.1) 11
11 3628800
11 11
≤ 8.2473 * 10
-07 *
é menor
Então,
Então,
Então, MErro x∈ =Erro[1,
Erro n2]
P P ( P x ( ) x
 x
≤ ) ) (≤
3628800 ≤ 
  3628800 4 =11 (0.1) 1  
11 ≤11118.2473 ≤ 8.2473 8.2473 10 *1010
-07-07 -07
é éé
menor menor
menor do do
do que que
que 10 1010 . ..
( xn2]) ≤ 3628800
11 * *
4 *(0.1)
n − 6
Então, Erro P
Então, Erro P
x∈[1,
n( x )
n
≤ 
3628800 3628800
 3628800 4**(0.1)
411
(0.1) 11 11(0.1)
11 (0.1)   
≤  ≤ 8.2473
8.2473 * 10 -07
10
-07
-07é é menor
menor dodo que
que 1010−−6.6 .10−−66
Então,
Então,
Então,
Então,Erro
Logo, Erro podemos
Erro
Pnn ( P
Erro P
xn)P(≤nxn()x≤)usar
( x ) ≤
≤3628800
usar  4 * 11
grau n=11 =10 10 ≤≤8.2473 8.2473
para ≤ 8.2473 * * 10-07
*calcular
* 10
10-07* 10éé menor
-07
-07
menor é
é menormenor
oo polinômio
do
do que
polinômio
do
do que
que 10
que
10 − .10
6
interpolador . .
.
P
Logo, podemos   grau   4 grau * 11 4 (0.1)
4
114 **11n11    ≤ 8.2473
para  calcular interpolador
− 6
Logo,
Logo,
Então,
Logo, podemos
podemos podemos
Erro Pn (usar xusar ) ≤usar  grau grau
4 * 11 nn==
*
10n10 = 10 para
para para calcular
calcular *calcular
10 oé menor opolinômio
opolinômio
polinômio
do que 10
interpolador
interpolado
interpolador. Pn ( x
 40320 (0.125)99 
40320 (0.125)
Com Erro
Com Erro PPnn((xx)) ≤≤  8.3447**10
 ≤≤ 8.3447
-06
10-06 também precisamos
,, também precisamos aumentar
aumentar
por isso vamos tentar n = 10 .44**99 
338
por isso
isso vamos
vamos tentar
tentar nn ==10
CÁLCULO NUMÉRICO COMPUTACIONAL
por 10 ..
Quarta tentativa: n = 10 ⇒= 2 −1
h = 0.1
10
Temos:tentativa:
Quarta
Quarta tentativa: nn ==10
10 ⇒=
⇒ 22−−11
Temos: hh =
= = 0.1 0.1
(11)
10
10
M = max f= ( x) 10!
= 1−11 3628800
Temos:
Temos:x∈[1, 2]

M == max f=3628800
f= (11)
((xx)) (0.1) 11−11 ≤3628800
11−11
Pn (xxmax 10!
= 3628800 -07
(11)
M 10!
= −6
Então, Erro x ) ≤2] 
[1, 2]
∈[1,
∈  8.2473 * 10 é menor do que 10 .
 4 * 11 
 3628800
3628800 (0.1) (0.1)1111 
Então,
Então, Erro
ErroPP
Então, Erro P10
nn((x)
(xx )
) <

≤  =
 ≤ 8.2473**10
≤ 8.2473 -07
10-07 ééémenor
menor
menordodo
que
do que . −−66..
10–610
que 10
4
4 11
Logo, podemos usar grau  n *=11  calcular o polinômio interpolador Pn ( x)
*
10 para

representativo
Logo, de f ( xusar
Logo, podemos
podemos usar x) emnn =x=∈
) = ln(grau
grau 10[1, para
10 2] , e calcular
para o erro máximo
calcular de truncamento
oo polinômio
polinômio não
interpolador
interpolador
Logo, podemos usar grau n = 10 para calcular o polinômio interpolador
Pn(x) representativo
10−6 . Com
representativo
ultrapassará
representativo de fde
de fn((xx=f(x) =esse
))9==,ln(
ln( ln(x)
xx)) emem emxxx∈
erro ∈∈[1,
[1,[1,2]
máximo 2]2],
,, eee
deoooerro
erro máximo
truncamento
erro máximo
máximo deserá
trun- 2.6018 * 10−06
de truncamento
de truncamento
camento não ultrapassará
−6 −−66
10–6. Com n = 9, esse erro máximo de truncamento
maior do que 1
ultrapassará
ultrapassará * 10
será 2.6018 * 1010 ,
–06 mas
10 ., maior
. Com
Com doainda 9é
9 ,,da
nn ==que ordem
1esse
esse erro
erro
* 10–6, masde O (10é−6da
máximo
máximo
ainda )de
. ordem
de truncamento
truncamento será
de O (10–6será
). 2.6018**1
2.6018
Outra
maior do
maior do quepossibilidade
que 11**10 maséainda
10−−66 ,, mas calcular
ainda o valor
éé da
da ordem
ordem dode erroO
de Oexato
(10−−66))de
(10 .. truncamento
em um número grande de pontos do intervalo
Outra possibilidade é calcular o valor do erro exato de truncamento em um número
e tomar o seu valor máximo,
uma vez que a função exata f(x) = ln(x) está disponível para comparação
grande de possibilidade
atravéspontos
de váriasdo intervalo
bibliotecas deefunções
tomar eoemseu valorexato
docalculadoras. máximo, uma vez que a um
função
Outra
Outra possibilidade éé calcular
calcular oo valor
valor do erro
erro exatoTambém de podemos
de truncamento
truncamento em
em um nú nú
23
estabelecer
grande de um algoritmo
pontos
grande de pontos do intervalodo de
intervalobusca do
e menor
tomar grau
o seu n enquanto
valor o
máximo,
e tomar o seu valor máximo, uma vez que a fu
erro máximo
uma vez que a fu
exato estiver acima de 1 * 10–6, calculando o erro para graus n crescentes
do polinômio interpolador. Nesse caso, concluímos que com n = 7 os erros
em todo o intervalo x ∈ [1, 2] são menores do que 8.7302 * 10–07, conforme
o arquivo Cap5exem5.9_busca_menor_n.m do Caderno de Algoritmos.

5.2 INTERPOLAÇÃO DE FUNÇÕES COM VÁRIAS


VARIÁVEIS INDEPENDENTES
Até agora efetuamos interpolações de funções com uma única variável
independente, unidimensionais; entretanto, na modelagem matemática da
maioria dos fenômenos, ocorre a influência de várias variáveis independentes
sobre o valor observado. São aplicações típicas a modelagem de superfícies
de uma área geográfica, a partir das cotas (alturas) nos pontos de uma grade
retangular, para fins de cálculos topográficos, a modelagem em computação
gráfica, entre outras.
Por exemplo, como estimar o valor de w = f(u, v) quando a função
aproximanda depende de duas variáveis independentes x e y?
x
t4 (C ) = 85 + (5.7143)(C − 5) + (1.9048)(C − 5)(C − 5.7) + (−3.4734)(C − 5)(C − 5.7)(C − 6.2)
CAPÍTULO+5 (2.9546)(C − 5)(C
– APROXIMAÇÃO − 5.7)(C − 6.2)(
POLINOMIAL C − 6.7)
POR INTERPOLAÇÃO, SPLINE E CURVAS... 339
331
C4 (t ) = −3.00325e − 04 * t 4 + 1.11426e − 01 * t 3 −1.54789e + 01 *t 2
+ 9.54391e + 02 * t − 2.20353e + 04
Seja uma função com duas variáveis independentes a ser aproximada
333
por
f339
(4) um polinômio interpolador:
(x) = −6/ x4
334
f(4)f(x:) ℝ x ℝ → ℝ
 com x ∈ [a, b] e y ∈ [c, d] (domínio retangular).
M(=x,f y(4))(0.4) f ( x, y )
→ z==234.375
335
f (4) (xPara
) = −determinar
6/ x4 o interpolador, acompanhe o passo a passo a seguir.
M = max | f ( 4) ( x ) |= max | − 6 / x 4 |= 6 (0.4) = 234.375
4
x∈[0.4, 0.7 ]
Primeiro passo: dividimos [a, b] em n partes gerando (n + 1) xi e
336
f (4) ( x) = ex  f (5) ( x) = ex [c, d] em m partes gerando (m + 1) yj.
f ( n+1) ( x)
Segundo passo: obtemos (n + 1)(m + 1) valores
337 amostrais zij = f(xi, yj) da
( x) = −3!/ x4 conforme a matriz a seguir:
faproximanda,
(4)

339

xi
x1 x2 x3 … x =u ⋯ xn+1
yj
y1 z11 z 21 z 31 … ↓ … z( n +1)1
y2 z12 z 22 z 32 … ↓ … z( n+1) 2
⋮ ⋮ ⋮ ⋮ ↓ ⋮
y =v → → → … f ( u,v ) = ? … ⋮
⋮ ⋮ ⋮ ⋮ ⋮
ym+1 z1( m +1) z 2( m +1) z 3( m +1) … … z( n +1) ( m +1)

340
xtTerceiro
= 8.7 e ytpasso:
= 5.5 fixamos uma das variáveis (por convenção será fixada o x).
xi 8.5 8.9 9.3 9.5 9.6
y
Quarto passo:
j
para cada coluna de xi fixada, i = 1 a n + 1, separamos os pontos:
5.0
5.7
yj 6.2 y1 y2 y3 ... v ... ym + 1
6.7
zij 7.0 zi1 zi2 zi3 ti = PYm (y = v) z1(m + 1)
7.5

341
Interpolando em y = v, geramos um t = PYm (y = v) através de seu interpolador
( xsimples
i, yj)
i
de grau m, PYm (y).
+ 9.54391e + 02 * t − 2.20353e + 04
333
340 CÁLCULO NUMÉRICO COMPUTACIONAL
f (4) (x) = −6/ x4
334
(x) do passo anterior resulta o conjunto ti em função de xi:
f (4)passo:
Quinto
M = f (4) (0.4) = 234.375
xi x1 x2 x3 ... x=u ... xn + 1
335
fti(4) (x) = −t6/
1 x
4 t
2
t3 PXn (x = u) t(n + 1)
M = max | f ( x ) |= max | − 6 / x |= 6 (0.4) = 234.375
( 4) 4 4
x∈[0.4, 0.7 ]
Agora, obtemos o seu interpolador de grau n, PXn(x) e estimamos
336
f(u, v) ≅ PXn (x = u).
f (4) ( x) = ex  f (5) ( x) = ex
fObserve
( n +1)
( x) que a estimativa via interpolação de um único f(u, v) envolve
(n + 337
1) + 1 = (n + 2) interpolações simples. Podemos estender esse mesmo
raciocínio
f (4) ( xpara
) = −3!/ três, x4 quatro, ..., k variáveis independentes. Por exemplo, a
339 de f(u, v, w), em três dimensões, envolve (n + 1) interpolações
estimativa
duplas e uma simples no final ⇒ (n + 1) (n + 2) + 1 = n2 + 3n +3 interpolações
simples. Logo, a interpolação xi múltipla provoca um crescimento exponencial
no volume de operações a1 serem xexecutadas.
x 2 x3 Por isso,
… é muitox =importante
u ⋯ xn+
yj
usar um interpolador simples envolvendo o menor número de operações
aritméticas possível. y1 z11 z 21 z 31 … ↓ … z( n +1
y2 z12 z 22 z 32 … ↓ … z( n+1
Com o Exemplo 5.10, vamos apresentar um caso de interpolação bidimensional via
⋮ ⋮ ⋮ ⋮ ↓ ⋮
Gregory-Newton.
y =v → → → … f ( u,v ) = ? … ⋮
Exemplo 5.10: ⋮monte um ⋮ algoritmo
⋮ ⋮
que aproxime a f(x, y) = x4 + y4 em ⋮
u = 8.7 e v = y5.5
m+1
via zinterpolação
1( m +1) z 2( m +1)dupla
z 3( mcom
+1) Gregory-Newton,
… dados… z( n +1) (
5 valores de x ∈ [8.5, 9.6] e 6 valores de y ∈ [5.0, 7.5] (na forma de vetor
340
do Octave):
xt = 8.7 e yt = 5.5
xi 8.5 8.9 9.3 9.5 9.6
yj
5.0
5.7
6.2
6.7
7.0
7.5

341
( xi , y j )
j=1

325
O algoritmo do Exemplo 5.10 está disponível no arquivo Cap5interpolacao2D
CAPÍTULO 5 – APROXIMAÇÃO POLINOMIAL POR INTERPOLAÇÃO, SPLINE E CURVAS... 341
... diferenças
Caderno divididas, Δk y1 , conforme segue:
de Algoritmos.
327
O algoritmo solicitado no Exemplo 5.10 está disponível no arquivo Cap5interpolacao
Essa
2D.m forma
do Cadernomultidimensional
de Algoritmos. de interpolação pode ser estendida atrav
Δ y1( x − x1)(x − x2 )(x − x3 )(x − x4 )
4
outras bases dos polinômios interpoladores, como de Lagrange, em cada d
Essa forma multidimensional de interpolação pode ser estendida
(RICE, 1983).
P4 ( x) de
através + (Por
= 2outras xLagrange,
−1)(bases
− 1) dos / 3)(devemos
+ (2polinômios − 3)aplicar
x − 1)( x interpoladores,
+ (−1/ 8)( o xprimeiro ex − segundo
1)( x −de3)(Lagrange,
−como 4) + pass
formaemde cada direção (RICE,
+ (3 /160)(
interpolação 1983).
− 1)( Por
x − 3)(
xanterior, x −Lagrange,
4)( xos− 7)
definir devemos
valores de definir
zij = f os
( xi ,valores
y j ) e obter o
de zij = f(xi, yj) e obter o valor interpolado em qualquer x e y diretamente
por
328meioem
interpolado de polinômio
qualquer duplox e yPnmdiretamente n emmeio
(x, y), de grau por x e mde y, conformeduplo Pnm
empolinômio
a equação a seguir,
de grau n Assim,
em x enas m em y , conforme
estimativas a equação
de valores f ( β ) a≅ seguir,
Pn ( β ) :

a)n +Se
1 m +1
β ∈ [ a , b ] , temos uma interpolação.
b)=∑∑
Pnm ( x, y ) = Se βzij∉
i 1 =j 1
Li ( x) L j ( ,y )temos uma extrapolação.
[a, b]
Em que,
341que,
Em
Li ( x) = ∏
n +1
( x − xk ) , ∀=i 1,..., n + 1
n +1
Li ( x ) = ∏
( x − xxkk ) , i = 1,..., n + 1
k =1 ( xi

k =1 ( xi − xk )
i≠k

km≠+i1 ( y − y )
L j ( y) = ∏ k
j 1,..., m + 1
L j ( y) = ∏
m +1
( y − y
( ), ∀ =
)
k =1 y j − ykk , j = 1,..., m + 1

k =1 ( y j − yk )
j≠k

k≠ j
Os polinômios de Lagrange Li ( x) e L j ( y ) geram fatores peso fixos pa
342
conjunto bidimensional fixo de pontos, ou seja, para uma mesma malha de p
valores Os polinômios de Lagrange
discretizados Li(x) e ...
conhecidos, Lj(y) geram fatores peso fixos para
discretos
um conjuntox i , y mesma posição ( x, y ) parainterpolação,
jbidimensional fixo de pontos, ou seja,de
e uma o que torna
uma mesma malha
pontos discretos (xi, yj) e uma mesma posição (x, y) de interpolação, o que
de345
forma
tornadeessa interpolação mais eficiente
forma de interpolação para conjuntos
mais eficiente de de
para conjuntos pontos
pontosfixos em
( xi , em
fixos yi ) que tenhamos apenas diferentes valores de zij.

Agora confira o algoritmo do Exemplo 5.10 com interpolação bidimensional via


346
polinômios de Lagrange no arquivo Cap5interpolacao2D.m.

( xi , yi )
( xi , yi )

365

(1 − t )k 
 
(1 − t )k −1 t1 
Bk ( t ) = Ck0 p1 Ck1 p2 … Ckk pk +1  *  
 ⋮ 
342 CÁLCULO NUMÉRICO COMPUTACIONAL

A interpolação de Lagrange bidimensional também só é válida para


um domínio retangular, x ∈ [a, b] e y ∈ [c, d], ou seja, não é válida para
domínios de pontos aleatoriamente distribuídos no espaço. Neste último
caso, podemos aplicar uma interpolação com erro de 2a ordem conhecida
como pseudolaplaciano, proposta por Holmes e Connel (1989). Nesse
método, calculamos um valor interpolado usando apenas alguns valores
discretizados conhecidos, baseado no cálculo adequado de fatores peso
aplicado a cada valor discretizado, de tal forma que as aproximações geradas
são exatas para funções lineares. Essa metodologia por ser aplicada para
domínios multidimensionais.

Lembramos que a função aproximadora z = g(x) pode pertencer a outras


famílias de funções, como vimos no início deste capítulo, não se restringindo
apenas às polinomiais, como o exemplo no Exercício 4.5 do Capítulo 4.
O importante é que a condição de aproximação seja mantida, ou seja, os erros
ou desvios locais, sobre os pontos escolhidos para definir a aproximadora,
devem ser nulos.

Na próxima seção, vamos apresentar alternativas de aproximação mais adequadas


para desenhar curvas.

5.3 APROXIMAÇÃO POR INTERPOLAÇÃO SPLINE


Originalmente, splines eram réguas flexíveis, de madeira ou plástico,
que podiam ser curvadas de forma a passar por um dado conjunto de pontos
(xi, yi) chamados de “nós”. Essas splines originais usavam pesos (ducks) que
eram fixados nas áreas de interesse causando a deformação da estrutura de
madeira ou plástico de acordo com a curva desejada (Figura 5.1). Foram
muito utilizadas em desenhos de engenharia nos tempos em que não havia
recursos computacionais. Apesar de serem usadas desde o século XIX,
somente no fim da década de 1960 foi desenvolvida uma formulação
matemática desse problema. Tal formalização possibilitou o desenvolvimento
de vários sistemas computadorizados que utilizam aproximações gráficas
de funções como os conhecidos CAD/CAM.
aproximações gráficas de funções como os conhecidos CAD/CAM.
CAPÍTULO 5 – APROXIMAÇÃO POLINOMIAL POR INTERPOLAÇÃO, SPLINE E CURVAS... 343
Figura 5.1 – Spline física original e pesos

Figura 5.1 – Spline física original e pesos (ducks)

Fonte:
Fonte: Instituto de Computação UFFInstituto
(2016). de Computação UFF (2016)

As maiores dificuldades relacionadas à interpolação polinomial convencional


As maiores dificuldades relacionadas à interpolação polinomial
(Lagrange, Gregory-Newton etc.) ocorrem quando tomamos um polinômio
convencional (Lagrange, Gregory-Newton etc.) ocorrem ou quando
interpolante
tomamos umde grau pequeno,
polinômio que gera
interpolante deelevados erros de
grau pequeno, quetruncamento,
gera elevadosou um
erros de truncamento,
polinômio interpolador deougrau
quando tomamos
elevado, um apolinômio
que tende ter gráficosinterpolador
sinuosos. Veja a
derepresentação
grau elevado,do que tendesuperior
contorno a ter gráficos sinuosos.
do Gráfico Vejainterpolação
5.6 usando a representação
polinomial
do contorno superior
conforme o Gráfico 5.7. de um pato voando do Gráfico 5.6, e o mesmo
contorno usando interpolação polinomial no Gráfico 5.7.
Gráfico 5.6 – Representação do contorno superior de um pato voando
Gráfico 5.6 – Representação do contorno superior de um pato voando

Fonte: Burden e Faires (2011).


Fonte: Burden e Faires (2011)

236
344 CÁLCULO NUMÉRICO COMPUTACIONAL

344
Gráfico 5.7 – Contorno superior do pato voando representado por 21 pontos, conectados e
Grafico 5.7
destacados com marcador *, e interpolador polinomial de grau n = 20, em linha contínua
f(x) --- f ( x) contorno superior pato
Pn ( x) interpolador polinomial

Fonte: Elaboração própria.

351
Nas aplicações em que a aproximanda muda de comportamento no
 h −( h + h ) h  S   0 
domínio

2
de interesse, como a do Gráfico
1 2 1
  5.6,
 a aproximadora  deve também
1

     (y − y ) − (y − y )  3 2 2 1

acompanhar


h 2 ( h + h ) essas
1 1 h2 mudanças e efetuar
2
 
 
S as


junções


h deh modo

mais suave
2 2 1

 (y − y ) − (y − y ) 
possível,

 evitando
h
as sinuosidades
2(h + h )
2 2 h 3
como
  S as
 
3
 da

 interpoladora
h h  do Gráfico 5.7.
3
4

3
3 3

2
2

      (28)
 Uma técnica de aproximação possível  ⋮  consiste
 ⋮ em dividir
 o intervalo
 ⋱     
de interesse


em vários subintervalos  e ⋮aproximá-los
  

= 6 
 ⋮
separadamente


* com

polinômio

 de grau pequeno, efetuando
 
  as

 junções

 destes 
 polinômios da
 h 2(h + h ) h  S  (y − y ) (y − y )
forma
 mais suave possível.

m −2 m −2
 
 


m −1
 h
m −1

h 
m −1 m m −1

m −1
m −1

m− 2
m −2

 
 hm −1 2(hm−1 + hm ) hm  S   ( ym +1 − ym ) ( ym − ym −1 ) 
   m   − 
hm ym − ym −1 )
Definição 3: interpolação


 h
spline é uma técnica de aproximação que consiste
m

−(hm −1 + hm ) hm−1 

S 

 m +1 

 0


em dividir o domínio [a, b] de interesse e interpolar separadamente cada
subintervalo, efetuando as junções entre os interpoladores da forma mais
suave possível, conforme o Gráfico 5.8.

10
CAPÍTULO 5 – APROXIMAÇÃO POLINOMIAL POR INTERPOLAÇÃO, SPLINE E CURVAS... 345

Gráfico 5.8 – Splines genéricas aplicadas em cada subintervalo do domínio

Fonte: Elaboração própria

Por conveniência teórica e prática, e por questões de otimização, s


utilizados interpoladores polinomiais cúbicos Spi ( x) , com grau 3 fixo (splin

cúbicas). Essa técnica e suas variantes constituem um dos fundamentos


Fonte: Elaboração própria. Fonte: Elaboração própria
computação gráfica.

PorPara aproximar
Por um teórica
conveniência
conveniência teóricacaminho funcional
e eprática,
prática, eepor
por yquestões
= f ( xde
questões xde
∈ [aotimização,
, b] são
) , otimização, por splin
são
utilizados interpoladores polinomiais cúbicos Spi(x), com grau 3 fixo (splines
cúbicas,interpoladores
utilizados procedemos dapolinomiais
seguinte maneira:
cúbicos ) , com grau 3 fixo
cúbicas). Essa técnica e suas variantes Spi ( xum
constituem dos fundamentos da (spline
cúbicas). computação
Essa técnica gráfica.
e suas variantes constituem um dos fundamentos da
Para aproximar um caminho funcional y = f(x), x ∈ [a, b] por splines
Primeiro passo:
computação gráfica.dividimos [a, b] em m subintervalos convenientes [ xi , xi +1 ] tal q
cúbicas, procedemos da seguinte maneira:
xi e aproximar
xi +1 >Para comprimentos um = , para i =y1,=2,...
hi xi +1 − xifuncional
caminho f (mx),, e x ∈ [a, b] por
geramos 1 pont
m + splines
Primeiro passo: dividimos [a, b] em m subintervalos convenientes [xi , xi + 1]
cúbicas,
amostrais procedemos
tal ( xi ,xyi ) >doxda
que seguinte maneira:
caminho.
e comprimentos hi = xi + 1 – xi, para i = 1, 2, ... m, e geramos
i+1 i
m + 1 pontos amostrais (xi , yi) do caminho.

Primeiro
Segundopasso:
passo:dividimos
obtemos[a,um b] em polinômiom subintervalos
aproximador convenientes [ xi , x3
Spi ( x) de grau tal que
i +1 ]para ca
Segundo passo: obtemos um polinômio aproximador Spi(x) de grau 3 para
xi +1um i ecada
> xdos mcomprimentos
subintervalos [hxi i , xxii++11]−,[x
=
um dos m subintervalos ii , xpara
xcom i = 1, 2,...
], expresso
i +a1 expressão:
namforma:
, e geramos m + 1 ponto

amostraisSp
( x(i ,xy) i=) ado caminho.
3 2
i = 1,i =2,1,...2,...
para m m (1
i i ( x − xi ) + bi ( x − xi ) + ci ( x − xi ) + d i para (12)

satisfazendo as seguintes
satisfazendo as seguintes condições
condiçõesde deaproximação:
aproximação:
Segundo passo: obtemos um polinômio aproximador Spi ( x) de grau 3 para cada
a) Spi ( xi ) = yi , para todo ponto i = 1, 2,...m e Spm ( xm +1 ) = ym +1 .
a) Spi(xi) = yi, para todo ponto i = 1, 2, ... m e Spm(xm + 1) = ym + 1.
um dos m subintervalos [ xi , xi +1 ] , com a expressão:
b) b)
Sp= 1 ( xi ) (xSp
i −Sp )= i (x
= i ) (x y
Sp , para
)i = todo
yi, para ponto
todo internoi i==2,...
pontointerno 2, m... ⇒
m⇒Condição
− xi ) + ci ( x − xi ) + di para i = 1, 2,...m
i – 13 i i i 2
Spi ( x) = ai (Condição
x − xi ) + bde i ( xcontinuidade. (12
continuidade.
satisfazendo as seguintes
Note condições
que cada de aproximação:
polinômio Spi ( x) , relativo ao intervalo [ xi , xi +1 ] , de
a) Sppassar , paraseus
i ( xi ) = yipelos todo dois i = 1, 2,...
pontopontos m e Spm ((xxm,+1y) )= eym +(1x. , y ) . Logo, e
extremos i i i +1 i +1
346 CÁLCULO NUMÉRICO COMPUTACIONAL
c) Spi′i−−11((xxi )i )==SpSp
c) ′
i ( i′x(i )x,i ) ,para
paratodotodo
ponto xi , ix=i ,2,...im= 2,...
ponto ⇒ mCondição de
⇒ Condição de
suavidade.
suavidade. Note que cada polinômio Spi(x), relativo ao intervalo [xi, xi + 1],
Ou seja, seja,em emcada
deve passar
cada ponto xi ,seus
pelos
ponto axi ,inclinação
dois
a pontosdosextremos
inclinação dois
dospolinômios
dois yi) eque
(xi ,polinômios 1
, yique
(xi +nele +1
). nele
Logo, em cada ponto xi, os valores dos dois polinômios que nele
incidem são
incidem são iguais.
incidem iguais. são iguais.
d) Spi′′i′′−−11((xxi )ic)
d) ′′ x(i )x,i(x
)==SpSp'
i ( i′′
Sp ) ,paraSp'todo
) =para (x todo ponto
), para ix=i ,2,...
xi ,ponto
ponto
todo x i,m=i =2,...
2, m
⇒ ...Velocidade
m⇒ de de de
Velocidade
⇒ Condição
i–1 i i i i
suavidade.
encurvamento.
encurvamento.
Ou seja, em cada ponto xi, a inclinação dos dois polinômios que
Ou seja,
seja,em
em cada
nele cada ponto
incidempontointerno,
são a velocidade
interno,
iguais. de encurvamento
a velocidade dos dois dos dois
de encurvamento
polinômios
polinômios que
quenele
d) Sp'' (x ) incidem
nele (xsão
incidem
= Sp'' iguais.
são
), para iguais.
todo ponto x , i = 2, ... m ⇒ Velocidade
i–1 i i i i
de encurvamento.
Ou seja, em cada ponto interno, a velocidade de encurvamento dos
STAQUE
TAQUE Num dois mecânico,
Num spline
spline mecânico,
polinômios conforme a Figura
queconforme a são
nele incidem 5.1,
Figura essas propriedades
5.1, essas
iguais. propriedades
espondem
spondem a:
a:
a) o spline
a) splinedeve
devepassar
passar sobre os “nós”
sobre os ( xi , yi()x;i , yi ) ;
“nós”
Num spline mecânico, conforme a Figura 5.1, essas propriedades
b) correspondem
b) o spline
spline não
nãoquebraa: ouou
quebra nãonão
forma ângulos
forma ângulos agudos; e
agudos; e
c) o spline
c) splineassume
assume
a) a forma
a splineadeve queque
forma minimiza
passar osa “nós”
minimiza
sobre energia
(xipotencial.
a energia
, yi); potencial.
DESTAQUE
DESTAQUE
b) a spline não quebra ou não forma ângulos agudos; e
c) a spline assume a forma que minimiza a energia potencial.
eiro passo: estimamosf (uf )(uprimeiro
ceiro passo: estimamos ) primeiro
localizando o subintervalo
localizando que contenha
o subintervalo que contenha
. Definido Terceiro
Definido que
que uu∈∈[ x[passo:
ix ⇒] ⇒ f (uf) (≅u Sp
, i x, i +x1i]+1estimamos u ) ,iprimeiro
i (Sp
) ≅f(u) (conforme o Gráfico
u ) , conforme
localizando o Gráfico5.8. 5.8.
o subintervalo que
contenha o u. Definido que u ∈ [xi, xi + 1] ⇒ f(u) ≅ Spi(u), conforme o
Gráfico 5.8.
Para definir
Para definir osos SpSp i ( xi )( x )de de cada cada subintervalo xi +1 ] , i =com
[ xi , xi +[1 ]x,i , com
subintervalo 1,2,...mi =, 1, 2,...m ,
Para definir os Spi(x) de cada subintervalo [xi, xi + 1], com i = 1, 2, ... m,
ressos conforme
essos conforme
expressosaaconforme
eq. eq.(12), (12),acalculamos
eq.calculamos a primeira
(12), calculamos e segunda
a primeira
a primeira e esegunda derivadas
segunda de
derivadas
derivadas de
)x): : de Spi(x):

Spi′i′((xx)=)= 3a3ia(ix(−x x−i )xi +) 22+


2
Sp bi (2xb−i (xxi )−+xci i) + ci (13)
(13) (13)

Spi′′i′′((xx)=)= 66
Sp aia(ix(−x x−i )x+i )2+
bi 2bi (14)
(14) (14)
omeamos as
as derivadas
derivadasde
meamos renomeamos segunda
asde segunda
derivadasordem da eq.
de ordem
segundada (14):
eq. (14):
ordem da eq. (14):
Sii ==SpSpi′′i′′( x(ix)i )e e
=
=Sii++11 Sp =
Sp = ′′ ′′( xi′′+(1 x) i.+1 ) .
i +i1′′+(1x(i +x1i)+1 ) SpiSp
Sp
Spii′(( xx))== Sp
33aai′(i x(()=xx −−3axxii())x2−++xi22) bb+i ((2xxbi−−
( xxx−i )x)i++
) +ccci i (13) (13)
(13)
i i i i i

Sp ′′
Sp′′(( xx)=
i
CAPÍTULO
i 6′′(a
)= Sp6
i i ax)=((xx6−
i i
5 – APROXIMAÇÃO
i
ax
−i(xx ))−+
i i )2+bb2b
+x 2
i POR INTERPOLAÇÃO, SPLINE E CURVAS...
POLINOMIAL
i
(14) (14)
(14)
347
nomeamos
nomeamos as
as derivadas
renomeamos de
de segunda
as derivadas
derivadas ordem
de segunda
segunda ordemdadaeq.
ordem (14):
eq. (14):
da eq. (14):
SSi = Spi′′′′ (Sxi i=) Sp eei′ ( xi ) e
i = Spi ( xi ) e
= S′′ xi +Sp = ′′ ( xi +1 )i′′( xSp ′′( x ) .
=
= S
Si +1 Sp
Sp=
= i +1 ( x 1 ))i +1 Sp
i′′+i1+1(
i +1 Sp′′( xi +i1 )) .i.+1
i +1 i i +1

aplicamose aplicamos
e aplicamos as as condições
condições estabelecidasestabelecidas nos itens nos itens (a), (b),
(a),(c) (d) edo(d)segundo
(b),e (c) do segundo
aplicamos as
as condições
condições estabelecidas estabelecidas nos nos itens itens (a), (a), (b),
(b), (c)
(c) ee (d) (d) do segundo
segundo
passo:
passo:
asso:
asso: 3 23
Spi (a) xi +1Condição= i (aaplicada
)Condição
Sp xi h (a)+
i +i13 )+
bai hi hna
= aplicada 2i3 + cna
+eq.biih heq. +nacd
2 +(12):
ih=i + ydi +i1= yi +1 (16)
a) Spi ( xa)
a) Condição
Condição )(a)
=
(a)
i +1 Spi ( x a h
aplicada
i i +i1 )3= a
(a)
b h
i ih
iaplicada
+ c h ii(12):
i i 2 + bii ii (12):
na eq. 2 +
cdiieq. (12):
ih=i +yd i +i1= yi +1
(16)
(16)
(16)
SpSp i (x( x i +1Sp ))= = (axa i=h)hi +
3+ b h 2+ c h + d =
d = b i h iy + c i h i + di = y y (16)
(16)
Sp (15) i +1 (15)
Spii (( xxii= )) d d= yyi (15)
i i + 1 i i i i i i i i i i i i +1
= = i
i i 3 2
(15)
Spi ( xi +1 )= ai hi + bi hi + ci hi + di = yi +1 (16) (16
b) Condição b) Condição(d) aplicada (d) aplicada na eq.na (14):eq. (14): 239
239
b) Condição b) Condição (d) aplicada (d) aplicada na eq.na (14):eq. (14): 239
b)
b) Condição
Condição b) Condição (d)
(d)aplicada aplicada (d) aplicada nanaeq. eq.na (14): eq. (14):
(14):
Spi′′ ( x= i ) Sp2 ′′= b(ix= S b ⇒ Sbi =⇒Si b/ 2= S / 2 (17)
(17)
Spi′′ ( x= i ) Si2= i⇒ b (17)
i ) Sp2 ′′i b(ix=
i=
) 2 =b S i = S / i2
⇒ b = S i
/ 2 (17) (17)
Sp ′′
b) (
Spi i′′ ( xi=Condição
x= ) 2=b i (d) Si
aplicada
i ⇒ i b =na
bi i Si i ⇒ bi i = Si i / 2
i i
S i/eq.
2 (14):
i (17)
(17)
i) 2=
Spi′′( xi +1 ) Sp = ′′6(axi hi)+ = 2 b = Si2+b1 = S (18) (18) (18)
Spi′′( xi +1 ) Sp = ii′′6(axiii++h11i)+ = 266baaiiii =hhii + +Si2+b1 ii = Sii ++11 (18)
(18)
Sp ′′ ( x= ) 2=b S ⇒ b = S / 2 (17
SpSpi′′i(′′(xxi +i +11))= = i 66aai hi hi i++22bibi i= = SS i i +1
i +1
i i (18)
(18)
Substituindo Substituindo a eq. (17) a eq. na(17) eq.na (18), eq. temos:
(18), temos:
Substituindo
Substituindo Substituindo aa
Spi′′( xai +1eq.eq.
eq. (17)
(17)
) = 6(17) a na
eq.
ai hi +na na eq.
(17)eq.
2beq. (18),
= na(18),
S temos:
eq. temos:
(18), temos: (18
Substituindo ( Si +1 − Si()Sa eq.
Substituindo (17) na i
eq. (18),
(18),
i +1 temos:
temos:
ai = ( Si +1a− =Si()Si +1 − Si ) − S ) (19)
ai = ((SS6i +ah1iii−=−SSi ) (19)
i + 1 i
(19)
(19)
aai == Substituindo ) 6 h (19)
6i h+1i i 6hi a eq. (17) na eq. (18), temos:
i (19)
(19)
i 66hhi
E substituindo E substituindo as −eqs. Si )as (19),eqs.(17) (19),e (15)ena eq.na(16), temos:
e(17) (15) eq. (16), temos:
i (S
E substituindo E asubstituindo
= as i +1 eqs. as (19),eqs. (17)(19), (15)ena
(17) (15)eq.na (16),
eq. temos:
(16), temos: (19
E E substituindo
substituindo
( SEi +1substituindo
i
− Si )( S 3 − SSi )6as asas h eqs.
eqs. eqs. (19), (19),
(19), (17) (17)
e
(17) (15)e e (15)
na
(15) eq.na
na eq.
(16),
eq. (16),
temos:
(16), temos:
temos:
23i S 2
( Si +1 − Si )( Shiii3++11+− Siii )hhi2i3++cSi hii ih+i2 +yici= hi yy+i +y1i = yi +1
((SS6i +h1 i−−SE )h + 2S h h + c h h+ y c = h
6hii +1 S
i
i )i 6 h
substituindo
3
3 S i
i
i i 2
2
+ 2
i as
hh6i h+i+2 hhi ++2cci hhi ++yyi =
i i +
eqs.
i i i
=
+yyi +1 yi +1 e (15) na eq. (16), temos:
i +y
(19), 1i = (17)
66hhi i i 2
2)
i i i i i +1
Então, ( S
i Então, − S S
Então, Então, hi + hi + ci hi + yi =
i +1 i 3 i 2
yi +1
Então,
Então, y − 6y hi S h +22 S h
= ci = yii ++11 −ci yii −yyii ++S11 ii−−++11hyyiiii +− 2SSSii ++11ii hhiiii (20)
+ 2Si hi
+ 2S h (20)(20)
= ci = h1ic−i−yyi− hSSi +1hhi6−++22SSi hh6i i i
yyEntão, (20)(20)
== cci i+
hi +i1 i −−hi i +1 6i i i 6i (20)
(20)
Agrupando i hhi os coeficientes,
Agrupando os 6coeficientes,
6 temos:temos:
Agrupando Agrupando i osy coeficientes,
− yos coeficientes,
S h + temos:
Si hi temos:
2temos:
Agrupando
Agrupando
Agrupando= ci os os i +coeficientes,
1
oscoeficientes,
i
coeficientes,− i +1 itemos: temos: (20
ai ( Si +=
= 1 a− Si()S/ (6 h1i −hiS)i ) / (6hi ) 6
ai ( Si +=
= 1 a− Si()S/ (6−hhios
i i +
S)i )) / (6hi )
= b=
ia /Si2+b1 i−=−SSi ))i/+/12/(6
ai= S(i (SAgrupando (6 hi )coeficientes, temos:i = 1, 2,...m
bbi =i=SSi / /2ib+2ii1 = Siii / 2 i ∀ ∀ i = 1, 2,...m (21)(21)
ci bi=i =( ySii+i1 /c−i2=yi ()y/i +h1i −−y(iS) i/+1hi+−2(SSii +)1h+i /26Si )hi /∀6 ii i= 1, 2,...
∀ i = m2,...m
1,
...mm (21)
(21)(21)
cdic ===(y(yyi += 1 ca−ii =yi ()(yS/ii+h+11i −− yS(iSi))i/+/1h(6+−h2i()Sii +)1h+i /26Si )hi / 6∀∀ =i==1,1,1,2,
2,...
2,... m (21)
(21)
dici =i =yi( yi+ibd+11i−−==ySyyi i)i )///2hhi i−−((SSi +i +11++22SSi i))hhi i//66
i

di = yi dii yii


di i = yi i ∀ i = 1, 2,...m (21)
Assim, temos Assim,os  osc temos= ( y
coeficientes − y )
os coeficientes / h −
das ( S + 2 S
splines ) h
das splines / 6
cúbicas em
cúbicas função dos
em função valores das
dosdos valores
dasdas
i i +1 i i i +1 i i
Assim, temos Assim, dtemos coeficientes os coeficientes das splines das splines cúbicas em função
cúbicas em função valores
dos valores das
Assim,
rvaturas Si e temos
Assim, temos
Si +1 Snas os
os = y
coeficientes
i extremidade
coeficientes
i de das
das splines
cada cúbicas
subintervalo.
splines cúbicas em
Para
em função
obter
função dos valores
esses
dos das
valores,
valores das
curvaturas
rvaturas Si e Si +1 Snas e S nas extremidade de cada subintervalo. Para obter esses valores,
curvaturas i
e Sextremidade
i +1
nas extremidade de cada de subintervalo.
cada subintervalo. ParaParaobter esses
obter valores,
esses valores,
b = S / 2i
i i
baii = S(i S/ i2+1 −os
Agrupando
= Si )coeficientes,
/ (6hi ) temos:∀ i = 1,2,...m (21)
ci = ( yi +1 − yi ) / hi − ( Si +1 + 2Si )hi / 6 ∀ i = 1,2,...m (21)
cbii ==(Syii+1/ −2 yi ) / hi − ( Si +1 + 2Si )hi / 6
348 CÁLCULO NUMÉRICO COMPUTACIONAL
ddaii == yy(iSi +1 − Si ) / (6hi )
= ∀ i = 1, 2,...m (21)
cbiii = S(iyi i/+21 − yi ) / hi − ( Si +1 + 2 Si )hi / 6
∀ i = 1, 2,...m (21)
Assim,dctemos
i = y
i = (y
i os−coeficientes
Assim, yi )temos
/ hi − ( os das
Si +1das splines
+ 2 Ssplines cúbicas
i ) hi / 6 cúbicas
coeficientes em cúbicas
das splines função dos valores
em valores das
função das
dos
Assim, temos i +os
1 coeficientes em função dos
aturas Sivalores
edi S=i +1yinas curvaturas Sde
dasextremidade e Si + 1 nas
i cada
extremidade
subintervalo. Parade cadaesses
obter subintervalo.
valores,
Assim,
aturas etemos
Si Para nas
Si +1obter osextremidade
coeficientes das splines cúbicas em função
esses valores, calculamos Sp'(x ) e Sp' (x ) através davalores,
de cada subintervalo. Para obter esses dos valores das
eq. (13)
i i–1 i

ulamos aplicada
′ em xxi: ) através da de
′ (extremidade em xi : função
uras
ulamos SSp
Assim,i e
Sp ′i (( xxSii ))i +ee1 nas
itemos Sp
os
Sp ′ii−−11coeficientes
( xii ) através dadas
eq. cada
(13) aplicada
eq.splines
(13) aplicada cúbicas
subintervalo. em em xi : Para obter dos valores das
esses valores,
turas SSp e′( x′S(i)x+1 )enas
i Sp = ci i′extremidade de cada subintervalo. Para obter esses valores,
amos Spi i′(i xi ) =Sp
i i ci −1 ( xi ) através da eq. (13) aplicada em xi :
′ ′′−i1)(( xei )) ==Sp33i′aa−1i −(1hxhii2−)1 ++através
2
amos SpSpSpi ( ix
2bi −1hi −1 da + ci eq. (13) aplicada em xi :
Sp i −i′1( xii ) = cii−1 i −1 2bi −1hi −1 + ci −1
−1

izamos Sp ′ ( x ) = (c)
ii−1 ( ixi ) =
c3i ado i −1h
2
i −1 + 2bi −1passo,
segundo hi −1 + ci −Sp ′ = Sp′i′−1 ( xi ) , resultando em:
izamos aaecondição
condição
utilizamos a condição (c) do segundo (c) do passo,
segundo i((xxi)) =
Sp1 i′passo, Sp ( xii))=, resultando
Sp'i −i1(x em:
Sp'i­ – 1(xi), resultando
Sp ′ ( x ) 2
2= 3ai −1hi −1 + 2bi −1hi −1 + ci −1
i
ci == 33aai −1hhi2−1 ++ 22bbi −1hhi −1 ++ cci −1
em: i − 1 i (22)
zamos accondição
i i −1 i −1 (c) i −do 1 i −1segundoi −1 passo, Spi′( xi ) = Spi′−1 ( xi ) , resultando (22) em:
zamos accondição hi2−(c) do segundo passo, Spi′( xi ) = Spi′−1 ( xi ) , resultando em:
Substituindoi = 3a as 1 + 2bi −1hi −
i −1expressões 1 +eq.
da ci −1(21)
(22) na eq.eq. (22), (22), temos:
temos: (22)
Substituindo as expressões
2 da eq. (21) na
ci = 3ai −1hi −1 + 2bi −1hi −1 + ci −1 (22)
h
h S +as
Substituindoi − 1 S i −1 + 2( h
2(hexpressões
i −1 + h i ) S
+ h ) S + h Sda
i + h i S i =
= eq.
+1 6[( y
6[( y(21)
i +1 −
− yna y i ) / h
) / heq.
i − ( y − y
y − y temos:
− ( (22),i i −1 ) /
)/h ]hi −1 ] (23)
(23)
i −1 i −1 i −1 i i i i +1 i +1 i
Substituindo Substituindo as expressões
as expressões da da eq.eq.(21)
(21) nana eq.i (22),
eq.
i
(22),temos:
i −1
temos:
i −1

ii == 2,...
2,...m
mhi −((1m
m equações),
Si−−−111+ equações), resultando
2(hi −1 + hi ) Sresultando
i + hi Si +
= 1
noyseguinte
6[(
no seguinte sistema
i +1 − yi ) / h
sistema
i − ( yi − de yde )equações
/ hi −1 ]
i −1 equações (23)
hi −1Si −1 + 2(hi −1 + hi ) Si + hi Si +=1 6[( yi +1 − yi ) / hi − ( y i − yi −1 ) / h ]
i −1 (23) (23)
res não
nãomquadrado:
i = 2,...
res ( m − 1 equações), resultando no seguinte sistema de equações
quadrado:
i = 2,...m ( m − 1 equações), resultando no seguinte sistema de equações
para i = 2, ... m (m – 1 equações), resultando no seguinte sistema de equações
es não quadrado:
es não quadrado:lineares não quadrado:
240
240
 S1 
  240
 y3 − y2 y2 − y1 
 h1 2 ( h1 + h2 ) h2   
 − 
240
   S2  
h2 h1

 h2 2 ( h2 + h3 ) h3   
 y4 − y3 y3 − y2 
   
 − 
   S3   h3 h2 
    =6   (24)
(24)
   *   
      
     
    
  
     ym +1 − ym ym − ym −1 
 hm −1 2(hm −1 + hm ) hm   S  −
 h hm −1 

m
  m

 
S 
 m +1 

Como temos m + 1 pontos e consequentemente m + 1 incógnitas Si e apenas

m − 1 equações ( i = 2,3,...m ) na eq. (24), então temos um sistema possível, mas


indeterminado. Para que tenhamos solução única, isto é, sem ambiguidades,
precisamos impor duas condições especiais (duas equações) diretamente nos
pontos extremos de [a, b] envolvendo S1 e S m +1 . Dependendo de tais condições,
 hm −1
2(hm −1 + hm ) hm   S   h 
m
 hm −1 
  m

 
S 
CAPÍTULO 5 – APROXIMAÇÃO POLINOMIAL POR INTERPOLAÇÃO, SPLINE E CURVAS...
 m +1 349

Como temos m + 1 pontos e consequentemente m + 1 incógnitas Si e apenas


Como temos m + 1 pontos e consequentemente m + 1 incógnitas S e
m − 1 equações ( i = 2,3,...m ) na eq. (24), então temos um sistema possível,i mas
apenas m – 1 equações (i = 2, 3, ... m) na eq. (24), então temos um sistema
indeterminado. Para
possível, mas que tenhamos
indeterminado. Parasolução única, solução
que tenhamos isto é, única,
sem isto
ambiguidades,
é, sem
ambiguidades,
precisamos impor precisamos imporespeciais
duas condições duas condições
(duasespeciais
equações) (duas equações) nos
diretamente
diretamente nos pontos extremos de [a, b] envolvendo S1 e Sm + 1de
pontos extremos de [a, b] envolvendo S1 e S m +1 . Dependendo
. Dependendo
tais condições,
de tais condições, podemos ter vários tipos de splines cúbicas:
podemos ter vários tipos de splines cúbicas:
a)a) Supondo
Supondoque
que oo caminho
caminho tende serlinear
tende aa ser linearnos extremos,
nos o que
extremos, o que
equivale a prescrever duas equações adicionais, S = 0 e S = 0,
equivale a prescrever duas equações adicionais, S11 = 0 e Smm++11 = 0 , com
com soluções explícitas para S1 e Sm + 1, que, substituídas diretamente
soluções explícitas
na eq. (24), gerampara S1 e Stridiagonal
o sistema m +1 , que, substituídas
a seguir: diretamente na eq.
(24), geram o sistema tridiagonal a seguir:
 y3 − y2 y2 − y1 
 2 ( h1 + h2 ) h2   S2   − 
    h2 h1
 
 h2 2 ( h2 + h3 ) h3     y4 − y3 y3 − y2 
   S3  −
   
 h3 h2  (25)
  
    = 6  (25)
*
     
      
     
   
   
   
hm −1 2(hm −1 + hm )  ym +1 − ym −
ym − ym −1 
   S m   hm
 hm −1 
b) Supondo que o caminho tende a ser de forma quadrática nos extremos,
o que equivale a prescrever duas equações adicionais, S1 = S 2 e
b) Supondo quetambém
S m +1 = S m , que o caminho tende
podem sera ser de formadiretamente
substituídas quadrática nos ex-(24),
na eq.
tremos, o que equivale a prescrever duas equações adicionais, S1 = S2
gerando o sistema linear tridiagonal a seguir:
e Sm + 1 = Sm, que também podem ser substituídas diretamente na
eq. (24), gerando o sistema linear tridiagonal a seguir:

 ( 3h1 + 2h2 ) h2   S2   y3 − y2 y2 − y1 
 − 
    h2 h1
     
h2 2 ( h2 + h3 ) h3  y − y3 y3 − y2  241
  S  4

 
 (26)
   3 h3 h2
 
 (26)
   
  *   = 6
     
  
   
       
     
hm −1 (2hm −1 + 3hm )  ym +1 − ym −
ym − ym −1 
   S m   hm
 hm −1 
c) Quando os valores das curvaturas nos extremos são conhecidos
previamente, isto é, S1 = u e S m +1 = v , basta substituí-los na eq. (24),

gerando o sistema tridiagonal a seguir:


 2 ( h1 + h2 ) h2   S2   y3 − y2 y2 − y1 
     −h1u + − 
  
  *   S3=S63  S3 h h − −hh2h −  (26) h1  
(26) 
 h2   2 ( h         3 3 yh432− y23   yh32− y2  (26)
   2 + h3 ) h3  
     
    S
  * *  =6*= 6 3 = 6    
    − 
     
  h  h 2   (26) 
    
          
 
   3     

350  
   CÁLCULO     
3h )ym* +NUMÉRICO

y = 6 y COMPUTACIONAL   
 yymm−+11 −ym − ym − ym −1 
 h (2 h + 1 −
   −
    hm −1 (2hm −1 +3hmm−)1  m−S1m m     S m−   h
  m m
  
  
  
     yhmy− y−  y yhm −−y1 y− 
m 
y hm −1 
h h (2 h(2 h + 3 h
+ 3h
) )    my
m +1 m +1  −
mm+1−  
− ymm m −1ymm−1− ym −1  
hextremos
Quando os valores os
 c)
 Quando
dasvalores
m −1 m −1 das
hmm−−11m −1curvaturas mS)mS mnos −   conhecidos
h h são
m
(2 
mhm −m1 +3h    Smsão
c) curvaturas nos extremos  h conhecidos 
     m m  y hm −m −y1 m −1 yhm −−1 y  
c) c)Quandoc)
Quando Quando

os
os
osvaloresvalores
valores das curvaturas
h (2 h + 3nosh )
extremos extremos
extremos  são
 m +1 conhecidos
conhecidos
conhecidos
m
− m m −1 
c) previamente,
previamente, Quando
isto é, =das
u das
isto
osS1valores curvaturas
curvaturas
é,das enos
S1 m==−curvaturas
1u nos
m −1S m=
nos  m  são
v , extremos
basta S são
substituí-los
são hm −na
conhecidos  eq. (24),
é,e S S= e vS, basta m +1 substituí-los na
previamente, isto m +1u = v, basta substituí-los  hmeq. na eq. (24),
(24),1 
1 m+1
previamente,
previamente,
Quandoisto
c) gerando
previamente,
gerando
gerando o sistema oistoé,valores
é,
isto
sistema
tridiagonal
u= ueSdas
S1 S=1é,
ossistema eS u+Scurvaturas
1 =m
tridiagonal
atridiagonal
seguir:
=+1 v=S, mv+basta
1me ,1 =basta
aaseguir: substituí-los
v , nos
seguir:
substituí-los
extremos
basta nana eq.eq.
são
substituí-los (24),
(24),(24),
naconhecidos
eq.
gerandopreviamente,
gerandoo sistema
o 2sistema
gerando isto htridiagonal
h tridiagonal
é, Sa1 =
tridiagonal
h o+ sistema seguir: ea seguir:
a useguir: SSm +1 = v , basta substituí-los na eq. (24),
 2 ( h1 + h2 ) h(2 1 2 )  S 
  2 y −y y −y
 y23 − y2  y2 − y1  3 2 
  S S  −h1u + h − h−h1u +  h − h
2 2 1
  
  2 ( hgerando
 21 (+ 2 )2
h1h+ h2( )h1 +oh22sistema
)h2 h2 tridiagonal a seguir:  2 2  S2  y23 −y3y2− y2yy213 −−y2y1−2 y1y22 − y1  1 

h2   2 ( h2 + h23 ) h3 2 ( h2 + h3 ) h3        −yh1u−−h+y1u +h−yh1hu−−+y −hh y h −− y h y − y 
  S3     4 S3 3 − 2 3 2 2 12 4 1 3 1 3  2
  

h2 h2 2 ( 2hh ( h2 (+h2h3+)2h(3 h)2hh+32 h3 ) h3
1 2+2h2 )   S S   S 2hy −yy − y−hyy u−−y+yy−y3 y−yhy2−−(27) y

y2 − y1 
h  (27)
   S 
     *   3 3  3* 3   −  2−14 3 −h2 33  (27)
4 4 3 3 3 3 2 2 2
 (27)
h
2
 
(27) 
    h2   2 ( h 2 + h3 ) h3     =6       h3 =h36  hh23 h2 h2  1
  
      * * =6* = 6S 3= 6    y4 − y3 −y3 −y2   
                  h3   h (27)  (27) 
          *            2
   
   
             y = 6−y   y − y      
      m +1  y 1m+1 − y  y  
− y
   
 hm −1 2(hm −1 + hhmm)−1 2(hmS−m1+ hm )−hm v + S my  y− y−−−yhy v−−+yyy − y y −my− m  m −1 
m  m m−
          
hm −h1 m −12(hh2(−h +−1h2( + hmS)mS m −Shmm−vh+m vh+m−hm v + − h−m −1  −hm  
m
    +
m )hm −)1 
m +1 m +1 m m
m +m
1 m m
m −1 m −
m1 m −1
h
 hmhm −1hm −1 hm −1  m −1 
mm 11m

   h m hm
   
 valores de curvatura hm −1 2(hm −1 + hm )   S m   −h v + ym +1 − ym − ym − ym −1 
d) Se assumirmos
d) Se assumirmos valores de para
curvaturaos extremos para os em S +1 hmobtidos
S1extremos
1m +1e
SSobtidos  obtidos
d)assumirmos
d) d)SeSe Se assumirmos
assumirmos valores
valores valores
dede de curvatura
curvatura
curvatura para para osparaosextremos os extremos
extremos S Se me S SS1 eobtidos −1S m +
hmobtidos 1
1 1 m +1m +1
d) Se assumirmos valores de curvatura para os extremos S e S
por extrapolação linear de Slinear SSe
Se2 de 3 ,de
Se Se eSeS3de
S,S2 de em3−e
S1para S mde
eSeSm,m−extremos
respectivamente, 1 m+1
d)
porpor por
por extrapolação
extrapolação
Se assumirmos
extrapolação
extrapolação
obtidos linear
por linear
valores
linear
de2de
extrapolação de
2 e curvatura
3e,2 de
3 linear
m,−S
de S,1de
e1 os
−e
mS m, −e1S SSSm1, erespectivamente,
SS1,mSe,respectivamente,
e, respectivamente,
Sem +S1 obtidos
respectivamente,
de
m
2
, 3 m – 1 m
teremos
teremosrespectivamente,
também
teremos
teremos
teremos duas
também
por também duas
duas teremos
equações
também
também duas
duas também
adicionais:
equações
equações
equações
extrapolação equações
linear duas
S adicionais:
adicionais:
deadicionais: equações
, e de S e Sadicionais:
e Sadicionais: , respectivamente, 2 3 m −1 m

S 2 − SS12 S−2 SS−13Steremos


S S− S também
− S −S duas
S −equações S S S −−adicionais: SSmmm−SS− S − S −1 S
= =S122S=−32 S−S311S−=2=S2S3e3 − eS2 2ee m +e1SmS+1mm−+1S=−mSm=+mSm1 mS=+m1S−− =1mm−1m=−1S mm− m −1
h1 h1 h1 h2 hh1 h2 h2 hh2 hme hm hm hhmmh−h1m −h1m −1 hm −1 h
S 2 −1 S1 S3 −2S 2 S m +1 − Smm S m − S mm−−11
= e =
Que Que também
Quetambém Que hdevem
também 1 também
devem hser
devem2 devem
seradicionadas
seradicionadas ser adicionadas
adicionadas aohao msistema
aosistema ao hsistema
sistema geral
−1geral
geral geral
dado
dado dado
pela
dado pela pela
eq.
pela
eq.eq. eq.
Que também
Que também devem devemser seradicionadas
adicionadas ao sistema ao
m
sistemageral dado
geral pela
dado pela eq.
(24),(24), (24),
mas mas (24),
mas
agora
eq. mas
agora
agora
gerandoagora
gerando
gerando umgerandoum um
sistema sistema um
sistema comsistema
com comlei lei decom
lei de delei de
formação
formação formação
formação diferenciada
diferenciada
diferenciada
diferenciada
Que(24),
(24), masmas
também agora agora
devem gerando gerando
ser adicionadas umum sistema sistema aocom com lei lei
sistema de
degeral formação
dado pela
formação eq.
diferenciada
parapara
para as duas as diferenciada
para
asduas as
duas duas
equações
equações equaçõespara
equações as
adicionais:
adicionais: duas
adicionais: equações
adicionais: adicionais:
(24),
para mas
as agora
duas gerandoadicionais:
equações um sistema com lei de formação diferenciada
Para = ParaPara
i 1 para =i Para
i
= 1 1 i
= ⇒ 1
⇒ ash2duas ⇒ h Sh ⇒S
− ( h
−h
S1 −2 (1h2equações
1 h ( +S
h h +− )(
hS h h2 1S2h3=
12 )1S 22 +2adicionais:) S+
+ h+12S)hS3=10S2 3=
+0h10S3= 0
1+
2 1 1
Para
Para
Para =i
+m1i+=⇒
1
m +h1m Sh⇒ ⇒ h S − ( h +
S−1hm−−h1(m−hS+m(m−hh−1m1+−−)1hS(+mhh)mS+
h ) S + h S= 0
)h+S+mhhm+Sm)2−hS1mSm−m1+=S+11hm0=m3+1−01=S m0+1 = 0
ParaPara = mi+=Para
i Para 1i m=⇒ h1m1⇒
2 1 1 2
=i S m −1 −⇒m(
mh −1 S −m( h m +
−1m
m
h ) S −1 +mh+1S = 0
Para i = m + 1 ⇒ 2hm1S m −11− (h2m −12+ hm1 ) S3 m + hm −1S m +1 = 0 m

Assim,
Assim, Assim,
Para i= m
gerando
gerando gerando
+1 ⇒ hum S m −1 sistema− (hde + h de ) S 1+m 1 equações
hm+equações
−1 S m +1 = 0 para
para resolver
Assim, gerando um um umsistema
sistema msistema
de m −1de m +mm1+m1m+equações
equações parapara resolver
resolver
resolver
diretamente Assim,
diretamentediretamenteasasgerando
m +mas + 1um
mincógnitas
1+ 1incógnitas incógnitas sistema
com comdois com
dois de dois
coeficientes
coeficientes + 1 equações
mcoeficientesextras extras
extras para resolver
à matriz
à àmatriz
matriz
diretamenteAssim, as m +gerando
Assim, 1 incógnitas
gerando um umsistema com sistema dois de coeficientes
de + m
m 1 extras
1 equações
+equações à matriz
para para resolver
resolver
tridiagonal diretamente
tridiagonaltridiagonal
(destacados
(destacados as em
(destacados mem emincógnitas
1negrito),
+negrito), negrito),
temos: temos: com dois coeficientes extras à matriz
temos:
diretamente
diretamente as
tridiagonal (destacados as m
em m ++1 1incógnitas
negrito), incógnitas
temos: com comdois doiscoeficientes
coeficientesextras
extrasàà matriz
tridiagonal (destacados
matriz tridiagonal (destacados em negrito), temos: em negrito), temos:
tridiagonal (destacados em negrito), temos:

242242 242
242
242 242
350
Se possível alinhar o numero da eq. (27)

351 trocar eq., mas pode manter na vertical para manter a diagramação

 h2 −(h1 + h2 ) h1   S1   0 
     (y − y ) (y − y ) 
     3 2 
− 2 1
 h1 2 ( h1 + h2 ) h2   S2   h2 h1 
     
     ( y4 − y3 ) − ( y3 − y2 ) 
 h2 2 ( h2 + h3 ) h3   S3   h3 h2 
      (28)
  ⋮   ⋮ 
 ⋱     
 *  = 6  (28)
  ⋮   ⋮ 
 ⋱     
     
 hm −2 2(hm −2 + hm−1 ) hm−1   Sm −1   ( ym − ym−1 ) ( ym −1 − ym −2 ) 
     h − 
    m −1 hm− 2
 
 hm −1 2(hm−1 + hm ) hm   Sm   ( ym +1 − ym ) ( ym − ym −1 ) 
     −
     h m ym − ym −1 ) 

  0 
 hm −(hm −1 + hm ) hm−1   Sm +1 
CAPÍTULO 5 – APROXIMAÇÃO POLINOMIAL POR INTERPOLAÇÃO, SPLINE E CURVAS...

386
351

(POLINOMIOS de Tchebychev. 2016)


Incluir hyperlink:
 hm − 2 2(hm − 2 + hm −1 ) hm −1   S  ( y − y ) / h −( y − y ) / h 
 hm − 2 2(hm − 2 + hm −1 ) h   S m −1  ( ym − ym −1 ) / hm −1 − ( ym −1 − ym − 2 ) / hm − 2 
 hm −1 2(hm −m1 −+1 hm ) hm   Sm 
m −1
( ymm +1 − my−m1 ) / hmm−−1 ( ym m−−1ym −1 )m −/2hm −1 m − 2 
 hm −1 2(hm −1 + hm ) h   Sm  ( ym +1 − ym ) / hm − ( ym − ym −1 ) / hm −1 
 352 hm
hm
−(hm −1 + hm )
−(hm −1 + hm )
hm −m1 
hm −1 
 S m +1 CÁLCULO
S
  NUMÉRICO COMPUTACIONAL0
0

  m +1   
Note que o sistema linear dado pela eq. (28) não é mais tridiagonal devido às
Note que o sistema linear dado pela eq. (28) não é mais tridiagonal devido às
duas equações adicionais.
Note que o sistema linear dado pela eq. (28) não é mais tridiagonal
duas equações adicionais.
devido às duas equações adicionais.
Em todos os casos, depois de resolvidos os sistemas, temos uma solução
Em todos os casos, depois de resolvidos os sistemas, temos uma solução
única Empara todosS1, Sos2, Scasos,
3
, ..., Smdepois
+1
, já incluída a respectiva
de resolvidos condição
os sistemas, de extremos
temos uma solução
únicaS1 eparapara S , S ,
Sm + 1. SSubstituindoS ,..., S , já incluída
os valores de Si nas a respectiva condição de extremos S e
única 1 2 3 m +1
1 , S 2 , S3 ,..., S m +1 , já incluída a eqs. (21), obtemos
respectiva condiçãoosdecoeficientes
extremos S11 e
S m +a1 i., Substituindo
bi, ci, di, das m ossplines
valorescúbicasde Si nas no intervalo
eqs. (21),[a, b], definida
obtemos pela eq. (12).
os coeficientes ai , bi , ci ,
S m +1 . Substituindo os valores de Si nas eqs. (21), obtemos os coeficientes ai , bi , ci ,
das m splines
di ,Exemplo cúbicas noa intervalo
5.11: aproxime [a, b] , conforme
função discretizada, a eq.por
a seguir, (12).
splines cúbicas
di , das m splines cúbicas no intervalo [a, b] , conforme a eq. (12).
dos 4 tipos apresentados, em [0, 4], com 4 subintervalos h = 1, e estime
f(x = 2.5).
Exemplo 5.11: aproxime a função discretizada, a seguir, por splines cúbicas dos 4
Exemplo 5.11: aproxime a função discretizada, a seguir, por splines cúbicas dos 4
tipos apresentados,
i em [0,
1 4] , com 24 subintervalos
3 h = 1 , 4e estime f 5( x = 2.5) .
tipos apresentados, em [0, 4] , com 4 subintervalos h = 1 , e estime f ( x = 2.5) .
xi i 0 1 12 32 4 3 5 4
i 1 2 3 4 5
yi xi – 3 0 – 211 25 3 24 4 61
xi 0 2 3 4
yi −3 −2 5 24 61
yi −3 −2 5 3 24 61
(esse conjunto de pontos provém da f(x) = x – 3).
) x 33 − 3 )
(esse conjunto de pontos provém da f ( x=
(esse conjunto de pontos provém da f ( x=
) x − 3)
Solução:
Solução:
Como, hi = 1 para i = 1, 2, ..., 4 (m = 4 intervalos e m + 1 = 5 pontos):
Solução:
Então, hi = 1 para i = 1, 2,..., 4 ( m = 4 intervalos e m + 1 = 5 pontos):
Então, hi = 1 para i = 1, 2,..., 4 ( m = 4 intervalos e m + 1 = 5 pontos):
a) Com
a) Com splines splines na na forma
formalinear
linearnosnosextremos,
extremos,conforme
conformea aeq. eq.(25):
(25):
a) Com splines na forma linear nos extremos, conforme a eq. (25):
 2(h1 + h1 ) h2 0   S2   ( y3 − y2 ) / h2 − ( y2 − y1 ) / h1 
 2(h1 + h1 ) h2 0   S 2   ( y3 − y2 ) / h2 − ( y2 − y1 ) / h1 
 hh2 2(h2 + h3 )
2(h2 + h3 )
h3
h  * S3 = 6 ( y4 − y3 ) / h3 − ( y3 − y2 ) / h2
* S = 6 ( y4 − y3 ) / h3 − ( y3 − y2 ) / h2 
  
 02 h3 2(h3 +3 h4 )   S 43  ( y5 − y4 ) / h4 − ( y4 − y3 ) / h3 
 0 h 2( h + h )   S  ( y − y ) / h − ( y − y ) / h 
 3 3 4    4  5 4 4 4 3 3
Calculando os valores, obtemos o sistema:
Calculando
Calculandoos osvalores,
valores,obtemos
obtemosoosistema: sistema:
 4 1 0   S 2   36 
 4 1 0   S 2   36 
1 4 1  *  S3  =  72 
10 14 14  *  SS34  = 108 72 
     
 0 1 4   S 4  108
Sendo a solução S = {S 2 , S3 , S 4 } = {6.42857, 10.28571, 24.42857} , com
Sendo a solução S = {S 2 , S3 , S 4 } = {6.42857, 10.28571, 24.42857} , com
Sendo
S= S= a 0solução
. S = {S2, S3, S4} = {6.42857, 10.28571, 24.42857},
1 5
S=
com 1 S=S5 =0S. = 0.
1 5
243
Assim, para o primeiro intervalo, x ∈ [0, 1], i = 1, temos: 243
CAPÍTULO 5 – APROXIMAÇÃO POLINOMIAL POR INTERPOLAÇÃO, SPLINE E CURVAS... 353
Assim, para o primeiro intervalo, x ∈ [0, 1] , i = 1 , temos:

a1 =
Assim, ( S 2 − S1 ) / (6h1 ) = 1.07143
b S= para o primeiro intervalo, x ∈ [0, 1] , i = 1 , temos:
=1 1 / 2 0
a1 =
c1 = ( y22 −− yS11)) // h(6
( S h1 ) = 1.07143
1 − ( S 2 + 2 S1 ) h1 / 6 = −0.071429
= bd1 = Sy=
Assim, /
para2
1 = −3 o 0 primeiro intervalo, x ∈ [0, 1] , i = 1 , temos:
 1 1

ac11 =
= ((Sy2 2−−S1 y) 1/ )(6/ hh11) −
= ( S 2 + 23S1 )h1 / 6 =
1.07143 −2 0.071429
2 0 ) − 0.071429( x − 0) − 3 para x ∈ [0,
Sp  Sp
=(x) (=x)1.07143
1.07143 (x (
– 0 )0 (x
x0)−3 + + 0–(0)
x− – 0.071429 (x – 0) – 3, x ∈ [0, 1]
= bd11 = S=
1
1 y/1 2= −03
1

As
c1 =demais h1 − ( S2 + são
( y2 − y1 ) /splines 2 S1 )h13as
/ 6 seguintes:
= −0.071429
x ∈ [0,
As demais splines são( as )
seguintes:( x − 0 ) − 0.071429( x − 0) − 3 para
2
=Sp ( x
d1 = y1 = −3
1 ) 1.07143 x − 0 + 0
=Sp2 ( x) 0.64286 ( x − 13) + 3.21429( x − 1)22 + 3.142857( x − 0) − 2 ,
3
x ∈[
SpAs (x) = 0.64286
2 demais splines são
(x – 1) +as 3.21429 (x – 1) + 3.142857 (x – 0) – 2,
seguintes:
1.07143 ( x − 0 ) + 0 ( x − 0 ) − 0.071429( x − 0) − 3 para x ∈ [0, 1] .
3 2
Sp
= 1 ( x)
x= ∈ [1,
( x)2] 2.35714 ( x − 2 )3 + 5.14286( x − 2)2 2 + 11.50000( x − 2) + 5 , xx ∈
∈[[
3
Sp
=Sp32demais
As ( x) 0.64286splines são( x −as13) seguintes:
+ 3.21429( x − 1)2 + 3.142857( x − 0) − 2 ,
Sp3(x) = 2.35714 (x – 2) +3 5.14286 (x – 2) + 11.50000 (x – 2) + 5,
( x −((1x)x−−+233.21429( 24 , xx ∈∈[[
Sp
x= (xx)) 3]
∈243([2, = −4.07143
)) ++5.14286(
12.21429( x − 3)2 2 + 28.857143( x x−∈3)[1,+2]
3 3
Sp
=
Sp ( x) 0.64286
2.35714 x − 1) 2 +x3.142857( x − 0) − 2 , x −
− 2) + 11.50000( 2) + 5 ,
Sp
Sp43(x)
( x) = 2.35714
Podemos
= – 4.07143
obter (x
( x −uma2 ) –+3)
3
3 + 12.21429
x − 2) 2 +(x
aproximação
3
5.14286( f (2 x+=x28.857143
de– 3)
11.50000( −2.5)
2) + 5via
, (xx ∈
Sp –([2,
= x3) 3]2.5)
= 1
Sp4 ( x) = −4.07143 ( x − 3) + 12.21429( x − 3) 2 + 28.857143( x − 33) + 24 , x ∈ [
+ 24, x ∈ [3, 4]
−4.07143 ( x − 3) + 12.21429( x − 3) 2 + 28.857143( x − 3) + 24 , x ∈ [3, 4]
3
Sp4 ( x) =
Podemos obter uma
Podemos obter uma aproximação aproximação de f(xde =f (2.5)
x = 2.5)
via Spvia (x Sp
== ( x 2.5)
32.5) = 1
b) Com
Podemos obterde
splines uma extremos quadráticos,
aproximação de f ( x = conforme
2.5) via Sp=3 ( xa eq.
3
= (26):
2.5) 12.330 .
= 12.330.

b) (3h1 +
Com 2h1 ) de hextremos 0
quadráticos,   S 2 conforme  ( y3 − ay2eq. ) / h2 − ( y2 − y1 ) / h
splines (26): (26):
2
b) Com
 splines
b) Com splines de extremos
de extremosquadráticos, quadráticos,  conforme

conforme  a eq.a eq. (26):
 h2 2(h2 + h3 ) h3  *  S3 = 6  ( y4 − y3 ) / h3 − ( y3 − y2 ) / h
 (3 h + 2 h ) h 0 h3 + 3hS42)  S
0 S (24 y3 − y2)((/ yyh523 −−−(yyy422 ))−//yhh1 )42 /−−h1((yy42 −− yy31 )) // hh
(3h11+02h1 )1 h2 h23 (2

 hh2 2 2(h2( h + h ) h3 h3 *  S3 = * 6S(3y=4 − 6y3) (/ yh34 −−( y33 )− /yh2 )3 /−h2(y3 − y2 ) / h
2 + 2h3 ) 3
 

Calculando00 osh3 valores,


h3 (2h3 (2 +obtemos
3hh34 )+ 3hS44)o sistema:
S(4y5 − y4) (/ yh45 −−(y44 )−/yh3 4) /−h3(y4 − y3 ) / h
5 1 0  os
Calculando
Calculando  Svalores,
os 2
valores,  36obtemos

obtemos oosistema:
sistema:
Calculando
1 4 1   os
* S3 = 72
 valores,
  obtemos o sistema:
5 1 0   S2   36 
150 1 1 0 5   S
S 2  108 36 
1 44 1 1**S3 S 4= =7272 
Sendo
0 1 5   S4  3 108 
a solução S = {S , S , S } = {4.8, 12, 19.2} , com S= S= 4.8
0 1 5   S 4  108 2 3 4 1 2
Sendo a solução S = {S 2 , S3 , S 4 } = {4.8, 12, 19.2} , com S= 1 S =2 4.8 e com
S m= S= 19.2 ( m = 4 ).
SendoSendo
S m=
+1
Sa= a
m
solução
solução
19.2 ( m S == 4{S S).=, S{SS2 , }S=3 ,{4.8,S4 } = 12,{4.8,
19.2}, 12,com 19.2} , com
S1 = S2 = 4.8 S= 1 e S= 2 4.8
+1 m 2 3, 4
com Assim, Sm + 1 = Sm = 19.2 (m = 4).
S m=
Assim,
+1 S=m 19.2 ( m = 4 ).
Sp 1( x ) = 0 ( x(−x0−
( x ) = 0 3 0 ) + 2.4 ( x2 − 0 ) − 1.4( x − 0) − 3
3 2
x − 0) − 3 para x ∈ [0, 1]
para x ∈ [0, 1]
Sp
Assim,1 ) + 2.4 ( x − 0 ) − 1.4(
( x (−x1)− 1+3)2.4( [1, 2] x ∈ [1, 2]
3
Sp2 2( (x=
Sp )x=) 1.21.2 3
+ x2.4( 1) 2 x+−3.4(
− 1) 2x+−3.4( 0) − x2 − 0) − 2x ∈ para
para
Sp1 ( x) = 0 ( x − 03 ) +3 2.4 ( 2x − 0 )2 − 1.4( x − 0) − 3 para x ∈ [0, 1]
2

Sp33( (x=
Sp x)= ) 1.21.2( x (−x2− ) 2+)36( +x −6(2)x − 2) +x11.8(
+ 11.8( − 2) + x5 − para 2) + 5x ∈para [2, 3] x ∈ [2, 3]
( ) 3+ 9.6( 3) [3, 4] xx∈∈[1,
para 2]
2
Sp ( x=) 1.2 x − 1 + 2.4( x − 1) + 3.4( x − 0) − 2 x ∈para
Sp424( (x)x=)= 0 (0x(−x3− [3, 4]
3
Sp ) +3 9.6(
x − 3)x2 − 3) 2 +x27.4(
+ 27.4( − 3) + x 24− 3) para
+ 24
Sp ( x= ) 1.2 x − 2 + 6( x − 2) 2 + 11.8( x − 2) + 5 para x ∈ [2, 3]
354 CÁLCULO NUMÉRICO COMPUTACIONAL

Assim,
Sp1(x) = 0(x – 0)3 + 2.4(x – 0)2 – 1.4(x – 0) – 3 para x ∈ [0, 1]
Sp2(x) = 1.2(x – 1)3 + 2.4(x – 1)2 + 3.4(x – 0) – 2, para x ∈ [1, 2]
Sp3(x) = 1.2(x – 2)3 + 6(x – 2)2 + 11.8(x – 2) + 5, para x ∈ [2, 3]
Sp4(x) = 0(x – 3)3 + 9.6(x – 3)2 + 27.4(x – 3) + 24, para x ∈ [3, 4]

Podemos obter uma aproximação de f(x = 2.5) via Sp3(x = 2.5)


= 12.550.

c) Com splines de extremos conhecidos, conforme a eq. (27):


Por exemplo: S1 = u = 0 e S2 = v = 24 (que são os valores exatos de
f(x) = x3 – 3 discretizada).
 2(h1 + h1 ) h2 0   S2   − h1u + ( y3 − y2 ) / h2 − ( y2 − y1 ) / h1 
 2( hh + h ) 2(h +hh )  * S  S 6   − h( yu + y2()y/2h−2 y1 ) / h1 
 12 1 2 23 h3
0 =   3 2  1 4 − (yy3 /−h3y−
3) 2 )( /y3h2−−
 0h S*  S   −h6 v + ( y −(yy ) −/ hy −) (/ yh −−y( y) / −h y ) / h 

 2 2(h32 + h3 ) 2(h3 + h43 )  =
   4 3  m 5 44 43 43
 3 3 3 2 2

Calculando
 0 os valores,
h3 obtemos
2( h3 + h4 ) o sistema:
 S 4   −hm v + ( y5 − y4 ) / h4 − ( y4 − y3 ) / h3 
Calculando
Calculando os valores,
 4 1 0   Sos 36  obtemos
valores, obtemosoosistema:
sistema:
2
1 41 10*  S S  = 72 
 4 2   36
3   
 0
1 14 41 * S 4S  =84
72
 
   3  
 0 1a solução
Sendo 4   S 4 S = {84
S1 ,S 2 , S3 , S 4 , S5 } = {0, 6.0, 12.0, 18.0, 24.0}

Assim, a solução S = {S , S , S , S , S } = {0, 6.0, 12.0, 18.0, 24.0}


Sendo
Sendo a solução S = {S11,2 S22, S33, S4,4S5} 5= {0, 6.0, 12.0, 18.0, 24.0}
Sp1 ( x) = 1( x − 0 ) + 0 ( x − 0 ) + 0( x − 0) − 3
3
para x ∈ [0, 1]
Assim,
Assim,
Sp2 ( x) = 1( x − 1) +3 3( x − 1) 2 + 3(
3
2 x − 0) − 2 x ∈ [1,x 2]
parapara
Sp1 ( x) = 1( x − 0 ) + 0 ( x − 0 ) + 0( x − 0) − 3 ∈ [0, 1]
( x −–2 )0)3 +3 6( 2 x − 2) + 24 para x ∈ [2, 3]
3
Sp para xx∈
Sp3 (x)
( x)= = 11(x + x0(x
− 2)– +
0)12(
+ 0(x – 0) – 3 para
2
[0, 2]
1]
Sp12 ( x) = 1( x − 13) + 3( x − 1) 2 + 3( x − 0) − 2 ∈ [1,
Sp ( x) = 1( x − 3) + 9( x − 3) + 27( x − 3) + 24 para x ∈ [3, 4]
2

Sp42(x) = 1(x – 1)33 + 3(x – 1)2 2 + 3(x – 0) – 2, para x ∈ [1, 2]


Sp3 ( x)= 1( x − 2 ) + 6( x − 2) + 12( x − 2) + 24 para x ∈ [2, 3]
Podemos obter–uma f ( x = 2.5)
Sp
Sp34(x)
( x) =
= 11(x ) ++aproximação
( x − 32) 9(6(x + de
– 22)+2 27(
12(x
x − 3)–+2)
via
24+ 24,
Sp=
3x( x
para ∈2.5)
=
x [3, [2, 12.625 .
4] 3]
33
x − 3) para ∈
Sp4(x) = 1(x – 3)3 + 9(x – 3)2 + 27(x – 3) + 24, para x ∈ [3, 4]
d) Podemos
Com splines obter
de uma aproximação
extremos de fa( xpartir
extrapolados = 2.5)das
via duas
Sp= = 12.625 .
3 ( x curvaturas
2.5)
Podemos
internas obterconforme
vizinhas, a eq. (28): de f(x = 2.5) via Sp3(x = 2.5)
uma aproximação
= 12.625.
d) Com splines de
 h −( h + h ) h
extremos extrapolados
 S  0
a partir das duas

curvaturas
2 1 2 1 1
  S  (y − y ) / h − (y − y ) / h 
 h1 2 ( h1 + hvizinhas,
internas 2) h2 conforme a eq.
 (28):
 2  3 2 2 2 1 1

 h2 2 ( h2 + h3 ) h3  *  S3 = 6  ( y4 − y3 ) / h3 − ( y3 − y2 ) / h2 
   
Sp44 ( x) = 1( x − 3) + 9( x − 3) + 27( x − 3) + 24

Podemos obter uma aproximação de f ( x = 2.5) via Sp=


3(x
355 12.625 .
2.5)
=
CAPÍTULO 5 – APROXIMAÇÃO POLINOMIAL POR INTERPOLAÇÃO, SPLINE E CURVAS...3

d) Com splines de extremos extrapolados a partir das duas curvaturas


d) Com splines de extremos extrapolados a partir das duas curvaturas
internas
internas vizinhas, conforme aa eq.
vizinhas, conforme eq. (28):
(28):

hh22 −−((hh11 ++ hh22 )) hh11  SS11   00 


 hh1 22 ( hh1 ++ hh2 ) h    S    ( y − y ) / h − ( y − y ) / h 
 1 1 2 h22 S
  22   ( y33 − y22 ) / h22 − ( y22 − y11) / h11 
 hh22 22 ( hh22 ++ hh33 ) hh33  **  SS33 == 66 (( yy4 −− yy3 )) // hh3 −− (( yy3 −− yy2 )) // hh2 
    ( y − y ) / h − ( y − y ) / h 
4 3 3 3 2 2

hhmm−−11 2(hhmm−−11 ++ hhmm )) hhmm  SS44 


 2(    ( y55 − y44 ) / h44 − ( y44 − y33 ) / h33 
 hhmm −−((hhmm−−11 ++ hhmm )) hhmm−−11  SS55  00 

Observamos que esse sistema é quase tridiagonal, exigindo apenas


Observamos que esse sistema é quase tridiagonal, exigindo apenas
duas
duas alterações
alterações no
no algoritmo
algoritmo(ambos coeficientes
(ambos adicionais
coeficientes destacados
adicionais
destacados
em negrito):em negrito):
1 −2 1
 S11  0 
1 4  S 
1  36 
   22   
 1 1  **  S33  =  72 
4
     
 4 1  S 44 
1 108
 1 −2 1  S55   0 

Sendo a solução:
Sendo a solução:
S = {S , S , S , S , S } = {−4.6957, 3.9130, 12.5217, 18.0000, 23.4783} . 23.4783} .
SS == {S
{S11,, SS,22 ,S S, 33S, ,SS44 ,} S=55}{–4.6957,
1 2 3 4 5
= {−4.6957, 3.9130,
3.9130, 12.5217,
12.5217, 18.0000,
18.0000, 23.4783}.
Assim,
Assim,
1.43478 ( xx − 0 )3 − 2.3478 ( xx − 0 )2 +
3 2
Sp11 (( xx)) 1.43478
=
Sp
= −0 − 2.3478 −0 x ∈ [0, 1]
1.9130( xx −
+ 1.9130( 0) −
− 0) −33 para
Sp1(x) = 1.43478(x – 0) – 2.3478(x – 0) + 1.9130(x – 0) – 3 para
3 2

x ∈ [0, 1] 245
245
Sp2(x) = 1.43478(x – 1)3 + 1.9565(x – 1)2 + 3.6087(x – 0) – 2, para
x ∈ [1, 2]
Sp3(x) = 0.91304(x – 2)3 + 6.2609(x – 2)2 + 11.8261(x – 2) + 5, para
x ∈ [2, 3]
Sp4(x) = 0.91304(x – 3)3 + 9.0000(x – 3)2 + 27.0870(x – 3) + 24,
para x ∈ [3, 4]
Podemos obter uma aproximação de f(x = 2.5) via Sp3(x = 2.5)
= 12.592.
356 CÁLCULO NUMÉRICO COMPUTACIONAL

Para efeito de comparação, temos que a f(x) discretizada corresponde a


f(x) = x3 – 3, cujo valor exato de f(x = 2.5) = 12.625. Assim,
a) com spline de extremos lineares, temos Sp3(2.5) = 12.330;
b) com spline de extremos quadráticos, temos Sp3(2.5) = 12.550;
c) com spline de curvatura de extremos definidos, temos Sp3(2.5)
= 12.625 (atribuídos valores exatos nos extremos); e
d) com spline de curvatura extrapolada nos extremos, temos
Sp3(2.5) = 12.592.

Logo, para esse exemplo com curvatura conhecida e exata nos extre-
mos, a spline aproximadora e a função aproximanda f(x) são iguais. Generi-
camente, sempre que temos disponíveis os extremos S, é recomendável que
eles sejam usados, conforme a eq. (27).

Considerando um caso geral, quando as curvaturas nas extremidades


não são conhecidas previamente, a interpolação com spline de curvatura
extrapolada nos extremos gera um resultado mais realístico, com menor
erro de truncamento.

O algoritmo de interpolação por splines cúbicas para os quatro tipos de extremi-


dades – linear, quadrático, de extremos definidos e extremos extrapolados – está
disponível no Caderno de Algoritmos no arquivo Cap5Graf5.10Splines.seno.m.

Apresentamos, nos Gráficos 5.9 e 5.10, dois exemplos de aplicação


de splines: a representação do contorno superior do pato voando do Gráfico 5.6
e a da função sen(x), respectivamente.
CAPÍTULO 5 – APROXIMAÇÃO POLINOMIAL POR INTERPOLAÇÃO, SPLINE E CURVAS... 357

357
Gráfico Grafico Curva do Gráfico 5.7 representado por meio de m = 20 splines cúbicas com
5.9 – 5.9
extremos quadráticos, em linha contínua, e interpolador P20(x), em linha tracejada

--- P20 ( x) interpolador polinomial


m = 20 Splines cúbicas

Fonte: Elaboração
f ( x) =própria. (
sen exp 3 coth( x)
 )
316
Gráfico 5.10Grafico
– Função
5.3 f(x) = sen(x) em x ∈ [–π, + π] representada por meio de m = 17
splines cúbicas com extremos quadráticos, em linha contínua, e P17(x), em linha tracejada

Erro = | Pn ( x) − f ( x ) |

Fonte: Elaboração própria. 11

339
Observe que as splines cúbicas formaram representações suaves nos
 f :ℝ x ℝ → ℝ
Gráficos 5.9
 e 5.10, gerando curvas com derivadas e curvaturas suaves.
 ( x , y ) → z = f ( x, y )
No Gráfico 5.10, a interpolação polinomial também gerou resultados
358 CÁLCULO NUMÉRICO COMPUTACIONAL

suaves (linha tracejada, não visível), mas, no Gráfico 5.9, a interpolação gerou
sinuosidades muito acentuadas, enquanto as splines geraram curvas suaves.

5.4 TRATAMENTO DO FENÔMENO DE RUNGE


No campo específico da análise numérica, o fenômeno de Runge
é um problema de oscilação em funções interpoladoras polinomiais que
ocorre quando usamos interpolação com polinômios de grau elevado,
como mostra o Gráfico 5.11. Carl Runge descobriu esse fenômeno quando
investigava erros na interpolação polinomial para aproximar certas funções,
como a função assintótica f(x) = 1 / (25 * x2 + 1).
358
Grafico 5.11

Gráfico 5.11 – Representação do fenômeno de Runge


n=5
n=7
f ( x)

Fonte: Fenómeno de Runge (2013).

Observe que a curva em linha continua é a função exata f ( x ) = 1 / (25 * x 2 + 1) ; em traço-ponto é


Observe quepolinomial
uma interpolação a curvade grau n em
= 5 ; e a linha contínua
curva em linha tracejada é uma é a função exata
interpolação
polinomial de grau 7 (ambas interpolações com pontos igualmente espaçados).
f(x) = 1 / (25 * x + 1); a tracejada é uma interpolação polinomial de grau
2 n =

n = 7, com 8 pontos de interpolação igualmente espaçados; e a curva em


traço-ponto é uma interpolação polinomial de 5o grau, com 6 pontos de
interpolação igualmente espaçados.
Quando usamos m = n + 1 “nós” equidistantes na interpolação polino-
mial de grau n, o erro máximo aumenta quando a ordem do polinômio
interpolador aumenta, em princípio, contrariando o teorema de Weierstrass,
ou seja, as sinuosidades aumentam com o grau n do interpolador, como
CAPÍTULO 5 – APROXIMAÇÃO POLINOMIAL POR INTERPOLAÇÃO, SPLINE E CURVAS... 359

demonstram os Gráficos 5.11 e 5.12. Podemos amenizar essas sinuosi-


dades usando n splines cúbicas ou interpolação polinomial de grau n sobre
m = n + 1 “nós” dos polinômios Tchebychev de grau m, em vez de m “nós”
equidistantes, para fixar o polinômio interpolador de grau n (n = m – 1).

No Capítulo 6, apresentaremos as propriedades dos polinômios Tchebychev e seus “nós” (raízes dos
 polinômios de Tchebychev), que, mostraremos, estão mais concentrados nas extremidades do intervalo,
de modo que o polinômio interpolador fica mais “amarrado” à f(x), gerando menos sinuosidades.

No Exemplo 5.12, vamos aplicar splines cúbicas e interpolações polinomiais à


função f(x) = 1 / (25 * x2 + 1) visando reduzir os erros das aproximações.

Exemplo 5.12: aproxime a função f(x) = 1 / (25 * x2 + 1) por meio da


interpolação polinomial P16(x) com n + 1 =17 “nós” (pontos) equidistantes
no intervalo normalizado [–1, +1], por meio de interpolação polinomial
P16(x) com m = 17 pontos definidos pelos “nós” (raízes) dos polinômios
de Tchebychev T17 de grau m = 17 e por meio de n = 16 splines cúbicas.
Apresente os resultados em um gráfico e calcule os erros máximos em
cada caso.
Solução:
Obtida via algoritmo Cap5Graf5.12FenomenoRunge.m disponível no
Caderno359
de Algoritmos:
Grafico 5.12

Gráfico 5.12 – Representação das aproximações do Exemplo 5.12


interpolação P16 ( x ) sobre pontos equidistantes
interpolação P16 ( x) sobre “nós” de Tchebychev
--- m = 16 Splines cúbicas
raízes/nós Tchebychev T17

x
Fonte: Elaboração própria.
360 CÁLCULO NUMÉRICO COMPUTACIONAL

Observe que a interpolação polinomial com pontos x definidos pelos “nós”


do polinômio de Tchebychev reduz gradativamente as sinuosidades com o
aumento do grau n (linha contínua espessa), mas as splines cúbicas conse-
guem a melhor representação (linha tracejada), que fica realmente muito
próxima da função exata (linha não apresentada no gráfico), pois apresenta
o menor erro de truncamento máximo:

Erro máximo do polinômio com m “nós” (pontos) equidistantes é 14.370


Erro máximo do polinômio com m “nós” (pontos) de Tchebychev é 0.032603
Erro máximo de m – 1 splines é 0.0037367

As splines são essencialmente funções polinomiais (interpoladores),


aplicadas em cada subintervalo, então podem apresentar deformações
em regiões onde a curva não se comporta como “função”, por exemplo,
quando uma curva fica muito vertical, como no semicírculo apresentado
no Gráfico
360 5.13.

Grafico 5.13

Gráfico 5.13 – Spline representando um semicírculo

--- P16 ( x) interpolação


16 Splines cúbicas

Fonte: Elaboração própria.


CAPÍTULO 5 – APROXIMAÇÃO POLINOMIAL POR INTERPOLAÇÃO, SPLINE E CURVAS... 361

Nesses casos, as curvas propostas por Pierre Bézier são mais ade-
quadas, porque uma função y = f(x), ou mesmo uma relação não funcional,
é separada em duas funções, de modo parametrizado, com x = x(t) e y = y(t),
em que t é um parâmetro independente. Assim, x = x(t) e y = y(t) sempre
serão funções bem comportadas.

5.5 APROXIMAÇÃO DE NÃO FUNÇÕES VIA


PARAMETRIZAÇÃO
As técnicas de aproximação que abordamos até este momento
possibilitam o traçado de caminhos que sejam funções, mas se o caminho, ou
a curva, for não funcional, como o esboçado no Gráfico 5.14, precisaremos
parametrizá-lo
361 como duas funções.
Grafico 5.14
Gráfico 5.14 − Curva não funcional

Fonte: Elaboração própria.

Para aproximar um caminho que seja não função, efetuamos os passos:


362 CÁLCULO NUMÉRICO COMPUTACIONAL

Primeiro passo: escolhemos m + 1 pontos de referência do caminho

xi x1 x2 ... xm + 1

yi y1 y2 ... ym + 1

Segundo passo: adotamos um novo parâmetro independente t ∈ [0, 1],


tomamos m + 1 valores ordenados ti, em que t1 = 0, ti + 1 = ti + h, h = (1 – 0) / m,
com i = 1, 2, ..., m, e geramos dois conjuntos de pontos, representando-os
como duas funções discretizadas:

ti t1 t2 ... tm + 1

xi x1 x2 ... xm + 1

ti t1 t2 ... tm + 1

yi y1 y2 ... ym + 1

No Gráfico 5.14, tomando a relação não funcional:

xi 0 1 0 –1

yi 1 1/2 0 –1/2

E, parametrizando-a, resulta em:

ti 0 1/3 2/3 3/3

x(ti) 0 1 0 –1

ti 0 1/3 2/3 3/3

y(ti) 1 1/2 0 –1/2


te que essas duas novas tabelas de pontos anteriores agora são funções com
te que essas duas novas tabelas de pontos anteriores agora são funções com
iável independente t , isto é, cada
CAPÍTULO 5 – APROXIMAÇÃO POLINOMIAL x, INTERPOLAÇÃO,
par (POR y ) do caminho éEreescrito
SPLINE CURVAS... 363função
como
riável independente t , isto é, cada par ( x, y ) do caminho é reescrito como função
t : ((xx,, yy)) == ((xx((tt),), yy((tt))
)) ..
t:
Note que essas duas novas amostras de pontos agora são funções com
variável independente t, isto é, cada par (x, y) do caminho é reescrito como
rceiro
rceiro passo:
função de t: (x, y) pela
passo: obtemos,
y(t)). mais adequada ao problema, as duas
= (x(t),técnica
obtemos, pela técnica mais adequada ao problema, as duas
oximadoras
roximadoras de x(t )) ee yyobtemos,
de x(tpasso:
Terceiro ((tt )) .. Por
Por pela
exemplo, aplicando
técnicaaplicando
exemplo, aa interpolação
mais adequada interpolação
ao problema, dededuas
as Gregory-
Gregory-
wton aproximadoras de x(t) e y(t). Por exemplo, aplicando a interpolação de
wton nos
nos dois
dois conjuntos
conjuntos de
de pontos
pontos anteriores,
anteriores, resultam
resultam estes
estes dois interpoladores
dois
Gregory-Newton nos dois conjuntos de quatro pontos anteriores, resultam
interpoladores
grau n = 3 :
grau n = 3 :estes dois interpoladores:
xx((tt)) ≅≅ PX
PX 33 ((tt )) =
= 00 + 3(tt −− 0)
+ 3( 3(tt −− 0)(3
0) −− 3( 1)++((tt −−00))(3
0)(3tt −−1) (3tt−−1)(3
1)(3tt−−2)
2)

yy((tt)) ≅≅ PY
PY33 ((tt )) =
11 −
= 2)(tt −− 0)
(3 // 2)(
− (3 0)

arto passo:
uarto passo: plotamos
plotamos os pontos
pontos de interesse
interesse ppk == ((PX PYn((ttk)))),, ∀∀t tk∈∈[0,
PX (ttk),), PY [0,1]1]
Quarto passo:osplotamos osdepontos de interesse
k pk =nn((PX
k
n
(tkn), PY
k
n
(tk)),k ∀
a gerar tk ∈ [0, 1]desejado.
para gerar No
o caminho
Gráficodesejado. Para a função do Gráfico 5.14,
ra gerar oo caminho
caminho desejado. No Gráfico 5.14, usando
5.14, usando os interpoladores
os interpoladores dopasso
do passo
usando os interpoladores do passo anterior, temos, por exemplo, para tk = 1/2,
erior, temos,
terior, temos, por
por exemplo,
o ponto exemplo, para
pk = (0.625,para 1/ 22 ,, oo ponto
ttkk == 1/
0.25). ponto ppk == (0.625, 0.25)..
(0.625, 0.25)
k

STAQUE Todos
ESTAQUE os
os algoritmos
TodosTodos algoritmos das
das
os algoritmos técnicas
dastécnicas deaproximação
de
técnicas de aproximação
aproximação de funções
de funções
de funções por por
por
erpolação interpolação polinomial e por splines cúbicaspodem
podem serser
estendidos para para
erpolação polinomial e por splines cúbicas cúbicas podem ser estendidos
estendidos para
aproximação de não funções via parametrização.
253
253

5.6 APROXIMAÇÃO POR CURVAS DE BÉZIER


A curva de Bézier é a base matemática de sistemas de computação
gráfica como o CorelDRAW® (CURVA DE BÉZIER, 2016). Foi desenvolvida
pelo engenheiro Pierre Bézier, na década de 1960, então funcionário da
Renault®, para simulação de layout de automóveis.
A aproximação por curvas de Bézier foi concebida e algebrizada
para representar (aproximar) caminhos que não sejam funções, não sendo
necessária a parametrização prévia como nos casos de interpolação e de
splines, pois já é uma aproximação parametrizada na sua origem.
364 CÁLCULO NUMÉRICO COMPUTACIONAL

Para traçar um caminho definido a partir dos pontos do Gráfico 5.15, por
exemplo, usando a aproximação de Bézier, devemos efetuar os passos a seguir.
Primeiro passo: tomamos m + 1 pontos referenciais do desenho desejado
⇒ pi = (xi, yi), i = 1, ..., m + 1 e os expressamos na forma parametrizada
⇒ pi = (xi(t),
361 y (t)), em que t ∈ [0, 1], conforme o Gráfico 5.15:
i
Grafico 5.15

Gráfico 5.15 – Pontos na forma parametrizada

y p3 = ( x3 (t ), y3 (t ))

p2 = ( x2 (t ), y2 (t ))

p1 = ( x1 (t ), y1 (t ))

p4 = ( x4 (t ), y4 (t ))

Fonte: Elaboração própria


x
Fonte: Elaboração própria.
Segundo passo: subdividimos os m + 1 pontos referenciais em subconjuntos com
Segundo passo: subdividimos os m + 1 pontos referenciais em subconjuntos
(k + 1) pontos, 2 ≤ k < m + 1 (se necessário, nos casos de termos mais do que quatro
com (k + 1) pontos, 2 ≤ k < m + 1 (nos casos de termos mais do que
pontos).quatro
Cadapontos). Cadasubconjuntos
um desses um desses subconjuntos irá representar
irá representar determi-
determinado comportamento
nado comportamento do caminho.
do caminho.
Terceiro
Terceiro passo:passo:
parapara
cadacada subconjuntode
subconjunto pontos pip= =(x(i,xy,i),y=
de pontos i = 1, k +k1,+ 1 , obtemos
i ...,1,...,
i i i),
obtemos o seu polinômio aproximador de grau k expresso na forma de
Bernstein: aproximador de grau k expresso na forma de Bernstein:
o seu polinômio

 k

k  BX

= k (t ) ∑C (1 − t ) i
k
k −i i
t xi +1
Bk ( t ) ∑C (1 − t )
i k −i i i =0
= k t pi +1 ⇒  k
17
(29a) (29a)
 BY
i =0
=
 k
(t ) ∑C (1 − t )
i
k
k −i i
t yi +1
i =0
i k!
Em que Ck = são combinações e a eq. (29a) são os polinômios resultantes.
(k − i )!i !
Expressando a eq. (29a) na sua forma matricial equivalente, temos:
( xi , yi )  k

k  k

BX
= ( t ) ∑ Cki (1 − t ) k −i t i xi +1
365
( ) ∑
CAPÍTULO 5 – APROXIMAÇÃOi POLINOMIAL
k −i i POR INTERPOLAÇÃO, SPLINE i = 0E CURVAS...
346 B
= k t C k (1 − t ) t pi +1 ⇒  k
 BY
i =0

=k (t ) ∑ Cki (1 − t ) k −i t i yi +1
( xi , yi )
i =0

k!
Em( xique
Em , yi )Ck =
que
i
sãocombinações
são combinaçõese ase eqs.
a eq. (29a)
(29a) sãosão os polinômios resu
os polinômios
(k − i )!i !
de grau k resultantes.
Expressando
365 a eq. (29a) na sua forma matricial equivalente, temos:
Expressando as eqs. (29a) na sua forma matricial equivalente, temos:
(1 − t )k 
 
 (1 − t )k −1 t1 
Bk ( t ) = Ck0 p1 Ck p2 … Ck pk +1  *
1 k

 ⋮ 
 
t k 

  (1 − t ) k 
  k −1 1  (1 − t ) k 
  (1 − t ) t   
 BX k ( t ) = Ck x1 Ck x2 … Ck xk +1  *  ⋮  BX ( t ) = C 0 x C1 x … C k x  (1
0 1 k
(29b)
− t ) k −1 t1 
 k 1 k k +1  
 (1 − t ) k  k    (2
k k 2
 
   t     (29b
k   (1 − t ) t
k
−1 1
(1 − t ) t    
k


B ( t ) = Ck0 p1 Ck1 p2 … Ckk pk +1   =  k −1 1 
k    (1 BX − t )k( t ) = C 0 x C1 x … C k x  (1 − t ) t(1  − t )k 
k  k 1 k k +1  
(1 −t )kk     k −1 1   
k 2
 
k −1 1 
 BYk ( t ) = Ck0 y1 Ck1 y2 … C  
k t  (1 
   − t ) t  (1 (29b)
− t ) t
(1 −yt ) k −1t1 *  BYk ( t ) = Ck0 y1 Ck1 y2 … Ct kk yk +1    
k

Ck0 p1 Ck1 p2 … Ckk pk +1   k k +1   =


Bk ( t ) =  ⋮    
    (1 − t ) k  
   k  
 t
k  t
  
 
  0   k −1
(1 − t ) t 


1 k
t 
BYk ( t ) = Ck y1 Ck y2 … Ck yk +1 
 1 k

  
De acordo com o grau do polinômio  de Bernstein, podemos
 gerar
 vários tipo
368
k
 
 t 
De acordo com o grau do polinômio de Bernstein, podemos gerar vários

de curvas de Bézier:
tipos
De de curvas
acordo com de Bézier:
o grau do polinômio de Bernstein, podemos gerar vários tipos
, de 1 para 2
de curvas de Bézier: e de 3 para 4 (em B3 (t ) ),
kk == 22 ⇒ ⇒Bézier
Bézier quadrática
quadrática(3 pontos
(3 pontosreferenciais):
referenciais):
386
kB2=(2t ) ⇒ − t )(2−quadrática
0) 0 (2 −1) 1
= 1(1
Bézier t p1 + 2(1 −(3t )pontos + 1(1 − t )(2− 2) t 2 p3 (30)
t p2 referenciais): (30
Referenciar:
1(1 − t )(2−Existem
B2 ( t )é=equivalente
que t p1 a+ 2(1também
0) 0
− t )(2−1) t1 p2 +os
1(1polinômios
− t )(2− 2) t 2 p3 de Tchebychev de
(30)grau n
ordem
que (POLINOMIOS
que éé equivalente a de Tchebychev. 2016)
 BX 2 equivalente
( t ) = 1(1 − t )(2a−0) t 0 x1 + 2(1 − t )(2−1) t1 x2 + 1(1 − t )(2−2) t 2 x3
BX 2 ( t ) = 1(1 − t ) (2 −t0) x10 + 2(1 − t )
(2 − 0) 0 (2 −1) 1
t x + 1(1 − t )(2− 2) t 2(2x3− 2) 2
 BY2 ( t ) =hiper
Incluir 1(1 − t ) link t y1em
+ 2(1 − t )(2−1)2 t1 y2 +de1(1Tchebychev.
POLINOMIOS − t ) t y3 2016
 BY2 ( t ) = 1(1 − t ) t y1 + 2(1 − t ) t y2 + 1(1 − t ) t y3
(2 − 0) 0 (2 −1) 1 (2 − 2) 2

Desenvolvendo para aplicação computacional, temos:


393
Desenvolvendo para aplicação computacional, temos:
 xx ( t ) = x + t ( bx + t * ax )
 xx ( t ) = x1 1+ t ( bx + t * ax ) ⇒ ∀ t ∈ [ 0, 1]
TC
 yy3 ((Tti)) =
 yy
= 1.26606587775200
y1 + t ( by + t * ay ) ⇒ + 1.1303182079849701
T0 ∀ t ∈ [ 0, 1] T1 + 0.271495339534075 T2
(31)
(31
( t ) =y1 + t ( by + t * ay )
+ 0.0443368498486627 T3
Em que
Em que
B2 ( t )B=22 1(1
( t ) −= t1(1
) − tt) p(21−+0)t 2(1
p0 1 −
+1 t2(1
) − t ) p2(2+t−1(1
p −+t21(1
) − tt) p3 (2t −p2)3 3
(30) (30) (30)
k =kB2=(⇒ 2 ⇒ Bézier Bézier quadrática tquadrática p1 + 2(1 −(3 t ) (3
pontos pontos
t p2 +referenciais):
1(1referenciais):
2 t ) = 1(1 − t )
1) 21
− t) t 2 p3 (30)
que que
que ééequivalente
equivalente
equivalente a(2t−00)pta0+a a
B2 éque
Btequivalente
(que ) (=té
)1(1= 1(1
− t ) −(2 − 0)
t ) p 2(1+ 2(1
− t )
− (2 −1)(2 −
t ) t 11) 1
p t +p 1(1 + 1(1
− t )
− (2 − 2)(2 −22) 2
t ) t p t p
366 é equivalente a0−0)0 0 (2−1) 1 (2−1)(22−11) (221 −1) (21− 2) 2(2CÁLCULO COMPUTACIONAL (30)
(30)
2 1 1 3 3
 BX 2  ( t ) =2221(1
BX
BX ( t(t)t)−=)=t1(1 1(1
=)1(1 −−tt)−t )xt−1 )0)−+(20)t2(1
(2 − 0) 0(2(2
tx1xt−+1 t+2(1
x)12(1
+− t2(1
−)xt2)−+t1(1 tx)2t −+xt21(1
)t+ −1(1
x2tt)+−x−1(1 2) (22− 2) NUMÉRICO
3t ) t − x3tt)2(2x3− 2) t 2 x3
 que que é equivalente
é equivalente a(2−0)a 0
BX
((t(tt)t))−=)==t=1(1
(2 −1) 1
(2 − 0)− 0t(2)(2
1(1 0 t0 x1 +(22(1 −1) − 1 (2t−)1) 11) t1 x2 (2 +1−−1(1 −y−t2))(2t(22−−y2)2) t22(2x−32) 2
 BY2( tBY
) =22221(1 )t −)y0)t−1(2)0)−+−(20)0t0)2(1 2) 2(2
BY )1(1 −−t(2
1(1 t− −ty
0)y−
10 t+
0 t+
2(1
y) 2(1− t )
2(1yt ) +
(2 t t y
−1(1
) (2−+
t t1(1
−y1))t y
1(1 tt) 3t−)2)(2− 3tt)2 y3 t y
+ 2 (21(1
− − + +−
 BX 
2 ( t2) (t=t )1(1
 BX − t−)−tt))para
(2 −t 0)xt0 +x 2(1 − t −)−ttcomputacional, 1 1 2 2
(2 −1)(2 −11) 1 2 −22)
1(1
==1(1 2(1
y 1 ++2(1 ))(2t−1)xt2t1 +yx21(1 − t )−− tt))temos:
1(1
++1(1 (2t− 2)xt2 x
3
 2 ( ) para para
Desenvolvendo
BY
 Desenvolvendo
Desenvolvendo
Desenvolvendo aplicaçãoaplicação
1 t1 aplicação
computacional,
computacional,
2 temos:temos: 3 t3 y3
(2 − 0)(2para
−00) 0 aplicação
(2 −1)(2computacional, temos:
 BY ( t2) (=t )1(1= 1(1
Desenvolvendo
2BY
 xx (Desenvolvendo
t)xx
− t )− t ) t para −11) 1
+aplicação
yt1 +y12(1
+para
− t )− t ) t y2t computacional,
(2 − 2)(2 −22)
2(1 2
+y21(1
t * ax )aplicação computacional, temos:
− t )− t ) t yt3 y3 temos:
+ 1(1
xx ((1t )) =
t (xbx
x11 + t(( bx +) t * ax
= xt += ++t tbx* ax
 
 Desenvolvendoxx ( t ) = x + t ( bx +ayt *⇒ ), ∀)⇒
ax [0,∀
t ∈∀ 1][ 0, 1]
t∈ (31)
∀[t0,∈1[]0, 1]
)xx
Desenvolvendo para
ay+para (31) (31)
 yy ( t yy (ytt1)+= t (yxby +tt(t(by +)t t*aplicação
)aplicação
) ⇒computacional,
computacional,
⇒t ∈
temos:
temos:
⇒ ∀ t ∈ [ 0, 1[] ]
= = 1+
11 + *bx * ax (31)
yy ( t ) = y1 + t ( by + t * ay )
 xx(xx
yy
t ) ( (
t
= t)x)==
+ xty(
+ +
bx
t ( t
bx
+ (tby
+ ax
t+ ) t
ax * ay )
) (31)
 que
Em Em 
 yy que( t ) 1=y11 + t ( by + t * ay ) ⇒ ⇒
1 * *
∀ t∀∈t[ 0,
∈ [10,] 1]
 EmEm  que (31)
(31)
 yyEm
 Em
bx
= =(yyt ) (que
=t )y=
2bx( xque 1 +y1t (+by
t (+
2 (xx1 2) − x1 )
que byt +
* ayt *)ay )
2 −
 = bx 2 ( x2 − x1 )

ax
Em= xax 2x122 −+2xxx32−+xx3
1 −que
=
Em
=que
=bx ( 2 1)
ax =x1( −222x2 1+)1x3
bx 2 x − x
by
= bx=
=  (2y=
ax
by
2bx
ax (2=x2−2x2x1((y1−yx12−
)2x2−1−2x)y2x11+2))+x3 x3
   
ay
ax == by
ax
ay
y1 x−= 22 yy2(−−xy+222y+ y−32 xy++1 )yx3
= 1 −x112
= 2 x
by 2( y −−y y)
 =y1 (−222y2 1+ 1y)3
2 3 3
=
=  by
ay 2 y
= by= by
ay2=
ay (= y2y2y1( −y− 22y−12y)2yy1+)+y3 y
  1 2 3

k ay
= 3k⇒ ay
= y= − y 2
⇒1 Bézier
= 31Bézier − y 2 +y
2 cúbica y + y
2 3 cúbica3 (4 pontos
(4 pontos
referenciais):
referenciais):
B3 ( t )kB=3=1(1
( t3) −=⇒
⇒)(3Bézier
t1(1− 0) 0(3− 0) 0
− tt) p1 +cúbica
Bézier t 3(1
cúbica )(3(4
p1 −+ t3(1 −1) 1 (3−1) 1
t ) ppontos
−(4 2 +t 3(1
pontos
(3− 2) 2(3− 2) 2
p2referenciais
−+ t3(1 − tt) p3 +tcomo
)referenciais): (3−3) 3(3−3) 3
p3 −+t1(1
1(1 )no t ) p4 t p45.15):(32) (32)
− Gráfico
= 3é ⇒
k equivalenteBézier cúbica (4 pontos referenciais):
k =( t3
que éque
B ) =equivalente
3 ⇒ t )a(3−0) t 0apcúbica
1(1 −Bézier + 3(1 − t(4
)(3−1)pontos
t1 p + 3(1referenciais):
1 − t )(3− 2) t 2 p + 1(1 − t )(3−3) t 3 p
2 3 4 (32) (32)
k =kB3=(⇒ t3) = ⇒ Bézier
1(1 Bézier
− (3cúbica
− 0) cúbica
0 (4 (4pontos pontos
(3−1) 1 referenciais):
(3t−)0) 0(3−t0) p0 + 3(1(3−−1)t )1 (3−1)t 1p + 3(1
referenciais):
(3−−
(3− 2) 2
2) t2)(3− 2) t2 p +(3 1(1
−3) −3(3t ) (3−3) 3
−3) 3 t p (32)
 BX queB(3BX
t ) =té ( tequivalente
1(1=) −1(1
=t1(1
) −−t t)t)(3x−10)+tta3(1
01x1 −
p1++t3(1
)3(1 − t−)xt2)+(3t3(1 −x +1 t3(1
1)22 − ) − 3(1tt) x3−+tt1(1 x(33 −−+32)t1(1
)t 2 −p t )+x41(1t −x4t )(34 −3) t 3 p
3
 B3 (B 3 ( 3)
t3) (=t )1(1
= 1(1 (3− 0)(3−00) 0
− t )−(3−t0)) t0(3p−t0)1a+p0 13(1 (3−1) (3− 11) 1 t p2 +(3
− t(3)−−1)t )1 (3t −1)pt21+p23(1
+ 3(1 − 2)(3−22) )2
− t )− t ) t p2t3 +p31(1
+ 3(1 (3−3)(3−33) 3
− t )− t ) t pt p
+(31(1 3 4
(32)
(32)
(tBX
que
 BY3que
 ) =3éé1(1
BY ( tequivalente
)t −==t1(1
equivalente
) − tt) y1(3+−t0)a 3(1y10 −+ t3(1
) − t ) y2 +(3t−3(1 )(3−−2)tt)2(3y−32)+t(31(1
y2 1−+ t3(1 −y2)3 − ) −−3)t )3(3y−43) t 3(3y−443) 43
+2t1(1
que

que
que 3é(equivalente
 é equivalente
é
) 1(1 − t )a(3−0)at 0ax1 + 3(1 − t )(3−1) t1 x2 + 3(1 − t )(3−2) t 2 x3 + 1(1 − t )(3−3) t 3 x4
equivalente
1)

 BX 3 ( t ) = 1(1

Desenvolvendo
Desenvolvendo para − tpara − 0) t0aplicação
)(3aplicação x1 + 3(1 − tcomputacional,
)(3−1) t1 x2 + 3(1
computacional, temos: − ttemos:
)(3− 2) t2 x3 + 1(1 − t )(3−3) t 3 x4
BY 3 ( t()t = −(3t−−)0)(3t )−0(30)t−0)0yt1 0+x3(1 (3t−)1)−(3−1t1))t 1y2 +
(3−1) 13(1 − t )
22)t 2 y3 +t1(1
(3− 2) 2 − t )
) 1(1 −3(1 (3−33) t 3ty)4
(3−3) 3
 BX BX
BX ( t ) ( = t )1(1= = 1(1
− 1(1t )− t (3−t 0)xt0 +x3(1
) + +
3(1
− t )
− t ) (3t−1) x t1+ x t
3(1+ x
3(1
− t+)
− (33(1
t )(3t− 2)xtt)2+
− 2)(3−−
x 1(1
+ 1(1
− x
t )−(3+
−3)
t )1(1
(3t−3)x−t 3x t x4

 xx ( t)BY xx
3= (x33t1()+t=
3
)t=(
xcx11(1
++t − (t cx(tbx)++t (tbx t*1axy+11)t+)* 3(1
ax ) −
1
) t ) t2 y22 + 3(1 − t ) t3 y33 + 1(1 − t ) t4 y44
2 3
  Desenvolvendo
 para 0 aplicação ⇒ ∀computacional,
⇒t ∈(3∀ [−0,1)tt∈11]y[0,+1(3]3(1 temos: (3− 2) 2 (3−3)(3−33) 3 (33) (3−3)(33)
 yy
 BY
(
 Desenvolvendo 
t



)
3
BY
BY
yy=( t(3y)3t1(=
)(t+= t)
t)1(1
=(y=
cy
1
−+1(1
1(1 −t−by
t+t)−(t(3cy
(
(3− 0)
)0)(3t+t)−+0t0)y(ttby
*+ay
0
yt+13(1
+ty)*13(1
) −ay )−)(3t−)1)−(3t−1t1)y)2t1+y23(1
+t 3(1
para aplicação computacional, temos:
1 + 3(1−2 t )− t−)2)(3t−−22)ytt3)2+y31(1
+t1(1
− yt )3−+t )1(1t y−t4 ty)4 t y4
3

 xx ( t ) = x1 + t ( cx + t ( bx + t * ax ) )
Desenvolvendo
Desenvolvendo para aplicação computacional, ∀ t ∈ [ 0, temos: temos:
1] temos:
x1 + t ( cx + para t ( bx +aplicação computacional, temos:
Desenvolvendo
Desenvolvendo para para aplicação
aplicação computacional,
computacional,
 xx ( t ) = t * ax ) ) ⇒ 256 256 (33)
 yy ( t ) = y1 + t ( cy + t ( by + t * ay ) ) ⇒ ∀ t ∈ [ ]
0, 1 (33)
 xx(xx t ) ((=( ttt))x)= +xy1tx(++cx tt (t+cx ( tcx (
++bx t+ ( bx (tbx * ax tt+*)ax) *)ax) ) )
 
  xx
yy 1== 1 1
+ ( cy t (+
tby ++ * t
ay ) ) ⇒⇒ ∀ t∀∈ ⇒t[ 0,∈∀[10,t] ∈1][ 0, 1] (33) (33)(33)
yy (
  yy ( t )1=

yyt ) (= t ) y = + y (
+
1
( cy
+ t (
1y + t ( cy + t ( by + t * ay ) )
t cyt + by t ( by
+ t +
* ayt * )
ay) ) )
256
256
256256
Em
Em que
que5 – APROXIMAÇÃO POLINOMIAL POR INTERPOLAÇÃO, SPLINE E CURVAS...
CAPÍTULO 367
cx
= = cx 3 (3x(2x− 2 − x1x)1 )

Em
bx
Em = 3 (3x(3x−
bx= que 3 −x2x)2 −) −cxcx
que
  que
Em
ax  ax= =( x(4x− 4 − x1x)1−) −( cx
( cx++bxbx) )
=
= cx
 cx 3 3 ( xx22 − − xx11 )

= cy
=  cy == 3 (33y((2yxx−
bx
bx 23 −y1xy)1 )) − cx
  3 − x2 2 − cx
by= = 3 (3y( y− −y y ) −cycy

by ax == ( xx344 3− xx112 )2−
ax − ( cx bx )
+ bx
cx +
 
ay
= cyay= =( y( 4y− 4 − y1y)1−) −( cy
( cy++byby) )
= cy 33 ( yy22 − − yy1 )
1

by = 3 y33 − y22 ) −
by = 3 ( y − y − cy
cy
AA plotagem
plotagem de de uma
uma polinomial comt ∈
polinomialBkB(kt()t,) ,com t ∈[0,[0,1]1], ,gera
gerauma
umacurva
curvacom
com
ay == ( yy44 −
ay − yy11 ) −− ( cy by )
+ by
cy +
seguintescondições
seguintes condiçõesde deaproximação:
aproximação:
A plotagem
plotagemdedeuma polinomial Bk(t), com, tcom ∈ [0, 1],[0,
gera ,uma curva com
A
A
as plotagem de uma
uma de
seguintes condições
polinomial
polinomial Bkk ((tt )) , com tt ∈
B
aproximação:
∈ [0, 1]
1] , gera
gera uma
uma curva
curva com
com

seguintes condições
seguintes
Propriedadecondições
Propriedade 1:1: de
de aproximação:
aproximação:
Propriedade 1:
 BX
 BXk (0) = =x1x1  BX
k (0)  BX(1)(1)==xkx+k1+1
 eee   k k isto
istoisto
é,é,Bé,k(t) t()t )inicia
BkB(kinicia inicia
em em
pem p1p1eetermina
e termina termina
em pk em
em. pkp+1k +.1 .
BYBY
Propriedade (0)
(0)
  k k 1: = =y y
1: 1 1 BYBY
 k k (1)
(1) = =y y 1 +1
Propriedade k +k1+1

 BXBX k (0)
(0) =  BX
= xx12: a reta = xxpelos
(1) =
Propriedade 1 e  BX k (1)
definida kk +
+1 pontosBp1(et )p2inicia
1 isto é tangente apBke(t)termina
em p1, e aem p .
 k e  k isto é,
é, Bkk (t ) inicia em em p11 e termina em pkk ++11 .
reta BY (0) =
definida
 BYkk (0) y por p e BY
p (1)
é = y
tangente a B (t) em p . Portanto, a curva de Bézier
Propriedade
Propriedade 2:2:=aya11reta k BY
retadefinidak +kk1(1) =
definida ykk ++11 pontos
pelos
pelos pontos
k e
p1pk+1 e p p é é tangente
tangente a aBk k )em
B (t()t emp1p,1 ,e
passa somente sobre os pontos p1 e pk+1 e usa o(s) 1
ponto(s)
2 2
intermediário(s)
reta como por
retadefinida
definida controle
por pkpkeparae pkp+definir as inclinaçõesaaBkB(ktno início
em pkpe+1k +no final do segmento.
1k +1é étangente
tangente ()t )em .1 .Portanto,
Portanto, aacurva
curvade deBéziBé

Propriedade
passa
passa somente
somente
Propriedade 2:sobre
2: a 3:
sobre
a reta
os
a os
reta definida
pontos
pontos
definida pelos
p1p1epela
pelos pontos
eppontos
1k +1e eusa
kp+sequênciausa ede
pp11o(s)
eo(s) é tangente
ponto(s)
ponto(s)
ppontos a
{BXintermediário(s)
intermediário(s)
B(t)}, em com
(tt )) em ,,
pp11co
Propriedade curva gerada p 2 é tangente
2
k
(t), a
BYBk(
kk
t ∈ [0, 1], está contida sempre no menor polígono convexo que contém os
controle
controle
reta para
paradefinir
reta definida
definida definir
por
por p asas
einclinações
e inclinações
ppk +1 é nonoinício
tangente início
a Bee(no t )noemfinal
finalpdodo.segmento.
segmento.a curva de Bé
Portanto,
k + 1 pontos pde k +1 é tangente
kk referência da Bk(t). a Bkk (t ) em pkk ++11 . Portanto, a curva de Bé
passa
passa somente
somente sobre
sobre os os pontos
pontos pp1 e e ppk +1 e e usa
usa o(s) o(s) ponto(s)
ponto(s) intermediário(s)
intermediário(s) co co
1 k +1
No Gráfico 5.16, apresentamos 4 curvas de Bézier, sendo que em (a), (b) e (c) temos
controle
controle
Propriedade para
curvasdefinir
para
Propriedade3:3:aacurvadefinir
curvagerada as
B3(t) e em
geradapela inclinações
as (d)
inclinações
pelasequência
sequênciade no
no início
temos uma composição
depontos
pontos{BX e
início de no
no final
e curvas
final
{BXk (kt(),t ),BY
BY do
doe Bsegmento.
B2(t) (t).
segmento.
t )}, ,t ∈
t ∈[0,[0,1
k (kt()}
3

está
estácontida
contidasempre
sempreno
nomenor
menorpolígono
polígonoconvexo
convexoque
quecontém
contémosos k k+ +
1 1pontos
pontosd
referência
referênciada
daBkB(kt()a
t.) .
Propriedade
Propriedade 3:3: a curva curva gerada
gerada pela
pela sequência
sequência de
de pontos
pontos {{BX
BX kk ((tt ),
), BY )} ,, tt ∈
BYkk ((tt )} [0,
∈ [0,
está
está contida
contida sempre
sempre no
no menor
menor polígono
polígono convexo
convexo que
que contém
contém os
os kk +
+11 pontos
pontos
referência
referência da B tt )) ..
Bkk ((apresentamos
No Gráficoda
NoGráfico 5.16,
5.16, apresentamos33curvas
curvasde
deBézier
BézierB3B(3t()t ) em
em(a),
(a),(b)
(b) ee(c)
(c) e,e,n

quarto
quartográfico
gráfico(d),
(d),uma
umacomposição
composiçãode
decurvas
curvasBB(t()t )eeBB(t()t.) .
368 CÁLCULO NUMÉRICO COMPUTACIONAL

Gráfico 5.16 – Sequência de curvas de Bézier

Fonte: Elaboração própria.

Note que as linhas tracejadas de 1 para 2 e de 3 para 4 (B3) representam as


respectivas retas tangentes (Propriedade 2). Para traçar o gráfico da curva Bk(t),
podemos gerar tantos pontos quantos forem necessários e assim suprir a resolução
gráfica do desenho desejado. Nesse caso, basta diminuir o passo h = 1 / np (np é
o número de passos) com o qual se subdivide o domínio [0, 1] do parâmetro t.
Já para ajustar a curva gerada por Bk(t) ao layout desejado, mantendo os
extremos, basta arrastar o(s) ponto(s) de controle interno(s), o que gerará
novas curvas.
Nos sistemas de computação gráfica que utilizam essa técnica de
aproximação, a curva de Bézier mais utilizada é a B3(t), repetida tantas vezes
quantas forem necessárias para formar um desenho de vários segmentos.

224
CAPÍTULO 5 – APROXIMAÇÃO POLINOMIAL POR INTERPOLAÇÃO, SPLINE E CURVAS... 369

Confira no Caderno de Algoritmos, nos arquivos Cap5Graf5.16.Bezier abc B3.m e


Cap5Graf5.16.Bezier d B2 e B3.m, os algoritmos que geram np + 1 = 1001 pontos
de curvas B3(t) e B2(t) do Gráfico 5.16, na sua forma otimizada.

Tomando, por exemplo, os pontos referenciais p1 = (0, 0), p2 = (1, –1),


p3 =369(–1, –1) e p4 = (0, 0), esse algoritmo gera uma única curva de Bézier,
tipoGrafico
gota, conforme o Gráfico 5.17.
5.17

Gráfico 5.17 – Curva de Bézier tipo gota

y p4 p1

p3 p2
x
Fonte: Elaboração própria.

No Gráfico 5.18, por exemplo, apresentamos um perfil superior de uma


asa de avião composta de três segmentos de curvas de Bézier que devem
passar por quatro pontos de ancoragem, A, B, C e D, e com inclinações
predefinidas, conforme segue:

A (0, 0) com inclinação de 45º;


B (2, 1) com inclinação de 0º;
C (8, 0.2) com inclinação de –10º;
D (10, 0) com inclinação de –5º;
370 CÁLCULO NUMÉRICO COMPUTACIONAL

Verifique que somente conseguimos passar sobre os quatro pontos,


A, B, C, D, se usarmos três curvas de Bézier separadas, devendo colocar dois
pontos intermediários/auxiliares para cada curva, pois essas curvas passam
sobre suas duas extremidades e, com a inclinação predefinida pelas retas que
as ligam aos seus dois pontos intermediários. Assim, sugerimos estes pontos
intermediários em cada segmento, na notação do Octave:

% parte 1: segmento AB

x(1) = 0; y(1) = 0;
x(2) = 1; y(2) = 1; %inclinação início = 45º entre 1 e 2
x(3) = 1.9; y(3) = 1; %inclinação final = 0º entre 3 e 4
x(4) = 2; y(4) = 1;

% parte 2: segmento BC

x(1) = 2; y(1) = 1;
x(2) = 3; y(2) = 1; %inclinação início = 0º
x(3) = 8 – 1; y(3) = 0.2 + 1 * tan(10 * pi/180); % inclinação final = 10º
x(4) = 8; y(4) = 0.2;

% parte 3: segmento CD

x(1) = 8; y(1) = 0.2;


x(2) = 8 + 0.5; y(2) = 0.2–0.5 * tan(10*pi/180); % inclinação início = 10º
x(3) = 10 – 0.5; y(3) = 0 + 0.5 * tan(05*pi/180); % inclinação final = 5º
x(4) = 10; y(4) = 0;

 Explore variações desses pontos intermediários no Exercício 5.3.

No Caderno de Algoritmos, você encontra o arquivo Cap5Graf5.18.Bezier.aerofolio.m.


CAPÍTULO 5 – APROXIMAÇÃO POLINOMIAL POR INTERPOLAÇÃO, SPLINE E CURVAS... 371
371

Grafico 5.18

Gráfico 5.18 − Perfil superior de uma asa de avião

x
Fonte: Elaboração própria.
380

Podemos x 2
x 3
x4
x5
(−1) x práticos
n n
( −1) x de aplicação das curvas de
n +1 n +1
e = 1 − x + encontrar
−x
− + − +exemplos
⋯ + + +…
2! 3! 4! 5! n! ( n + 1)!
Bézier no CorelDRAW®, na ferramenta que converte uma forma qualquer
386
em curvas, permitindo a manipulação de “nós”.
(( incluir Referencia (marcador), se possível ))

Definição1:
Lembre-se de umquepolinômio de Tchebyshev
está disponível no de
linkgrau n de primeira ordem Referencia
<http://sergiopeters.prof.ufsc.br/
exercicios-e-respostas/>
é toda expressão do tipo: o Caderno de Exercícios e Respostas para o aprofun-
damento
Tn ( x ) =dos
cos(estudos
n arcos( xde
)) cada
comcapítulo
x ∈ [ −1, 1]deste livro. (5)

Como arcos( x ) = θ (ângulo)  cos(θ ) = x ,


logo

5.7 CONCLUSÕES
T ( x ) = cos( nθ ) com θ ∈ [0, π ] .
n (6)

Referencia: Existem também polinômios de Tchebychev de segunda ordem


(POLINOMIOS de Tchebychev. 2016) Incluir hyperlink
Neste capítulo, iniciamos o estudo da teoria da aproximação de funções
abordando três das suas várias metodologias. A primeira metodologia, a
interpolação polinomial, que tem como condição de aproximação um princípio
simples e óbvio, possui aplicações genéricas. Já a segunda metodologia, 19 a
interpolação via splines cúbicas, e a terceira, as curvas de Bézier, possuem
princípios matemáticos mais robustos e são a base teórica de vários sistemas
de computação gráfica. Nos próximos dois capítulos, o tema terá continuidade
com o estudo de outras metodologias de aproximação de funções que
fundamentam matemática e computacionalmente outros tipos de aplicações.
CAPÍTULO 6

APROXIMAÇÕES
POR SÉRIES
E POR FUNÇÕES
RACIONAIS

OBJETIVOS ESPECÍFICOS DE APRENDIZAGEM


Ao finalizar este capítulo, você será capaz de:
■■ efetuar aproximações por séries de Maclaurin, Tchebychev
e por funções racionais de Padé;
■■ calcular os erros de truncamento de cada aproximação; e
■■ indicar o tipo de aproximação mais adequada para cada
família de função.
6 Aproximações por Séries e por Funções Racionais
6 Aproximações por Séries e por Funções Racionais
6 Aproximações por Séries e por Funções Racionais
Neste Capítulo, vamos abordar exclusivamente as aproximações de y  f
Neste Capítulo, vamos abordar exclusivamente as aproximações de y  f
com Neste expressão conhecida,
Capítulo, vamos xabordar [a, b] ,exclusivamente
através de outraasfunção, aproximações , mas
z  g ( x ) de y agf
com expressão conhecida, x  [a, b] , através de outra função, z  g ( x ) , mas ag
utilizando
com expressão aproximadoras
Neste capítulo, geradas
conhecida, , bpor séries
] , através
x  [aabordar
vamos e por
de outra
exclusivamente funções
função,
as racionais.
aproximaçõesz  g ( x )de,Para
mas fins
ag
utilizando aproximadoras
y = f(x) com expressãode geradas
conhecida, por séries
emda e por
x ∈qualidade funções
[a, b], através racionais. Para fins
padronização
utilizando e facilidade
aproximadoras geradas avaliação
por séries e por da de
funções g ( xoutra função,normaliza
) , vamos
racionais. Para fins
padronização z = g(x),emas agora utilizando
facilidade de avaliação aproximadoras
da qualidade geradasda porg ( x)séries
, vamos e por normaliza
intervalo
padronização funções transformando-o
[a, ebracionais.
]facilidade Paradefinsavaliação noda intervalo
de padronização qualidade padrão
da gde
e facilidade , [vamos
( x)avaliação
1, 1] da através
normaliza
intervalo qualidade da g(x), vamos normalizar o intervalo [a, b] transformando-oatravés
[ a , b ] transformando-o no intervalo padrão [  1, 1]
transformação
intervalo [a, blinear:
no intervalo ] transformando-o
padrão [–1, 1] através noda transformação
intervalo padrão linear: [1, 1] através
transformação linear:
transformação (b  a )t  (b  a )
x(t )  (blinear:
 a )t  (b  a ) (
x(t )  (b  a )t 2 (b  a ) (1) (
x(t )  2 (
pois 2
pois pois
pois se t 1 x a
se t 1 x a
se
se tt 
se 11  xx  ab
se t 1  x b
se t 1  x b
se
A partir dessa normalização, aplicamos os métodos de aproximação à fun
A partirAdessa partir dessanormalização,
normalização, aplicamos
aplicamosososmétodos
métodos de deaproximação
aproximação à fun
à no
f ( x (tA)) partir intervalo
função dessa
f(x(t)) padrão
normalização,
no intervalot  [ 1, 1] e, porosfim,
aplicamos
padrão t ∈ [–1, 1] efetuamos
métodos
e, por fim, as aproximações
de efetuamos
aproximação as à funç
f ( x (t )) no intervalo padrão t  [ 1, 1] e, por fim, efetuamos as aproximações
f ( x (t )) aproximações
função composta
no intervalo f (na ( xfunção
t padrão  [ 1, 1] f(t(x)),
)) , emcomposta
tque: e, poremfim,que:efetuamos as aproximações
função composta f (t ( x )) , em que:
função composta 2 x  (fb( t ( xa))
) , em que:
t ( x)  2 x  (b  a ) (2) (
t ( x)  2 x b(b a a ) (
t ( x)  ba (
Exemplo 6.1: b  apara a f(x) = sen(2x + 3), x ∈ [1, 15], obtenha o valor de f(5)
Exemplo 6.1: para
no domínio a
equivalente f ( x) [–1, (2 x  3) , x  [1, 15] , obtenha o valor de f (5)
sen1].
Exemplo 6.1: para a  f ( x) sen(2 x  3) , x  [1, 15] , obtenha o valor de f (5)
Exemplo
domínio equivalente6.1: para a [ ( x). sen(2 x  3) , x  [1, 15] , obtenha o valor de f (5)
1,f 1]
domínio equivalente [1, 1] .
Solução:
domínio equivalente [1, 1] .
Solução:
Para a função dada, temos que f ( 
Solução: x 5) sen(13) . Já no domínio [1, 1] , aplicand
Para a função dada, temos que f (  x 5) sen(13) . Já no domínio [1, 1] , aplicand
376 CÁLCULO NUMÉRICO COMPUTACIONAL

Solução:
Para a função dada, temos que f(x = 5) = sen(13). Já no domínio [–1, 1],
aplicando a eq. (1), temos x(t) = 7t + 8 e a composta f(t(x)) = sen (14t +19).
Da eq. (2), para x = 5 ⇒ t(x) = –3/7. Assim, t(x) = –3/7, substituído em
f(t(x)) = sen (14t +19), resulta em f(t(x)) = sen (13), que é o mesmo valor.

Chamamos atenção para o baixo custo dessas transformações que, nas formas
otimizadas, não excedem a 8 operações elementares.

Na aproximação de funções com expressão conhecida, uma questão


fundamental é: quais características ou propriedades a z = g(x) deverá
possuir para ser considerada uma aproximadora de qualidade?

Uma aproximadora ideal é aquela que cumpre os seguintes requisitos:

a) os erros de truncamento Erro (x) = |g(x) – f(x)|, ∀ x ∈ [a, b]


devem ser mensurados previamente;
b) os erros de truncamento Erro (x) = |g(x) – f(x)| devem ser bem
distribuídos em todo o domínio [a, b];
c) o tempo de resposta nas chamadas (cálculos de valores) da
z = g(x) deve ser mínimo; e
d) a demanda de memória para armazenar os parâmetros identifi-
cadores da função g(x) deve ser mínima.

6.1 APROXIMAÇÃO DE y = f(x) POR SÉRIES


Como vimos no Capítulo 5, a aproximação de y = f(x) com x ∈ [a, b]
pela interpolação polinomial consiste em dividir [a, b] em n partes e obter o
interpolador Pn(x) (na forma geral, de Lagrange, ou Gregory-Newton), cujo
erro de truncamento máximo para h=(b-a)/n é da ordem de
334
f (4) (x)
340
CAPÍTULO 6 – APROXIMAÇÕES POR SÉRIES E POR FUNÇÕES RACIONAIS 377
u = 8.7 e v = 5.5
377
Max f ( n +1) ( x )

h n +1
Erro Pn ( x ) < x∈[ a ,b ]

4( n + 1)
413
x ∈ [0.1, 1]
 f (x) refere-se à derivada de ordem (n + 1) de f(x).
(n + 1)

441
(a10 , a20 ) = (1., 1.)
Entretanto, o tempo de resposta e a demanda de memória requerida
a1 = 367.001181444968 e a2 = 1.00152293682138
são grandes, pois normalmente precisamos usar um interpolador de grau
449
n elevado para ter um erro de truncamento pequeno. Logo, o interpolador,
apesar de ser tentadoramente simples de obter, não satisfaz aos requisitos (c)
D(ade
e∂(d) , b)uma boa
m
( ) ( )
−1 2 −2 

= 2 a1 + a2 / T 2 de   função com expressão
k  ( −1) a1 + a2 / T
− Vuma 1 conhecida.
=0
aproximadora
∂ a 
   

Também as splines k =1 cúbicas e as curvas de Bézier não foram desenvolvidas
para
456 o propósito deste capítulo. Assim, abordaremos outras técnicas de
aproximação
b de funções com expressão conhecida que forneçam aproximadoras
f ( x) dx =da
I =  próximas
mais F (ideal.
b) − F (a ) = A
a
463
f ′( x)6.1.1
= − (1 Aproximação
+ x)−2 por séries de Taylor
464
Segundo o teorema de Taylor: toda função y = f(x) que seja continua-
| Tn − I e em
diferenciável | um domínio [a, b] (ou o equivalente [1, 1] ) pode ser expressa
mente em
diferenciável diferenciável em um
um domínio [a, bdomínio
] (ou o [a, b] (ou o equivalente
equivalente [–1, ser
[1, 1] ) pode 1]) pode
expressa
Tn* expressa exatamente pela série:
ser
exatamente pela série:
exatamente pela série:
*
| Tn − Ie |
f f(( )()(
x x) ) f f(( )()(
x x) 2)  f (fn ) ( ( )()(
x x) n) 
2 (n) n

(f x()x
f 465 f (f ( ) ) 
)   + +  (3a)
(3a) (3a)
b 1!1! 2!2! n !n !
lim T(i ,k ) =  f ( x ) dx
k →∞que β ∈ [a, b].
em
a
emque
em que[ a[,ab, ]b.] .
470
Reescrevendo a(3a)
eq. com
(3a) com
f (4) ( xa)a=eq.
Reescrevendo
Reescrevendo (−(3a)
eq.1)( −2)(
com−3)( −4)(1número
número
número x)−5 de
finito
+finito finito de parcelas,
deparcelas,
parcelas, temos:
temos:
temos:
f((4!(1 f (fn ) ( (f)((4))(x(xx) ) n) =f (fn 24
)()(x x+x))−)5  Max 1) ( )( x  n)1
(n) n ( n 1) n 1
f ( x
f ( x) )  f
f
(4)
( 
f ( ) (
) x
 )
f =
  + + 0.75
( )(=x  )
x =1  (1 + 1) 5 (3b)
(3b)
1!1! n !n ! (n(n1)!
1)!
479 P ( x) (3b)
Pn ( nx ) R ( x)
Rn ( nx )
emque
em queootermo
termo
Para m = 6 :
f (fn 1) (()()(x x)n)n11
( n 1)
R ( x )  12! (3c)
Rn (nx)  Max f(n m)1)! (2
( x) = f (12) (1) = (−1)12 = 58472 (3c)
(n  1)! x =1 (1 + 1)(12+1)
éé denominado
denominado de resto da
de resto série ee  
da série [ [ , x, )x) éé um
um número
número com
com localização
localização
conhecida,mas
conhecida, masvalor
valordesconhecido.
desconhecido.
1!
1! P ( x) nn !! ((nnR 1)! (3b
(3b
1! n P ( x ) n! (n  n (1)!
x)
1)!
Reescrevendo a eq. (3a) com número n
Pn (( xx ))
P
finito de parcelas, temos: Rn ( x
R ( x)
)
em que o termo n R ( x)
n
n

em
378
em que
que o
o )termo
termo 
f (  )( x   ) f (  )( x  CÁLCULO
(n)
) n ( n 1)
f NUMÉRICO ( )( x COMPUTACIONAL
) n 1
fem( x)que
 f (o termo
 n 1 +  (3b)
f ( n 1) (( n)( x   )
1! x   )nn 11 n! (n  1)!
Rn ( x) R ( x)  ff (( nn1)1)1) (( )(
)( x   ) (
R n ( x)  f( n  1)! ( )( x P (x )) n 1
R ( x) (3c
(3c
Rn ( x) 
n
((nn  1)! n
(3c
em que ontermo (n  1)!
1)!
em que o termo
é denominado de resto da da série e e  [  , x) é um número com comlocalização
localizaç
é
é denominado
é denominado
denominado de nresto
de
de resto
resto da série
da série e
série e   [[[  ,,, xxx))) é
 é
é
um
um
um
número
número
número com
com localização
localização
f ( n 1)
( )( x   ) 1
Rconhecida,
n ( x)  mas mas
conhecida, valorvalor desconhecido.
desconhecido. (3c) (3c)
conhecida,
conhecida, mas mas
(n  1)! valor
valor desconhecido.
desconhecido.

Conforme Conforme destacamosdestacamos na na eq.eq. (3b),(3b), a aaprimeira
primeira parte
parte será um
umpolinômio (Px )( xde
é denominado Conforme
Conforme de resto destacamos
da sériena
destacamos na e eq.
 (3b),
eq. [  , x)a
(3b), primeira
primeira
é um número parte será
parte será
será com um
um polinômioP
polinômio
polinômio
localização Pnnn (( xxn)) de
P )
de
é denominado de resto da série e ξ ∈ (β, x) é um número com locali-
grau grau
n , nn ,, denominado
denominado de aproximador
aproximadordede Taylor da
da yyy   ffff((((xxxx)))),,, , se
se aaa asérie
sériefo
grau
zação
grau
conhecida, mas conhecida,
n , valordenominado
denominado masde
desconhecido. valorde
de aproximador
desconhecido.
aproximador de Taylor
de Taylor da
Taylor da  se
se série
série fo
fo
Conformesendo
convergente,
convergente, destacamos
sendo Rn (( xx)) na
uma eq.estimativa
(3b), a primeira do erro parte de será um polinômio
truncamento.
convergente,
Conforme
convergente, sendo
destacamos sendo Rn (na xR x) uma
uma
R)nn (eq. (3b),
uma estimativa
a primeiradodo
estimativa
estimativa parte
do erroerro
erro de
será de truncamento.
de truncamento.
um polinômio Pn ( x ) de
truncamento.
Pn(x) de grau n, denominado de aproximador de Taylor da y = f(x), se a
Como
Como vamos
vamos padronizar
padronizar o
o domínio [[aa,, bb]] da aproximanda para [1, 1]
grau nsérie
Como for
, denominado
Como convergente,
vamos vamos de sendo Rn(x)
aproximador
padronizar
padronizar o uma dedomínio
odomínio estimativa
Taylor
domínio [ada [,a,bdo b]y] erro
dada
da )aproximanda
f ( xde se a sériepara
, truncamento.
aproximanda
aproximanda parafor [[
para 1, [1]
1, 1]
1,
podemos Como vamos
fixar o  padronizar
da série em o domínio
  0 [a, b] da
(ponto médio aproximanda do intervalo para[[–1, 1, 1],
1] ):
convergente,
podemos sendo fixarRo on (x) da
dauma série em 
estimativa  do erro demédio
00 (ponto truncamento. do intervalo [[[
1,1, 1] 1] ):
podemospodemos
podemos fixarfixar fixar
o  oda β da série série
série em emem 0(ponto
β = (ponto
(ponto médio
médio
médio dodo do intervalo
intervalo
intervalo [–1, 1]):1, 1]):):
Como vamos padronizar ff (0) ff (0)
oxxx domínio xx 222 [a, b] da ff ((( nnn ))) (0) xx nnn
aproximanda
 f ( x )  f (0)  f (0)
(0) f  (0)
(0) x   f (0)
(0) xn  Rn (( xx)) para [1, 1] ,
 ff (( xx)) 
  ff (0)
(0) 
 x1! f 
f (0) (0) x2!  2
  ( n
f (0) )
n ! x R
 Rnn ( x)
fixar
podemos f ( x)o f da  em 1!
(0)série 1!  0 (ponto 2!
2!  médio  do intervalo n !!  R[n(1,x)1] (4a)
n
):
Essa série é 1!
denominada 2! de série de Taylor/Maclaurin n! e será denotada po
Essa série é
Essa série é denominada denominada de
de série série de
den Taylor/Maclaurin e
Taylor/Maclaurin e será
será denotada
denotada po
po
f (0) x f (0) x 2
f (n)
(0) x
Essa
Mf ( x( x
) )
série
.
Essa f série
(0)  é édenominada
denominada
 de
 de série
série  de de
Taylor Taylor/Maclaurin
e Maclaurin
R ( x ) e será e será
denotada denotada
M nnn (( xx)) ..
M 1! 2! n!
n

) . Mn(x).
M n ( xpor
Essa série é denominada de série de Taylor/Maclaurin e será denotada por
Exemplo
Exemplo6.2:6.2:
Exemplo 6.2:confira confira
confira a relaçãoa de algumas
a relação
relação defunções
de algumas
algumas comfunções
suas sériescom
funções de Taylor
com suas
suas séries
séries de
de
M n ( x) . Exemplo 6.2: confira a relação de algumas funções com suas séries de
eTaylor/Maclaurin:
Maclaurin:
Exemplo 6.2: confira a relação de algumas funções com suas séries
Taylor/Maclaurin:
Taylor/Maclaurin:
xx 222 xx333 xx nnn
Taylor/Maclaurin:
Exemplo 6.2: a)
a)
a) e x
 1
confira
x  x  x 
a2! relação x 
 de 
 xnalgumas funções com suas séries de
a) ee x 
11  xx   3! 
 ! 

2!
2! 3!
3! n
n !
!
Taylor/Maclaurin: x 2 x3 xn
a) e x 1  x 2 3 xx 222  xx 444 n xx666  ((1) 1)
n 2n
nn x
xx 22 nn 
b) cos(
b) cos( x ) 
2!
cos(x xx)) 
 1
x1
1 2! x
3!  x
 4!x  x
 6! 
n
 !  ( 
 (2n)!1) 
b)
b)
a) e 1  x    2!
x
4! 6!  
2! 4! 6! (2
(2 nn)!)!
2! 3! n !
x 2 x 4x 22 xx633 x 44 (1)(nx1)2 nnn 11 x nn
b) cos(c)x ) 
ln(11x2 x)  
x x
4
xxx 
6 2 3 
xx  xx(1)
4 
 x2n 
n
((
1)1) n 1 xx n 
c)
c)
b) cos( xc)
) ln(1
1 
ln(1  xx))2!
xx
 4!2  6!3  4    n)! n
(2
 

2! 4! 6! 2
2 3
3 4
4 (2n)! n
n
x 2 x3 x 4 (1) n 1 x n
c) ln(1  x) xx 2 x3  xx343  x5 5  7x(7 1)n1 x n  x 2 n-1
c) ln(1 d)
x) 
d) x  ( x) 2 x  x3 x4 x 
arctg n(n1) n 12 n -1
1 x
d) arctg2( x) 3x  4    n  (1)  ...  ... 21n  1
33 55 77 2n 
x 3 5 7 n 2 n 1
xx3  xx5 x 7x  x 2 n x1
(n 1)
x
(1)
e) 
zz2
e)
e) ee dz
dz
2

x
x 
       
00
1!3 2!5 3!71!3 2!5 3!7 n !(2
n !(2 n n 1) 1)
x x
x2 2 x3 3 x 4 4 (1) n 1 x n 1 n
f) cos( xx x  x   x     (1) x  z   0z  0
f)
f) 0
0
cos( zz )) dz
dz 

22* *2!2! 3 *34!
* 4! 4 *4
6!* 6! n(2n
n(2 2)!
n  2)!
polinômio aproximando
polinômio uma composição
aproximando de trêsde
uma composição funções (raiz quadrada,
três funções cosseno
(raiz quadrada, cos
Note
Note que,
a integral).
que, depois
depois
a integral).
CAPÍTULO 6 – de
de truncar aa série
truncar POR
APROXIMAÇÕES série Edo
SÉRIES do Exemplo
376
POR Exemplo 6.2,
6.2, item
FUNÇÕES RACIONAIS item (f),
(f), temos379um
temos um único
únic
polinômio
polinômio aproximando
aproximando uma
uma composição
composição de= 5três
xde  t (funções
três x ) = −3 / 7 (raiz
funções (raiz quadrada,
quadrada, cosseno
cosseno e
aa integral).
UmaNote
integral). das
Umagrandes
das
que, dificuldades
grandes
depois na do
dificuldades
de truncar a série aproximação
6.2,de
na aproximação
Exemplo funções
item porum
detemos
(f), séries
funções de Taylo
por séries
único de
é apolinômio
é a determinação aproximando
do
determinação valordo de valor uma
 de[ composição
, x) que de três
[  , x)gere
que ogere funções
resto oR resto
n
((raiz Rquadrada,
x) correto, pois ele
n ( x ) correto, poi
cosseno e a integral).
Uma
Uma das
das grandes
desconhecido. grandes dificuldades
dificuldades
A alternativa é estimá-lo nana aproximação
aproximação
pelo seu de
de funções
majorante, funções por
por séries
resultando emde
séries umTaylo
de Taylo
limit
desconhecido. A alternativa é estimá-lo pelo seu majorante, resultando em u
éé aa determinação 379
determinação
máximo máximo errodo
para oUma
para
das
do
de valor
grandes
valor de
truncamento
o erro
 [[,R,xx))( xque
dedificuldades
de truncamento n )navia
que gere
gere oo resto
aproximação
R ( x) via
restode funções correto,
RRnn((xx)) por pois
pois ele
séries de
correto, ele é
Taylor é a determinação do valor de ξ ∈ (nβ , x) que gere o resto Rn(x) correto,
desconhecido.
desconhecido. AA alternativa
pois ele éalternativa éé estimá-lo
desconhecido. estimá-lo pelo
n 1 pelo380seu seu majorante,
majorante, peloresultando
resultando
seu majorante, em
em um
um limite
limit
x   xAM alternativa é estimá-lo
n 1

ErroooTaylor x)um  ,RRonde M ( n 1)


(4)
máximo resultando
máximo para
para Erroem
erro
erro (Taylor
de
de  limite máximo
((xn) 1)!
truncamento
truncamento ( xpara
) via
n ( x ) via
,Monde maxdeftruncamento
oerro
x[ aM max( x)fM x −( x0R
( n  1) n +1
) n(x) via
Erro Maclaurinx([xa),b≤
,b ]
(n n1)! ]

nn11
(n + 1)!
xx M M 382
Erro
Erro Taylor
Taylor((xx))  ,, onde
ondeM
onde
( n 1)
max ff ( n1)((xx)) (4b)
M  max n +1
(4)
(4)
A seguir, vamos exemplificar ((nn
o1)!
1)!
uso do majorante no
xx[[aa,b,b]]
erro de x−β M
truncamento.
A seguir, vamos exemplificar o uso Erro do majorante
Maclaurin Max no erro
= de truncamento.
M = max f
( n + 1)! x∈[ a ,b ]

384
A seguir, vamos exemplificar o uso do majorante no erro de truncamento.
AA seguir, vamos exemplificar oo uso do
do majorante no
noxerro xde dextruncamento.
x5 ) +ef(x(−,x1))xxe[+x,(1,−x1)1
2 3 4 n n
seguir, vamos exemplificar uso majorante erro truncamento.
Exemplo 6.3a: delimite
Exemplo 6.3a: delimite o erro omáximo
erro cometido − x +ao aproximar
e− x = 1cometido
máximo − ao − f+( x⋯
+ aproximar
Exemplo 6.3a: delimite o erro máximo cometido 2! ao 3! aproximar
4! 5! f(x) = exn, ! (n
por Maclaurin com . 
porxMaclaurin
∈ [–1, 1] por n 
com 5 n  5 . com n = 5.
Maclaurin
x
Exemplo
Exemplo
Solução: 6.3a:
6.3a: delimite
delimite oo erro
erro máximo
máximo cometido cometido
385 ao aproximar ff ((xx)) ee x,, xx
ao aproximar [[1,1, 1] 1
Solução: x
Solução: 5−z1 dz = 05
x 3
x 5
x7
1 0 0 0
2
por
por Maclaurin
Maclaurin com com nn55.. f (5 1) e
( ) (5x1)(0 ) x  0 x1
0
+ x 1
+ x 2
− + x 4
+ + x 6

1!3 2!5 3!
Pelo resto
Pelo da
Pelo série
resto
resto da da  R5 ( x⇒
série
série  ) R ( x)  f 0
Solução:
Solução: 5 (5  1)! (5  1)! = c x + c x + c x + c x + c x + c x + c x 6
0 1 2 3 4 5
1 2 3 4 5 6 7

tomamos tomamos
o seu valor o seu valor
máximo, máximo,
(5
(51) na
(())naxx
ffna ausência
1) 388
ausência
5511
00 do valor do valor de
 , em ξ, em que
Pelo tomamos
Pelo resto
resto da
da série
série o seu R
valor
R55((xx)) máximo,
 ausência dode valor de que , em que
    2k − 1      2k
(5
(5 1)!1)! xTn (α k)1 = cos  n * arcos  cos  π    = cos  n 
emxex=1em 11 . x  1 .  2n   
(6)
M  max M  f max (x) f(6)M ( x)  max
 M e max  e e xem  
x[ 1, 1] x[ 1, 1]
tomamos
tomamos oo seuseu valorvalor máximo, máximo, na
x[ 1, 1]
na ausência
ausência do
do valor
x[ 1, 1]
390 valor de de  ,, em em que que
e x  0e1 x x0xb = 211 f ( x) * Ti ( x)dx = 2  π m f ( x )T ( x ) 
1 5 1
5  1 +1

MM  max
Erro Maclaurin
max ff
(6)
(6)
(
(x
(
x)
x)) 
 MM( x) max max
 ee i eeπ em em xx121..   j 
xx[[Erro Maclaurin j i
1,1,1]
1] (5 xx1)!
[[1,1,1] −1 1− x π  m j =1 
(51] 1)!
 2 j −1 
Esse éEsseo limite 5511 x j = cos  do intervalo.
x específico π  , ∀ j = 1, 2,..., m
é odo errodo local,
erroepara xxum
11
limite elocal, 00para um x específico
 2 m  do intervalo.
Erro
ErroéMaclaurin
Maclaurin ((xx))
Na expressão Esse o limite do
do errododeerro erro local,
(5
Maclaurin, para
1)!
(5Maclaurin,
1)! como um x específico
391como do intervalo.
NaNa expressão de x  [ 1,x1] ,[ o1,erro
1] , omáximo
erro máximoglobal globa
ocorr
expressão do erro de Maclaurin, como f ( x) =x a∈0 *[–1,
T0 + 1], o1 erro
a1 * T + a2 *máximo
(T2 + T0 ) global
2 + a3 * (T3 + 3T1 ) /
Esse
com |ééxcom
Esse o
o 0limite
limite do
do5xerro 1 –local,
erro 5 + 1 para
local, para um
=um
1x,xentão xx específico
específico do
do intervalo.
intervalo.
ocorre  0com
|5| 1x em | 1|x
em ou x0|x1 em
ou  1ou 1 , xentão
= –1, então
+ a4 * (T4 + 4T2 + 3T0 ) 8 + ... + ET1
Na
Na expressão
expressão do do erroerro de de Maclaurin,
Maclaurin, como
como f (Txx)[b[1, 1],, oo erro
1, 1] erro máximo
máximo globalglobal ocorre
ocorr
51 = 0 + b1T1 + b2T2 + ⋯ + bnTn + ET1
1  0 e1
com || xx00Erro
com |5|511 emMaclaurin
em xx11 ouou xx (5  
1 ,, então
11)! então 0.003775
394
x
e
Esse é o limite
Esse é do erro do
o limite global, para opara
erro global, intervalo padrão
o intervalo padrão 1] . 1].
[ 1, [–1,

Exemplo 6.3b: determine o grau n mínimo para aproximar f ( x)  e x , x  [ 1, 1] po


Erro Maclaurin (5 (5
11)!01)! e  0.003775
376 (5  1)!
sse
eéo
mplo é6.3b:
limite
o limite dodo erro
determine erro global,
global,
o−3grau parapara
n o intervalo
o intervalo
mínimo para padrão
padrão
aproximar [ [1,1, 1]f.1]( x. )  e x , x  [ 1, 1] por
380 x = 5  t ( x ) = / 7
sse é o limite do erro global, para o intervalo padrão [ NUMÉRICO CÁLCULO 1, 1] . COMPUTACIONAL
r/Maclaurin com erro global inferior a   O(106 ) .
xemplo
mplo 6.3b: 6.3b: determine
determine oo grau graun nmínimo mínimo para para aproximar
aproximarf (fx() x) exx e, x x, x[[1,1, 1] 1]por
por
ção: Exemplo 6.3b: determine
xemplo 6.3b: determine o grau n mínimo para aproximar o grau n mínimo para aproximar f(x) = e , x ∈ [–1, 1]
f–6( x)  e x , x  [ 1, 1] por
aylor/Maclaurin
or/Maclaurin
resto por Taylor
máximo com
dacom e Maclaurin
erro
série erro global
de global com
inferior
Maclaurin, errotemos
inferior aglobal
a  O  inferior
O (10
(10 6 6
) . ) a. ε = O(10 ).
aylor/Maclaurin com erro global inferior a   O(106 ) .
olução:
ução: Solução: 379 n 1
M * x0
olução: Erro (β , x) máximo
Maclaurin
ξ ∈resto
Pelo ( x)  da série de Maclaurin,  com M temos max
 e x e1 em x  1 .
oeloresto
resto máximo
máximo dada sériesérie dede Maclaurin,
( n Maclaurin,
 1)! temostemosx[ 1,1]
elo resto máximo 380 da série de Maclaurin, temos
nn+1n 1
rro global máximo do intervalo MM x−
* x*ocorre
x00 0 em x  1 ou x   1:
Erro Erro
Erro Maclaurin
Maclaurin
Maclaurin ( x)((x
x)) ≤
M x  0 ncom
1
com com MM max  max
 e x e x e1eem emem
1
xx=x11.1 .
( n( n
(n
*+ 1)!
1)!
 1)! x[ x 1,[1]
1, 1]
Erro Maclaurin( x)e 1 1  0 n  1  com M max  e x
e1 em x  1 .
Erro 382
Maclaurin Max intervalo (n  1)! x[ 1, 1]
erro
o erro global
global máximo
máximo dodo intervalo (n x−1)!ocorre
β Mocorre
n +1 em em x x 1 ou
1 oux x   1:1 :
E oErro
o erro global erro global máximo
Maclaurin
máximo doMax = do intervalo
intervalo ocorre ocorre
emM x
= em
max 1 xou
f x )x1=: –1:
=( n +1x1) (ou
1 1 ( n + 1)! n 1n 1 x∈[ a ,b ]
n  8 Erro Erro Maclaurin Max e e 1  1
7.4908560 0 0 e  06 de ordem O(105 ) .
ErroMaclaurin
384 Maclaurin Max Max   1 n 1

Erro Maclaurin 2 Max  (4en(n1)! 1 0


5 1)!
n  9  Erro x x 3
x x (−1)n x n ordem (−1) n +1 xOn +(10 1
e− xMaclaurin
= 1 − x + Max − + 7.4908560 ⋯e+ 07 de + + …).5 5
6
− (n +1)!
a n n8
ara 8Erro
Erro Maclaurin
Maclaurin
 2! Max
 3!Max 4! 7.4908560
5!
7.4908560 e e06n! 06 dede (nordem
ordem + 1)! O(10
,araa aproximação de Maclaurin com grau gera  
erro
O
máximo(10) .5) da .
n  8  Erro Maclaurin  Max 7.4908560e  06 de ordem n  9 Rn ( x ) O(10 ) . ordem de
6 n 
ara
a n9 9Para
Erro
Erro
385
n = 8
Maclaurin⇒
Maclaurin
 Erro
 MaxMaclaurin
Max 7.4908560 Max
7.4908560 = 7.4908560e
e e07  07dede ordem – 06
ordemO(10 de ordem 6 6 O(10–5).
O(10) . ) .
).
ara n  9Para xErro Maclaurin
nz = 9 ⇒ Erro  Max
Maclaurin 7.4908560
x 3 e
Max4 = 7.4908560e
x 5  07 de ordem
x– 07 de8 ordem
7 O(106 )O(10 . 1)i x–62).i +1
( −da
ogo,
o, a aaproximação
aproximação
0 e −
dz =
2
de
0 x de
0 Maclaurin
+ 1Maclaurin
x 1
+ 0 x 2
− com com
+ 0 grau
x grau
+ n 
+ n 0
9 x 9
6gera
− gera erro
+ erro
0 x máximo
+ máximo
⋯ + daordem ordem
+ ⋯ dede
ogo, a aproximação de Maclaurin 1!3 com grau 2!5 n  9 3!7 gera erro máximo i !(2i + da 1) ordem de
0(10 ) . ) . Logo, a aproximação
6 6
Alternativamente, de Maclaurin ocom4errograu n =6 9 gera erro máximo 1 da
= temos
c1 x 0 –6+ c2 umx1 + climite para de truncamento
3 x + c4 x + c5 x + c6 x + c7 x + c8 x + ⋯ + c2 i + 2 x
2 3 5 7 máximo 2 i +aplicável
+ ⋯
O(106 ) . ordem de O(10 ).
ries convergentes388 e alternadas nos sinais.
  temos  2kum − 1limite   opara  2truncamento
o nerro kde − 1truncamento
  máximo π aplicável
Tn (αAlternativamente,
Alternativamente,
Alternativamente, k ) = cos  n * arcos  cos 
temos temos um um limite
limite para para
π o erro cosde
=erro de truncamento π   = cosmáximo (2k − 1) aplicável
máximo =0
Alternativamente,
aplicável às séries  temos um limite
convergentes 2 n para   o erro
e alternadas  de
nos 2
 sinais. n
truncamento   máximo 2 aplicável
sTAQUE
éries
séries convergentes
convergentes
Teorema
390 1:esealternadas
e aalternadas
série denos nos
Taylor sinais.
sinais.
y  f ( x) for convergente e com termos
s séries convergentes e alternadas nos sinais.
2 f (então x ) * Ti ( x )o valor 2  π do resto R (x) não será superior ao valor
+1 m
inais alternados, bi = Teorema
 1: sedxa=série   f ( x j )Tida ( x jyn) = f(x) for convergente e com
π −1 1 − x 2 π  mdej =1Taylor
STAQUE
ESTAQUE Teorema
Teorema
termos 1: 1:
de sinais sese a série
a série
alternados, dede Taylor
então Taylor y y 
o valor f ( fxresto
do )( xfor) for Rconvergente
(x)convergente
não será superior e com
e com termos
termos
mo
DESTAQUEdo primeiroTeorematermo
 2 j −não
1
1: se
 nulo
a sérieabandonado.
de Taylor FIM
y  fDO( x ) DESTAQUE
for n
convergente e com termos
= cosmáximo
aox jvalor π do , ∀primeiro
j = 1, 2,...,termo m não R nulo
esinais
sinaisalternados,
alternados,  então
 2m então  o ovalor valordo doresto resto nR ( xn )(abandonado.
x)não nãoserá serásuperior superioraoaovalor valor
e sinais alternados,
391 então o valor do resto Rn ( x) não será superior ao valor
áximo
imo do do
primeiro
primeiro termotermo não não nulo nulo abandonado.
abandonado. FIM FIM DO DO DESTAQUE
DESTAQUE f ( x)  e x , x  [1, 1]
mplo 6.4: delimite f ( x) = a0 o * T0erro T1 + a2 * (T2 cometido
+ a1 * máximo + T0 ) 2 + a3 *ao (T3 aproximar
+ 3T1 ) / 4
máximo do primeiro
Exemplo 6.4:termo delimite nãoonulo erroabandonado.
máximo cometido FIM DO ao aproximar DESTAQUE f(x) = e–x,
+ a4 * (T4 + 4T2 + 3T0 ) 8 + ... + ET1
Maclaurinxcom ∈ [–1, n 1]5por . Maclaurin com n = 5.
xemplo
mplo 6.4: (Tdelimite
) = b0 +ob1Toerro
6.4:fdelimite 1+ b2Tmáximo
erro 2 + ⋯ + bcometido
máximo nTcometido
n + ET1 aoaoaproximar aproximarf ( fx)((13) x) e xe, x ,x x[[1,1,
1] 1]
ção:
xemplo Solução:
6.4: f ( x )  e x
394 delimite o erro máximo cometido ao aproximar , x  [ 1, 1]
orMaclaurin
Maclaurin com
e x com n n
 5
 .x 25 . x3 x 4 x5 n n
(1) x (1) x n 1 n 1
or Maclaurin e x  1 x n  5.   
com   + ...
olução:
ução: 2! 3! 4! 5! n! (n  1)!
olução: Rn ( x)1n 1n 1n 1
x x x 2 x 2 x3 x3 x 4 x 4 x5 x5 ((1)n1)xnn x n ((1)n1) x x
e e  11x x  x 2 x3 x 4 x(55   (1) n n 
51 x
n 1 n 1
e x  1 x2! 2! 3!3! 4! 4! 5! 5!f ( ) xn0!n!
1) ( 
(n(n1)!
1)  1)!x
a) Pelo resto da série 2!  3! R5 ( x4! )  5! n! , Rn((Rnn
x ) (x )1)!
(5  1)!
Solução:

x x 2 x3 x 4 x5 (1)n x n (1)n 1 x n 1
e 1 x
CAPÍTULO 6 – APROXIMAÇÕES POR SÉRIES E POR FUNÇÕES RACIONAIS 
       381
2! 3! 4! 5! n! (n  1)!
Rn ( x )

51
f (51) ( ) x  0
a) a) Peloresto
Pelo restoda série ⇒
da série  R5 ( x)  ,,
(5  1)!
tomamos o seu valor máximo, com
tomamos
tomamos
tomamos o oseuoseu
seu valor máximo,
valor
valor máximo,
máximo, com
com com
1) em x  1 .
(6) x  ( 1)
M  max (6)f (6) (6) )) 
((xx M max
  xe  xx  (e
em
MM  max
x[ 1, f1] f
max ( x ) 
M M max
 max

x e
[ 1, 1] e e e((em
1) 1)
em . 1.
x xx=–1.
1
x[ 1, 1]
x[ x1,[ 
1]1, 1] x[ 1, 1]
x[ x1,1]1, 1]
[
51
e x 501 555111
1
1
11
Erro Maclaurin( x)e ex x0 0  x  [1,  1]
Erro
ErroMaclaurin
Maclaurin ( x)( 
x)  (5  1)!  xx[ 1,
[1, 1] 1]
(5 (51)!
 1)!
Esse é o limite do erro local válido, para um x específico do inte
EsseEsse
Esse éé ooélimite
limitedodo
o limite do
erroerro
erro
local local
local
válido, válido,
válido,
para umpara
xparaumumx específico
específico xdoespecífico
intervalo.dodointerv
inte
Tomandoo oerro
Tomando erro global
global máximo máximo nasnasnas extermidades
extermidades do interval
do intervalo,
Tomando
Tomandoo oerro erro global
global máximo
máximo nasextermidades
extermidades dodointervalo,
interval
em x = :–1:
x  : 11 :
x x1
51 1
1 501 55111 e11
Erro Maclaurin  Max 1 1 0 0 e e 0.003775
Erro
ErroMaclaurin 
Maclaurin  Max Max  (5  1)! 0.003775 0.003775
(5 (51)!
 1)!
b) Como essa série de Maclaurin é de termos com sinais altern alter
b) b)Como
Comoessa essasérie
sériededeMaclaurin
Maclauriné édedetermos termoscom comsinais
sinaisalterna
altern
b) Como
podemos essa série
aplicarde Maclaurin
o Teorema é convergente
1 tomando e de otermos com sinais
primeiro termo aband
podemos
podemos
alternados, aplicar
aplicar
podemos o Teorema
Teorema
o aplicar o 1Teorematomando
1 tomando o primeiro
o primeiro
1 tomando termo
termo
o primeiro abandon
aband
termo de n  5 , em
depoisabandonado x  1n, logo:
depois = 5, em x = +1, logo:
depois
depois dede n n5, 5em, emx x1de, 1logo:
, logo:
5 1 51
(51) (1)
1 5511 5 1 5511
Erro Maclaurin  Max (1) (1) (1)(1) 0.001388889
Erro
Erro Maclaurin

Maclaurin
 Max Max   (5  1)! 0.001388889 0.001388889
(5 (51)!  1)!
Então,
Então, considerando
considerando que
que os dois teoremas de cálculo de erros má
Então, considerando que osos dois dois teoremas
teoremas dede cálculo
cálculo dede erros
erros máximá
Então,
são considerando
válidos, podemosque as duas
tomar formas o menorde cálculo de erros
limite do máximos
erro, 0.0013888
são
são
são válidos,
válidos,
válidos, podemos
podemos
podemos tomar
tomar
tomar o menor o o menormenor
limite dolimite
limite do erro,
erro,do0.001388889
erro, 0.0013888
0.001388889
ordem
de ordem dede10 310
3
, ,para
para oo aproximadordede Maclaurin de grau n  5:
n =n 5:
o aproximador Maclaurin de
degrau
33–3
ordem
ordem dede 10 10 ,para
, parao aproximador
aproximador dede Maclaurin
Maclaurin grau
de grau n5: 5 :
2 3 4 5
x 2 x 22 3 x 33 4 x 44 5 x 55
e  x  M ( x )  1 xx x x x x x x x
e  xex
M ( x555)( 
 5M x)1 1x x  2!
  3!   4!   5!
2! 2! 3! 3! 4! 4! 5! 5!

Exemplo 6.5: mínimo para aproximar ( x) , x 


Exemplo
Exemplo 6.5:
6.5:
determine
determine
determine
o
o grau
o grau grau n nnmínimo
mínimoparapara aproximarf ( xff )(( x
aproximar  sen
x))sen

( x)(,x)x, x[
sen 
por Maclaurin com 6 66 ) .
  O(10 6
porpor Maclaurin
Maclaurin comcom O(10
O (10 ). ).
Solução:
Solução:
Solução:
A
A série
série de Maclaurin para sen( x ) é formada por termos de expoentes ímpares:
A série dede Maclaurin
Maclaurin para
para sensen é formada
( x )( xé) formada porpor termos termos dede expoentes
expoentes ímpares:
ímpares:
3 5 7 i 2i 1
x3 x5 x7 ((
i 1) i x 2i 1
sen( x) xx3 x3 x5 x5 x7 x7  (1) x 2ii x12i 1 
1)
sen( x) x      
ordem de 10 3 , 2para 3o aproximador de Maclaurin de grau n  5 :
x x x 4 x5
e  x  M 5 ( x)x 
1 x   x2 2 x3 3 x4 4 5x5
382 e  M ( x)  2!1 x3!x 4!x 5!
x x
e x  M 55( x) 
1 x  2! 3! 4! CÁLCULO
5! NUMÉRICO COMPUTACIONAL
2! 3! 4! 5!
mplo 6.5: determine 376 o grau 376 n mínimo para aproximar f ( x )  sen( x ) , x  [ 1, 1]
Exemplo 6.5: determine
Exemplo 6.5:x =determine graun nmínimo
o3o/grau mínimopara aproximar f(x)
para aproximar f ( x)=sen(x),
sen( x) , x  [1, 1]
Exemplo 6.5: 5  t (
determine x )
x =
= 5

o 7
graut ( x ) n
= − 3 / 7
mínimo para aproximar f ( x)  sen( x) , x  [1, 1]
Maclaurinx ∈ [–1,1] por
O (10Maclaurin com ε = O(10 ). –6
com 6
).
por
por Maclaurin
Maclaurin com   OO(10
com (1066))..
ução: Solução:
Solução:
A série de para
Solução:
rie de Maclaurin Maclaurin
sen( xpara) é sen(x)
formada é formada por termos
por termos de expoentes
de expoentes ímpares:
ímpares:
AA série
série de
de Maclaurin
Maclaurin para 7sen((xx)) ééformada
formada 1portermos
termosdedeexpoentes
expoentes ímpares:
379 x
3
xpara
5
379 x
sen (1)i x 2i por ímpares:
sen( x) x    5  i
ξ ∈ (3! β , x) 5!ξ ∈ xx3(7! β , xx)5 xx7 (2i  1)!
3 7 2i 1
sen ( x )  x      ((1)1)i x 2xi 1 
sen( x) x 380   
380  
m:
Assim: 3!3! 5! 5! 7!7!
n +1
(2(2 i i 1)! 1)!
n +1
M x−0 M x−0
a) TomandoErro
Assim:
Assim: o erro Maclaurin
deErro (Maclaurin
truncamento x) ≤ ( xpelo
) ≤ valor máximo do resto da série
a) Tomando o erro de truncamento (n + 1)! pelo (n + valor 1)! máximo do resto da série
382
a) Tomando
Tomando oo erro 382 erro
x  de
n 1
detruncamento
truncamento
M pelo pelovalor valormáximo máximododoresto resto
dada série
série
Erro Maclaurin( x)  x −, βem que Mn +1 Mmax f ( n 1) ( x) , teremos:
n +1
M x−β
Erro Maclaurin Erro(Max nMaclaurin
 1)! =x  nMax n11 = M =xmax ( a ,b ]
fM( n +1)= (maxx ) f ( n +1) ( x )
x  (n + 1)! MM ,(nem + 1)! que x∈[ a ,b ] x∈([ na 
,b ]
Maclaurin((xx))
Erro Maclaurin  , ,em emque que MM max maxf f (1)n(1)x() x,)teremos: , teremos:
f ( x)  sen 384 (
teremos:x ) , f ( x
384)  cos( x ) , f
((nn1)! ( x
1)! )   sen ( x ) , f ( x )  
x(xa,b( a] ,b ] cos( x) ;
x− x2 x3 x 4x 2 x5x3 x 4 (x−5 1)n x n (−(−1)1)n +n1xxnn +1 (−1) n +1 x n +1
1
e x e
),=[−,a ,1bf3!
f]−((x+xxsen
− x( n 1)
M max f f( x)  = − +
x) ((x2!
(sen )+)4! −x−) ,x+) +⋯ f−+(1x(5!
nf  e+(+x()x(,)nn,+f !1)!
) +n! sen
)xpar; ⋯sen f(x()+x+) … (ncos( x) x;; +) …

x( a ,b ]
sen x)xmax 2!(cos(
5!3!x ), ,4!
cos( +cos(
1)! ;
   
Rn ( x ) Rn ( x )
M max ff ((nn1)1)(xx)) xmax
( maxsen sen( x( )x), ,nn
1 1par;
par;eee
385 xmax
 ( a ,b ] 385
x( a ,b ] [ a ,b ] x[ a ,b ]
par;
( −8 1)i x 2i +1 ( −1)i
x x
x 31 xx35 xx57 x7
0 1 0
0 1 0 00 00 0
2 2
e −z
dz
0 max f(n(n1)1)
= x 0 −z
e + x
dz 1
+
= x 20

+ x + x 24
−+ ++ x x 46

+ +
+ xx68
−+ ⋯ + + x + ⋯ ++ ⋯
 M 0
( x) max 1!3  cos( x1!3 2!5
) ,  n 12!5 3!7ímpar. 3!7 i !(2i + 1) i !(2i
ímpar.
 M max x( a ,b ]f ( x) max x[ a,bcos(
] x) ,  n 1 ímpar.
M max= cf 1((xnn1)1) ((xxc))2 x=max c1cx3 x++ 2cx4 x xx+))+c,,3c 5 xn
+n+c141cx6ímpar.
xímpar.
+ +c5cx74x+6 +c6cx85x+7 +c7 x⋯ c8cx27i ++2 x 2⋯
0 1 x[ a0 ,b2] 1 3 2 4 3 5 i +1

x( a ,b ]
+
 +max ccos(
cos( x 6
++ ++ c⋯ 2i +2 x
2

Como
Como
Como
x( a ,b ]
388 n nnão n é
388énulosempre sempre
xx[[aa,b,b]]
é sempreímpar, ímpar,
ímpar, então então
entãon + n1será 1 n será
 1
sempre serápar,
sempre sempre par,
Como
M = n
|sen(1)| é = sempre
sempre
0.841470984807897, ímpar,
ímpar, então
então e esse n n 1 1
erro será
será
é máximo sempre
sempre em par,
par,
    2k − 1 , eesse ,2kecos 1erro
−esse    é2kmáximo
− 1  máximo
 2k − 1 em
k1 −,=1) xπ1(2

 M
T=
M
xM n (α
sen
sen

1,sen

k )então
=(1) (1)T (n0.841470984807897
cos 0.841470984807897
 α*k arcos
) = cos  cos  n *arcos,,eπ cos  =erro
esse π n  erro
= coséπ n =em cos xπ(2 cos
então , en
 = 0k −
  (1) n0.841470984807897
0.841470984807897   2 n e
  esse 2 n
erro éé máximo2
máximo
    n emem
   x 2x
 n
1 ,
1 então
,
  então 2 
n 1 n 1
390 390 1 1 n1
n0 1 00.84147098 0.841470986 6
Erro
Erro Maclaurin
Maclaurin Max +Max 11 00  0.84147098
0.84147098 10 10
2Maclaurinf ( x ) * TMax ( ) 2
+1
2 ( ) ( ) 21)!
1

Erro
 Maclaurin Max x f x
 * T  π x m
n =
(dx ( 1)!
n π m10 1066 
bi =  bi = i  dx = i ((nn  1)! f ( x ) T ( x )
 1)! j  i j  x j )Ti ( x j ) 
f (
π −1 1 − xπ −1 1 − 2 π x m j =1 π  m j =1 
2

Para
Para
Para nn
n 777( (nn(n11par),par),
1 par),
Para n =72(n j −+ 111par),  2 j −1 
par),
x j = cos  x j = πcos  ,∀ j 1=1,π 2,...,
n ,1 ∀ mj = 1, 2,..., m
 2m   211m  00
n0
n11
 0.84147098
0.84147098
n 1
0.84147098
Erro Maclaurin
Erro
Erro Maclaurin

Maclaurin
  MaxMax
Max 1   0 0.84147098 2.0869816
2.0869816
2.0869816 ee05e05( 05
O( O(10(O
(10
5(10
)5).) ).
5
) ). 5
391
Erro Maclaurin  391 Max ((nn( n1)! 1)!
1)!  2.0869816e  05 ( O(10 )
f ( x) = a0 * Tf0 (+x)a1=* T
a10 +* Ta02+* (aT12* +
T1T+0 )a22*+(Ta23+* T (n  1)!
(T03) +23+T1a)3/ *4(T3 + 3T1 ) / 4
Para
Para nn999,,,
Para nn 
Para
* (T
= 9,
+ a4 9
Para n , 4 + 4+T2a4+*3(T04)+n841n+T21...++3TE0T1) 8 + ... + ET1
f (T )Maclaurin
= b0  fb1(TT1Max
)+Max
=b2bT02++11b11T00+0+
2b n2T
b0.84147098
T ET1+ bnT2.318868
0.84147098 ET1 e  07
n 1
+ ⋯ +n+⋯
0.84147098 n +2.318868 O 7
Erro
Erro Maclaurin
Erro Maclaurin
 Max 1
1 (
n 0 n
1)!
1
0.841470982.318868 ( O(10
e  e07(07 (O
(13)
(10 )7 )).).7 ) ). (13)
(10

394 Maclaurin 394 n 1)!


(n(  1)! 7
Erro  Max  2.318868e  07 ( O(10 ) ).
e x
Logo,
Logo,
Logo, pelo
pelo eteoremada
x
peloteorema
teorema dadasérie série
série de
dede (nTaylor,
 1)!aaaproximação
Taylor,
Taylor, a aproximação
aproximação de degrau
de
grau nn99
grau ntem 9 tem
tem
erro de
Logo, truncamento
depelo máximo
teorema menor
da série dedo que aaordem
Taylor, de
deOde
a ordem O(10
aproximação
6
)6 . 6
) . de
erro
erro de truncamento
truncamentomáximo
máximomenor
menor do que
do que ordem
a (10
O(10 ) . grau n  9
Para n  9 , 1 0 0.84147098 5
Erro Maclaurin
 Max  2.0869816e  05 ( O(10
Para n  9 , n 1 (n  1)!
1  0 0.84147098
CAPÍTULOErro Maclaurin

6 – APROXIMAÇÕES Max 
POR SÉRIES E POR FUNÇÕES RACIONAIS 3837 ) ).
2.318868e  07 ( O(10
Para n9, n 1
1  0(n  1)!0.84147098 7
Erro Maclaurin
 Max n 1
 2.318868e  07 ( O(10 ) ).
Logo, 1  0de(nTaylor,
 1)! a aproximação de grau n  9 tem
0.84147098
Erropelo teoremaMax da série 7
Logo, Maclaurin
pelo  teorema da série de 
Taylor, a aproximação 07 ( O(10 )
e  grau
2.318868de
(n  1)!
Logo,
erro peloerro
tem teorema
n =de9 truncamento da série
máximo
de truncamento menorde Taylor,
do que
máximo a aaproximação
menor ordem de6grau
de aOordem
do que (10 ). n 9
Logo,
de O(10 pelo
–6
). teorema máximo
da série de Taylor, a aproximação de grau n
b) Comoerro de
essatruncamento
série de Maclaurin menor do que a eordem
é convergente de O(10
de termos com) .sinais
6

erro de truncamento máximo menor do que a ordem de O(10 ) . 6

b)
b) Como essa
alternados, essa série
série
podemos de Maclaurin
de Maclaurin
aplicar oéTeorema é convergente
convergente 1: e de termose com
de termos
sinais com si
b) Como
alternados, essa série de
podemos Maclaurin
aplicar o Teorema é convergente
1: 1: e de termos com
alternados, x3 podemos
x5 x7 aplicar(o 1)Teorema
i 2 i 1
x
sen ( x) x  podemos
alternados,   aplicar  o Teorema  1:
3! x3 5! x5 7! x 7 (2i(1)
1)!i x 2i 1
sen( x) x  x3  x5 x 7  (1)i x 2i 1
sen ( x )
Para a aproximação  x  3!  5!  7!   (2i7, 1)! 
3! 5! de 7! grau n (2 i por
1)! exemplo, o primeiro termo
Para a aproximação
abandonado é de grau de grau n 74, , por exemplo, o primeiro te
Para a aproximação
Para a aproximação de9,grauobtido
den = com
grau
7, porni exemplo,
 7 , poro primeiro
exemplo, o primeiro
termo
abandonado
abandonado
i 2 4 1 ééé de
dede grau
grau 9, obtido
9, obtido com
comcom i  4
i = 4,i  4 ,,
(abandonado
1) (1) *
grau 9, obtido
 2.755732 e  06
(2(* 1)
4 i (1)
1)!2*41
( 1)i (1) 2 41
2.755732ee06
2.755732
*

(2 * 4  1)!
06
Logo, (2 *pelo
4  1)! Teorema 1, ao abandonar o termo de grau n  2i  1  9 , já
Logo, pelo
Logo,
teremos erro Teorema
pelo Teorema
de truncamento1,1,ao
aoabandonar
máximo dao otermo
abandonar termode
ordem dede grau (10n6 )n.2 iEntão,
Ograu 21i  19
Logo, pelo Teorema 1, ao abandonar o termo de grau n = 2i + 1 = 9, 6
teremos
já teremos erro
teremos erro dede
de truncamento máximo dada ordem –6 dedeO (10O(10) .6são )En
considerando erro
que os truncamento
truncamento
dois teoremasmáximo máximo
da ordem
de cálculo de ordem
O(10
de erros). Então,
máximos .
considerando que
considerando
considerando que
queas duas
os
osadoisformas
dois de cálculo
teoremas
teoremas decálculo
dede erros máximos
cálculode de erros sãomáximos
erros máxim
válidos,
válidos, podemos tomar a aproximação de grau n = 7, garantindo o erro
podemos tomar aproximação de grau n  7 , garantindo
válidos,
válidos,
o erro máximo podemos
podemostomar tomar aaaproximação
6 O(10–6): de
aproximação degrau
graun n 7,7garantindo
, garantindo o
máximo global daglobal ordem dade ordem
O(10de ):
máximo
máximo global globalda daordem
ordemde deOO (10
(10 66 :
) :)
3 5 7
x x x
sen( x)  M 7 ( x) x  x3 3 x5 5 7x 7
x x 7!x
sen((xx))  M
sen M 7((xx))
xx3!
 3!5!
 
3! 5!5! 7!7!
7

Exemplo 6.6: determine o grau n mínimo para aproximar f(x) = ln(1 + x),
Exemplo 6.6:1]determine
x ∈ (–1, o grau
por Maclaurin comn mínimo para da
erro máximo aproximar
ordem defO(10 ).  x) , x  (1, 1]
x) –6ln(1
(
Exemplo 6.6: determine o grau n mínimo para aproximar f ( x ) ln(1  x) , x 
Exemplo 6.6: determine o grau n mínimo para6aproximar f ( x) ln(1  x) , x  (
por Maclaurin
Solução: com erro máximo da ordem de O(10 ) . 6
por Maclaurin com erro máximo da ordem de O(10 ).
por Maclaurin
Nesse com aerro
exemplo, máximo
aplicação do da ordem de
majorante do O (106 ) . do resto da série de
teorema
Solução:
Solução:
Taylor e Maclaurin, dada pela eq. (4), gera erro máximo tendendo ao infinito
Solução:
Nesse exemplo,
quando
Nesse exemplo, a aaplicação
x tende a –1. Então,do
aplicação majorante
a aplicação
do do do
majorante teorema
majorante doteorema
nesse
do teorema resto da
não série
do resto da desé
Nesse exemplo, a aplicação do majorante do teorema do
tem valia prática, pois de nada adianta saber que o erro máximo é inferior resto da série
a infinito. Como essa série de Maclaurin é de sinais alternados, podemos
aplicar o Teorema 1:
aylor/Maclaurin,
pois de nada dada adiantapela eq.
saber(n + (4),
quegera
1)! erro
o erro máximo
máximo tendendo
é inferior ao infinito
a infinito. Como essaxsé
quando
aylor/Maclaurin, dada pela eq. (4), gera erro máximo tendendo ao infinito quando x
ende 382
1 . Então,
deaMaclaurin é dea aplicação do
sinais alternados,
n +1
majorante
podemos nesse aplicarteorema não tem
o Teorema 1: valia prática,
ende 384 x − β majorante
M
1 . Então,
ois dea nada a saber
aplicação
Max =que do nesse f ( n +teorema não tem valia prática,
CÁLCULO 1) NUMÉRICO COMPUTACIONAL
Erro Maclaurin
adianta o erro máximo M = max é,b ] inferior ( x ) a infinito. Como essa série
( n + 1)! x∈[ a
ois de nada adianta
384 éln(1 saberx que
2
x o erro
3
x máximo
4
(1)é inferior
n 1 n
x (1) a infinito.
n  2 n 1
x Como essa série
e Maclaurin desinais
x) x alternados,
  podemos   aplicar o Teorema 1:
e Maclaurin 2x 4 3x5 4podemos
x 2 x3alternados,
é de sinais n(−1) n+1ox nTeorema
(−1)n x naplicar +1 n  1
1:
e− x = 1 − x + − + − + ⋯ + + +…
2! 23! 4!
x3 x5! (n1)! n 1 x n (n + 1)!n  2 n 1
Rn ( x )
4
em que x (1)
 x
ln(1  x) x  2  3  4   n 1 n  Rn (nx ) 2 n 1
x x x (1)n x (1)n  1x
ln(1  x) x  (21)n  32 xn 1 4  6 
385 
R ( x )  2 3 43  10 5 n nRn( x1)
em
x que n
1n  1 2 x x x7 ( −1)i x 2i +1
m que  e dz = 0 x + 1x + 0 x − + 0 x + + 0x − 0 x( x8) + ⋯ +
2
−z 0 4 6
+Rn +⋯
Então,
m que podemos navaliar
 2 n 1 o 1!3
limite do 2!5
erro de 3!7
truncamento pelo i !(2
1º i + 1)
termo abandona
0
(1) x 6
Rn ( x) = c x 0 +n c2 xn1+1 cx10 2
+ c4 x + c5 x + c6 x + c7 x + c8 x + ⋯ + c2i + 2 x + ⋯
3 4 5 6 7 2 i +1
com x  1 : (
R ( x ) 
1 1) n  12x 
3
10 6
388 n
n  1
Então, podemos (1)avaliar
n2 o limite do erro de truncamento pelo 1º termo abandonado
 106  n2k 1000000 −1      2k − 1    π
Então, Tn (α k ) n=podemos
cos1  n * arcos  cos odo cos n truncamento = cos1º (2 k1−o 1)termo =0
om x podemos
1Então,
: avaliar

oavaliar
limite
  2n
limite erroπ do 

de truncamento
 =erro de

  2n
π pelo

 pelo

termo
2
abandonado
om x  1abandonado
: com x = 1:
390
Note
(1) n  +2que a6 série do Exemplo 6.6 possui velocidade de convergência mu
2n1 2 f (10 x ) * Ti ( x ) n 21000000
1
π m 
lenta,b( i
n 1)
= 
implicando  10 6 a dx
 necessidade
n
n=≥  1000000
1000000
  f ( x j de
)Ti ( xuma
j ) grande quantidade de termos pa
π 1 − x 2 π  m 
Note nque 1 −1 j =1
assegurar umaa 2série do Exemplo 6.6 possui baixa. velocidade de convergência muito
 j precisão
−1  ainda relativamente
x = cos π , ∀ j =
 Exemplode6.6uma1, 2,..., m
enta,Note jque a
implicando
OutraNote
 série
 2a
característica
que
do
m necessidade
a série do daExemplo
aproximação
possui
6.6 possui grandevelocidade
por velocidade quantidade
Taylor/Maclaurin
de convergência
de
de convergênciaé atermos
muito
para
não distribuiç
enta, 391 lenta,aimplicando
implicando
muito necessidade a necessidadede uma deexigegrande
uma grande quantidade
quantidade de termos para
ssegurar
uniforme f
umados
( x ) =
precisão
a *
erros
T + a *
ainda
no
T + a *
relativamente
domínio,
(T + T )o2que + a * (
baixa.
T + 3 T grande
) / 4 número de determos
termos nas séri
ssegurar para
uma assegurar
0
precisão 0 uma
1 1 precisão
ainda 2 2 ainda
relativamente 0 relativamente
3 3
baixa. 1 baixa.
Outra característica
+ a4 * (Tcaracterística da paraaproximação + ET1 por Taylor/Maclaurin (comé picos a não distribuição
4 + 4T2 + 3T0 ) 8da ...aproximação
com convergência Outra lenta +assegurar erros pormínimos
Taylor e Maclaurin é a máximos
não semp
Outra característica
f (T ) erros= bnos
da aproximação por Taylor/Maclaurin é a não distribuição
0 + b1no Tuniforme
b2T2 + ⋯ bnqueTn +no Eoexige
niforme distribuição
dos
localizados 1 +domínio,
extremos). dosAssim,
+oerros domínio,
T1tempo deo resposta
grande quenúmero exige pode
grande
de
(13)termos
número
ficar nas alto
muito séries
ou a
niforme de termos
dos erroslenta
394 nas séries
no domínio, com convergência
o que erros lenta
exige mínimos para
grande número assegurar erros
de termosmínimos nassempre
séries
om convergência
proibitivo. para assegurar (com picos máximos
(com
e x picos máximos sempre localizados nos extremos). Assim, o tempo de
om convergência
ocalizados nos extremos). lenta paraAssim, assegurar errosdemínimos resposta(com podepicosficar máximos
muito altosempre
resposta pode ficar muito altooou tempoaté proibitivo. ou até
ocalizados
roibitivo. nos extremos). Assim, o tempo de resposta pode ficar muito alto ou até
Exemplo 6.7: calcule o erro máximo exato ao aproximar f ( x)  e x , x  [ 1, 1] p
roibitivo.Exemplo 6.7: calcule o erro máximo exato ao aproximar f(x) = ex, x ∈ [–1, 1]
Maclaurin
por Maclaurin com grau comngrau  5 .nLembre-se
= 5. Lembre-se que, no no
de que, Exemplo
Exemplo6.3a, 6.3a, oolimite limite do erro
Exemplo do6.7:
truncamento errocalculedefoitruncamentoo erro em
estimado máximo
foi 0.003775
estimado exato .emao aproximar f ( x)  e , x  [ 1, 1] por
0.003775.
x

Exemplo 6.7: calcule o erro máximo exato ao aproximar f ( x)  e x , x  [ 1, 1] por


Maclaurin
Solução: com grau n  5 . Lembre-se que, no Exemplo 6.3a, o limite do erro de
Solução:
Maclaurin com grau n  5 . Lembre-se 20.003775
que, no Exemplo 6.3a, o limite do erro de
uncamento foi estimado em x x 3
x 4.
x 5

uncamento e x foi Mestimado


5 ( x )  1 xem  0.003775    (M( 5M(x) x ) obtido
5 (obtido porde
por série série de Maclaurin)
Maclaurin)
Solução: 2! 3! 4!. 5!
Solução:
x 2 xErro 3 4
xexato x 5Maclaurin  ( x) M ( x)  e x
e x  M 5 ( x)  1 x  2  3  4  5 ( M 5 ( x ) obtido 5por série de Maclaurin)
x2! x3! x4! x5!
e x  M 5 ( x)  1 x    ( M 5 ( x ) obtido por série de Maclaurin)
2! 3! 4! 5!
x
Erro exato Maclaurin  ( x) M 5 ( x)  e x
1.0 0.5 0 0.5 1.0
Erro exato Maclaurin Erro ( x ) exato Maclaurin  ( x) M 5 ( x)  e x
0.0012128 0.000020243 0 0.000023354 0.00161516

x os erros exatos
Observe que 1.0 ficaram0.5
todos abaixo
0 do limite
0.5 do erro 1.0
de truncamen
CAPÍTULO 6 – APROXIMAÇÕES POR SÉRIES E POR FUNÇÕES RACIONAIS 385

Erro exato Maclaurin (x) = |M5 (x) –ex|

x –1.0 –0.5 0 0.5 1.0

Erro exato Maclaurin (x) 0.0012128 0.000020243


376 0 0.000023354 0.00161516
x = 5  t ( x ) = −3 / 7
Observe que os erros exatos ficaram todos abaixo do limite do erro de
truncamento 0.003775 estimado pelo resto da série de Taylor e Maclaurin
Observe também6.3a.
no Exemplo que os erros
Observe sãoque
também crescentes
os erros sãoacrescentes pontodo  0 . E
partir doa partir
ponto β = 0.
considerando a Então, considerando
característica a característica
inerente inerente dessa aproximação,
dessa aproximação, temos que as série
temos
379 que as séries de Taylor e Maclaurin não satisfazem aos requesitos (b)
Taylor/Maclaurin
eξ (c) não satisfazem aos requesitos (b) e (c) da aproximadora ideal.
∈ (βda
, x) aproximadora ideal.
380
Exemplo 6.8: monteMum x − 0algoritmo que determine os coeficientes da série
n +1
Exemplo
Erro
de 6.8: monte
Maclaurin
Maclaurin ( x ) ≤ um algoritmo
estabelecida, que um
a seguir, para determine os coeficientes
grau genérico, por exemplo da séri
(n + 1)!
382 nestabelecida,
grau
Maclaurin = 20: a seguir, para um grau genérico, por exemplo grau n  2
n +1
x 3 5x − β M i 2 i 1
 z 2 Maclaurin xMax =x
Erro x7 1) x f ( n +1) ( x )
(max
M =
0 e dz x  1!3  2!5 (n +3!7
1)!   x∈[ a ,b ]
i !(2i  1)

384
Solução: x x 2
x x 3
(−1) x
4
(−1) x
5 n n n +1 n +1
e− x = 1 − x + − + − + ⋯ + + +…
Solução: 2! 3! 4! 5! n ! (n + 1)!

Observe que que
Observe estaesta
série tem
série temcoeficientes
coeficientes nulos:
nulos: Rn ( x )
385
x i 2 i 1
x3 x5 x7 1 ( 1) x
 e− z dz  00x  11 x 20 x x3
2
x z 0 1 2 4
5
4 0 x  6 x07x 6  8  0 x8(−1)i x 2i + 
e dz = 0 x + 1x + 0 x − 0x + + 02!5 + 0 x3!7
2
x −
0
+1!3 + ⋯ + +i⋯!(2i  1)
0
1!3 2!5 3!7 i !(2i + 1)
0 1 2 3 4 5 6 7
==c1cx10x+ c2 xc12 +x c3x 2c3+xc4 x3 c+4cx5 x 
4 c x 5  c x6  c 7x  c x 
+ c5 6 x + c76x + c8 x7 + ⋯8 + c2i + 2 x 2i +1 + ⋯
388
Os coeficientes de grau par (índice ímpar) são nulos e os de grau ímpar (índice
  par  2k − 1  ímpar)
 2k − 1e os de grau ímpar (índice
 nulos π
Tn (Os
α k )coeficientes de grau
= cos  n * arcos  cos  (índice π    = cossão
 n  função π   = cos  (2k − 1)  = 0
são definidos pela
par) são definidos
 lei
pela
 de lei
 2
deformação
n formação
 emem função
  2 n de i,
 de
conformei , o conforme
2
algoritmo o algo
390 Cap6exem6.8.m disponível no Caderno de Algoritmos no link <http://sergiopeters.
Cap6exem6.8.m disponível
prof.ufsc.br/algoritmos-livro/>.
no Caderno de Algoritmos no
2 f ( x ) * Ti ( x ) 2 π m
+1

bi =  dx =   f ( x j )Ti ( x j ) 
<http://sergiopeters.prof.ufsc.br/algoritmos-livro/>.
π −1 1 − x 2 π  m j =1 
No Caderno de Algoritmos, você também encontra implementados todos os demais
exemplos 2 j − 1 
apresentados neste capítulo.
x j = cos  π  , ∀ j = 1, 2,..., m
 2m 
No Caderno de Algoritmos, você também encontra implementados todo
391
demaisf (exemplos
x) = a0 * T0 + aapresentados
1 * T1 + a2 * (T2 + T0 )neste
2 + a3 *Capítulo.
(T3 + 3T1 ) / 4
+ a4 * (T4 + 4T2 + 3T0 ) 8 + ... + ET1
f (T ) = b0 + b1T1 + b2T2 + ⋯ + bnTn + ET1
(13)que objetiva melhor
A seguir, vamos abordar uma técnica de aproximação
exemplos
ais
ais
ais
is demais exemplos
exemplosapresentados
exemplos
exemplos
exemplos
exemplos apresentados
neste
apresentados
apresentados
apresentados
apresentados
apresentados Capítulo.
neste
neste
neste
neste
neste neste Capítulo.
Capítulo.
Capítulo.
Capítulo.
Capítulo.
Capítulo.

ir,Avamos
vamos 386
seguir,
abordar
vamos uma
abordar
técnica
uma detécnica
aproximação CÁLCULO NUMÉRICO COMPUTACIONAL
de aproximação
que objetiva
que melhorar
objetiva melhorar
a aaaa a a
eguir,
eguir,
guir,
r,
guir, vamos
vamos
vamos abordar
abordar
abordar
abordar
abordar uma
umauma
uma
uma técnica
técnica
técnica
técnica
técnicade
dede
de
deaproximação
aproximação
aproximação
aproximação
aproximaçãoque
que
que
que objetiva
queobjetiva
objetiva
objetiva melhorar
melhorar
objetivamelhorar
melhorar
melhorar
ção
distribuição
buição
ção
buiçãodos
ibuição
buição
dosdoserros
dos
dos
dos
errosdos
errosda
erros
erros
erros erros
dadasérie
da
da
da
série da
sériede
série
série
série
desérie
deTaylor/Maclaurin
de
de
de de Taylor/Maclaurin
Taylor/Maclaurinbem
Taylor/Maclaurin
Taylor/Maclaurin
Taylor/Maclaurin
Taylor/Maclaurinbem
bem
bem
bem comobem
como
bemcomo
como
como acelerar
como
acelerar
como acelerar
a aaa
acelerar
acelerar
acelerar
acelerarasua
sua
sua
sua
sua a sua
a sua
45 � 69.34 →A parcela descartada
seguir, vamos abordareuma
0.5 e digitode
técnica anterior impar que
aproximação → digito anterior
objetiva melhorar a
gência.
convergência.
vergência.
ergência.
ergência.
ergência.
ência.
erado. distribuição dos erros da série de Taylor e Maclaurin bem como acelerar a sua
convergência.

22proximação
6.1.2 Aproximação
Aproximação
Aproximação
Aproximaçãopor Polinômios
por
por
por por Polinômios
Polinômiosdede
Polinômios
Polinômios Tchebyshev
de Tchebyshev
proximação
Aproximaçãoporpor
Polinômios
Polinômiosdede
deTchebyshev
deTchebyshev
Tchebyshev
Tchebyshev
Tchebyshev
 1.29
 6.1.2 qAproximação por séries de Tchebychev
1.68 −  10 (3.16 ) (+ espaçamento, antes e depois do 10p )
p
(20)
 0.84 + m  n nnde n de ordem
ão1:
nição1:
nição1:
ição1: polinômio
Definição1:
umumum
um um polinômio
polinômio
polinômio
polinômiodede Tchebyshev
de
de de Tchebyshev
Tchebyshev
Tchebyshev
Tchebyshev dede
degrau
de grau
grau
graude ngrau
deprimeira
de
de primeiraprimeira
primeira
primeira ordem
ordem
ordemé éordem
toda
é toda é toda
étoda
toda
ição1:
o1: umum polinômio
polinômio de de Tchebyshev
Tchebyshev de de n de
grau
grau n de primeira
primeira ordem
ordem é toda
é toda
tipo:do tipo: um polinômio de Tchebychev de grau n de primeira ordem é
Definição1: 
ãoexpressão
essão
essão
ssão dodo tipo:
do
dotipo:
tipo:
essão
ão do do tipo: tipo:expressão do tipo:
toda
T (
TTx
T
sível alinhar o nnumero
Tcos(
)(n(x(xx)))cos(nn( xarcos(
cos(
cos( n)nn(27) x))nxxx))arcos(
cos(
arcos(
arcos(
arcos( ))
)) com xcom
com ))x xxx[
com com
[1,[[1,1]
1, x1]
1,1]1] [ 1, 1] (5)
(5)
(5)
(5) (5)
dacos(
neq.arcos(
n n
Tn (T xn) (x)cos( n arcos(
x)) x)) com com comx  [x1,[ 1]1, (5) 1] (5) (5)
oo Como
mo
oocar eq., mas pode manter na vertical para manter a diagramação
arcos(
arcos(
arcos(
arcos(
Como )))(ângulo)
x)xxxarcos( )  
x(ângulo)
 (ângulo)(ângulo)
(ângulo)cos(

cos( )
cos(
cos( ,xxx, ,, )  x ,
)))x
cos(
arcos(
arcos(  (ângulo)
x) x)(ângulo)  cos(
 cos()   )x, x ,
−(h logo
1+h ) 2 h
logo 1  S   0 1 
    (y − y ) (y − y ) 
    3 2 2 1 
( h1 + h2 ) Tn T(TTxnhn2(n)(x(xx)))cos( Tcos( (nxn))n
cos(
ncos( n)com
cos(
)) com
com
comn )
[0,
[0,

com ]S2.
[0,
[0, ..  ] .h2 − h1
[0,
]].] (6)  (6)
(6)
(6)
(6) (6)
  
Tn (Txn)(x)cos(    cos(  
n )n com ) com [0,    [0,  ] . ] . ( y4 − y3 ) − ( y3 − y2 )  (6) (6)
h2 2 ( h2 + h3 ) Existemh3também polinômios de Tchebychev   S3   h h2 
    de segunda3 ordem (POLINÔMIOS de Tchebychev, 2016).
 (28)
 ⋮   ⋮ 
⋱Para
Para cada cada nn ,, desenvolvendo desenvolvendo  
*

 = 6
 a
a eq. eq. (6) (6) com com o o usouso de de identidad
identidad
Para cada n, desenvolvendo  ⋮  a eq. (6)⋮ com o uso  de identidades
trigonométricas
trigonométricas Para cada ⋱ elementares,
n , desenvolvendo
elementares, resultam
resultam
  a  eq. as
as(6) expressões
(6) com o  uso
expressões de
dedepolinômios
de identidades
polinômios convenciona
convenciona
trigonométricas
Para
Para cada
cada elementares,
nn ,, desenvolvendo
desenvolvendo   resultam
 aa eq.eq. as com
(6) expressões
com oo uso uso dedepolinômios
identidades
identidades
trigonométricas Para cada n
h)m:−2 elementares,
, desenvolvendo
resultam a
  Sm −1 as expressõeseq. (6) com
( ym − ym−1 ) ( ym −de
o  uso de identidades
polinômios convencionais
para os m − 2 T (2(
hconvencionais + hm−1 )parahos 1 − ym − 2 ) 
para os
trigonométricas
trigonométricasPara Tnn ( xxcada ) : elementares,
elementares,
m −1 T (x):
n , desenvolvendoresultam
resultam
n   as  aexpressões
as  eq.
expressões
h (6)− comde
deh
polinômios
o  uso de
polinômios convencionais
identidades
convencionais
trigonométricas
para osPara T ( x ) cada
: elementares,
n , desenvolvendo resultam  as
 a  eq. (6) com o  uso deconvencionais
expressões
m −1 de m − 2polinômios identidades
para os os Para T n cada
(( xx)) ::cos(0 n , desenvolvendo
2(hm−1 + hm resultam
) hm   Sm as a eq. (6) com
 ( ym +1 − ym ) ( ymde
 expressões o
−1 ) 
− ympolinômios uso de identidades
T
trigonométricas
para (T xn) *  )=1
hmelementares, convencionais
T0 (Txn )( x) :cos(0 *  )=1
−1 −
para os
trigonométricas0 n
elementares, resultam   expressões
as  de polinômios
 convencionais
T0 ( x)  cos(0
trigonométricas *  )=1
elementares, hm ymde −1 )
− ympolinômios
)) −(hxx + h ) resultam as
   expressões
  convencionais
para  T
T
os
T
T 01( (((Txxxx)n)))(x )cos(0
:cos(1

cos(1
cos(0  h
*
*

 )=1
)=1 h  S   0 
para os
T101( xT)n (x )cos(1
0 : m*) )=1
cos(0
 x m−1 m m −1   m +1  
para
os
T
1( xT))n ( xcos(1 : )) xx
)
*) 2 ( )  1
2 2
T
T
T
T

T1 (((x
02((x x
xx)))) cos(1
 cos(2

cos(2
cos(0
cos(1

cos(2  )
 ))
)=1 x 2cos
2cos
2cos 2
(  ) (
 1
 ) 
2

1

x 2 2 x2 1
 2
1 x 1
T022(( xx
T )  cos(2
cos(0* ) )=1 2
2( )  1
2
 22xx2211
T1202 ( x)) cos(1 2cos
1

T1323((((( cos(2
cos(0

xx))))) cos(1 
cos(3 
*) )

)))
)=1 x 2cos
))x42cos 2 (3 )  1
4x(3) 31x 2 x 1
T xxx cos(2 
)))

xxx cos(3  xxx3334x2333(xxx) 31x 2 x2 1
T

T 
cos(3  3
T

T133(
((  ))) cos(3
cos(1

cos(3
cos(2
 4x42cos
T T32 (
32 ((xx))cos(4cos(2
x) cos(3
cos(4 x 423(4x )21 2 2 x2 1
) 42cos ))8x x4 82x 8811xx2 2 12
T
TTchebychev.
NOMIOS de T
T
4 ((xx
424
4( xx))))cos(3
cos(4
cos(4
cos(2
cos(4 2016)
 )))))482cos
88xxx33448 x838(84xxxx2
 
)22  11 x1 1
T ( cos(4   8 x 
 cos(3

)))))16 4xx35320 x55 x3  5x33
3 4 5 3
T 34 ((
uir hyperlink:
T xxx)))) cos(5
cos(5
cos(5 16 xxxx16 3x  5x  5x (7a)
T
T
T5355((
( xx )  cos(3
cos(5
cos(5
cos(4  ) 
)  )48
16
s://pt.wikipedia.org/wiki/Polin%C3%B4mios_de_Tchebychev
T ( x)  cos(5 )  16 x  20
5  45
16
45  x
8
20
20xx2x xx3320
2 20 1 5xx 25x
4 5 x
(7a)
(7a)
(7
(7
T
T564 ((((xxxx)))) 
5
T
T
4
cos(6
cos(4
 cos(6 ) 32
)))))
6 832xx4x6848
xxx532 6 8xx6 x
x48
62  4 1 184x
 18xx4 (7a)
x3441
2 -1
-118x22 -1
(7a)
T
T
T 64 ( x)
6 ( ( x x ) )  cos(4
cos(6
cos(6
cos(6
cos(5    ))16
 8
32  32 620 x48 x

x 48
485 18x
x x 

2
-118 x -1 (7a)
T566((xx)) 
T cos(6)) 16
 cos(5 32xxx756
5 20 48xx3x54
3 18 2
x56xx5x323-1
+5
6
T 57 ((x x))) = cos(7cos(6θ)))=16
cos(7 64 32xxx76
64 7
112
−112 48
7 xx45
5
18
56
3
17xx 3 (7a)
ar eq. T 6( x cos(5  20 5 x 2 −7 (7a)
T
T
T 577((xx
7
) ) 

T7667((((xxxx))))cos(8 cos(7
cos(7
cos(6
cos(7
cos(7 
 )
))    ) 64
)12832
64  x
x64
 xxx64 76 
88x
x112
48
112
7 x x112
xx1124 5  18
6 56
 56x x
5
x160 x  -1
x2x-1
2 3  56
x456 7 xx 3
47 xx   2 27
7 x
x1
T
T cos(6
cos(8   )  32
128 x 68   48 256
256 x x6
18
 160 x  
3232x x  1
T886 ((xx))  cos(8
8
cos(6)) 128 32xxx77 8112 48 8 xx5x
4 6 18 x 6
x633-1
xx 4 2
T
T
T8977988(((((xxxxx))))) cos(9
T
T
cos(7
cos(8
cos(8
cos(8
cos(7
cos(9 ))) ))12864
64 x128
256 xx7x99
128 xx256
112

8 5x256
256
576 
x
6
256
7
x 7 56
56

160
xx432
160 x 

47
57
x
x32
160
5
160
x32
 xxxx442 3x
120 
1
32
 9 x
x
2
3132 x 2  1
1
T  256  576 x  432 x  120 x  9 x
)))está
5 3
T79 ((xx))  cos(8 cos(7
cos(9 64
256 xxx88 9 112 x 6
 9 xx67 
576 7 56 x 47
 432 7xx45x
5
 120 xx5533 1
xx22linha 9 xx 33
co 6.7 - ...T 128 256 160 32
9
T
T
T 8 ((xx
função
T899((xx)) cos(8 ) )   cos(9
cos(9
exata
cos(9  ) )128 ) 256 256
 256 x
embaixo
x8  256  x576 
x xx6576
9 x 576
da 
 160 x
432
curva
x x4 432
7 
x 432
 120
em
32 xx2  1120
9 x 9
x 
continua9xx
T
T899((xx))  cos(8 cos(9))  128 256xx99256 576x77 160 432xx5532 120 x x33 1120 9x
T9 ( x)  recursiva
E a fórmula cos(9 )  para
recursiva 256
para x obter 576TxTn7n1
obter (1( x) )é:xé:5  120x3  9x
x432
E T9 ( x)  recursiva cos(9 )  256 x9obter  576x n  432 x  120x  9x
Ea a fórmula
fórmula recursiva para para obter T Tn 11 (( xx)) é:
é:
E
EEaaafórmula
Tn 1 ( x) recursiva
fórmula recursiva
22** xx**TTnn((xxpara
recursiva ))T para
Tnnobter
para obter( xT
11((xx))obter 1 ( x) é:
1 ( x ) é:
fórmula T) né: (7b)
(7b)
E a T
fórmula
T n 1 ( ( xx)) recursiva
22 ** xx ** TT n( ( xxpara
)) 
 T
T 1 (
n obter( xx)) T Tnn 11 ( x) né: (7b)
(7b)
E a fórmula n 1 recursiva n paran obter 1 Tn 1 ( x) é:

 T
T 11(( xx ) )) 2 *2 x***x Tn**(T xn)((x T))n (T xn)1 (( x ) (7
 T n 1( x) 2 * x * T ( xn)  T ( xn)1 x)
T ( x 2 x T x  T
nn (7b) (7
   1
(7b)
T7 ( x)  cos(7 )  64x 112x  56x  7 x
T8 ( x)  cos(8 )  128x8  256 x6  160 x4  32 x2  1
T ( x)  cos(9
CAPÍTULO  9
)  256 xPOR
6 – APROXIMAÇÕES  576 x7 EPOR
SÉRIES x5  120
432FUNÇÕES x3  9 x
RACIONAIS 387
9

E a fórmula recursiva
E a fórmula para
recursiva obter
para obterTnT1n(+x1)(x)é:é:

Tn 1 ( x) 2 * x * Tn ( x)  Tn 1 ( x)
 (7b)

No Gráfico 6.1, apresentamos os primeiros cincos polinômios de Tchebychev de


primeira387
ordem.
No Gráfico 6.1, apresentamos os primeiros cincos polinômios de Tchebyshe
Grafico 6.1
Gráfico
primeira 6.1 – Polinômios deTchebyshev de graus n = 0, 1, 2, 3 e 4
ordem.
T0

T T
Gráfico 6.1 – Polinômios
3 deTchebyshev de graus n  0, 1, 2, 3, 4 e 5
1

T4

T2

Fonte: Polinômios
Fonte: Polinômios de
de Tchebychev
Tchebychevx (2016)
(2016)
Fonte: Elaboração própria.
Explicitando as
Explicitando as potências
potências de de xx em em função
função dosdos polinômios
polinômios TTn((xx)) ,, que
que se
s
n
Nas eqs. (7a) explicitando as potências de x em função dos polinômios
abreviados
abreviados porserão
Tn(x), que
por T para facilitar
Tn para facilitar
n abreviados porooTseu
seu uso
uso
para algébrico,
algébrico,
facilitar resultam:
resultam:
o seu uso algébrico, resultam:
n

0
xx0  T00
T
11
xx  T11
T
22
x (T22  T00 ) 2
33
x (T33  3T11) 4
4
x4  (T44  4T22  3T00 ) 8
5
x5  (T55  5T33  10T11) 16 (7c)
x66  (T66  6T44  15T22  10T00 ) 32
7
x7  (T77  7T55  21T33  35T11) 64 20
8
x8  (T88  8T66  28T44  56T22  35T00) 128
x99  (T99  9T77  36T55  84T33  126T11 ) 256

A seguir, vamos apresentar algumas propriedades


propriedades dos
dos polinômios
polinômios de
de Tchebyshe
Tchebyshe
9 7 5 3 1

A seguir,
388 vamos apresentar algumas propriedades dos polinômios
CÁLCULO NUMÉRICO de Tchebyshev
COMPUTACIONAL

Propriedade 1: Tnapresentar
A seguir, vamos ( x ) é um polinômio
algumas de grau
propriedades n e existe
dos polinômios um único Tn ( x ) para c
de Tchebychev.

n . O coeficiente
grauPropriedade
376 1: Tn(x)de x npolinômio
é um em Tn ( x ) de
é grau
sempre igualum
n e existe
n1
a 2único. T (x) para
n
x = 5grau
cada  t ( xn.
) =O
−3coeficiente
/7 de xn em Tn(x) é sempre igual a 2n – 1.

Propriedade
Propriedade 2:2:T|T n (nx(x)|
)  1≤,1,∀x x∈ [[–1,
1, +1], 1] , então então max Tn ( x)  1..
x[ 1, 1]
e 3: todas as n raízes  k de Tn ( x)  0 (“nós” de Tchebyshev) são
e 3: todas
priedade 3: todas
Propriedade n asraízes
asPropriedade 3:n todasraízes as
3: de
k todas
n kraízesdeTas xn )(nxde
n (Ta 0T 0 (“nós”
) raízes (“nós”
(x) 
=k 0 de de
(“nós” Tchebyshev)
de TTchebyshev)
n (x ) Tchebychev)
de 0 (“nós”são são
de Tchebyshev) s
são
k n
btidas diretamente
obtidas
379 viae obtidas
diretamente
simples via diretamente via
ples e obtidas
btidas diretamente diretamente via via
ξ ∈ (β , x) 2k  1
  n2k  1 
380k  cos  k 2cosk 12k  1,  ,k k1,k 2,...,
1,cos
2,..., n  ,  k  1, 2,..., n (8a)(8a) (8
 k  cos  2n 2n ,  k  2, ...,nn2(nn > 0)
n +11, 2,...,  (8a)(8a)
 2n( x) ≤ M x − 0
Erro Maclaurin
es n “nós” são
ós” são obtidos através Esses
obtidos natravés
“nós”de(nsão + 1)!uma
de
uma obtidos através uniforme
distribuição
distribuição de uma distribuição
uniforme em
em k  (0,(0,uniforme) deem  k  (0,  )
 ) de
ós” são obtidos 382 através de uma distribuição uniforme em  kk  (0,  ) de
do que cada Essesraiz n k“nós”
modo  quesão
satisfaça cada Tobtidos
(
raiz )n+1cos(
através
 n arcos(
satisfaça de Tnkuma  k ) 0distribuição
()) , cos(
em nque k 
arcos( uniforme
)) 0k ), em
kcos( e em que  k  cos( k )
ada raiz Erro satisfaça T (  n)x −kβcos( kM
n arcos( 
=max
)) (0 ,
f 0T,n((a
emx )k) =
que   cos(  ) e
ada raiz θk k∈satisfaça (0, π) de modo
Maclaurin TMax =que cada raiz a Mk satisfaça cos(n arcos(a )) = 0,
n +1)
k
 n
n (  k
) cos(
k ( n + 1)!  n arcos( k
))
k[ a ,b ] em que  k
 cos(  k
kk ) e
dado por, em que kadado = cos(θ por,
) e θ dado por,
x∈ k
, 384 k k k
,  2k  1n x n  (−1) n+1 x n+1
x2k x1 x x5  + (−1) 
2 3 4
e− x = 12 −kkx+1 − +  − +k⋯ + +… (8b) (8
  2! 2 n3! 4! 5!  2nn !  (n + 1)!
k   2k  1    (8b)(8b)
k   2n   Rn ( x ) (8b)
385  2n 
STAQUE Verificamos DESTAQUE 2k ) x 30 , substituindo
que 1 Tn (Verificamos quex 5 Tn ( ) 7valores
0 , substituindo de x ( −da 1)os x 2i +valores de x da eq. (
x
6 k x
os i eq. 1 (5)
0 1 0 0 0 0
2

0 e −z
dz = x 0
+ x + x − + x 4
+ + x − + x 8
+ ⋯ + +⋯
1!3 2!5substituindo 3!7 os valoresi !(2 i x+ 1)
Es Verificamos
raízes  k dadas
Verificamos
que
pelaspelaT raízes
neq. )que
( k(8a), ,Tnsubstituindo
k 0dadas
conforme
(akpela ) = 0, eq. (8a),
segue, osconforme
valoressegue, de xdeda da
eq.eq.(5)(5)
E Verificamos que 0T (1 )  0 2 , substituindo 5 os 6valores de x da2 i +1 eq. (5)
pelas raízes = c1 x +a n ck2 dadas
x k + c3 x pela+ c4 xeq. 3
+ c(8a), 4
conforme segue,
5 x + c6 x + c7 x + c8 x + ⋯ + c2 i + 2 x
7
+ ⋯
Tk (dadas 388 pela eq. T(8a), 2 k  1
 )  conforme  segue,  2k2 k
 1 1    n  2 k  1     
k )  cos(
 nk dadas n * arcos(cos
pela eq. (8a),n (  k conforme  n))*arcos(cos
cos( cos( n 
segue,  )  ))cos  cos(  (2k  1)( )   )0 cos  (2k  1)( )   0
 2n  2k − 1   2n2n   2k − 1     2n2   π   2 
Tn (α k ) = cos  n * arcos  cos  π = cos n π = cos  (2k − 1)  = 0
 2k  1   2n  2k  1   2n      2
cos(n * arcos(cos
DESTAQUE 2k  1  ))  cos( n  2k  1  )  cos  (2k  1)(  )   0 
FIM DESTAQUE
cos(n * arcos(cos
390  2n   ))  cos( n  2n  )  cos  (2 k  1)( )
2   0
2 f ( x ) *2Tni ( x )  2  π m  2n    2 
+1

priedade
QUE
bi = Propriedade

4: osπpolinômios
dx 4:= os
2 de primeira
 
polinômiosf ( x j )Ti ( xde )  primeira ordem, T ( x ) , formam uma sequência
π  m j =1 ordem, Tn ( x ) , formam uma sequência
j
de
Propriedade −1 1 − x4: os polinômios de Tchebychev, Tn(x), formam uma
n
QUE
sequência  2dej −1 
polinômios ortogonais,
nômios ortogonais, x j = cospolinômios
 comπ  , ∀ortogonais,
j = 1, 2,...,
relação m peso
ao com com relação
W ( xrelação
) 1 ao1 aopeso x 2peso
, noW x) 1 1  x 2 ,, no interva
(intervalo
 m 2
no intervalode
e 4: os polinômios x ∈primeira
[–1, +1], ordem, ou seja: T ( x ) , formam uma sequência de
e1,4:os 1] , ou391seja: x  [1,de 1]
polinômios , ou seja:ordem, Tn ( x ) , formam uma sequência de
primeira
f ( x) = a0 * T0 + a1 * T1 + a2 * (T2 + T0 ) 2 + a3 * (T3 + 3T1 ) / 4
n

ortogonais, + com
a relação
0, 1T ) n8ao
* (T4 + 4T2 + 3
+
m+peso
... E
W ( x) n 1 m 1  x 22 , no intervalo
0,
ortogonais, 1
Tn ( x) *com
Tm ( x) relação
4  T
0 ( ao peso W
x ) * T ( x )
T1 ( x) 1 1  x , no intervalo
ou seja: 1 f (T )1=bx0 2+ b1T1 + b2T2 +1 ⋯ +1 bnxTn2 + ET1 
dx  , n n mm 0 dx  , n m 0 (9) (9) (9)
(13)
ou seja: 394  / 2, n m  0  / 2, n m  0
ex 0, nm
1
T ( x ) * T m ( x) 0, nm
1 Tn ( x1) *5Txm2(teorema
dx de
1 n
( x)Propriedade n5 (teorema
m 0
, Tchebyshev): de Tchebyshev):
função y  f ( xtoda (9) em
função
priedade dx  , n m 0 toda (9) y  f ( x) contínua e
) contínua
 n polinômios
/ 2, ser m0
2
1]1pode1ser  xaproximada
[ 1, 1] pode
/ 2, n aproximada
 usando m0 deusando polinômios
Tchebyshev de Tchebyshev
por meio da série: por meio da série:
x  [ 1,  1]
x  [ 1,  1] , ou seja:
1 0, nm
Tn ( x) * Tm1 ( x)  0, nm
1 1  x2Tn (dx
CAPÍTULO 6 – APROXIMAÇÕES x)* Tm(xPOR n m E POR
,) SÉRIES 0 FUNÇÕES RACIONAIS (9) 389
 1  x2 / dx   ,
2, n m  0
n m 0 (9)
 / 2, n m  0
1

Propriedade 5 (teorema de Tchebychev): toda função y = f(x) contínua


Propriedade 5 (teorema
em [–1, de aproximada
1] pode ser Tchebyshev):
usando
toda polinômios
função y  fde
( x)Tchebychev por
contínua em
Propriedade 5 (teorema de Tchebyshev): toda função y  f ( x) contínua em
meio
[ 1, 1] pode serda série:
aproximada usando polinômios de Tchebyshev por meio da série:
[ 1, 1] pode ser aproximada usando polinômios de Tchebyshev por meio da série:

f ( x)   bT i i  b0  b1 * T1  x   b2 * T2  x   ....  bk * Tk  x   ....
 (10a)
(10a)
i 0f ( x)   bTi i  b0  b1 * T1  x   b2 * T2  x   ....  bk * Tk  x   .... (10a)
i 0
 1
1
f ( x) 1
b
 0    12 dx, f ( x) i 0
 
em que 


b
1 01  x
 1 1  x 2 dx,

i 0
(10b)
em
em
 que
que 1
2 f ( x)Ti (x1) (10b)(10b)
 bi  b  2 2 fdx( x, )
Ti (ix) 1, 2,..., k
 1 i 1  x   dx,  i 1, 2,..., k
  1 1  x 2

Podemos obter cada coeficiente da série de Tchebyschev, dados pelas


bi
Podemos obterobter cada coeficiente b dasérie série de Tchebyschev, dados pelas
Podemos obter cada coeficiente bbiii dada
Podemos cada coeficiente sériede Tchebychev,
de Tchebyschev, dados pelas dados pela
eqs. eqs.(10b), (10b), fazendo fazendo o produto
o produto interno
interno dada eq.
eq. (10a)pelo
(10a) pelopolinômio
polinômioortogonal ortogonal de
eqs. (10b), fazendo o produto interno da eq. (10a) pelo polinômio ortogonal de
eqs. (10b),
de
Tchebyschev fazendo
Tchebychev
Podemos deobter ordem o cada
de produto
ordem
i usando i interno
coeficiente usando biadada
a Propriedade eq.
série(10a)
Propriedade de pelo polinômio
4 (ABRAMOWITZ;
Tchebyschev,
4 (ABRAMOWITZ; dados ortogonal
pelas d
STEGUN,
Tchebyschev
STEGUN, de1961). ordem i usando a Propriedade 4 (ABRAMOWITZ; STEGUN
Tchebyschev
1961).
eqs. (10b), fazendo de ordem o produto i usando internoa da Propriedade
eq. (10a) pelo 4 (ABRAMOWITZ;
polinômio ortogonal STEGUN
de
1961). Por exemplo, para i = 0:
1961).
Tchebyschev Por exemplo, de ordem para i usando 0: a Propriedade 4 (ABRAMOWITZ; STEGUN,
Por exemplo, para i  0 :
1961).Por 1
f (exemplo,
x) * T0 ( x) para
1
(b i* T 0( x: )  b1 * T1 ( x)  b2 * T2 ( x)  ....  bk * Tk ( x)  ....) * T0 ( x)
1  dx  1 0 0 dx
f
11Por 1 ( x ) * T
 0x(2x )
1 0i T0
(b * 0( x)  b1 * T1 ( x)  b2 * T12( xx)2  ....  bk * Tk ( x)  ....) * T0 ( x)
 f ( x1)* Tx02( x)dx  1 (b0 * T0 ( x)  b1 * T1 ( x)  b2 * T12 (x)x 2 ....  bk * Tk ( x)  ....) * T0 ( xdx
11
exemplo, dx para
1 : )

dx
Temos1 f (1 x)* T 2
x0 ( x)
1
1(b0 * T0 ( x )  b1 * T1 ( x )  b2 * T2 ( x )1
2
x  bk * Tk ( x)  ....) * T0 ( x)
....
TemosTemos  1  x 2 dx  1
1 T 1 1  x2
dx
Temos ( x ) * T0 ( x )
1 

Você também pode gostar