Você está na página 1de 160

0

Universidade Federal Fluminense



UFF Volta Redonda, RJ











INTRODUO AOS
MTODOS
NUMRICOS





Prof. Diomar Cesar Lobo

Trabalho original preparado por: Prof. Ionildo Jos Sanches e Prof. Digenes Lago Furlan
Universidade Federal do Paran. Departamento de Informtica CI-202







URL: http://www.professores.uff.br/diomar_cesar_lobao









1





SUMRIO
1 INTRODUO.....................................................................................................................................4
2 CONCEITO DE ERRO........................................................................................................................5
2.1 INTRODUO.....................................................................................................................................5
2.2 ERROS NA FASE DE MODELAGEM......................................................................................................5
2.3 ERROS NA FASE DE RESOLUO........................................................................................................5
2.4 ERROS ABSOLUTOS E RELATIVOS......................................................................................................5
2.5 ERRO DE ARREDONDAMENTO............................................................................................................6
2.6 ERRO DE TRUNCAMENTO...................................................................................................................7
3 REPRESENTAO DOS NMEROS REAIS.................................................................................9
3.1 INTRODUO.....................................................................................................................................9
3.2 SISTEMA DE NUMERAO ...............................................................................................................10
3.2.1 Sistema de Numerao Decimal ...........................................................................................................10
3.2.2 Sistema de Numerao Binrio ............................................................................................................10
3.2.3 Converso do Sistema Decimal para Binrio ......................................................................................10
3.3 ARITMTICA DE PONTO FLUTUANTE ...............................................................................................13
3.4 PROPAGAO DE ERROS..................................................................................................................15
4 ZEROS DE EQUAES TRANSCENDENTES E POLINOMIAIS............................................17
4.1 INTRODUO...................................................................................................................................17
4.1.1 Derivada de uma funo num ponto.....................................................................................................17
4.1.2 Tipos de Mtodos..................................................................................................................................17
4.1.3 Isolamento de Razes ............................................................................................................................18
4.1.4 Classificao dos mtodos....................................................................................................................19
4.2 MTODO DA BISSEO....................................................................................................................20
4.2.1 Estimativa do Nmero de Iteraes......................................................................................................20
4.2.2 Consideraes Finais ...........................................................................................................................21
4.2.3 Exemplos...............................................................................................................................................21
4.3 MTODO DA FALSA POSIO ..........................................................................................................22
4.3.1 Casos especiais.....................................................................................................................................23
4.3.2 Consideraes finais.............................................................................................................................24
4.3.3 Exemplos...............................................................................................................................................24
4.4 MTODO DA ITERAO LINEAR ......................................................................................................25
4.4.1 Casos de convergncia .........................................................................................................................26
4.4.2 Consideraes finais.............................................................................................................................27
4.4.3 Exemplos...............................................................................................................................................27
4.5 MTODO DE NEWTON-RAPHSON OU MTODO DAS TANGENTES .....................................................28
4.5.1 Consideraes finais.............................................................................................................................29
4.5.2 Exemplos...............................................................................................................................................29
4.5.3 Condies de Newton-Raphson-Fourier...............................................................................................30
4.6 MTODO DA SECANTE.....................................................................................................................32
4.6.1 Exemplos...............................................................................................................................................33
4.7 MTODO MISTO ..............................................................................................................................34
4.7.1 Exemplos...............................................................................................................................................34
4.8 MTODO PARA EQUAES POLINMIAIS.........................................................................................35
4.8.1 Introduo.............................................................................................................................................35
4.8.2 Localizao de Razes...........................................................................................................................35
4.8.3 Determinao das Razes Reais............................................................................................................37


2
4.8.4 Mtodo de Newton para Zeros de Polinmios......................................................................................38
5 SISTEMAS LINEARES.....................................................................................................................41
5.1 INTRODUO...................................................................................................................................41
5.1.1 Classificao Quanto ao Nmero de Solues.....................................................................................41
5.2 MTODOS DIRETOS (ALGORITMOS DIRETOS)..................................................................................42
5.2.1 Regra de Cramer ..................................................................................................................................42
5.2.2 Mtodo da Eliminao de Gauss ..........................................................................................................43
5.2.3 Mtodo de Jordan.................................................................................................................................45
5.2.4 Exemplos...............................................................................................................................................45
5.3 FATORAO LU-CROUT-CHOLESKY-DOOLITLE .............................................................................46
5.3.1 Clculo dos Fatores L e U....................................................................................................................47
5.4 MTODOS ITERATIVOS (ALGORITMOS ITERATIVOS)........................................................................50
5.4.1 Mtodo de Gauss-Jacobi ( Algbrico ) .................................................................................................50
5.4.2 Mtodo de Gauss-Jacobi ( Matricial )..................................................................................................52
5.4.3 Mtodo de Gauss-Seidel ( Algbrico ) ..................................................................................................54
5.4.4 Mtodo de Gauss-Seidel ( Matricial )...................................................................................................56
5.4.5 Segunda Abordagem da Frmula Matricial do Mtodo Gauss-Seidel.................................................58
5.4.6 Mtodo da Sobrerelaxao Sucessiva .................................................................................................63
5.4.7 Condies Necessria e Suficiente para Convergncia do Mtodo de Gauss-Jacobi e Gauss-Seidel 64
6 INTERPOLAO..............................................................................................................................66
6.1 INTRODUO...................................................................................................................................66
6.1.1 Conceito de Interpolao......................................................................................................................66
6.2 INTERPOLAO LINEAR...................................................................................................................67
6.2.1 Obteno da Frmula...........................................................................................................................67
6.2.2 Exemplos...............................................................................................................................................68
6.3 INTERPOLAO QUADRTICA .........................................................................................................69
6.3.1 Obteno da Frmula...........................................................................................................................69
6.3.2 Exemplos...............................................................................................................................................69
6.4 INTERPOLAO DE LAGRANGE........................................................................................................71
6.4.1 Obteno da Frmula...........................................................................................................................72
6.4.2 Exemplos: .............................................................................................................................................73
6.5 INTERPOLAO PARABLICA PROGRESSIVA...................................................................................74
6.6 INTERPOLAO DE NEWTON COM DIFERENAS DIVIDIDAS.............................................................75
6.6.1 Diferenas Divididas ............................................................................................................................75
6.6.2 Propriedade do Operador Diferenas Divididas .................................................................................76
6.6.3 Exemplos...............................................................................................................................................76
6.7 INTERPOLAO DE GREGORY-NEWTON ..........................................................................................78
6.7.1 Diferenas Ordinrias ou Finitas.........................................................................................................79
6.7.2 Relao entre diferenas divididas e diferenas ordinrias.................................................................79
6.7.3 Gregory-Newton usando Diferenas Ordinrias..................................................................................79
6.7.4 Exemplos...............................................................................................................................................79
6.8 INTERPOLAO SPLINES: LINEAR, QUADRTICA, CBICA..............................................................80
6.8.1 Spline Linear.........................................................................................................................................81
6.8.2 Spline Quadrtica.................................................................................................................................84
6.8.3 Spline Cbica Natural ..........................................................................................................................87
6.8.4 Consideraes Gerais sobre Interpolao ...........................................................................................93
7 AJUSTE DE CURVAS .......................................................................................................................95
7.1 MTODO DOS QUADRADOS MNIMOS..............................................................................................96
7.1.1 Ajuste Linear Simples ...........................................................................................................................97
7.1.2 Ajuste Polinomial..................................................................................................................................99
8 INTEGRAO NUMRICA..........................................................................................................103
8.1 INTRODUO.................................................................................................................................103
8.1.1 Frmulas de Newton-Cotes ................................................................................................................104
8.2 REGRA DOS RETNGULOS .............................................................................................................105


3
8.2.1 Exemplos.............................................................................................................................................106
8.3 REGRA DOS TRAPZIOS .................................................................................................................107
8.3.1 Regra do Trapzio Repetida ...............................................................................................................108
8.3.2 Exemplos.............................................................................................................................................108
8.4 REGRA DE SIMPSON.......................................................................................................................109
8.4.1 Regra de Simpson Repetida................................................................................................................110
8.4.2 Exemplos.............................................................................................................................................110
9 SOLUO NUMRICA DE EQUAES DIFERENCIAIS ORDINRIAS...........................112
9.1 INTRODUO.................................................................................................................................112
9.2 TIPOS DE EQUAES DIFERENCIAIS...............................................................................................112
9.2.1 Equaes Diferenciais Ordinrias .....................................................................................................112
9.2.2 Equaes Diferenciais Parciais..........................................................................................................113
9.3 SOLUO DE EQUAES DIFERENCIAIS ........................................................................................113
9.4 ORDEM DE UMA EQUAO DIFERENCIAL ORDINRIA...................................................................114
9.5 REDUO DE EQUAES DIFERENCIAIS ORDINRIAS ...................................................................114
9.6 SOLUO NUMRICA DE EQUAES DIFERENCIAIS ORDINRIAS PROBLEMA DE VALOR INICIAL
116
9.6.1 Mtodo de Euler..................................................................................................................................117
9.7 ANLISE DO ERRO PARA O MTODO DE EULER NA SOLUO NUMRICA DO PROBLEMA DE VALOR
INICIAL....................................................................................................................................................120
9.8 MTODO DE EULER MODIFICADO..................................................................................................121
9.8.1 Mtodo Heum......................................................................................................................................124
9.8.2 Mtodo Runge-Kutta...........................................................................................................................127
9.8.3 Derivao do Mtodo de Runge-Kutta de Segunda Ordem................................................................128
9.8.4 Mtodo de Heun..................................................................................................................................128
9.8.5 Mtodo de Euler Modificado ..............................................................................................................129
9.8.6 Mtodo de Ralston ..............................................................................................................................129
9.9 MTODO DE RUNGE_KUTTA TERCEIRA ORDEM............................................................................131
9.10 MTODO DE RUNGE_KUTTA QUARTA ORDEM ..........................................................................131
9.11 MTODOS DE PASSOS MLTIPLOS..............................................................................................132
9.12 IDIA BASICA DOS MTODOS DE PASSOS MLTIPLOS................................................................133
9.12.1 Mtodos Explcitos..............................................................................................................................134
9.12.2 Algoritmos de Adans-Bashforth de ordem m......................................................................................134
9.12.3 Mtodos Implcitos..............................................................................................................................134
9.12.4 Algoritmos de Adans-Moulton de ordem m........................................................................................134
9.12.5 Passos para se obter
1 + n
y ..................................................................................................................135
9.13 SOLUO DE SISTEMAS DE EQUAES DIFERENCIAIS................................................................137
10 UTILIZANDO O MATLAB.........................................................................................................146



4

1 Introduo
Clculo Numrico a obteno da soluo de um problema pela aplicao de mtodo numrico; a
soluo do problema ser caracterizada, ento, por um conjunto de nmeros, exatos ou aproximados.

Mtodo Numrico um algoritmo composto por um nmero finito de operaes envolvendo
apenas nmeros (operaes aritmticas elementares, clculo de funes, consulta a uma tabela de valores,
consulta a um grfico, arbitramento de um valor, etc.).

Problema
Fsico
Modelo
Matemtico
Soluo
Modelagem Resoluo


Modelagem a fase de obteno do modelo matemtico que descreve o comportamento do sistema
fsico.
Resoluo a fase de obteno da soluo atravs da aplicao de mtodos numricos (este o
objetivo de estudo do Clculo Numrico).



5
2 Conceito de Erro
2.1 Introduo
A noo de erro est presente em todos os campos do Clculo Numrico. De um lado, os dados,
em si, nem sempre so exatos e, de outro lado, as operaes sobre valores no exatos propagam esses
erros a seus resultados. Finalmente, os prprios mtodos numricos, freqentemente mtodos
aproximados, buscam a minimizao dos erros, procurando resultados o mais prximo possvel do que
seriam valores exatos.

Erro a diferena entre o valor exato e o valor apresentado.

No prximo captulo, sobre representao de nmeros reais, iremos analisar vrias situaes em
que ocorrem erros, quando utilizamos o computador para realizar os clculos. A seguir, analisaremos os
erros que ocorrem durante as fases de modelagem e resoluo e tambm sobre erros de arredondamento e
erros de truncamento.
2.2 Erros na Fase de Modelagem
Ao se tentar representar um fenmeno do mundo fsico por meio de um mtodo matemtico,
raramente se tem uma descrio correta deste fenmeno. Normalmente, so necessrias vrias
simplificaes do mundo fsico para que se tenha um modelo.

Exemplo: Estudo do movimento de um corpo sujeito a uma acelerao constante.
Tem-se a seguinte equao:

d = d
o
+ v
o
* t + 1/2 * * t
2
onde:
d : distncia percorrida
d
o
: distncia inicial
v
o
: velocidade inicial
t : tempo
: acelerao

Determinar a altura de um edifcio com uma bolinha de metal e um cronmetro: 3s
d = 0 + 0 * 3 + 1/2 * 9.8 * 3
2
= 44.1m

Este resultado confivel?
1. Fatores no considerados:
resistncia do ar
velocidade do vento, etc.
2. Preciso dos dados de entrada:
Se o tempo fosse 3,5s d = 60.025m
Variao de 16,7% no cronmetro 36% na altura.
2.3 Erros na Fase de Resoluo
Para a resoluo de modelos matemticos muitas vezes torna-se necessria a utilizao de
instrumentos de clculo que necessitam, para o seu funcionamento, que sejam feitas certas aproximaes.
Tais aproximaes podem gerar erros, tais como: converso de bases, erros de arredondamento e erros de
truncamento.
2.4 Erros Absolutos e Relativos
Erro absoluto (EA) a diferena entre o valor exato de um nmero N e o seu valor aproximado
N:


6

N = N + EA
N
(N > N EA
N
> 0
N < N EA
N
< 0)

EA
N
= N N Erro absoluto

Por exemplo, sabendo-se que (3.14, 3.15) tomaremos para um valor dentro deste intervalo e
teremos, ento, |EA

| = | - | < 0.01.

Erro Relativo definido como o erro absoluto dividido pelo valor aproximado:


'
'
' N
N N
N
EA
ER
N
N

= = Erro Relativo

claro que EA
N
s poder ser determinado se N for exatamente conhecido; como isso raro, em
clculos numricos costuma-se trabalhar com uma limitao mxima para o erro, ao invs do prprio
(indicando-se, ento, | E | < , onde o limite).

Por exemplo, se = 3876.373 e s desejamos a parte inteira , o erro absoluto ser:

= | ' | = 0.373

Se fizermos o mesmo com o nmero = 1.373, teremos:

= | ' | = 0.373

Obviamente, o efeito de aproximao de muito maior do que em , mas o erro absoluto o
mesmo nos dois casos. O erro relativo, entretanto, pode traduzir perfeitamente este fato, pois:

=
0 373
3876
,
0,000096 < 10
-4

=
0 373
1
,
0,373 < 5*10
0
2.5 Erro de Arredondamento
Ao se aplicar um mtodo numrico, os erros devidos aos valores iniciais, intermedirios e finais
conduzem a um erro global (diferena entre o exato e o obtido) tambm chamado de arredondamento.

Erros iniciais so os cometidos no arredondamento dos dados iniciais. Os erros intermedirios so
decorrentes dos erros cometidos durante a aplicao do mtodo numrico e os erros finais decorrentes da
apresentao final do resultado.

Os tipos de arredondamentos mais conhecidos so:
Arredondamento para baixo ou por falta;
Arredondamento para cima ou por excesso;
Arredondamento para o numero de maquina mais prximo.

Critrio de Arredondamento: no clculo manual, ao registrar um valor aproximado, costuma-se
usar a seguinte regra:

1. somar meia unidade aps a ltima casa decimal a conservar;
2. desprezar as demais casas.

Assim, com 2 nmeros significativos tem-se:

2 = 1.414 ... 1.41 (1.414 ... + 0.005 = 1.419 ... 1.41)
2
3
= 1.259 ... 1.26 (1.259 ... + 0.005 = 1.264 ... 1.26)


7

O uso deste critrio limita o erro a meia unidade da ltima casa conservada:

E = 2 1.41 = 1.41421 ... 1.41 = 0.00421 < 0.005

Os valores aproximados obtidos podem ser inferiores (valor aproximado por falta) ou superiores
(valor aproximado por excesso) aos exatos; 1.41 o valor aproximado, por falta, de 2 ; 1.26 o valor de
2
3
, aproximado por excesso.

Para concluir este item de erro de arredondamento, deve-se ressaltar a importncia de se saber o
nmero de dgitos significativos do sistema de representao da mquina que est sendo utilizada para
que se tenha a noo da preciso do resultado obtido.

Alm da preciso decimal, o clculo do chamado psilon da mquina nos d uma idia da
exatido da mquina.

O da mquina o menor nmero de ponto flutuante, tal que: 1 + > 1. Alguns mtodos para
clculo de no do seu valor exato, mas isto nem sempre necessrio, pois o que importa a sua ordem
de grandeza.

O programa abaixo, escrito na linguagem Matlab, calcula uma aproximao do da mquina:

Eps=1.0;
while (Eps + 1 > 1)
Eps = Eps / 2.0;
sprintf('A maquina acha que %1.25f%s',Eps,' vale zero!')
end;


O programa acima, executado num Pentium, obteve a seguinte resposta:

A maquina acha que 0.0000000000000001110223025 vale zero!

Logo, o nmero de dgitos significativos 19.
2.6 Erro de Truncamento
So erros provenientes da utilizao de processos que deveriam ser infinitos ou muito grandes
para a determinao de um valor e que, por razes prticas, so truncados.

Estes processos infinitos so muito utilizados na avaliao de funes matemticas, tais como,
exponenciao, logaritmos, funes trigonomtricas e vrias outras que uma mquina pode ter.

Exemplo: Uma mquina poderia calcular a funo seno(x) e exponencial(x) utilizando as seguintes
tcnicas:
seno(x) = x
x x x
+ +
3 5 7
3 5 7 ! ! !
...

e
x
= 1
2 3
2 3
+ + + + x
x x
! !
...

Fazendo truncamento:
seno(x) x
x x x x
n
n
n
+ + +
3 5 7
3 5 7
1
! ! !
... ( )
!




8
e
x
1
2 3
2 3
+ + + + + x
x x x
n
n
! !
...
!


A soluo a de interromper os clculos quando uma determinada preciso atingida.

De uma maneira geral, pode-se dizer que o erro de truncamento pode ser diminudo at chegar a
ficar da ordem do erro de arredondamento; a partir desse ponto, no faz sentido diminuir-se mais, pois o
erro de arredondamento ser dominante.



9
3 Representao dos Nmeros Reais
3.1 Introduo
{
Nmeros
Complexos (2+3-1 )
Reais
{
Irracionais (; 2 )
Racionais
{
Inteiros (-1004; 2)
Fracionrios
{
Ordinrios (32/7; 1/3)
Decimais (-3.15; 0.33...)


Algumas das propriedades bsicas da aritmtica real no valem mais quando executadas no
computador, pois, enquanto na matemtica alguns nmeros so representados por infinitos dgitos, no
computador isso no possvel, pois uma palavra de memria finita e a prpria memria tambm.

Exemplos: 2 , 3 , e
3
1
.

Se desejssemos calcular a rea de uma circunferncia de raio 100m, obteramos os seguintes
resultados:

a) A = 31400m
2

b) A = 31416 m
2

c) A = 31415.92654 m
2


Como justificar as diferenas entre os resultados? possvel obter o valor exato desta rea?

Os erros ocorridos dependem da representao dos nmeros na mquina utilizada. A representao
de um nmero depende da base escolhida ou disponvel na mquina em uso e do nmero mximo de
dgitos usados na sua representao.

O nmero , por exemplo, no pode ser representado atravs de um nmero finito de dgitos
decimais. No exemplo mostrado acima, o nmero foi escrito como 3.14, 3.1416 e 3.141592654
respectivamente nos casos (a), (b) e (c). Em cada um deles foi obtido um resultado diferente, e o erro
neste caso depende exclusivamente da aproximao escolhida para , Qualquer que seja a circunferncia,
a sua rea nunca ser obtida exatamente, uma vez que um nmero irracional.

Como neste exemplo, qualquer clculo que envolva nmeros que no podem ser representados
atravs de um nmero finito de dgitos no fornecer como resultado um valor exato. Quanto maior o
nmero de dgitos utilizados, maior ser a preciso obtida. Por isso, a melhor aproximao para o valor da
rea da circunferncia aquela obtida no caso (c).

Alm disso, um nmero pode ter representao finita em uma base e no-finita em outras bases. A
base decimal a que mais empregamos atualmente. Um computador opera normalmente no sistema
binrio.

Observe o que acontece na interao entre o usurio (ou dados do programa) e o computador: os
dados de entrada so enviados ao computador pelo usurio no sistema decimal; toda esta informao
convertida para o sistema binrio, e as operaes todas sero efetuadas neste sistema. Os resultados finais


10
sero convertidos para o sistema decimal e, finalmente, sero transmitidos ao usurio. Todo este processo
de converso uma fonte de erros que afetam o resultado final dos clculos.

Na prxima seo, iremos estudar os processos de converso de nmeros do sistema decimal para
o sistema binrio e vice-versa. Estudaremos tambm a forma de armazenamento feita pelos computadores
digitais.
3.2 Sistema de Numerao
Existem vrios sistemas numricos, dentre os quais destacam-se o sistema decimal (base 10), o
octal (base 8) e o hexadecimal (base 16).

Em um sistema numrico com base , existem dgitos e o maior 1. De um modo geral, um
nmero na base , (a
j
a
j-1
...a
2
a
1
a
0
)

, 0 a
k
( 1), k = 1, 2, ..., j, pode ser escrito na forma polinomial:

a
j

j
+

a
j-1

j-1
+...+ a
2

2
+ a
1

1

+ a
0

0


Com esta representao, podemos facilmente converter um nmero representado em qualquer
sistema para o sistema decimal.

3.2.1 Sistema de Numerao Decimal
No sistema de numerao usual, o sistema decimal, usamos dez dgitos 0, 1, ..., 9. Um nmero
maior que 9 representado usando uma conveno que atribui significado posio ou lugar ocupado por
um dgito. Por exemplo, em virtude das posies ocupadas pelos dgitos individuais no nmero 2015, este
nmero tem significado numrico calculado como:

2015 = 2*10
3
+ 0*10
2
+ 1*10
1
+ 5*10
0
= 2000 + 0 + 10 + 5 = 2015

Notamos que um nmero expresso como uma soma de potncias de 10 multiplicadas por
coeficientes apropriados. No sistema decimal, 10 a base do sistema. Existem 10 dgitos, o maior sendo
9. Em um sistema numrico com base , existem dgitos e o maior -1.
3.2.2 Sistema de Numerao Binrio
No sistema binrio existem apenas 2 dgitos: 0 e 1. Como os circuitos eletrnicos usados no
computador apresentam 2 estados possveis, convencionou-se chamar o estado desligado de 0 e o estado
ligado de 1. Cada dgito de um nmero representado no sistema binrio denominado bit (contrao de
BInary digiT), o conjunto de 4 bits denominado nibble e o de 8 bits de byte, termo bastante utilizado na
rea de informtica.
3.2.2.1 Converso do Sistema Binrio para Decimal
Quando um nmero escrito no sistema binrio, os dgitos individuais representam os coeficientes
de potncias de 2. Por exemplo, o nmero decimal 19 escrito em representao binria como 10011,
pois este arranjo de dgitos binrios significa:

10011 = 1*2
4
+ 0*2
3
+ 0*2
2
+ 1*2
1
+ 1*2
0
= 16 + 0 + 0 + 2 + 1 = 19
3.2.3 Converso do Sistema Decimal para Binrio
A converso de um nmero decimal para binrio feita da seguinte forma:



11
19 2
9 1 2
4 1 2
2 0 2
1 0 2
0
1
LSB
MSB


19
(10)
= 10011
(2)


O bit menos significativo de um nmero binrio recebe a notao de LSB (Least Significant Bit) e
o bit mais significativo de MSB (Most Significant Bit).
3.2.3.1 Converso de Nmeros Binrios Fracionrios em Decimais
Consideremos agora a converso de um nmero fracionrio binrio (base 2) para um nmero
decimal (base 10).

0.125
10
= 0*10
0
+ 1*10
-1
+ 2*10
-2
+ 5*10
-3
= 0.1 + 0.02 + 0.005 = 0.125
10


0.001
2
= 0*2
0
+ 0*2
-1
+ 0*2
-2
+ 1*2
-3
= 0 + 0 + 0 + 0.125 = 0.125
10


0.101
2
= 0*2
0
+ 1*2
-1
+ 0*2
-2
+ 1*2
-3
= 0 + 0.5 + 0 + 0.125 = 0.625
10

3.2.3.2 Converso de Nmeros Decimais Fracionrios em Binrios
Consideremos agora a converso de um nmero fracionrio da base 10 para a base 2. Um nmero
real entre 0 e 1 pode ter representao finita no sistema decimal, mas representao infinita no sistema
binrio.

No caso geral, seja r um nmero entre 0 e 1 no sistema decimal e (0.d
1
d
2
...d
j
...)
2
sua representao
no sistema binrio. Os dgitos binrios d
1
, d
2
, ..., d
j
, ... so obtidos atravs do seguinte algoritmo:

Passo 0: r
1
= r; k = 1

Passo 1: Calcule 2r
k
.
Se 2r
k
= 1, faa: d
k
= 1,
caso contrrio, faa: d
k
= 0

Passo 2: Faa r
k+1
= 2r
k
d
k

Se r
k+1
= 0, pare.
Caso contrrio:

Passo 3: k = k + 1.
Volte ao passo 1.

Observar que o algoritmo pode ou no terminar aps um nmero finito de passos. Para r =
(0.125)
10
teremos: r
1
= 0.125.

k = 1 2r
1
= 0.25 d
1
= 0
r
2
= 0.25 d
1
= 0.25

k = 2 2r
2
= 0.5 d
2
= 0


12
r
3
= 0.5

k = 3 2r
3
= 1.0 d
3
= 1
r
4
= 0

Temos ento 0.125
10
= 0.001
2
, sendo portanto a representao binria finita. J para r = 0.1
10
,
teremos: r
1
= 0.1

k = 1 2r
1
= 0.2 d
1
= 0
r
2
= 0.2

k = 2 2r
2
= 0.4 d
2
= 0
r
3
= 0.4

k = 3 2r
3
= 0.8 d
3
= 0
r
4
= 0.8

k = 4 2r
4
= 1.6 d
4
= 1
r
5
= 0.6

k = 5 2r
5
= 1.2 d
5
= 1
r
6
= 0.2 = r
2


Como r
6
= r
2
, teremos que os resultados para k de 2 e 5 se repetiro e ento: r
10
= r
6
= r
2
= 0.2 e
assim indefinidamente.

Conclumos que: (0.1)
10
= (0.00011001100110011...)
2
e, portanto, o nmero (0.1)
10
no tem
representao binria finita.

O fato de um nmero no ter representao finita no sistema binrio pode acarretar a ocorrncia de
erros aparentemente inexplicveis em clculos efetuados em sistemas computacionais binrios.

Um computador que opera no sistema binrio ir armazenar uma aproximao para (0.1)
10
, uma
vez que possui uma quantidade fixa de posies para guardar os dgitos de mantissa de um nmero, e esta
aproximao ser usada para realizar os clculos. No se pode, portanto, esperar um resultado exato.

Podemos agora entender melhor por que o resultado da operao:

S = 01
1
1000
.
n=



no obtido corretamente num computador. Supondo uma mquina digital que trabalhe com apenas 9
dgitos na mantissa, o nmero (0.1)
10
seria armazenado como (0.000110011)
2
e este nmero representa
exatamente (0.099609375)
10
. Portanto, todas as operaes que envolvem (0.1)
10
seriam realizadas com
esta aproximao. Veremos na prxima seo a representao de nmeros em aritmtica de ponto
flutuante com o objetivo de se entender melhor a causa de resultados imprecisos em operaes numricas.

O programa em Matlab a seguir permite calcular 01
1
1000
.
i=

, sendo 100 o valor exato dessa somatria.


x=0;
for i=1:1000
x = x + 0.1;
sprintf('x = %0.20f', x)
end


13
Quando essa somatria efetuada utilizando o computador o valor : 99.99999999999859300000.
Se escrever um programa em linguagem C usando double (maior preciso) o resultado ser
99.99999999999859310000.
3.3 Aritmtica de Ponto Flutuante
Usa-se, rotineiramente, duas formas para fazer o armazenamento dos nmeros em mquinas:
ponto fixo (para valores inteiros) e ponto flutuante (para valores reais).

Uma mquina de calcular, ou um computador digital, representa um nmero real no sistema
denominado aritmtica de ponto flutuante. Neste sistema, o nmero x representado na forma:

x =

e
t
t d d d d
. ...
3 2 1
3 2 1

+ + + +

onde:
: a base em que a mquina opera;
d
i
: so nmeros inteiros contidos no intervalo 0 d
i
( - 1); i = 1, 2, ..., t; d
1
0;
e: representa o expoente de e assume valores entre I e S;
I, S: limite inferior e limite superior, respectivamente, para a variao do expoente.

d d d dt
t
1 2 3
1 2 3

+ + + +

...
chamada de mantissa e a parte do nmero que representa
os seus dgitos significativos e t o nmero de dgitos significativos do sistema de representao,
comumente chamado de preciso da mquina.

Exemplo 1: No sistema de base = 10 (decimal), tem-se:

0.125
10
=
1
10
2
10
5
10
10
1 2 3
0
+ +

.

3.1415
10
= 0.31415 10
1
=
3
10
1
10
4
10
1
10
5
10
10
1 2 3 4 5
1
+ + + +

.

Os nmeros assim representados esto normalizados, isto , a mantissa um valor entre 0 e 1. A
forma normalizada utilizada nas operaes envolvendo ponto flutuante em computadores digitais.

No sistema de base = 2 (binrio), tem-se:

10
10
= 1010
2
= 0.101 2
4
=
1
2
0
2
1
2
2
1 2 3
4
+ +

.

4
10
= 100
2
= 0.1 * 2
3
=
1
2
* 2
3


Exemplo 2: Numa mquina de calcular cujo sistema de representao utilizado tenha =2, t = 10, I = 15
e S = 15, o nmero 25
10
e 3.5
10
assim representado:

25
10
= 11001
2
= 0.11001 * 2
5
= 0.11001 * 2
101
sendo
2 10
) 101 ( ) 5 ( =
1
2
1
2
0
2
0
2
1
2
0
2
0
2
0
2
0
2
0
2
1 2 3 4 5 6 7 8 9 10
+ + + + + + + + +

* 2
101



14

ou, de uma forma mais compacta:

1100100000 0101
Mantissa expoente

Cada dgito chamado de bit, portanto, nesta mquina so utilizados 10 bits para a mantissa, 4
para o expoente e mais um bit para o sinal da mantissa (se bit=0 positivo, se bit=1 negativo) e um bit para
o sinal do expoente, resultando, no total, 16 bits, que so assim representados:

25
10
=



3.5
10
= 0.111 * 2
10





O maior valor representado por esta mquina descrita no exemplo 2 seria:



que, na base decimal, tem o seguinte valor: 0.1111111111 * 2
1111
= 32736
10


E o menor valor seria: 0.1111111111 * 2
1111
= 32736
10


Logo, os nmeros que podem ser representados nesta mquina estariam contidos no intervalo
[32736; 32736].

Nesta mquina, ainda, o valor zero seria representado por:



O prximo nmero positivo representado seria:



0.1 * 2
-15
= 0.000015259

O subsequente seria:



0.1000000001 * 2
-15
= 0.000015289

Atravs desses exemplos pode-se concluir que o conjunto dos nmeros representveis neste
sistema um subconjunto dos nmeros reais, dentro do intervalo mostrado anteriormente.

Considere, por exemplo, uma mquina que opera no sistema:

= 10; t = 3; e [-5,5].

Os nmeros sero representados da seguinte forma nesse sistema:
0 1 1 0 0 1 0 0 0 0 0 0 0 1 0 1
Valor da Mantissa Expoente
Sinal da Mantissa Sinal Exp.
0 1 1 1 0 0 0 0 0 0 0 0 0 0 1 0
0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1
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 1 1 1 1 1
0 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1


15

0.d
1
d
2
d
3
* 10
e
, 0 d
j
9, d
1
0, e [5, 5]

O menor nmero (m), em valor absoluto, representado nesta mquina :

m = 0.100 * 10
-5
= 10
-6


e o maior nmero (M), em valor absoluto, :

M = 0.999 * 10
5
= 99900

Considere o conjunto dos nmeros reais R e o seguinte conjunto:

G = {x R | m | x | M}

Dado um nmero real x, vrias situaes podero ocorrer:

1. x G: por exemplo, x = 235.89 = 0.23589 * 10
3
. Observe que este nmero possui 5 dgitos na
mantissa. Esto representados exatamente nesta mquina os nmeros: 0.235*10
3
e 0.236*10
3
.
Se for usado o truncamento, x ser representado por 0.235*10
3
e, se for usado o
arredondamento, x ser representado por 0.236*10
3
. Na prxima seo, sobre erros,
estudaremos o truncamento e o arredondamento;
2. | x | < m: por exemplo, x = 0.345*10
-7
. Este nmero no pode ser representado nesta mquina
porque o expoente e menor que 5. Esta uma situao em que a mquina acusa a ocorrncia
de underflow;
3. | x | > M: por exemplo, x = 0.875*10
9
. Neste caso o expoente e maior que 5 e a mquina acusa
a ocorrncia de overflow.

Algumas linguagens de programao permitem que as variveis sejam declaradas em preciso
dupla. Neste caso, esta varivel ser representada no sistema de aritmtica de ponto flutuante da mquina,
mas com aproximadamente o dobro de dgitos disponveis na mantissa. importante observar que, neste
caso, o tempo de execuo e requerimento de memria aumenta de forma significativa.

O C fornece trs tipos para nmeros de ponto flutuante. Cada tipo tem um intervalo e uma
preciso especificada:

Intervalo Tipo N de bits
Inicio Fim
float
32 3.4E38
3.4E+38
double
64 1.7E308
1.7E+308
long double
80 3.4E4932
3.4E+4932

O tipo long double o tipo de ponto flutuante com maior preciso. importante observar que os
intervalos de ponto flutuante, na tabela acima, esto indicados em faixa de expoente, mas os nmeros
podem assumir valores tanto positivos quanto negativos.
3.4 Propagao de Erros
Durante as operaes aritmticas de um mtodo, os erros dos operandos produzem um erro no
resultado da operao; sendo A, a, B, b os valores exatos e aproximados, respectivos, e E
a
e E
b
, os erros
dos operandos.

A + B = (a + E
a
) + (b + E
b
) = a + b + E
a
+ E
b
EA
A+B
= E
a
+ E
b

A B = (a + E
a
) (b + E
b
) = a b + E
a
E
b
EA
A-B
= E
a
E
b



16
A * B = (a + E
a
) (b + E
b
) = ab + aE
b
+ bE
a
+ E
b
*E
a
EA
A*B
= aE
b
+ bE
a
+ E
b
*E
a


Vejamos atravs de um exemplo, como os erros descritos anteriormente podem influenciar o
desenvolvimento de um clculo.

Exemplo: Suponha-se que as operaes abaixo sejam processadas em uma mquina com 4 dgitos
significativos e fazendo-se: x
1
= 0.3491*10
4
e x
2
= 0.2345*10
0
tem-se:

(x
2
+ x
1
) x
1
= (0.2345*10
0
+ 0.3491*10
4
) 0.3491*10
4

= 0.3491*10
4
0.3491*10
4

= 0.0000

x
2
+ (x
1
x
1
) = 0.2345*10
0
+ (0.3491*10
4
0.3491*10
4
)
= 0.2345 + 0.0000
= 0.2345

Os dois resultados so diferentes, quando no deveriam ser, pois a adio uma operao
distributiva. A causa desta diferena foi um arredondamento feito na adio (x
2
+ x
1
), cujo resultado tem 8
dgitos. Como a mquina s armazena 4 dgitos, os menos significativos foram desprezados.

Ao se utilizar mquinas de calcular deve-se estar atento a essas particularidades causadas pelo erro
de arredondamento, no s na adio, mas tambm nas outras operaes.



17
4 Zeros de Equaes Transcendentes e Polinomiais
4.1 Introduo
Seja F(x) uma funo real definida num intervalo [a, b]. Chama-se raiz(es) desta funo em [a, b]
a todo (csi) (a, b) tal que F() = 0, como mostra a figura abaixo.

0
f(x)
y
x

b
a

4.1.1 Derivada de uma funo num ponto
A funo : A R diz-se derivvel no ponto de acumulao a A quando existe e finito o
limite:

x x a x
y
x
f x f a
x a
f a x f a
x
=

=
+
0 0
lim lim
( ) ( )
lim
( ) ( )


Quando f derivvel em a, o limite chamado derivada de f no ponto a.
4.1.2 Tipos de Mtodos
Pode-se dizer que so dois os mtodos para se achar a(s) raiz(es) de uma equao:

Mtodo direto: quando fornece soluo em apenas um nico passo. Esta raiz exata, a menos de
erros de arredondamento.

Exemplo: Seja F(x) = x
2
3x + 2. A soluo direta pode ser obtida atravs da frmula de Baskara com a
expresso: X
b
b
ac
a
=

2
4
2
, que ter como conjunto soluo {1, 2}.

a = 1; b = -3; c = 2; %f(x) = x^2 - 3*x + 2
delta = b*b - 4*a*c;
if (delta >= 0)

x1 = (-b + sqrt(delta)) / (2*a);
x2 = (-b - sqrt(delta)) / (2*a);
sprintf('x1 = %15.8f\n',x1)
sprintf('x2 = %15.8f\n',x2)
else
sprintf('Nao possui raizes reais\n');
end

Mtodo iterativo ou indireto: um processo de clculo infinito, recursivo, em que o valor obtido
a cada passo depende de valores obtidos em passos anteriores. Este tipo de mtodo, na maioria das vezes,
no obtm soluo exata para as razes, mas sim uma soluo aproximada dentro de uma faixa de erro
considerada aceitvel.

importante salientar, que normalmente, os mtodos iterativos so mais precisos quando
executados em um computador que permite agilizar os clculos matemticos, obtendo assim uma melhor
preciso.


18

Exerccio: Calcular 4 e de 2 usando o Mtodo de Newton definido por:

2
1
1

+
=

n
n
n
x
x
x
x , para n = 1, 2, 3, ...
onde: x: o nmero a ser calculado a raiz
x
0
: uma atribuio inicial qualquer diferente de zero (por exemplo, x
0
= 1).

Como vimos anteriormente, o clculo das duas razes de uma equao do segundo grau, colocada
sob a forma ax
2
+ bx + c = 0, so facilmente obtidas pela frmula de Baskara. Entretanto, se colocarmos
uma expresso em que aparea uma equao transcendente, a soluo j no to simples, como
demonstram os exemplos abaixo:

e
x
+ x = 0
cos(x) x = 0
ln(x) + x 2 = 0

Mesmo um polinmio de grau maior que trs j no tem uma soluo algbrica simples como a da
equao do segundo grau, a no ser em casos particulares. Vamos analisar como enfrentar esse problema,
to comum em diversas reas da engenharia, da economia, das cincias, da fsica, entre tantas outras.

Essas equaes, com enorme freqncia, nos levam a razes reais no racionais que, ao serem
representadas no computador, necessariamente, o sero de forma aproximada, pelas razes j expostas no
captulo anterior, tendo em vista que necessitariam de infinitos dgitos, em suas mantissas, para serem
representadas.

Alm disso, em geral, estamos interessados em obter esses valores, essas razes, com uma
determinada preciso, com um erro tolervel, com algumas casas decimais, sem a pretenso de obter
valores exatos. Isso mais do que suficiente, para a maioria dos problemas prticos encontrados.

Os mtodos numricos a serem apresentados, partindo de valores inicialmente propostos, buscam
aprimorar esses valores, diminuindo os erros, aproximando-se, assim, dos valores das razes procuradas,
at que os erros sejam aceitveis, podendo-se garantir que sejam erros inferiores a valores pr-definidos.

Para se calcular uma raiz duas etapas devem ser seguidas:
Isolar a raiz, ou seja, achar um intervalo [a, b], o menor possvel, que contenha uma e somente
uma raiz da equao f(x) = 0;
Melhorar o valor da raiz aproximada, isto , refin-la at o grau de exatido requerido. Com a
abordagem iterativa precisamos determinar um intervalo inicial para construirmos a seqncia
{x
i
} e teremos que a raiz x' ser dada por:

i
i
x x

= lim '

Alm disto, temos que estipular critrios de parada, pois na pratica no calcularemos infinitos
termos, mas apenas o suficiente para atingirmos a exatido desejada.
4.1.3 Isolamento de Razes
Nesta fase feita uma anlise terica e grfica da funo f(x). Para tal fim, usa-se freqentemente
um importante teorema da lgebra.

Teorema: Se uma funo f(x) contnua num intervalo [a, b] assume valores de sinais opostos nos


19
pontos extremos deste intervalo, isto , f(a). f(b) < 0, ento o intervalo conter, no mnimo, uma raiz da
equao f(x) = 0; em outras palavras haver, no mnimo, um nmero (a, b) tal que f() = 0.
4.1.3.1 Nmero de Razes Reais
Na seo anterior vimos como delimitar as razes reais de F(x) = 0. Agora iremos verificar quantas
razes existem no intervalo delimitado. Os mtodos a seguir do uma boa indicao sobre o nmero de
razes do intervalo.

Teorema de Bolzano: Seja F(x) = 0 uma equao algbrica com coeficientes reais e x (a, b):

Se F(a).F(b) < 0, ento existe um nmero impar de razes reais (contando suas
multiplicidades) no intervalo (a, b).

Se F(a).F(b) > 0, ento existe um nmero par de razes reais (contando suas multiplicidades)
ou no existe razes reais no intervalo (a, b).

A determinao do nmero de razes de equaes transcendentes geralmente quase impossvel,
pois algumas equaes podem ter um nmero infinito de razes.

No faremos maiores consideraes sobre este importante tpico, por no ser o objeto de estudo
neste momento, e por merecer um trabalho a parte, devido a extenso de seu contedo. Entretanto,
podemos salientar que o problema de isolar razes constitui-se da enumerao, localizao e separao
das mesmas.
4.1.3.2 Refinamento
Depois de isolar a raiz no intervalo [a, b], passa-se a calcul-la atravs de mtodos numricos.
Como veremos adiante, estes mtodos devem fornecer uma seqncia {x
i
} de aproximao, cujo limite
a raiz exata . Em cada aproximao x
n
, da raiz exata , usa-se um destes critrios e compara-se o
resultado com a tolerncia pr-fixada.

A verificao, de que x
n
est "suficientemente" prxima da raiz, pode ser feita de dois modos
diferentes (que podem levar a resultados diferentes):

| f(x
n
) | ( abordagem pelo eixo y)

| x
n
x
n-1
| (abordagem pelo eixo x)

Observa-se que dependendo dos nmeros envolvidos aconselhvel usar os testes de erro relativo:
| |
| |
1
1

n
n n
x
x x

4.1.4 Classificao dos mtodos
Mtodos de quebra: Os mtodos de quebra so os mais intuitivos geometricamente; contudo, so
os que convergem mais lentamente. Estes mtodos so assim chamados porque a partir de um intervalo
que contenha uma raiz da funo, vai-se particionando este intervalo em outros menores, que ainda
contenham a raiz. Dependendo da escolha do ponto de quebra do intervalo, poderemos ter diferentes
mtodos, tais como.
Mtodo da Bisseo;
Mtodo da Falsa Posio.

Mtodos de ponto fixo: Nos mtodos de ponto fixo comeamos de uma aproximao inicial x
0
e
construmos a seqncia {x
i
} na qual cada termo dado por x
i+1
= (x
i
), onde uma funo de iterao.
Conforme for , (dzeta) teremos diferentes mtodos de ponto fixo, tais como.


20
Mtodo de Newton-Raphson;
Mtodo da Iterao Linear.

Mtodos de mltiplos pontos: Os mtodos de mltiplos pontos constituem uma generalizao do
mtodo anterior, onde para determinar um ponto x
i+1
utilizamos vrios pontos anteriores: x
i
, x
i-1
, ..., x
i-p.

Exemplo:
Mtodo da Secante.
4.2 Mtodo da Bisseo
Seja f(x) uma funo contnua no intervalo [a, b] e seja uma raiz desta funo, sendo que (a,
b), tal que f() = 0.
y
x
0
b
a x
1
x
2
f(x)
f(a)
f(b)

x
3
x
4

Interpretao geomtrica do mtodo da bisseo

Dividindo o intervalo [a, b] ao meio, obtm-se x
1
, havendo, pois, dois subintervalos, [a, x
1
] e [x
1
,
b], a ser considerados. Se f(x
1
) = 0, ento = x
1
; caso contrrio, a raiz estar no subintervalo onde a
funo tem sinais opostos nos pontos extremos, ou seja, se f(a). f(x
1
) < 0 ento [a, x
1
], seno f(a). f(x
1
)
> 0 e [x
1
, b].

O processo se repete at que se obtenha uma aproximao para a raiz exata , ou seja, que o
critrio de parada seja satisfeito. Ento, por induo, temos:

Algoritmo:

2
b a
x
n
+
= , para n = 1, 2, 3, ...

Se f(a). f(x
n
) < 0, ento teremos b = x
n
, seno a = x
n
.

Critrio de Parada:
erro f
xn
) (
ou
| b a | erro

Restrio: necessrio conhecer um intervalo que contenha o valor desejado .
4.2.1 Estimativa do Nmero de Iteraes
Considerando uma preciso e um intervalo inicial [a, b] possvel saber, a priori, quantas
iteraes sero efetuadas pelo mtodo da bisseo at que se obtenha | b a | , usando o algoritmo
deste mtodo.
Vimos que:
k
k k
k k
a b a b
a b
2 2
0 0 1 1

=

=





21
Deve-se obter o valor de k tal que b
k
a
k
< , ou seja,

<

k
a b
2
0 0

k
a b
2
0 0
<



log(b
0
a
0
) log() < k * log(2)

k
a b
<

) 2 log(
) log( ) log(
0 0



Portanto, se k satisfaz a relao acima, ao final da iterao k teremos o intervalo [a, b] que contem a
raiz .
4.2.2 Consideraes Finais
As iteraes no envolvem clculos laboriosos;
Apesar de teoricamente seguro, o mtodo pode ter falhas. Se ocorrer um erro de
arredondamento, mesmo que pequeno, no momento em que a mquina avalia o sinal do ponto
mdio, poderemos ter um intervalo que efetivamente no contm uma raiz;
Pode ser difcil encontrar um intervalo [a, b], tal que f(a). f(b) < 0, em equaes com razes de
multiplicidade par ou muito prximas;
A convergncia muito lenta, pois se o intervalo inicial tal que b
0
a
0
>> e se for muito
pequeno, o numero de iteraes (k) tende a ser muito grande;
Deve ser utilizado apenas para diminuir o intervalo que contm a raiz.
4.2.3 Exemplos
Exemplo 1: Encontrar a raiz da funo f(x) = x.ln(x) 3.2 contida no intervalo [2, 3], com erro 10
-2
.
a) Algoritmo:
2
b a
x
n
+
=
b) Escolha do intervalo:
f(2) = 1.81371 f(3) = 0.09584
[2, 3]

c) Valor do erro:
erro 10
-2

d) Iteraes:

a X
n
b f(a) f(x
n
) | x
n
a | = | f(x
n
) |
2 2.5 3 1.81371 0.90927 0.5 0.90927
2.5 2.75 3 0.90927 0.41810 0.25 0.41810
2.75 2.875 3 0.41810 0.16385 0.125 0.16385
2.875 2.9375 3 0.16385 0.03467 0.0625 0.03467
2.9375 2.96875 3 0.03467 0.03042 0.03125 0.03042
2.9375 2.953125 2.96875 0.03467 0.00217 0,015625 0.00217

e) Resposta:
A raiz desejada = 2,953125

Exerccio 1: Encontrar a raiz de f(x) = x
2
3, contida no intervalo [1; 2], com erro 10
-2
.

Resposta: A raiz desejada = 1.734375


22

Exerccio 2: Encontrar a raiz da funo f(x) = x
2
+ ln(x) contida no intervalo [0.5, 1], com erro 10
-2
.

Resposta: A raiz desejada = 0.65625

Exerccio 3: Encontrar a primeira raiz positiva da funo f(x) = e
-x
sen(x), com erro 10
-2
.

Resposta: A raiz desejada = 0.59375
4.3 Mtodo da Falsa Posio
Seja f(x) uma funo contnua no intervalo [a, b] e seja uma raiz desta funo, sendo que (a,
b), tal que f() = 0.

No caso do Mtodo da Bisseo, x
n
obtido atravs da mdia aritmtica entre os extremos a e b:
2
b a
x
n
+
=
Na maioria das vezes a raiz est mais prxima de um dos extremos do intervalo. Se partirmos do
princpio de que a raiz deve estar mais prxima do ponto que apresenta o menor valor da funo, ento,
em vez de tomar a mdia aritmtica entre a e b, o mtodo da falsa posio toma a mdia aritmtica
ponderada entre a e b com pesos | f(b) | e | f(a) |, respectivamente:

) ( ) (
) ( ) (
a f b f
a f b b f a
xn
+
+
= , visto que f(a) e f(b) tm sinais opostos, temos ento:

) ( ) (
) ( ). (
) ( ) (
) ( ) ( ) ( ) (
) ( ) (
) ( ) (
a f b f
a f a b
a
a f b f
a af a af a bf b af
a f b f
a bf b af
xn

+
=

= , para n = 1, 2, 3, ...

Graficamente, este mtodo procura particionar o intervalo [a, b], na interseo da reta que une os
pontos (a, f(a)) e (b, f(b)) com o eixo x. Este ponto representado como x
n
. Escolhe-se ento um novo
subintervalo conforme for a variao do sinal da curva f.

O mtodo da falsa posio aplicado na figura abaixo mostra que f(x
1
).f(a) < 0, com isso, o novo
intervalo que contm pelo menos uma raiz real dado por (a, x
1
). Continuando o processo, determinamos
o ponto x
2
e verifica-se, agora, que f(x
2
).f(x
1
) < 0, da o processo segue tendo o intervalo (x
1
, x
2
).

Aps encontrar o ponto x
1
, devemos verificar, como no caso da bisseo, se a raiz est entre o
intervalo (a, x
1
) ou (x
1
, b). Se f(a).f(x
1
) < 0, ento teremos b = x
1
, caso contrrio teremos a = x
1
. A partir
da o processo se repete at que o critrio de parada seja satisfeito.

y
x
0
b
a
x
1
f(x)
f(b)
f(a)

f(b')
x
2

Representao geomtrica do mtodo da falsa posio


23

O algoritmo deste mtodo tambm pode ser encontrado atravs da anlise dos tringulos formados
pela reta (a, f(a)) e (b, f(b)) com o eixo x. Seja o tringulo f(a)x
1
a e o tringulo f(a)f(b)f(b), ento, pela
propriedade da semelhana de tringulos temos:

) ( ) (
)) ( )( (
) ( ) ( ) ( ) (
) ( ) (
1
1
1
a f b f
a f a b
a x
a f
a x
a f b f
a b
a f
a f b f
a x
a b


) ( ) (
)) ( )( (
1
a f b f
a f a b
a x

=

Se f(a).f(x
1
) < 0, ento teremos b = x
1
, seno a = x
1
. A partir da o processo se repete at que o
critrio de parada seja satisfeito.

Ento, por induo temos:

Algoritmo:
) ( ) (
) ( ). (
a f b f
a f a b
a
xn

= Para n = 1, 2, 3, ...

Se f(a).f(x
n
) < 0, ento teremos b = x
n
, seno a = x
n
.

Critrio de Parada:
| x
n
x
n-1
| erro (x
0
= a ou x
0
= b)

Pode ser usado tambm o critrio: erro f
xn
) (

Restrio:
necessrio conhecer um intervalo que contenha o valor desejado .
4.3.1 Casos especiais
Se f(x) contnua no intervalo [a, b] com f(a).f(b) < 0 ento o mtodo da falsa posio gera uma
seqncia convergente.

Se uma funo cncava ou convexa em [a, b], ou seja, a segunda derivada existe em [a, b] e
f(x) no muda de sinal nesse intervalo, ento no mtodo da falsa posio teremos sempre uma das
extremidades fixa. Este caso especial tambm chamado de Mtodo das Cordas. A figura abaixo mostra
graficamente os quatro casos que podem ocorrer:


f x
f a e f b
"( )
( ) ( )
>
< >

0
0 0
b ponto fixo


f x
f a e f b
"( )
( ) ( )
>
> <

0
0 0
a ponto fixo



24
y
x
0
b
a
x
1
x
2
f(x)
f(b)
f(a)



y
x
0
b
a
x
1
x
2
f(x)
f(a)
f(b)




f x
f a e f b
"( )
( ) ( )
<
< >

0
0 0
a ponto fixo

y
x
0 b
a
x
1
x
2
f(x)
f(a)
f(b)



f x
f a e f b
"( )
( ) ( )
<
> <

0
0 0
b ponto fixo

y
x
0
b
a
x
1
x
2
f(x)
f(b)
f(a)


Mtodo da falsa posio com uma das extremidades fixa
4.3.2 Consideraes finais
Se o ponto fixo existir e for razoavelmente prximo da raiz, o mtodo tem boa convergncia;
caso contrrio, pode ser mais lento que a bisseo.
4.3.3 Exemplos
Exemplo 1: Determinar pelo mtodo da falsa posio a menor raiz positiva da funo de quarto grau f(x)
= x
4
26x
2
+ 24x + 21 at que o erro absoluto seja igual ou inferior a 0.01. Os clculos devem ser
efetuados com 2 casas decimais e com arredondamento.

a) Algoritmo:
) ( ) (
) ( ). (
a f b f
a f a b
a
xn

=
f(x) = x
4
26x
2
+ 24x + 21
f(x) = 4x
3
52x + 24
f(x) = 12x
2
52

b) Escolha do intervalo:
Em primeiro lugar, deve-se procurar o intervalo onde possivelmente esteja a primeira raiz
positiva. Atravs da anlise do valor da funo nos primeiros pontos do eixo dos x temos que:

f(0) = 21, f(1) = 20, f(2) = 19, logo, entre (1, 2) existe uma raiz positiva.

c) Valor inicial:
a = 1 b = 2

f(1) = 40 f(2) = 4 f(1).f(2) > 0 a concavidade no muda.


25
temos f(x) < 0, f(a) > 0 e f(b) < 0, portanto, b ponto fixo.

d) Valor do erro:
erro 10
-2


e) Iteraes:

x
f
f f
1 1
2 1 1
2 1
1
1 20
19 20
1
20
39
1 51 =

=

=

=
( )( ( ))
( ( ) ( ))
( )( )
( )
,

| x
1
a | = | 1,51 1 | = 0,51 > erro

f(a).f(x
1
) = (20).(3,16) = 63,2 > 0, portanto a raiz est no intervalo (x
1
, b), ento a = x
1


x
f
f f
2 1 51
2 1 51 1 51
2 1 51
1 51
0 49 316
19 316
151
155
22 16
1 58 =

=

=

= ,
( , )( ( , ))
( ( ) ( , ))
,
( , )( , )
( , )
.
( , )
,
,

| x
2
x
1
| = | 1,58 1,51 | = 0,07 > erro

f(a).f(x
2
) = (1,51).(1,58) = 2,3858 > 0, a = x
2


x
f
f f
3 1 58
2 1 58 1 58
2 1 58
158
0 42 0 24
19 0 24
158
010
19 24
1 59 =

=

=

= ,
( , )( ( , ))
( ( ) ( , ))
,
( , )( , )
( , )
,
,
,
,

| x
3
x
2
| = | 1,59 1,58 | = 0,01 < erro

f) Resposta:
= 1,59 a primeira raiz positiva do polinmio.

Exerccio 1: Calcular a raiz aproximada para a equao f(x) = cos(x) + x, com 0.001.

Resposta: = 0.7391 a raiz procurada da equao.

Exerccio 2: Calcular a raiz negativa para a funo f(x) = e
x
+ x, com o erro 0.01. Sabe-se que a raiz
est contida no intervalo [1, 0].

Resposta: = 0.5677 a raiz procurada da equao.
4.4 Mtodo da Iterao Linear
Seja f(x) uma funo contnua no intervalo [a, b] e seja uma raiz desta funo, sendo (a, b),
tal que f() = 0.

Por um artifcio algbrico, pode-se transformar f(x) = 0 em duas funes que lhe sejam
equivalentes.

f(x) = 0

=
=
) (x g y
x y


onde g(x) chamada de funo de iterao.



26
y
x
0
f(x)

y=x
y=g(x)

Interpretao geomtrica do mtodo da iterao linear

Sendo x
0
a primeira aproximao da raiz , calcula-se g(x
0
). Faz-se ento, x
1
= g(x
0
), x
2
= g(x
1
), x
3

= g(x
2
) e assim sucessivamente.

Ento, por induo, temos:

Algoritmo:
) (
1
=
n n
x g x
para n = 1, 2, 3, ...

Critrio de Parada:
| x
n
x
n-1
| erro

Melhor extremo:
Empiricamente, sabe-se que o mtodo tem sucesso quando | g'(x) | < 1 em todo intervalo.
O extremo mais rpido para iniciar o mtodo aquele para o qual o mdulo da primeira
derivada menor.
Se | g'(a) | < | g'(b) | ento x
0
= a, seno x
0
= b.
4.4.1 Casos de convergncia
Seja f(x) = x
3
5x + 3. Possveis g(x):

g(x) =
5
3
3
+ x
g(x) = ( )
3
1
3 5 x

g(x) =
2
3 5
x
x
g(x) =
5
3
2

x


Como podemos ter vrias funes g(x), vamos estabelecer algumas condies para que os
resultados sejam satisfatrios.

Vamos observar graficamente o problema e verificar que h funes g(x) que no so indicadas
para a escolha.

Convergncia monotnica
0 < g(x) < 1
Convergncia oscilante
1 < g(x) < 0


27
y
x
0
x
1
x
2
x
0
y=x
y=g(x)




y
x
0
x
1
x
2
x
0
y=x
y=g(x)
x
3
x
4


Divergncia monotnica
g(x) > 1
y
x
0
x
1
x
2
x
0
y=x
y=g(x)


Divergncia oscilante
g(x) < 1

y
x
0
x
1
x
2
x
0
y=x
y=g(x)

x
3
x
4

Convergncia no mtodo da iterao linear
4.4.2 Consideraes finais
A maior dificuldade neste mtodo encontrar uma funo de iterao que satisfaa condio
de convergncia;
Teste de | g'(x) | < 1 pode levar a um engano se x
0
no estiver suficientemente prximo da raiz.
A velocidade de convergncia depender de | g'() |: quanto menor este valor maior ser a
convergncia;
Devemos observar que o teste de erro ( | x
n
x
n-1
| erro ) no implica necessariamente que |
x
n


| erro, conforme vemos na figura abaixo:

y
x
0

y=x
y=g(x)
xn xn-1

4.4.3 Exemplos
Exemplo 1: Dada a funo f(x) = x
2
+ 3x 40, obter sua raiz contida no intervalo [4.5, 5.5], pelo MIL,
com um erro 10
-4
.

a) Algoritmo: ) (
1
=
n n
x g x

b) Escolha da funo de iterao:
y = x


28
y =
3
40
2

x
y' =
3
2x
divergncia oscilante

y =
3
40
+ x
y' =
2
) 3 (
40
+

x
convergncia oscilante

y = x 3 40 y' =
x 3 40 2
3

convergncia oscilante

c) Melhor extremo (valor inicial):
y = x 3 40 y' =
x 3 40 * 2
3



y'(4.5) = 0.2914 y'(5.5) = 0.3094 x
0
= 4.5

d) Valor do erro:
erro 10
-4

e) Iteraes:
x
1
= 5.14782
x
2
= 4.95546
x
3
= 5.01335
x
4
= 4.99599
x
5
= 5.00120
x
6
= 4.99964
x
7
= 5.00011
x
8
= 4.99997
x
9
= 5.00000 | x
9
x
8
| = 0.00003 < erro

f) Resposta:
A raiz desejada = 5.00000

Exerccio 1: Dada a funo f(x) = x
2
+ 3x cos(x) 2.45, obter sua raiz contida no intervalo [0.5, 1],
pelo MIL, com um erro 10
-2
.

Resposta: A raiz desejada = 0.8161
4.5 Mtodo de Newton-Raphson ou Mtodo das Tangentes
Seja f(x) uma funo contnua no intervalo [a, b] e seja uma raiz desta funo, sendo (a, b), tal
que f() = 0 e f(x) 0.

y
x 0
a
f(a)
b=x
0
f(x)
x
1
x
2

x'
1

f(x
0
)
f(x
1
)



29
Interpretao geomtrica do mtodo de Newton

Tomemos x
0
= b. Ento temos:
) ( '
) ( ) (
) ( ' ) ( '
0
0
0 1
1 0
0
0 0
x f
x f
x x
x x
x f
x f x f tg =

= =
Se erro x x
0 1
, ento x
1
a raiz desejada, seno deve-se calcular x
2
, que obtido com base no
mesmo raciocnio anterior:
) ( '
) (
1
1
1 2
x f
x f
x x = .
Se erro x x
1 2
, ento x
2
a raiz desejada, seno deve-se calcular x
3
, ..., x
n
, at que
erro x x
n n

1
. Ento, por induo, temos:

Algoritmo:
) ( '
) (
1
1
1

=
n
n
n n
x f
x f
x x , para n = 1, 2, 3, ...

Critrio de Parada:
erro x x
n n

1


Restrio:
necessrio conhecer um intervalo que contenha o valor desejado .

Melhor extremo:
Para decidir qual o melhor extremo do intervalo (a, b) a iniciar o mtodo, basta verificar
qual dos extremos possui funo e segunda derivada com mesmo sinal:

f(x
i
). f''(x
i
) > 0 Para i = {extremos do intervalo}
4.5.1 Consideraes finais
Requer o conhecimento da forma analtica de f '(x), mas sua convergncia extraordinria.
4.5.2 Exemplos
Exemplo 1: Calcular a raiz positiva da equao f(x) = 2x sen(x) 4 = 0, com erro 10
-3
, usando o
mtodo de NR.
a) Algoritmo:
) ( '
) (
1
1
1

=
n
n
n n
x f
x f
x x

f(x) = 2x sen(x) 4
f(x) = 2 cos(x)
f''(x) = sen(x)

b) Escolha do intervalo:
f(2) = 0.9093 f(3) = 1.8589
f(2). f(3) < 0 [2, 3]

c) Melhor extremo (valor inicial):
f(2) = 0.9093 f(3) = 1.8589
f''(2) = 0.9093 f''(3) = 0.1411
x
0
= 3

d) Valor do erro:


30
erro 10
-3

e) Iteraes:
3783 . 2
9900 . 2
8589 . 1
3
) 3 ( '
) 3 (
3 1 = = =
f
f
x

| x
1
x
0
| = | 2.3783 3 | = 0.6217 > erro

3543 . 2
7226 . 2
0653 . 0
3783 . 2
) 3783 . 2 ( '
) 3783 . 2 (
3783 . 2 2 = = =
f
f
x

| x
2
x
1
| = | 2.3543 2.3783 | = 0.0240 > erro

3542 . 2
7058 . 2
0002 . 0
3543 . 2
) 3543 . 2 ( '
) 3543 . 2 (
3543 . 2 3 = = =
f
f
x

| x
3
x
2
| = | 2.3542 2.3543 | = 0.0001 < erro

f) Resposta:
A raiz desejada = 2.3542

Exerccio 1: Obter a raiz cbica de 5, usando o mtodo NR sendo o erro 10
-3
.

f(x) = x
3
5
f'(x) = 3x
2
f''(x) = 6x

Resposta: A raiz desejada = 1.7100

Exerccio 2: Calcular a raiz negativa de f(x) = x
3
5x
2
+ x + 3, com erro 10
-4
.

f(x) = x
3
5x
2
+ x + 3
f(x) = 3x
2
10x + 1
f''(x) = 6x 10

Resposta: A raiz desejada = 0.64575

Exerccio 3: Seja a funo f(x) = sen(x) tg(x). Deseja-se saber uma das razes desta funo, sabendo-se
que est contida no intervalo (3, 4). Todos os clculos devem ser realizados com 4 casas decimais com
arredondamento e erro no superior a 0.001.

f(x) = sen(x) tg(x)
f'(x) = cos(x) sec
2
(x)
f''(x) = sen(x) 2sec
2
(x) tg(x)

Resposta: A raiz desejada = 3.1416
4.5.3 Condies de Newton-Raphson-Fourier
Segundo Newton, para haver a convergncia uma raiz em seu mtodo, bastaria que o intervalo
(a, b) em anlise fosse suficientemente pequeno. Contudo, Raphson e Fourier concluram que um
intervalo pequeno aquele que contm uma e somente uma raiz. Com isso, algumas condies foram
estabelecidas para que tal exigncia fosse vlida:


31

1) Se f(a). f(b) > 0, ento existe um nmero par de razes reais (contando suas multiplicidades) ou
no existe razes reais no intervalo (a, b) (Teorema de Bolzano);
2) Se f(a).f(b) < 0, ento existe um nmero mpar de razes reais (contando suas multiplicidades)
no intervalo (a, b) (Teorema de Bolzano);
3) Se f'(a). f'(b) > 0, ento o comportamento da funo neste intervalo poder ser apenas
crescente ou apenas decrescente, e nunca os dois se alternando;
4) Se f'(a). f'(b) < 0, ento a funo ter o comportamento de ora crescer ora decrescer;
5) Se f"(a). f"(b) > 0, ento a concavidade no muda no intervalo em anlise;
6) Se f"(a). f"(b) < 0, ento a concavidade muda no intervalo em anlise.

Portanto, haver convergncia uma raiz no intervalo (a, b) se e somente se:

f(a). f(b) < 0, f'(a). f'(b) > 0 e f"(a). f"(b) > 0.

Exemplo 2: Seja a funo f(x) = x
2
9.5x + 8.5, obter a raiz contida no intervalo [8, 9]. Os clculos
devem ser realizados com 4 decimais com arredondamento e erro no superior a 0,001.
a) Algoritmo :
) ( '
) (
1
1
1

=
n
n
n n
x f
x f
x x
f(x) = x
2
9.5x + 8.5
f(x) = 2x 9.5
f(x) = 2

b) Escolha do intervalo:
f(8) = 3.5; f(9) = 4
f(8). f(9) < 0 [8, 9]

c) Melhor extremo (valor inicial):
f(8) = 3,5 f(9) = 4 f(8). f(9) < 0
f'(8) = 6.5 f'(9) = 8.5 f(8). f(9) > 0
f"(8) = 2 f"(9) = 2 f(8). f(9) > 0
x
0
= 9

d) Valor do erro:
erro 10
-3

e) Iteraes:
5294 . 8
5 . 8
4
9
) 9 ( '
) 9 (
9 1 = = =
f
f
x
| x
1
x
0
| = | 8.5294 9 | = 0.4706 > erro

5001 . 8
5588 . 7
2214 . 0
5294 . 8
) 5294 . 8 ( '
) 5294 . 8 (
5294 . 8 2 = = =
f
f
x
| x
2
x
1
| = | 8.5001 8.5294 | = 0.0293 > erro

5000 . 8
5002 . 7
0008 . 0
5001 . 8
) 5001 . 8 ( '
) 5001 . 8 (
5001 . 8 3 = = =
f
f
x
| x
3
x
2
| = | 8.5000 8.5001 | = 0.0001 < erro

f) Resposta:
A raiz desejada = 8.5000


32

Exerccio 4: Calcular a raiz da equao f(x) = x
3
x + 1 = 0, contida no intervalo [2, 1], com um erro
10
-3
.
f(x) = x
3
x + 1
f(x) = 3x
2
1
f(x) = 6x

Resposta: A raiz desejada = 1.3247
4.6 Mtodo da Secante
Uma grande desvantagem do mtodo de Newton a necessidade de se obter a derivada f(x) e
calcular o seu valor numrico a cada iterao.

Para contornar este problema podemos substituir o clculo da primeira derivada f(x
n
) pelo
quociente das diferenas, usando assim, um modelo linear baseado nos dois valores calculados mais
recentemente:
1
1
) ( ) (
) ( '

n n
n n
n
x x
x f x f
x f


onde x
n
e x
n-1
so duas aproximaes para a raiz.

Substituindo o valor aproximado da derivada acima, a funo de iterao fica:

x
x
n
n
x
f x
f x f x
x x
x
x x f x
f x f x
n
n
n n
n
n n n
n n
n n
+
+
=

1
1
1
1
1
1
( )
( ) ( )
( ). ( )
( ) ( )







, para n = 1, 2, 3, ...

Para iniciar o mtodo necessitamos de duas aproximaes (x
0
e x
1
) para a raiz.

y
x
0 x
1
x
o
x
2
f(x)
f(x
0
)
f(x
1
)

x
3
x
4

Interpretao geomtrica do mtodo da secante

Neste mtodo partimos das duas aproximaes iniciais x
0
e x
1
e determinamos a reta que passa
pelos pontos (x
0
, f (x
0
)) e (x
1
, f (x
1
)). A interseco desta reta com o eixo x fornece o ponto x
2
. Em seguida
calculado uma nova aproximao para a raiz a partir dos pontos (x
1
, f(x
1
)) e (x
2
, f (x
2
)). O processo se
repete at que seja satisfeito o critrio de parada.

Observe que neste mtodo no necessitamos da caracterstica que fundamental no mtodo da


33
falsa posio que exige que f(x
n
). f(x
n-1
) < 0. importante salientar tambm que a raiz no necessita estar
entre as duas aproximaes iniciais (x
0
e x
1
).

A convergncia deste mtodo mais rpido que o mtodo da bisseo e o da falsa posio,
contudo, pode ser mais lento que o mtodo de Newton-Raphson.

Algoritmo:
) ( ) (
) ( ). (
1
1
1

=
n n
n n n
n n
x f x f
x f x x
x x
, para n = 1, 2, 3, ...

Critrio de parada:
| x
n+1
x
n
| erro
4.6.1 Exemplos
Exemplo 1: Calcular a raiz da funo f(x) = x
2
+ x 6, sendo x
0
= 1.5, x
1
= 1.7 e o erro

10
-2
.
a) Algoritmo :
) ( ) (
) ( ). (
1
1
1

=
n n
n n n
n n
x f x f
x f x x
x x

b) Valor inicial:
x
0
= 1.5 x
1
= 1.7

c) Valor do erro:
erro 10
-2

d) Iteraes:

0357 . 2
84 . 0
) 282 . 0 (
7 . 1
) 25 . 2 ( 41 . 1
) 41 . 1 )( 2 . 0 (
7 . 1
) 5 . 1 ( ) 7 . 1 (
) 7 . 1 ( ). 5 . 1 7 . 1 (
7 . 1 2 =

=
f f
f
x

| x
2
x
1
| = | 2.0357 1.7 | = 0.3357 > erro

9977 . 1
) 41 . 1 ( 1798 . 0
) 1798 . 0 )( 3357 . 0 (
0357 . 2
) 7 . 1 ( ) 0357 . 2 (
) 0357 . 2 ( ). 7 . 1 0357 . 2 (
0357 . 2 3 =

=

=
f f
f
x

| x
3
x
2
| = | 1.9977 2.0357 | = 0.038 > erro

0000 . 2
) 1798 . 0 ( 0115 . 0
) 0115 . 0 )( 038 . 0 (
9977 . 1
) 0357 . 2 ( ) 9977 . 1 (
) 9977 . 1 ( ). 0357 . 2 9977 . 1 (
9977 . 1 4 =


=

=
f f
f
x

| x
4
x
3
| = | 2.0000 1.9977 | = 0.0023 < erro

e) Resposta:
= 2.0000 a raiz procurada.

Exerccio 1: Calcular a raiz da funo f(x) = 3x cos(x), sendo x
0
= 0, x
1
= 0.5 e o erro

10
-4
. Efetue os
clculos com 5 casas decimais com arredondamento.

Resposta: = 0.31675 a raiz procurada.

Exerccio 2: Calcular a raiz da funo f(x) = x
3
4, sendo x
0
= 1, x
1
= 2 e o erro

0,05.

Resposta: = 1,5914 a raiz procurada.


34
4.7 Mtodo Misto
O mtodo misto, consiste na aplicao seqencial dos mtodos NR e Falsa Posio, nesta ordem.

O mtodo NR aplicado no primeiro passo, sempre a partir do melhor extremo. Ento, com o novo
resultado obtido
N
x
1
, determina-se qual valor dos extremos do intervalo ser substitudo ( f(a). f(
N
x
1
) < 0
b =
N
x
1
, seno a =
N
x
1
) e ento aplica-se o mtodo da Falsa Posio. O resultado obtido em
F
m
x ser
utilizado na prxima iterao pelo mtodo NR, mas antes feito o teste do erro para verificar o critrio de
parada.

Assim, por induo, seguem-se as iteraes seguintes. Quando o critrio de parada for satisfeito,
tira-se a mdia aritmtica simples do resultado da ltima iterao de ambos os mtodos e obtm-se a
resposta desejada.

Algoritmo:
2
F
m
N
m
m
x x
x
+
= , para m = 1, 2, 3, ...

Critrio de parada:
|
F
m
x
N
m
x | erro
4.7.1 Exemplos
Exemplo 1: Determinar pelo mtodo misto, a raiz da funo f(x) = 10sen(x) + cos(x) 10x contida no
intervalo [0.5, 1], com tolerncia de 2*10
-4
e clculos com 4 casas decimais com arredondamento.
a) Algoritmo:
2
F
m
N
m
m
x x
x
+
=

f(x) = 10sen(x) + cos(x) 10x
f(x) = 10cos(x) sen(x) 10
f"(x) = (10)sen(x) cos(x)

b) Valor do erro:
erro 0.0002

c) Escolha do intervalo:
f(0.5) = 0.6718 f(1) = 1.0450

d) Iteraes:

Melhor extremo:
f(0.5) = 0.6718 f(1) = 1.0450
f"(0.5) = 5.6718 f"(1) = 8.9550
N
x
0
= 1

8078 . 0
) 4384 . 5 (
) 0450 . 1 (
1
) 1 (
) 1 (
1
1
=

= =
f
f
x
N


extremo trocar: f(a). f(
N
x
1
) = f(0.5). f(0.8078) = (0.6718)(0.1594) < 0
a = 0.5 b = 0.8078

7488 . 0
) 6718 . 0 ( ) 1594 . 0 (
) 6718 . 0 ( * ) 3078 . 0 (
5 . 0
) 5 . 0 ( ) 8078 . 0 (
) 5 . 0 ( * ) 5 . 0 8078 . 0 (
5 . 0
1
=

=

=
f f
f
x
F



35

|
F
x
1

N
x
1
| = | 0.7488 0.8078 | = 0.0590 > erro

extremo trocar: f(0.5). f(0.7488) = (0.6718)(0.0521) > 0
a = 0.7488 b = 0.8078

7643 . 0
) 3557 . 3 (
) 0521 . 0 (
7488 . 0
) 7488 . 0 (
) 7488 . 0 (
7488 . 0
2
=

= =
f
f
x
N


extremo trocar: f(0.7488). f(0.7643) = (0.0521)(0.0008) < 0
a = 0.7488 b = 0.7643

7641 . 0
) 0521 . 0 ( ) 0008 . 0 (
) 0521 . 0 ( * ) 0155 . 0 (
7488 . 0
) 7488 . 0 ( ) 7643 . 0 (
) 7488 . 0 ( * ) 7488 . 0 7643 . 0 (
7488 . 0
2
=

=

=
f f
f
x
F

|
F
x
2

N
x
2
| = | 0.7641 0.7643 | = 0.0002 erro

e) Resposta:
7642 . 0
2
7643 . 0 7641 . 0
=
+
=

Exerccio 1: Dada a funo f(x) = x
2
+ 3x cos(x) 2.45, obter sua raiz contida no intervalo [0.5, 1] pelo
mtodo misto, com erro 10
-3
e clculos com 4 decimais com arredondamento.

f(x) = x
2
+ 3x cos(x) 2.45
f'(x) = 2x + 3+ sen(x)
f"(x) = 2 + cos(x)

Resposta: 8200 . 0
2
82 . 0 82 . 0
=
+
=
4.8 Mtodo para Equaes Polinmiais
4.8.1 Introduo
Embora qualquer um dos mtodos estudados anteriormente possam ser usados para encontrar zeros
de um polinmio de qualquer grau, o fato de os polinmios aparecerem com tanta freqncia em
aplicaes faz com que seja dedicada uma ateno especial.

Normalmente, um polinmio de grau n escrito na forma:

P
n
=
n
n
x a x a x a a + + + + K
2
2 1 0
para a
n
0

Sabemos da lgebra elementar como obter os zeros de um polinmio do segundo grau P
2
(x), ou
seja, n = 2. Existem frmulas fechadas, semelhantes frmula para polinmios de grau 2, mas bem mais
complicadas, para zeros de polinmios de grau 3 e 4. Agora, para n 5, em geral, no existem frmulas
explcitas e somos forados a usar mtodos iterativos para encontrar os zeros dos polinmios.

Muitos dos teoremas da lgebra so teis na localizao e classificao dos tipos de zeros de um
polinmio. O estudo ser dividido em localizao de razes e determinao das razes reais.
4.8.2 Localizao de Razes
Vejamos alguns teoremas que sero teis para efetuar a localizao de razes.


36
Teorema Fundamental da lgebra: Se P
n
(x) um polinmio de grau n 1, ou seja, P
n
(x) =
n
n
x a x a x a a + + + + K
2
2 1 0
, para
n
a a a a , , , ,
2 1 0
K reais ou complexos, com a
n
0, ento P
n
(x) tem pelo
menos um zero, ou seja, existe um nmero complexo tal que P
n
() = 0.

Para determinarmos o nmero de zeos reais de um polinmio com coeficientes reais, podemos
fazer uso da regra de sinal de Descartes: Dado um polinmio com coeficientes reais, o nmero de zeros
reais positivos, p, desse polinmio no excede o nmero v de variaes de sinal dos coeficientes. Temos
ainda que v p um nmero inteiro, par e no negativo.

Exemplos: Dados os polinmios a seguir, determinar o nmero de razes reais positivas:
a) P
5
(x) = + 3x
5
2x
4
x
3
+ 2x + 1


+ + +
1 1


v = 2 p:

= =
= =
ou
p p v se
p p v se
0 , 2
2 , 0


b) P
5
(x) = + 3x
5
2x
3
+ 4x
2
x 1


+ +
1 1 1


v = 3 p:

= =
= =
ou
p p v se
p p v se
1 , 2
3 , 0


c) P
7
(x) = + x
7
+ 1


+ +
0


v = 0 e p: {v p 0 p = 0}.

Para determinar o nmero de razes reais negativas, neg, tomamos P
n
(x) e usamos a mesma regra
para razes positivas:

a) P
5
(x) = + 3x
5
2x
4
x
3
+ 2x + 1
P
5
(x) = 3x
5
2x
4
+ x
3
2x + 1


+ +
1 1 1


v = 3 neg:

= =
= =
ou
neg neg v se
neg neg v se
1 , 2
3 , 0


b) P
5
(x) = + 3x
5
2x
3
+ 4x
2
x 1


37
P
5
(x) = 3x
5
+ 2x
3
+ 4x
2
+ x 1


+ + +
1 1


v = 2 neg:

= =
= =
ou
neg neg v se
neg neg v se
0 , 2
2 , 0


c) P
7
(x) = + x
7
+ 1
P
7
(x) = x
7
+ 1


+
1


Neste caso, vimos que no existe zero positivo. Temos ainda P
7
(0) = 1 0. Temos ento que, v =
1 e neg: {v neg = 0 neg = 1}, ou seja, P
n
(x) = 0, no tem raiz real positiva, o zero no raiz e tem
apenas uma raiz real negativa donde tem trs razes complexas conjugadas.
4.8.3 Determinao das Razes Reais
Estudaremos um processo para se calcular o valor numrico de um polinmio, isto porque em
qualquer dos mtodos este clculo deve ser feito uma ou mais vezes por iterao.

Por exemplo, o Mtodo de Newton, que veremos a seguir, a cada iterao deve-se fazer uma
avaliao do polinmio e uma de sua derivada.
4.8.3.1 Mtodo para Calcular o Valor Numrico de um Polinmio
Para exemplificar o mtodo, estudaremos o processo analisando um polinmio de grau 4:

P
4
(x) =
0 1
2
2
3
3
4
4
a x a x a x a x a + + + +

Este polinmio pode ser escrito na forma:

P
4
(x) = (((a
4
x + a
3
)x + a
2
)x + a1)x + a0

conhecida como forma dos parnteses encaixados.

Temos ento, no caso de n = 4, que

P
4
(x) = (((a
4
x + a
3
)x + a
2
)x + a
1
)x + a
0
b
4
b
3
b
2
:
:

Para se calcular o valor numrico de P
4
(x) em x = c, basta fazer sucessivamente:

b
4
= a
4

b
3
= a
3
+ b
4
c


38
b
2
= a
2
+ b
3
c
b
1
= a
1
+ b
2
c
b
0
= a
0
+ b
1
c

P(c) = b
0
.

Portanto, para P
n
(x) de grau n qualquer, calculamos P
n
(c) calculando as constantes b
j
, j = n, n 1,
..., 1, 0 sucessivamente, sendo:

b
n
= a
n

b
j
= a
j
+ b
j+1
c j = n 1, n 2, ..., 1, 0

e b
0
ser o valor de P
n
(x) para x = c.

Podemos calcular o valor de P
n
(x) em x = c usando os coeficientes b
j
obtidos anteriormente.
Tomando como exemplo o polinmio de grau 4, temos:

P
4
(x) =
0 1
2
2
3
3
4
4
a x a x a x a x a + + + + P
4
(x) =
1 2
2
3
3
4
2 3 4 a x a x a x a + + + .

Usando os valores de a
j
do clculo anterior e dado que j conhemos b
0
, b
1
, b
2
, b
3
e b
4
:

P
4
(x) =
1 2
2
3
3
4
2 3 4 a x a x a x a + + +
= ) ( ) ( 2 ) ( 3 4
2 1 3 2
2
4 3
3
4
c b b c c b b c c b b c b + + +
= c b b c b c b c b c b c b
2 1 2
2
3
2
3
3
4
3
4
2 2 3 3 4 + + +

Assim, P
4
(x) =
1 2
2
3
3
4
b c b c b c b + + +

Aplicando o mesmo esquema anterior, teremos:

c
4
= b
4

c
3
= b
3
+ c
4
c
c
2
= b
2
+ c
3
c
c
1
= b
1
+ c
2
c

Calculamos, pois, os coeficientes c
j
, j = n, n 1, ..., 1 da seguinte forma:

c
n
= b
n

c
j
= b
j
+ c
j+1
c j = n 1, n 2, ..., 1

Teremos ento P(c) = c
1
.
4.8.4 Mtodo de Newton para Zeros de Polinmios
Seja P
n
(x) =
0 1
2
2
1
1
a x a x a x a x a
n
n
n
n
+ + + + +

L uma aproximao inicial para a raiz procurada.



Conforme vimos, o Mtodo de Newton consiste em desenvolver aproximaes sucessivas para a
partir da iterao:
x
k+1
= x
k

) ( '
) (
k
k
x P
x P
para k = 0, 1, 2, ...

Exemplo 1: Dada a equao polinomial x
5
3.7x
4
+ 7.4x
3
10.8x
2
+ 10.8x 6.8 = 0, temos que:



39
P
5
(1) = 2.1
P
5
(2) = 3.6

Ento, existe uma raiz no intervalo (1, 2).

Partindo de x
0
= 1.5 e considerando 0.02, o Mtodo de Newton para polinmios fornece:

P(x) = 5x
4
14.8x
3
+ 22.2x
2
21.6x + 10.8

((((x 3.7)x + 7.4)x 10.8)x + 10.8)x 6.8

a
5
= 1
a
4
= 3.7
a
3
= 7.4
a
2
= 10.8
a
1
= 10.8
a
0
= 6.8

b
5
= 1
b
4
= 3.7 + 1(1.5) = 2.2
b
3
= 7.4 2.2(1.5) = 4.1
b
2
= -10.8 + 4.1(1.5) = 4.65
b
1
= 10.8 4.65(1.5) = 3.825
b
0
= -6.8 + 3.825(1.5) = 1.0625
c
5
= 1
c
4
= -2.2 + 1(1.5) = 0.7
c
3
= 4.1 0.7(1.5) = 3.05
c
2
= -4.65 + 3.05(1.5) = 0.075
c
1
= 3.825 0.075(1.5) = 3.7125

P(1.5) = 1.0625 e P'(1.5) = 3.7125

x
1
= x
0

) 5 . 1 ( '
) 5 . 1 (
P
P
= 1.5
(3.7125)
(-1,0625)
= 1.5 (0.2862) = 1.7862

| x
1
x
0
| = | 1.7862 1.5 | = 0.2862 >

b
5
= 1
b
4
= 3.7 + 1(1.7862) = 1.9138
b
3
= 7.4 1.9138(1.7862) = 3.98158
b
2
= 10.8 + 3.98158(1.7862) = 3.68812
b
1
= 10.8 3.68812(1.7862) = 4.21228
b
0
= 6.8 + 4.21228(1.7862) = 0.72398
c
5
= 1
c
4
= 1.9138 + 1(1.7862) = 0.1276
c
3
= 3.98158 0.1276(1.7862) = 3.75366
c
2
= 3.68812 + 3.75366(1.7862) = 3.01667
c
1
= 4.21228 + 3.01667(1.7862) = 9.60065

P(1.7862) = 0.72398 e P'(1.7862) = 9.60065

x
2
= x
1

(1.7862)
(1.7862)
P'
P
= 1.7862
(9.60065)
(0.72398)
= 1.7862 (0.07541) = 1.71079

| x
2
x
1
| = | 1.71079 1.7862 | = 0.07541 >

b
5
= 1
b
4
= 3.7 + 1(1.71079) = 1.98921
b
3
= 7.4 1.98921(1.71079) = 3.99688
b
2
= 10.8 + 3.99688(1.71079) = 3.96218
b
1
= 10.8 3.96218(1.71079) = 4.02154
b
0
= 6.8 + 4.02154(1.71079) = 0.08001
c
5
= 1
c
4
= 1.98921 + 1(1.71079) = 0.27842
c
3
= 3.99688 0.27842(1.71079) = 3.52056
c
2
= 3.96218 + 3.52056(1.71079) = 2.06077
c
1
= 4.02154 + 2.06077(1.71079) = 7.54707



40
P(1.71079) = 0.08001 e P'(1.71079) = 7.54707

x
3
= x
2

(1.71079)
(1.71079)
P'
P
= 1.71079
(7.54707)
(0.08001)
= 1.71079 (0.01060) = 1.70019

| x
3
x
2
| = | 1.70019 1.71079 | = 0.0106 <

A raiz procurada : 1.70019

Exerccio 1: Calcular a raiz positiva do polinmio P(x) = 2x
3
2x
2
+ 3x 1, com erro <= 10
-4
, pelo
mtodo de Newton para polinmios.

P'(x) = 6x
2
4x + 3

A raiz procurada : 0.39661



41
5 Sistemas Lineares
5.1 Introduo
Sistemas Lineares so sistemas de equaes com m equaes e n incgnitas formados por
equaes lineares. Um sistema linear com m equaes e n incgnitas escrito usualmente na forma:

11 1 12 2
1
1
21 1 22 2
2
2
1 1 2 2
a x a x
a
x b
a x a x
a
x b
a x a x a x b
n
n
n
n
m m mn n m
+ + + =
+ + + =
+ + + =

L
L
L
................................................

onde
a
ij
: coeficientes 1 i m, 1 j n
x
j
: incgnitas j = 1, 2, ..., n
b
i
: constantes i = 1, 2, ..., m

A resoluo de um sistema linear consiste em calcular os valores de x
j
, j = 1, 2, ..., n, caso eles
existam, que satisfaam as m equaes simultaneamente.

Usando notao matricial, o sistema linear pode ser representado por AX = B, onde

M =
11 12 1 1
21 22 2 2
1 2
a a a b
a a a b
a a a b
n
n
m m mn n
L
L
L
.................................



chamada matriz completa ou matriz aumentada do sistema.

A =
11 12 1
21 22 2
1 2
a a a
a a a
a a a
n
n
m m mn
L
L
L
............................

a matriz dos coeficientes



X =
1
2
x
x
xn
M

o vetor das incgnitas, e



B =
1
2
b
b
bm
M

o vetor constante (termos independentes).


5.1.1 Classificao Quanto ao Nmero de Solues
Um sistema linear pode ser classificado quanto ao nmero de solues em:



42
Compatvel
determinado (o sistema linear tem soluo nica)
indeterminado (o sistema linear admite infinitas solues)



Incompatvel (o sistema linear no admite soluo).

Quando todos os termos independentes forem nulos, isto , se b
i
= 0, i = 0, 1, ..., m, o sistema
dito homogneo. Todo sistema homogneo compatvel, pois admitir pelo menos a soluo trivial (x
j
=
0, j = 0, 1, 2, ..., n).
5.2 Mtodos Diretos (Algoritmos Diretos)
Um mtodo dito direto quando a soluo exata
r
x do sistema linear obtida realizando-se um
nmero finito de operaes aritmticas. So exemplos conhecidos a Regra de Cramer, o Mtodo da
Eliminao de Gauss (ou triangulao) e o Mtodo de Jordan.
5.2.1 Regra de Cramer
Seja um sistema linear com nmero de equaes igual ao nmero de incgnitas (um sistema n x
n), sendo D o determinante da matriz A, e D
x1
, D
x2
, D
x3
, ..., D
xn
os determinantes das matrizes obtidas
trocando em M, respectivamente, a coluna dos coeficientes de x
1
, x
2
, x
3
, ..., x
n
pela coluna dos termos
independentes, temos que:

O sistema S ser compatvel e ter soluo nica se, e somente se, D 0. Neste caso a nica
soluo de S dada por:
x
1
=
x D
D
1
, x
2
=
x D
D
2
, x
3
=
x D
D
3
, ... , x
n
=
xn D
D


A aplicao da Regra de Cramer exige o clculo de n + 1 determinantes ( det A e det A
i
, 1 i n);
para n = 20 o nmero total de operaes efetuadas ser 21 * 20! * 19 multiplicaes mais um nmero
semelhante de adies. Assim, um computador que efetue cerca de 100 milhes de multiplicaes por
segundo levaria 3 x 10
5
anos para efetuar as operaes necessrias.

Com isso, a regra de Cramer invivel em funo do tempo de computao para sistemas muito
grandes.
5.2.1.1 Exemplos
Exemplo 1: Resolva o sistema abaixo pela Regra de Cramer:


1 2 3
1 2 3
1
2 3
1
2 0
2 0
x x x
x x x
x
x x
+ + =
+ =
+ =



Calculando os determinantes D, D
x1
, D
x2
e D
x3
temos:

D = 7
1 2 1
1 1 2
1 1 1
=

D
x1
= 1
1 2 0
1 1 0
1 1 1
=

D
x2
= 3
1 0 1
1 0 2
1 1 1
=

D
x3
= 5
0 2 1
0 1 2
1 1 1
=
Ento, x
1
=
x D
D
1
=
1
7
, x
2
=
x D
D
2
=
3
7
, e x
3
=
x D
D
3
=
5
7
e a soluo do sistema
x :

1
7
3
7
5
7
, ,
T




43
Exerccio 1: Resolva o sistema abaixo pela Regra de Cramer:


2 0
2 3
3 2
1 2 3
1 2 3
1 2 3
x x x
x x x
x x x
+ =
+ + =
=



A soluo deste sistema x : ( 0, 1, 1)
T

5.2.2 Mtodo da Eliminao de Gauss
O mtodo da eliminao de Gauss consiste em transformar o sistema linear original num outro
sistema linear equivalente com matriz dos coeficientes triangular superior, pois estes so de resoluo
imediata. Dizemos que dois sistemas lineares so equivalentes quando possuem a mesma soluo. O
determinante de sistemas lineares equivalentes so iguais.

Com (n 1) passos o sistema linear AX = B transformado num sistema triangular equivalente:
UX = C, o qual se resolve facilmente por substituies.

Vamos calcular a soluo de AX = B em trs etapas:

1 etapa: Matriz Completa
Consiste em escrever a matriz completa ou aumentada do sistema linear original.

2 etapa: Triangulao
Consiste em transformar a matriz A numa matriz triangular superior, mediante uma
seqncia de operaes elementares nas linhas da matriz.

3 etapa: Retro-substituio
Consiste no clculo dos componentes x
1
, x
2
, ..., x
n
, soluo de AX = B, a partir da soluo
do ltimo componente (x
n
), e ento substituirmos regressivamente nas equaes anteriores.

Teorema: Seja AX = B um sistema linear. Aplicando sobre as equaes deste sistema uma
seqncia de operaes elementares escolhidas entre:

i) Trocar a ordem de duas equaes do sistema;
ii) Multiplicar uma equao do sistema por uma constante no nula;
iii) Adicionar um mltiplo de uma equao a uma outra equao;

obtemos um novo sistema UX = C e os sistemas AX = B e UX = C so equivalentes.
5.2.2.1 Resoluo de Sistemas Triangulares
Seja o sistema linear AX = B, onde A: matriz n x n, triangular superior, com elementos da diagonal
diferentes de zero. Escrevendo as equaes deste sistema, temos:

11 1 12 2 13 3
1
1
22 2 23 3
2
2
33 3
3
3
a x a x a x
a
x b
a x a x
a
x b
a x
a
x b
a x b
n
n
n
n
n
n
nn n n
+ + + + =
+ + + =
+ + =
=

L
L
L
O M


Da ltima equao deste sistema temos:


44
x
n
=
n
nn
b
a


x
n-1
pode ento ser obtido da penltima equao:
x
n-1
=
n n n n
n n
b a x
a

1 1
1 1
,
,


e assim sucessivamente obtm-se x
n-2
, ..., x
2
, e finalmente x
1
:
x
1
=
1 12 2 13 3 1
11
b a x a x a x
a
n n
L

5.2.2.2 Estratgias de Pivoteamento
O algoritmo para o mtodo de eliminao de Gauss requer o clculo dos multiplicadores:

m
ik
= -
ik
kk
a
a
i = k + 1, ..., n e k = 1, 2, 3, ..., n-1

a cada etapa k do processo. Sendo o coeficiente a
kk
chamado de piv.

O que acontece se o piv for nulo? E se o piv estiver prximo de zero?

Estes dois casos merecem ateno especial pois impossvel trabalhar com um piv nulo. E
trabalhar com um piv prximo de zero pode resultar em resultados totalmente imprecisos. Isto porque
em qualquer calculadora ou computador os clculos so efetuados com preciso finita, e pivs prximos
de zero so origem a multiplicadores bem maiores que a unidade que, por sua vez, origina uma ampliao
dos erros de arredondamento.

Para se contornar estes problemas deve-se adotar uma estratgia de pivoteamento, ou seja, adotar
um processo de escolha da linha e/ou coluna pivotal.

Esta estratgia consiste em:
i) no inicio da etapa k da fase de escalonamento, escolher para piv o elemento de maior mdulo
entre os coeficientes: a
ik
, i = k, k + 1, ..., n;
ii) trocar as linhas k e i se for necessrio.
5.2.2.3 Classificao do Sistema Triangular
Seja U um sistema triangular superior escalonado de m equaes e n incgnitas, teremos as
seguintes possibilidades:
i) m = n sistema compatvel e determinado;
ii) m < n sistema compatvel e indeterminado.

Se durante o escalonamento surgir equaes do tipo: 0x
1
+ 0x
2
+ ... + 0x
n
= b
m,
ento:
i) Se b
m
= 0, ento eliminaremos a equao e continuamos o escalonamento;
ii) Se b
m
0, ento conclui-se que o sistema incompatvel.
5.2.2.4 Exemplos
Exemplo 1: Resolver o sistema abaixo pelo mtodo de Gauss.

=
= +
= + +
2 3
0 2
3 2
3 2 1
3 2 1
3 2 1
x x x
x x x
x x x



45

1 etapa: Matriz completa:

M =

2 1 1 3
0 1 1 2
3 1 2 1


2 etapa: Triangulao:

Iremos se referir as equaes como: E
1
(primeira equao), E
2
(segunda equao) e assim por
diante. O componentes x indica o piv.


E E E
E E E
1 2 2
1 3 3
2
3




11 4 7 0
6 3 3 0
3 1 2 1
E
3
= E
3

7
3
E
2

1
1
1
]
1


3 3 0 0
6 3 3 0
3 1 2 1


3 etapa: Retro-substituio:

Da terceira linha temos: 3x
3
= 3 x
3
= 1

Substituindo x
3
na segunda linha temos: 3x
2
3(1) = 6 x
2
= 1

Substituindo x
3
e x
2
na primeira linha temos: 1x
1
+ 2(1) + 1(1) = 3 x
1
= 0

A soluo deste sistema x : ( 0, 1, 1)
T


Exerccio 1: Resolver o sistema abaixo pelo mtodo de Gauss:


0 25 0 5 0 25
0 09 0 3 0 49
0 01 0 1 0 81
1 2 3
1 2 3
1 2 3
, , ,
, , ,
, , ,
x x x
x x x
x x x
+ + =
+ + =
+ + =



A soluo deste sistema x : ( 1, -2, 1)
T


Exerccio 2: Resolver o sistema abaixo pelo mtodo de Gauss:

= +
=
= +
2 1 4 1
2 1 3 1
0 2 1 0
3 2 1
3 2 1
3 2 1
x x x
x x x
x x x

5.2.3 Mtodo de Jordan
Consiste em aplicar operaes elementares sobre as equaes do sistema linear dado at que se
obtenha um sistema diagonal equivalente.
5.2.4 Exemplos
Exemplo 1: Resolver o sistema linear pelo mtodo de Jordan:



46

x x x
x x x
x x x
1 2 3
1 2 3
1 2 3
2 4
0
1
2
+ + =
=
=



1 etapa: Matriz completa:

M =
1 1 2 4
2 1 1 0
1 1 1 1



2 etapa: Diagonalizao:


2 2 1
3 3 1
2 E E E
E E E



1 1 2 4
0 3 5 8
0 2 3 5

1
]
1
1
1
E
3
= E
3

2
3
E
2

1 1 2 4
0 3 5 8
0 0
1
3
1
3




1 1 2
2 2 3
1
3
15
E E E
E E E
+
+

1 0
1
3
4
3
0 3 0 3
0 0
1
3
1
3


1 1 3
2
2
31 3
1
3
3
E E E
E E
E E


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



3 etapa: Clculo da soluo do sistema:

Da primeira linha temos: x
1
= 1

Na segunda linha temos: x
2
= 1

Na terceira linha temos: x
3
= 1

A soluo deste sistema x : ( 1, 1, 1)
T
5.3 Fatorao LU-Crout-Cholesky-Doolitle
A base do mtodo chamado Fatorao ou Decomposio LU, est apoiada na simplicidade de
resoluo de sistemas triangulares.

Seja o sistema linear Ax = b

O processo de fatorao para resoluo deste sistema consiste em decompor a matriz A dos
coeficientes em um produto de dois ou mais fatores e, em seguida, resolver uma sequncia de sistemas
lineares que nos conduzir a soluo do sistema linear original.

Tal processo geral de eliminao conhecida como mtodo de Crout (ou Cholesky para o caso particular
de matrizes simtricas positivas definidas). A matriz A pode ser decomposta no produto A=LU, onde L
uma matriz triangular inferior e U uma matriz triangular superior, quando a matriz for no singular (Det
(A) 0). Alm disso, se atribuirmos valores fixos aos elementos da diagonal, seja de L (l
ii
= 1 no Mtodo
de Doolitle) ou em U (u
ii
= 1 no Mtodo de Crout), esta decomposio ser nica.

Suponhamos que seja possvel fatorar a matriz A dos coeficientes num produto de uma matriz
triangular inferior com diagonal unitria L e uma matriz triangular superior U, isto :



47
A = LU

Nestas condies, o sistema Ax = b pode ser reescrito na forma LUx = b, o que permite o
desmembramento em dois sistemas triangulares

Ly = b e Ux = y

Resolvendo o primeiro sistema, calculamos y que, usado no segundo sistema, fornecer o vetor
procurado x.

Dessa maneira, conhecidas L e U, o sistema ser resolvido com 2n
2
operaes (dois sistemas
triangulares), o que representa um ganho substancial comparado com as
3
2
3
n
operaes do mtodo da
eliminao de Gauss.
5.3.1 Clculo dos Fatores L e U
Os fatores L e U podem ser obtidos atravs de frmulas para os elementos l
ij
e u
ij
, ou ento, podem
ser construdos usando a idia bsica do mtodo da Eliminao de Gauss.

Veremos a seguir como obter L e U atravs do processo de Gauss.

Dada uma matriz quadrada A de ordem n, seja A
k
a matriz constituda das primeiras k linhas e
colunas de A. Suponha que det(A
k
) 0 para k = 1, 2, ..., (n 1). Ento, existe uma nica matriz triangular
inferior L = (m
ij
), com m
ii
= 1, 1 i n, e uma nica matriz truangular superior U = (u
ij
) tais que LU = A.
Ainda mais, det(A) = u
11
u
22
...u
nn
.

Para a soluo de Ax = b, pode-se decompor A segundo o Mtodo de Crout, da seguinte maneira:

1 0 0
1 0
1
0
0 0

23
13 12
33 32 31
22 21
11
3
2
1
33 32 31
23 22 21
13 12 11
u
u u
l l l
l l
l
b
b
b
a a a
a a a
a a a
M
M
M


tal que A = L.U. Ento, o sistema torna-se L.U.x = b.
Fazendo U.x = y, resolve-se primeiro L.y = b e depois U.x =y.

Para um sistema 3x3 podemos escrever:


1
1
1
]
1

1
1
1
]
1

=
1
1
1
]
1

3
2
1
23
13 12
33 32 31
22 21
11
3
2
1
33 32 31
23 22 21
13 12 11
1 0 0
1 0
1
0
0 0

y
y
y
u
u u
l l l
l l
l
b
b
b
a a a
a a a
a a a
M
M
M
M
M
M


Esta multiplicao de matrizes pode ser usada para definir os valores de
l
ij
,
u
ij
e
i
y em termos dos
valores
a
ij
.

l a
11 11
=


l a
21 21
=

u a l
12 12 11
= /


l a
31 31
=

u a l
13 13 11
= /

11 1 1
/ l b y =


l a l u
22 22 21 12
=


12 31 32 32
u l a l =



48

22 1 21 2 2
/ ) ( l c l b y =

l a l u l u
33 33 31 13 32 23
=

33 2 32 1 31 3 3
/ ) ( l c l c l b y =

Note que o clculo de y pode ser feito da mesma forma que o clculo de u.
A sequncia de operaes :

1). Calcular a primeira coluna de L, calcular a primeira linha de U e y
1
;
2). Calcular a segunda coluna de L, calcular a segunda linha de U e y
2
;
e assim sucessivamente.
Os valores de x so obtidos por substituio sucessiva a partir de y (U.x = y)


3 3
y x =

3 23 2 2
x u y x =

2 12 3 13 1 1
x u x u y x =

Note que, o vetor c tambm pode ser obtido do sistema parcial L.y = b por substituies
sucessivas.
Sugere-se usar o processo "tipo escada" para armazenar L e U na mesma rea de memria, o que
torna o processo mais eficiente,

3
2
1
33 32 31
23 22 21
13 12 11
3
2
1
33 32 31
23 22 21
13 12 11
y
y
y
l l l
u l l
u u l
b
b
b
a a a
a a a
a a a
M
M
M
M
M
M


De uma forma geral, para sistemas de ordem n:

- Operaes com o primeiro piv: k = 1


l
i1
= a
i1 i = 1,2,3,...,n


u a / l
1j 1j 11
=
j = 2,3,...,n+1

- Operaes com piv genrico: k = 2,3,...,n

i k (i = k,k+1,...,n)

j > k (j = k+1,...,n+1)

Exemplo 1: Resolver o sistema linear a seguir usando a fatorao LU:

= +
= +
= +
0 2
3 2 3 2
2 2
3 2 1
3 2 1
3 2 1
x x x
x x x
x x x


Seja A =

1 2 1
2 3 2
1 2 1


Calculando os m
ij
e u
ij
, usando o processo de Gauss sem estratgia de pivoteamento parcial. Para


49
triangular A, temos:

Etapa 1:

Piv =
) 0 (
11
a = 1

Multiplicadores: m
21
=
) 0 (
11
) 0 (
21
a
a
=
1
2
= 2 m
31
=
) 0 (
11
) 0 (
31
a
a
=
1
1
= 1
Ento:

1 3 3
1 2 2
1 1
2
E
E E
E
E E
E E

A
(1)
=

2 4 0
0 1 0
1 2 1


Uma vez que os elementos
) 1 (
21
a e
) 1 (
31
a so nulos, podemos guardar os multiplicadores nestas
posies, ento:

A
(1)
=

2 4 1
0 1 2
1 2 1


Etapa 2:

Piv =
) 1 (
22
a = 1

Multiplicadores: m
32
=
) 1 (
22
) 1 (
32
a
a
=
1
4

= 4
Ento:

2 3 3
2 2
1 1
4E
E E
E E
E E

A
(2)
=

2 0 0
0 1 0
1 2 1


A
(2)
=

2 4 1
0 1 2
1 2 1


Os fatores L e U so:

L =
1
1
1
]
1

1 4 1
0 1 2
0 0 1
e U =

2 0 0
0 1 0
1 2 1


Para resolvermos o sistema Ax = (2, 3, 0)
T
, resolvemos Ly = b



50
1
1
1
]
1

1 4 1
0 1 2
0 0 1
.

3
2
1
y
y
y
=

0
3
2
ou

= + +
= +
=
0 4
3 2
2
3 2 1
2 1
1
y y
y y
y
y
y
1
= 2; y
2
= 1; y
3
= 2

y = (2, 1, 2)
T


e, com estes valores, calculamos x atravs de Ux = y

2 0 0
0 1 0
1 2 1
.

3
2
1
x
x
x
=
1
1
1
]
1

2
1
2
ou

=
=
= +
2 2
1
2 2
3
2
3 2 1
x
x
x x x
x
3
= 1; x
2
= 1; x
1
= 1

A soluo do sistema x = (1, 1, 1)
T



Exerccio 1: Resolver o sistema linear a seguir usando a fatorao LU:

= + +
= + +
= + +
3 2 3
2 2
1 4 2
3 2 1
3 2 1
3 2 1
4
3
x x x
x x x
x x x


A soluo do sistema x = (3, 5, 0)
T


Exerccio 2: Resolver o sistema linear a seguir usando a fatorao LU:

x x x
x x x
x x x
1 2 3
1 2 3
1 2 3
2 4
0
1
2
+ + =
=
=



A soluo do sistema x = (1, 1, 1)
T

5.4 Mtodos Iterativos (Algoritmos Iterativos)
5.4.1 Mtodo de Gauss-Jacobi ( Algbrico )
Seja o sistema abaixo:
11 1 12 2 1 1
21 1 22 2 2 2
1 1 2 2
a x a x a x b
a x a x a x b
a x a x a x b
n n
n n
n n nn n n
+ + + =
+ + + =
+ + + =
...
...
...
...


Pode-se afirmar que o mesmo convergente, se o sistema estiver na forma diagonalmente
dominante, isto :



51
11 21 31 1
22 12 32 2
1 2 1
a a a a
a a a a
a a a a
n
n
nn n n n n
+ + +
+ + +
+ + +

...
...
...
...

ou
a a a a
a a a a
a a a a
nn n n nn
n
n
1 2 1
2 23 21 22
1 13 12 11
...
...
...
...

+ + +
+ + +
+ + +


Ento, isola-se em cada uma das equaes ordenadamente, uma das incgnitas.

1
1
11
1 12 2
0
13 3
0
1
0
2
1
22
2 21 1
0
23 3
0
2
0
1
1 1
0
2 2
0
1 1
0
1
1
1
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ... )
( ... )
...
( ... )
x
a
b a x a x a x
x
a
b a x a x a x
x
a
b a x a x a x
n n
n n
n
nn
n n n nn n
=
=
=



onde,
1
0
2
0 0 ( ) ( ) ( )
, ,...,
x x xn
so as atribuies inicial do mtodo.

Condies de Parada:
Se para todo erro
x x
j
n
j
n

) 1 ( ) (
, ento
x
j
n
) (
so as solues do sistema.
5.4.1.1 Exemplos
Exemplo 1: Resolver por Gauss-Jacobi, com 4 decimais com arredondamento e erro menor ou igual a
0,01 o sistema abaixo:
x + 8y z = 16
6x y + z = 7
x + y+ 5z = 18

a) Verificao da convergncia:
6x y + z = 7
x + 8y z = 16
x + y + 5z = 18

b) Isolamento das incgnitas:
x =
6
1
( 7 + y z )
y =
8
1
( 16 x + z )
z =
5
1
( 18 x y )

c) Atribuio inicial:
x
(0)
= 0 y
(0)
=0 z
(0)
=0

d) Iteraes:
x
(1)
=
6
1
( 7 + y
(0)
z
(0)
) =
6
1
( 7 + 0 0 ) = 1,1667
y
(1)
=
8
1
( 16 x
(0)
+ z
(0)
) =
8
1
( 16 - 0 + 0 ) = 2


52
z
(1)
=
5
1
( 18 x
(0)
y
(0)
) =
5
1
( 18 0 0 ) = 3,6

x
(2)
=
6
1
( 7 + 2 3,6 ) = 0,9
y
(2)
=
8
1
( 16 1,1667 + 3,6 ) = 2,3042
z
(2)
=
5
1
( 18 1,1667 2 ) = 2,9667

x
(3)
=
6
1
( 7 + 2,3042 2,9667 ) = 1,0562
y
(3)
=
8
1
( 16 0,9 + 2,9667 ) = 2,2583
z
(3)
=
5
1
( 18 0,9 2,3042 ) = 2,9592

x
(4)
=
6
1
( 7 + 2,2583 2,9592 ) = 1,0498
y
(4)
=
8
1
( 16 1,0562 + 2,9592 ) = 2,2379
z
(4)
=
5
1
( 18 1,0562 2,2583 ) = 2,9371

x
(5)
=
6
1
( 7 + 2,2379 2,9371 ) = 1,0501 | x
(5)
- x
(4)
| = 0,0003 < erro
y
(5)
=
8
1
( 16 - 1,0498 + 2,9371 ) = 2,2359 | y
(5)
- y
(4)
| = 0,002 < erro
z
(5)
=
5
1
( 18 1,0498 2,2379 ) = 2,9425 | z
(5)
- z
(4)
| = 0,0054 < erro

A soluo deste sistema : (1,0501; 2,2359; 2,9425)
T


Exerccio 1: Dado o sistema, pede-se sua soluo por Gauss-Jacobi, com 4 decimais com
arredondamento e erro menor ou igual a 0,02.

10x + y + z = 12
x + 5y+ 9z = 15
2x +8y 4z = 6

A soluo deste sistema : (0,9975; 1,0051; 0,9916)
T
5.4.2 Mtodo de Gauss-Jacobi ( Matricial )
Baseado no algoritmo anterior, o mtodo consiste na transformao do algoritmo em um sistema de
matriz. Portanto, no algoritmo:
i
k
ii
i ij j
k
j
j i
n
x
a
b a x
( ) ( )
( ) =

=

1
1
1

a mesma situao pode ser escrita na forma:



53
11 1 1 12 2
1
13 3
1
1
1
22 2 2 21 1
1
23 3
1
2
1
1 1
1
2 2
1
1 1
1
a x b a x a x a x
a x b a x a x a x
a x b a x a x a x
k k k
n n
k
k k k
n n
k
nn n
k
n n
k
n
k
nn n
k
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ... )
( ... )
...
( ... )
=
=
=





Sendo A a matriz dos coeficientes, onde A = D + I + S, no qual D a matriz diagonal, I a matriz
inferior e S a matriz superior, a expresso anterior poder ser reescrita na forma:

D X B
S I
X
k k ( ) ( )
( )
=
+
1


Multiplicando ambos os termos pela matriz inversa da diagonal,

B D X
I S
D X
X
I S
D B D X D D
k k
k k
1 ) 1 ( 1 ) (
) 1 ( 1 1 ) ( 1
) (
) (


+ =
=
+
+


E X J X
k k
+ =
) 1 ( ) (

onde

J D
S I
E D B
=
=

+
1
1
( )

5.4.2.1 Exemplos
Exemplo 1: Seja o sistema abaixo:
x + y 5z = -6
4x y + z = 19
x + 3y z = 14

obter a sua soluo por Gauss-Jacobi Matricial com 3 decimais com arredondamento e erro menor ou
igual a 0,05. Admitir soluo inicial nula.

a) Verificao da convergncia:
4x y + z = 19
x + 3y z = 14
x + y 5z = -6

b) Obteno do Algoritmo:

=
0 1 1
0 0 1
0 0 0
I
,

=
0 0 0
1 0 0
1 1 0
S
,

=
5 0 0
0 3 0
0 0 4
D
,

=
6
14
19
B
,

5
1
0 0
0
3
1
0
0 0
4
1
1
D


Ento,


54

=
0
5
1
5
1
3
1
0
3
1
4
1
4
1
0
0 1 1
1 0 1
1 1 0
5
1
0 0
0
3
1
0
0 0
4
1
J

=
5
6
3
14
4
19
6
14
19
5
1
0 0
0
3
1
0
0 0
4
1
E


Ento,

=

5
6
3
14
4
19
0
5
1
5
1
3
1
0
3
1
4
1
4
1
0
) 1 ( ) (
X X
k k


c) Atribuio inicial:

=
0
0
0
) 0 (
X


d) Iteraes:

=
002 , 3
995 , 3
031 , 5
934 , 2
057 , 4
951 , 4
020 , 3
822 , 3
850 , 4
083 , 3
483 , 3
617 , 5
200 , 1
667 , 4
750 , 4
) 5 ( ) 4 ( ) 3 ( ) 2 ( ) 1 (
X X X X X

=

( )
,
,
,
6
4 998
3 991
3 005
X

( ) ( )
,
,
,
6 5
0 033
0 004
0 003
X X
erro =

<

A soluo deste sistema : (4,998; 3,991; 3,005)
T


Exerccio 1: Dado o sistema abaixo:

5x y = 13
2x + 4y = 14

obter a soluo por Gaus-Jacobi Matricial com 4 decimais com arredondamento e erro menor ou igual a
0,005. Admitir soluo inicial nula.

A soluo deste sistema : (3,0004; 1,9985)
T
5.4.3 Mtodo de Gauss-Seidel ( Algbrico )
Derivado do mtodo de Gauss-Jacobi, este mtodo utiliza a cada iterao os valores j prontos na
prpria iterao, para tentar assegurar convergncia mais rpida, ou seja,



55
) ... (
1
...
) ... (
1
) ... (
1
) ... (
1
) (
1 1
) (
3 3
) (
2 2
) (
1 1
) (
) 1 (
3
) 1 (
4 34
) (
2 32
) (
1 31 3
33
) (
3
) 1 (
2
) 1 (
4 24
) 1 (
3 23
) (
1 21 2
22
) (
2
) 1 (
1
) 1 (
4 14
) 1 (
3 13
) 1 (
2 12 1
11
) (
1
x a x a x a x a b
a
x
x a x a x a x a b
a
x
x a x a x a x a b
a
x
x a x a x a x a b
a
x
k
n nn
k
n
k
n
k
n n
nn
k
n
k
n n
k k k k
k
n n
k k k k
k
n n
k k k k




=
=
=
=


Portanto, o algoritmo do mtodo pode ser expresso por:

i
k
ii
i ij j
j
j i
n
x
a
b a x
k i j
k i j
( )
(
( )
( )
) =
>
<
=

1
1
1

5.4.3.1 Exemplos
Exemplo 1: Resolver por Gauss-Seidel, com 4 decimais com arredondamento e erro menor ou igual a
0,005 o sistema abaixo.
x + 8y z = 16
6x y + z = 7
x + y+ 5z = 18

a) Verificao da convergncia:
6x y + z = 7
x + 8y z = 16
x + y + 5z = 18

b) Isolamento das incgnitas:
x =
6
1
( 7 + y z )
y =
8
1
( 16 x + z )
z =
5
1
( 18 x y )

c) Atribuio inicial:
x
(0)
= 0 y
(0)
=0 z
(0)
=0

d) Iteraes:
x
(1)
=
6
1
( 7 + 0 0 ) = 1,1667
y
(1)
=
8
1
( 16 1,1667 + 0 ) = 1,8542
z
(1)
=
5
1
( 18 1,1667 1,8542 ) = 2,9958

x
(2)
=
6
1
( 7 + 1,8542 2,9958 ) = 0,9764


56
y
(2)
=
8
1
( 16 - 0,9764 + 2,9958 ) = 2,2524
z
(2)
=
5
1
( 18 0,9764 2,2524 ) =2,9542

x
(3)
=
6
1
( 7 + 2,2524 2,9542 ) = 1,0497
y
(3)
=
8
1
( 16 - 1,0497 + 2,9542 ) = 2,2381
z
(3)
=
5
1
( 18 1,0497 2,2381 ) = 2,9424

x
(4)
=
6
1
( 7 + 2,2381 2,9424 ) = 1,0493 | x
(4)
- x
(3)
| = 0,0004 < erro
y
(4)
=
8
1
( 16 - 1,0493 + 2,9424 ) = 2,2366 | y
(4)
- y
(3)
| = 0,0015 < erro
z
(4)
=
5
1
( 18 1,0493 2,2366 ) = 2,9428 | z
(4)
- z
(3)
| = 0,0004 < erro

A soluo deste sistema : (1,0493; 2,2366; 2,9428)
T


Exerccio 1: Resolver por Gauss-Seidel, com 4 decimais com arredondamento e erro menor ou igual a
0,01 o sistema abaixo.

7x + y z = 13
x + 8y + z = 30
2x y + 5z = 21

A soluo deste sistema : (2,0001; 3,0003; 4,0000)
T
5.4.4 Mtodo de Gauss-Seidel ( Matricial )
Seja o sistema abaixo,

11 1 1 12 2
1
13 3
1
1
1
22 2 2 21 1 23 3
1
2
1
1 1 2 2 1 1
a x b a x a x a x
a x b a x a x a x
a x b a x a x a x
k k k
n n
k
k k k
n n
k
nn n
k
n n
k
n
k
nn n
k
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
...
...
...
...
=
=
=





que pode ser representado na forma matricial:

D X B I X S X D I X B S X
k k k k k ( ) ( ) ( ) ( ) ( )
( ) = + =
1 1


Multiplicando ambos os membros pela inversa de ( D + I ), temos:

X S I D B I D X I D I D
k k ) 1 (
1 1
) (
1
) ( ) ( ) ( ) (


+ + = + +


B I D X S I D X
k k 1 ) 1 ( 1 ) (
) ( ) (

+ + + =



57
F X G X
k k
+ =
) 1 ( ) (


onde,
G D I S
F D I B
= +
= +

( )
( )
1
1

5.4.4.1 Exemplos
Exemplo 1: Dado o sistema abaixo,
x + 6y = -21
5x y = 19

obter suas solues por Gauss-Seidel Matricial com 3 decimais com arredondamento e erro inferior ou igual a
0,005. Admitir nula a soluo inicial.

a) Verificao da convergncia:
5x y = 19
x + 6y = -21

b) Obteno do Algoritmo:

=
6 0
0 5
D
,

=
0 1
0 0
I
,


=
0 0
1 0
S
,

=
21
19
B


Ento,

=
15
62
5
19
21
19
6
1
30
1
0
5
1
30
1
0
5
1
0
0 0
1 0
6
1
30
1
0
5
1
F
G


Logo,

=

15
62
5
19
30
1
0
5
1
0
) 1 ( ) (
X X
k k


c) Atribuio inicial:

=
0
0
) 0 (
X


d) Iteraes:

=
000 , 4
000 , 3
000 , 4
001 , 3
996 , 3
973 , 2
133 , 4
800 , 3
) 4 ( ) 3 ( ) 2 ( ) 1 (
X X X X


( ) ( )
,
,
4 3
0 001
0 000
X X
erro =

<



58
A soluo deste sistema : (3; -4)
T


Exerccio 1: Dado o sistema abaixo:

5x y = 13
2x + 4y = 14

obter a soluo por Gaus-Seidel Matricial com 4 decimais com arredondamento e erro menor ou igual a
0,005. Admitir soluo inicial nula.

A soluo aproximada deste sistema : (3,0004; 1,9998)
T


5.4.5 Segunda Abordagem da Frmula Matricial do Mtodo Gauss-Seidel

Decompe-se a matriz de coeficientes A em:
U D L A + + =
Onde:
L Matriz Triangular Inferior
D Matriz Diagonal
U Matriz Triangular Superior

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
1
2 23
1 13 12
33
22
11
1 2 1
32 31
21
L
O M M M
M L
L
L
L
M O M M M
L
L
L
L
M O M M M
L
L
L
n n
n
n
nn nn n n
a
a a
a a a
U
d
d
d
d
D
a a a
a a
a
L
) ( 1 ) 1 ( 1 1 ) 1 (
1 1 1
) (
) (
k k k
x U D x L D b D x
x U D x L D b D x
x U L b x D
b x U x D x L
b x U D L
+ +

=
=
+ =
= + +
= + +



59
5.4.5.1 Interpretao Geomtrica do Caso 2 2

Considere o Sistema Linear:
3 3
3
2 1
2 1
=
= +
x x
x x

O esquema iterativo utilizando o Mtodo de Gauss-Seidel dado por:
) 3 3 (
3
1
) 3 (
1
1
) 1 (
1
) 1 (
2
) (
2
) 1 (
1
+ +
+
+ =
=
k k
k k
x x
x x

Para k=0 e
T
x ] 0 0 [
) 0 (
= :
2
3
) 1 (
2
) 1 (
1
=
=
x
x

Para k=1 e
T
x ] 2 3 [
) 1 (
= :
3
4
1
) 2 (
2
) 2 (
1
=
=
x
x

Para k=2 e
T
x ]
3
4
1 [
) 2 (
= :
9
14
3
5
) 3 (
2
) 3 (
1
=
=
x
x


A soluo exata dada por:
T
x ]
2
3
2
3
[ = .
Esse processo iterativo at convergncia pode ser interpretado geomtricamente num grafico com a
componente
1
x na abscissa e a componente
2
x na ordenada.













-5 -4 -3 -2 -1 0 1 2 3 4 5
-2
-1
0
1
2
3
4
5
6
7
8
x2
x1
(0,0)
(0,3)
(3,2)
(1,2)
(1,4/3)
(4/3,5/3)
x1+x2=3
x1-3x2=-3


60


Observao 1: Verifica-se pelo grfico acima que a seqncia
) (o
x ,
) 1 (
x ,
) 2 (
x , ......,
) (k
x est convergindo
para a soluo exata
T
x ]
2
3
2
3
[ = .
Observao 2: A sequncia gerado pelo Mtodo de Gauss-Seidel depende fortemente da disposio das
equaes. Esta observao pode ser melhor entendida modificando a ordem das equaes do exemplo
anterior.

Considere o mesmo Sistema Linear anterior, porm modificando a ordem das equaes:
3
3 3
2 1
2 1
= +
=
x x
x x

O esquema iterativo utilizando o Mtodo de Gauss-Seidel dado por:
) 3 (
) 3 3 (
) 1 (
1
) 1 (
2
) (
2
) 1 (
1
+ +
+
=
+ =
k k
k k
x x
x x

Para k=0 e
T
x ] 0 0 [
) 0 (
= :
6
3
) 1 (
2
) 1 (
1
=
=
x
x

Para k=1 e
T
x ] 6 3 [
) 1 (
= :
12
15
) 1 (
2
) 1 (
1
=
=
x
x














5.4.5.2 Estudo da Convergncia do Mtodo de Gauss-Seidel

Existem dois critrios de suficincia para a convergncia do Mtodo de Gauss-Seidel. O
critrio de linhas e o critrio de Sassenfeld. O critrio de linhas o mesmo da Mtodo de Gauss-Jacobi.
-5 -4 -3 -2 -1 0 1 2 3 4 5
-2
-1
0
1
2
3
4
5
6
7
8
x
(0,0)
(0,-3)
(-3,6) ......(6,15)
x2
x1
x1+x2=3
x1-3x2= -3


61


Critrio de Linhas

Seja o sistema linear b x A = , com A dimenso n n e seja:
kk
n
k j
j
kj
k
a
a

=1

Se 1 max
, 1
< =
=
k
n k
, ento o mtodo Gauss-Seidel gera uma seqncia { }
) (k
x convergente para a soluo
do sistema dado, independentemente da escolha da aproximao inicial
) 0 (
x .

A matriz que satisfizer o critrio de linhas chamada de diagonal dominante estrita.


5.4.5.3 Critrio de Sassenfeld

Seja o sistema linear b x A = , com A dimenso n n e seja:
11
1 14 13 12
1
.......
a
a a a a
n
+ + + +
=

e para n j .... ,......... 3 , 2 = :

jj
j jj j jj j j
j
a
a a a a a
1 1 1 1 2 2 1 1
. ...... .... .......... + + + + + +
=
+


Define-se
j
n j

, 1
max
=
= .
Se 1 < , ento o Mtodo de Gauss-Seidel gera uma sequncia convergente para a soluo do sistema,
qualquer que seja o vetor inicial. Alm disso, quanto menor for o valor de mais rpida a
convergncia.

Exemplo: Verificar as condies de convergncia do Mtodo de Gauss-Seidel no sistema abaixo:

3 3
1
3 3 2
3 1
3 2
3 2 1
= +
= +
= + +
x x
x x
x x x

a) Critrio de Linhas
1 2
2
3 1
1
> =
+
= no satisfaz.
b) Critrio de Sassenfeld


62
1 2
2
3 1
1
> =
+
= no satisfaz.

Como a convergncia do Mtodo de Gauss-Seidel fortemente dependente da posio das equaes,
pode-se trocar a posio das equaes.
Tentativa 1: Troca-se a primeira equao pela terceira equao.
3 3 2
1
3 3
3 2 1
3 2
3 1
= + +
= +
= +
x x x
x x
x x

a) Critrio de Linhas
1 3
1
3 0
1
> =
+
= no satisfaz.
b) Critrio de Sassenfeld
1 3
1
3 0
1
> =
+
= no satisfaz.
Tentativa 2: Troca-se a primeira coluna pela terceira coluna na equao anterior.
3 2 3
1 0
3 0 3
1 2 3
1 2 3
1 2 3
= + +
= +
= + +
x x x
x x x
x x x

a) Critrio de Linhas
1 33 . 0
3
1
1
< = = satisfaz.
1
1
1
2
= = no satisfaz.

b) Critrio de Sassenfeld
1 33 . 0
3
1
1
< = = satisfaz.
1 33 . 0
1
3
1
1
2
< =

= satisfaz.

1
6
4
2
3
1
1
3
1
3
3
< =
+
= satisfaz.

Com a ltima modificao o sistema passa a ser convergente para qualquer vetor inicial.
Modificaes desse tipo so puramente acadmicas e so difceis de serem realizadas em sistemas reais.
Principalmente pelas dimenses dos problemas, resultando num grande esforo computacional, e das
incertezas quanto a sua eficincia.

Exemplo : Verifique a convergncia do sistema abaixo pelo critrio de linhas e Sassenfeld.


63


4
3 2
2 1
2 1
= +
= +
x x
x x


Critrio de Linhas
1
2
1
2
1
=
=

No satisfaz

Critrio de Sassenfeld

2
1
1
2
1
1
2
1
2
1
=

=
=

Satisfaz


Exemplo : Verifique a convergncia do sistema abaixo pelo critrio de linhas e Sassenfeld.


5 , 2 2 , 0 3 , 0 1 , 0
0 , 1 2 , 0 2 , 0 1 , 0
6 , 2 1 , 0 2 , 0 2 , 0
2 , 0 1 , 0 1 , 0 5 , 0
4 3 2 1
4 3 2 1
4 3 2 1
4 3 2 1
= + + +
= + +
= +
= + +
x x x x
x x x x
x x x x
x x x x

5.4.6 Mtodo da Sobrerelaxao Sucessiva


) (
) ( ) 1 ( ) ( ) 1 ( k
i
k
i
k
i
k
i
x x w x x + =
+ +

) (
1

) ( ) 1 ( ) 1 (

> <
+ +
=
i j
k
j ij
i j
k
j ij i
ii
k
i
x a x a b
a
x
2 1 < < w - Utilizado para aumentar a velocidade de convergncia.
1 0 < < w - Utilizado em sistemas com dificuldades de convergncia pelo Mtodo de gauss Seidel.




64
5.4.7 Condies Necessria e Suficiente para Convergncia do Mtodo de Gauss-Jacobi e
Gauss-Seidel

Teorema

Seja
n
b e
n
N M A = ) ( no singular. Se M no-singular e o raio espectral de
N M
1
satisfaa 1 ) (
1
<

N M , ento o processo iterativo definido por b x N x M


k k
+ =
+ ) ( ) 1 (
converge para
b A x
1
= para qualquer vetor
) 0 (
x .
{ } ) ( : max ) (
1 1
N M N M

=

Para o Mtodo de Gauss-Jacobi:
) (
) (
) (
) (
) ( ) 1 (
U L N
D M
x U L b x D
x U L b x D
b x U x D x L
b x U D L
k k
+ =
=
+ =
+ =
= + +
= + +
+


Para o Mtodo de Gauss-Seildel:
U N
D L M
x U b x D L
x U b x D x L
b x U x D x L
b x U D L
k k
=
+ =
= +
= +
= + +
= + +
+
) (
) (
) (
) ( ) 1 (

5.4.7.1 Comparao dos Mtodos de Soluo de Sistemas Lineares b x A =

Mtodos Diretos:

1. Processos finitos (convergncia para qualquer sistema no-singular);
2. Apresentam problemas com erros de arredondamento;
3. Utiliza-se tcnicas de pivoteamento para amenizar os problemas de arredondamento;
4. O processo de triangularizao destri a esparsidade da matriz de coeficientes. Tcnicas de
Esparsidade so utilizadas para amenizar o enchimento da matriz.
5. Para matrizes cheias a soluo requer
3
n operaes sem considerar o pivoteamento.

Mtodos Iterativos:



65
1. Provavelmente mais eficientes para sistemas de grande porte, principalmente com a utilizao de
computao de alto desempenho (vetorial e paralela);
2. Tem convergncia assegurada apenas sob certas condies;
3. Conserva a esparsidade da matriz de coeficientes;
4. Os mtodos de G-J e G-s requerem
2
2n operaes por iteraes;
5. Poucas vantagens adicionais so conseguidas em solues para vetores independentes adicionais com
a matriz de coeficientes mantida constante, como no caso da fatorao LU;
6. Carregam menos erros de arredondamento no processo, tendo em vista que a convergncia uma vez
assegurada independe da aproximao inicial. Somente os erros da ltima iterao afetam a soluo.




66
6 Interpolao
6.1 Introduo
A interpolao outra das tcnicas bem antigas e bsicas do clculo numrico. Muitas funes so
conhecidas apenas em um conjunto finito e discreto de pontos de um intervalo [a, b], como, por exemplo,
a tabela abaixo que relaciona calor especfico da gua e temperatura:

X
i
x
0
x
1
x
2
x
3
x
4
x
5
x
6
x
7

Temperatura (C) 20 25 30 35 40 45 50 55
Calor especfico 0.99907 0.99852 0.99826 0.99818 0.99828 0.99849 0.99878 0.99919
Tabela 1 - Calor especfico da gua.

A partir desses dados suponhamos que se queira calcular:

a) o calor especfico da gua a 32.5 C
b) a temperatura para a qual o calor especfico 0.99837.

A interpolao tem o objetivo de nos ajudar na resoluo deste tipo de problema, ou em casos em
que possumos um conjunto de valores obtidos atravs de alguns experimentos.

Interpolar uma funo f(x) consiste em aproximar essa funo por uma outra funo g(x),
escolhida entre uma classe de funes definida a priori e que satisfaa algumas propriedades. A funo
g(x) ento usada em substituio funo f(x).

A necessidade de se efetuar esta substituio surge em vrias situaes, como por exemplo:

a) quando so conhecidos somente os valores numricos da funo por um conjunto de pontos
(no dispondo de sua forma analtica) e necessrio calcular o valor da funo em um ponto no tabelado
(como o caso do exemplo anterior).

b) quando a funo em estudo tem uma expresso tal que operaes como a diferenciao e a
integrao so difceis (ou mesmo impossveis) de serem realizadas. Neste caso, podemos procurar uma
outra funo que seja uma aproximao da funo dada e cujo manuseio seja bem mais simples.

As funes que substituem as funes dadas podem ser de tipos variados, tais como: polinomiais,
trigonomtricas, exponenciais e logartmicas. Ns iremos considerar apenas o estudo das funes
polinomiais.
6.1.1 Conceito de Interpolao
Seja a funo y = f(x), dada pela tabela 1. Deseja-se determinar f x ( ) , sendo:

a) x (x
0
, x
7
) e x x
i
, i = 0, 1, 2, ..., 7
b) x (x
0
, x
7
)

Para resolver (a) tem-se que fazer uma interpolao. E, sendo assim, determina-se o polinmio
interpolador, que uma aproximao da funo tabelada. Por outro lado, para resolver (b), deve-se
realizar uma extrapolao.

Consideremos (n + 1) pontos distintos: x
0
, x
1
, x
2
, ..., x
n
, chamados ns da interpolao, e os
valores de f(x) nesses pontos: f(x
0
), f(x
1
), f(x
2
), ..., f(x
n
).

A forma de interpolao de f(x) que veremos a seguir consiste em se obter uma determinada


67
funo g(x) tal que:

g(x
0
) = f(x
0
)
g(x
1
) = f(x
1
)
g(x
2
) = f(x
2
)
M M
g(x
n
) = f(x
n
)

Graficamente temos:

y
x 0
x
0
x
1
x
2
x
3
x
4
x
5
g(x)
f(x)
(x
0
, f(x
0
))
(x
1
, f(x
1
))
(x
2
, f(x
2
))
(x
3
, f(x
3
))
(x
4
, f(x
4
))
(x
5
, f(x
5
))

Interpretao geomtrica para n = 5
6.2 Interpolao Linear
6.2.1 Obteno da Frmula
Dados dois pontos distintos de uma funo y = f(x) : (x
0
, y
0
) e (x
1
, y
1
), deseja-se calcular o valor de
y para um determinado valor de x entre x
0
e x
1
, usando a interpolao polinomial.

O polinmio interpolador uma unidade menor que o nmero de pontos conhecidos. Assim
sendo, o polinmio interpolador nesse caso ter grau 1, isto ,

P
1
(x) = a
1
x + a
0


Para determin-lo, os coeficientes a
0
e a
1
devem ser calculados de forma que tenha:

P
1
(x
0
) = f(x
0
) = y
0

P
1
(x
1
) = f(x
1
) = y
1


ou seja, basta resolver o sistema linear abaixo:


a x a y
a x a y
1 0 0 0
1 1 0 1
+ =
+ =

onde a
1
e a
0
so as incgnitas e

A
x
x
=

0
1
1
1
a matriz dos coeficientes.

O determinante da matriz A diferente de zero, sempre que x
0
x
1
, logo para pontos distintos o
sistema tem soluo nica.

O polinmio interpolador P
1
(x) = a
1
x + a
0
tem como imagem geomtrica uma reta, portanto
estaremos aproximando a funo f(x) por uma reta que passa pelos dois pontos conhecidos (x
0
, y
0
) e (x
1
,


68
y
1
).

A figura abaixo mostra, geometricamente, os dois pontos, (x
0
, y
0
) e (x
1
, y
1
), e a reta que passa por
eles.

p
1
(x)
x
0
x
1
y
0
y
1
0

6.2.2 Exemplos
Exemplo 1: Seja a funo y = f(x) definida pelos pontos (0.00; 1.35) e (1.00; 2.94). Determinar
aproximadamente o valor de f(0.73).

P
1
(x) = a
1
x + a
0
o polinmio interpolador de 1 grau que passa pelos pontos dados. Ento
teremos:

a) Pontos utilizados:
(0.00;1.35) e (1.00; 2.94)

b) Clculo dos coeficientes:
P
1
(0) = a
1
0 + a
0
= 1.35 a
0
= 1.35
P
1
(1) = a
1
1 + a
0
= 2.94 a
1
= 1.59

c) Polinmio interpolador:
P
1
(x) = 1.59x + 1.35 (equao da reta que passa pelos pontos dados)

d) Resposta:
P
1
(0.73) = 1.59 0.73 + 1.35
P
1
(0.73) = 2.51

O resultado obtido acima est afetado por dois tipos de erros:

a) Erro de arredondamento (E
A
) - cometido durante a execuo das operaes e no caso de um
resultado ser arredondado.
b) Erro de truncamento (E
T
) - cometido quando a frmula de interpolao a ser utilizada
escolhida, pois a aproximao de uma funo conhecida apenas atravs de dois pontos dados feita por
um polinmio de 1 grau.

Exerccio 1: Dada a funo f(x) = 10x
4
+ 2x + 1 com os valores de f(0.1) e f(0.2) determinar P
1
(0.15) e o
erro absoluto cometido.

Polinmio interpolador: P
1
(x) = 2.15x + 0.986
P
1
(0.15) = 1.3085
E
A
= 0.0034375

Exerccio 2: Calcular o calor especfico aproximado da gua a 32,5 C, usando os valores da tabela 1.

Usando as temperaturas 30 C e 35 C.


69
Polinmio interpolador: P
1
(x) = 0.000016x + 0.99874
P
1
(32.5) = 0.99822
6.3 Interpolao Quadrtica
6.3.1 Obteno da Frmula
Se conhecermos trs pontos distintos de uma funo, ento o polinmio interpolador ser:

P
2
(x) = a
2
x
2
+ a
1
x + a
0


O polinmio P
2
(x) conhecido como funo quadrtica cuja imagem geomtrica uma parbola,
portanto, estaremos aproximando a funo f(x) por uma parbola que passa pelos trs pontos conhecidos
(x
0
, y
0
), (x
1
, y
1
) e (x
2
, y
2
).

Para determinarmos os valores de a
2
, a
1
e a
0
necessrio resolver o sistema:

a
2 0
2
x
+ a
1
x
0
+ a
0
= y
0

a
2 1
2
x
+ a
1
x
1
+ a
0
= y
1

a
2 2
2
x
+ a
1
x
2
+ a
0
= y
2


onde a
2
, a
1
e a
0
so as incgnitas e os pontos (x
0
, y
0
), (x
1
, y
1
) e (x
2
, y
2
) so conhecidos.

A matriz dos coeficientes :

V =
0
2
0
1
2
1
2
2
2
1
1
1
x
x
x
x
x
x



Como os pontos so distintos, ento o sistema ter soluo nica.
6.3.2 Exemplos
Exemplo 1: Utilizando os valores da funo seno, dados pela tabela abaixo, determinar a funo
quadrtica que se aproxima de f(x) =
2
2
1
sen
x
x +
, trabalhando com trs casas decimais.

x sen(x) f(x)
0 0 0.000

6

1
2

0.328

4
2
2
0.560

a) Pontos utilizados:
( 0; 0 ) ( /6; 0.328 ) ( /4; 0.560 )

b) Clculo dos coeficientes:
P
2
(x) = a
2
x
2
+ a
1
x + a
0


( ) ( )
( ) ( )

= + + =
= + + =
= + + =



560 . 0 ) (
328 . 0 ) (
0 0
0
) 0 (
0
4
1
4
2
2
4
2
0
6
1
6
2
2
6
2
0 1
2
2 2
a a a P
a a a P
a a a P





70

Da primeira linha temos que a
0
= 0. Logo, o sistema passa a ser:

= +
= +
560 . 0 785 . 0 617 . 0
328 . 0 524 . 0 274 . 0
1 2
1 2
a a
a a


Resolvendo o sistema acima encontraremos a soluo aproximada:

a
2
= 0.333 a
1
= 0.452 a
0
= 0

c) Polinmio interpolador:
P
2
(x) = 0.333
2
x
+ 0.452x

Exemplo 2: Determinar o valor de f(0.2) e o erro absoluto ocasionado pela aplicao da interpolao
quadrtica, no clculo deste valor, usando os valores tabelados da funo f(x) = x
2
2x + 1. Utilizar duas
casas decimais.

x f(x)
0.5 0.25
0.3 0.49
0.1 0.81

a) Pontos utilizados:
( 0.5; 0.25 ) ( 0.3; 0.49 ) ( 0.1; 0.81 )

b) Clculo dos coeficientes:
P
2
(x) = a
2
x
2
+ a
1
x + a
0

= + +
= + +
= + +
81 . 0 1 . 0 01 . 0
49 . 0 3 . 0 09 . 0
25 . 0 5 . 0 25 . 0
0 1 2
0 1 2
0 1 2
a a a
a a a
a a a


Resolvendo o sistema pelo mtodo de Gauss, vem:
a
2
= 1.00 a
1
= 2.00 a
0
= 1.00

c) Polinmio interpolador:
P
2
(x) = x
2
2x + 1

d) Resposta:
P
2
(0.2) = (0.2)
2
2.(0.2) + 1
P
2
(0.2) = 0.64

Clculo do erro absoluto:

E
A
= f(0.2) P
2
(0.2)
E
A
= 0.64 0.64
E
A
= 0

Podemos observar que o polinmio interpolador igual a funo dada. Isto ocorre porque a funo
dada polinomial de 2 grau e, a partir de trs pontos da funo, consegue-se determin-la sem erro.
Contudo, poder existir o erro de arredondamento.



71
Exerccio 1: Usando trs pontos da Tabela 1, determinar o calor especfico aproximado da gua a 31 C

Pontos utilizados: (20; 0.99907), (30; 0.99826) e (40; 0.99828)
Polinmio interpolador: P
2
(x) = 0.00000415x
2
0.0002885x + 1.00318
P
2
(31) = 0.99822
6.4 Interpolao de Lagrange
As interpolaes vistas anteriormente so casos particulares da interpolao de Lagrange. Vamos
estudar agora o polinmio interpolador de grau menor ou igual a n, sendo dados n + 1 pontos distintos.

Teorema: Sejam (x
i
, y
i
), i = 0, 1, 2, ..., n, n + 1 pontos distintos, isto , x
i
x
j
para i j. Existe um
nico polinmio P(x) de grau menor ou igual a n, tal que P(x
i
) = y
i
, para todo i.

O polinmio P(x) pode ser escrito na forma:

P
n
(x) = a
0
+ a
1
x + a
2
x
2
+ ... + a
n
x
n
ou P
n
(x) =
i
i
i
n
a x
=

0


P(x) , no mximo, de grau n, se a
n
0 e, para determin-lo, deve-se conhecer os valores de a
0
, a
1
,
..., a
n
. Como P
n
(x) contm os pontos (x
i
, y
i
), i = 0, 1, ..., n, pode-se escrever que P
n
(x
i
) = y
i
.

Com isso temos:

0 1 0 2 0
2
0
0
0 1 1 2 1
2
1
1
0 1 2
2
a a x a x a x
y
a a x a x a x
y
a a x a x a x
y
n
n
n
n
n n n n
n
n
+ + + + =
+ + + + =
+ + + + =

...
...
................................................
...


Resolvendo o sistema acima, determina-se o polinmio P
n
(x). Para provar que tal polinmio
nico, basta que se mostre que o determinante da matriz A, dos coeficientes das incgnitas do sistema,
diferente de zero. A matriz A :

A =
1
1
1
0 0
2
0
1 1
2
1
2
x x x
x x x
x x x
n
n
n n n
n
...
...
............................
...



Mas o determinante da matriz A conhecido como determinante das potncias ou de
Vandermonde e, da lgebra Linear, sabe-se que seu valor dado por:

det(A) = ( )
i j
i j
x x

>

. Como x
i
x
j
para i j, vem que det(A) 0.

Logo, P(x) nico.

Exemplo: Sejam os valores: x
0
= 1, x
1
= 0, x
2
= 3 e x
3
= 2. Determinar: ( )
i j
i j
x x

>

.

( )
i j
i j
x x

>

= (x
1
x
0
) (x
2
x
0
) (x
2
x
1
) (x
3
x
0
) (x
3
x
1
) (x
3
x
2
) =


72
= (1)(2)(3)(1)(2)(1) = 12

Este valor igual ao determinante da matriz:


1 1 1 1
1 0 0 0
1 3 9 27
1 2 4 8


6.4.1 Obteno da Frmula
Ser mostrado, agora, a deduo da frmula de interpolao de Lagrange.

Sejam x
0
, x
1
, x
2
, ..., x
n
, (n + 1) pontos distintos e y
i
= f(x
i
), i = 0, 1, ..., n.

Seja P
n
(x) o polinmio de grau n que interpola f em x
0
, ..., x
n
. Podemos representar P
n
(x) na
forma P
n
(x) = y
0
L
0
(x) + y
1
L
1
(x) + ... + y
n
L
n
(x), onde os polinmios L
k
(x) so de grau n. Para cada i,
queremos que a condio P
n
(x
i
) = y
i
seja satisfeita, ou seja:

P
n
(x
i
) = y
0
L
0
(x
i
) + y
1
L
1
(x
i
) + ... + y
n
L
n
(x
i
) = y
i


A forma mais simples de se satisfazer esta condio impor:

L
k
(x
i
) =
0
1
se k i
se k i

e, para isso, definimos L


k
(x) por

L
k
=
( )( )...( )( )...( )
( )( )...( )( )...( )
x x x x x x x x x x
x x x x x x x x x x
k k n
k k k k k k k n


+
+
0 1 1 1
0 1 1 1


Como o numerador de L
k
(x) um produto de n fatores da forma:

(x x
i
), i = 0, 1, ..., n, i k, ento L
k
(x) um polinmio de grau n e, assim, P
n
(x) um polinmio
de grau menor ou igual a n.

Alm disso, para x = x
i
, i = 0, ..., n temos:

P
n
(x
i
) =
k
k i
k
n
y
L x
( )
=

0
= y
i
L
i
(x
i
) = y
i


Ento, a interpolao de Lagrange para o polinmio interpolador :

P
n
(x) =
k
k
k
n
y
L
x ( )
=

0


onde L
k
(x) =
( )
( )
x x
x x
j
k j
j
j k
n

0




73
P
n
(x) =
k
j
k j
j
j k
n
k
n
y
x x
x x

=

( )
( )
0
0
, a frmula da interpolao lagrangeana.
6.4.2 Exemplos:
Exemplo 1: No caso da interpolao linear, visto anteriormente, temos dois pontos distintos: (x
0
, f(x
0
)) e
(x
1
, f(x
1
)) com n igual a 1.

a) Pontos utilizados:
(0.00; 1.35) e (1.00; 2.94)

b) Clculo dos coeficientes:
P
1
(x) = y
0
L
0
(x) + y
1
L
1
(x), onde

L
0
(x) =
( )
( )
x x
x x

1
0 1

L
1
(x) =
( )
( )
x x
x x

0
1 0


Assim, P
1
(x) = y
0
( )
( )
x x
x x

1
0 1
+ y
1
( )
( )
x x
x x

0
1 0


que exatamente a equao da reta que passa por (x
0
, f(x
0
)) e (x
1
, f(x
1
)).

c) Polinmio interpolador:
P
1
(x) = 1.35
( )
( )
x

1
0 1
+ 2.94
( )
( )
x

0
1 0
= 1.35x + 1.35 + 2.94x = 1.59x + 1.35
que a mesma expresso obtida no exemplo 1 de interpolao linear.

Exerccio 1: Determinar o polinmio de interpolao de Lagrange para a funo conhecida pelos pontos
tabelados abaixo e o resultado em P(0.5):

i x
i
y
i

0 0 0
1 1 1
2 2 4

Resposta: P
2
(0.5) = (0.5)
2
= 0.25

Exerccio 2: Determinar o polinmio interpolador de Lagrange para a funo conhecida pelos pontos da
tabela abaixo:

i x
i
y
i

0 1 4
1 0 1
2 2 1
3 3 16

Resposta: P
3
(x) = x
3
4x + 1


74
6.5 Interpolao Parablica Progressiva
Na interpolao parablica progressiva precisamos de n + 1 pontos, onde n o grau do polinmio
desejado. Em seguida, tomamos os pontos mais prximos, do ponto que queremos, na hora de montar a
tabela.

Polinmio de grau 0:

G0

CTE
grau Polinmio 0


P
0
(x) = a
0


Polinmio de grau 1:

G1

CTE
grau Polinmio 0
+

0
1
x por passando
grau Polinmio


P
1
(x) = a
0
+ a
1
.(x x
0
)

Polinmio de grau 2:

G2

CTE
grau Polinmio 0
+

0
1
x por passando
grau Polinmio
+

1 0
2
x por e x por passando
grau Polinmio


P
2
(x) = a
0
+ a
1
.(x x
0
) + a
2
.(x x
0
).(x x
1
)

M

Polinmio de grau n:

P
n
(x) = a
0
+ a
1
.(x x
0
) + a
2
.(x x
0
).(x x
1
) + ... + a
n
.(x x
0
).(x x
1
).(x x
2
) ... (x x
n-1
)


Impondo que P
n
(x) passe por todos os n + 1 pontos da tabela, temos que:

P
n
(x
0
) = f(x
0
)
P
n
(x
1
) = f(x
1
)
P
n
(x
2
) = f(x
2
)
M
P
n
(x
n
) = f(x
n
)

Validade:
) ) (
(
0
0 0 0 0
x f
a x P x x
= = =
x x
x P
x f
a
x x
a
x f
a
x f
x x a a x P x x
0 1
1 0
1
1
0 1
0
1
1
1
0 1 1 0 1 1 1
) ( ) )
) ) ( ) (
( (
(

= = + = =


75

) )( (
) ( )
) ) )( ( ) ( ) (
1 2 0 2
2 1
2
2
2
1 2 0 2 2 0 2 1 0 2 2 2
(
(
x x x x
x P
x f
a
x f
x x x x a x x a a x P x x

= = + + = =


) )...( (
) ( )
) ) )...( ( ... ) ( ) (
1 0
1
1 0 0 1 0
(
(
x x x x
x P
x f
a
x f
x x x x a x x a a x P x x
n n n
n n
n
n
n
n n n n n n n n

=
= + + + = =


Exemplo 1: Dados os pares abaixo, determinar a expresso analtica destes mesmos:

x
i
5 3 1 2
f(x
i
) 8 4 4 6

1 Hiptese:
x x P
x = =
0 0
8 ( )

2 Hiptese:
x x a
f x
P x
x x
P
x x x = =

=
+
+
= = + + = +
1 1
1
0 1
1 0
1
4 8
3 5
2 8 2 5 2 2
(
) ( )
( ) ( )

3 Hiptese:
x x a
f x
P x
x x x x
P
x x = =


=

+ +
= = +
2 2
2
1 2
2 0 2 1
2
4 4
1 5 1 3
0 2 2
(
) ( )
( )( ) ( )( )
( )

4 Hiptese:
x x a
f x
P x
x x x x x x
P
x x = =


=

+ +
= = +
3 3
3
2 3
3 0 3 1 3 2
3
6 6
2 5 2 3 2 1
0 2 2
(
) ( )
( )( )( ) ( )( )( )
( )

Logo, a expresso : P
1
(x) = 2x + 2
6.6 Interpolao de Newton com Diferenas Divididas
6.6.1 Diferenas Divididas
Seja f(x) uma funo tabelada em n + 1 pontos distintos x
0
, x
1
, x
2
, ... x
n
. Definimos o operador
diferenas divididas por:

f[x
0
] = f(x
0
)
f[x
0
,x
1
] =
0 1
0 1
] [ ] [
x x
x f x f

=
) (
) ( ) (
0 1
0 1
x x
x f x f


f[x
0
,x
1
,x
2
] =
0 2
1 0 2 1
] , [ ] , [
x x
x x f x x f


M
f[x
0
,x
1
,x
2
, ... x
n
] =
0
1 1 0 2 1
] ... , [ ] ... , [
x x
x x x f x x x f
n
n n






76
Dizemos que f[x
0
,x
1
,x
2
,...x
k
] a diferena dividida de ordem k da funo f(x) sobre os k + 1 pontos.

Conhecidos os valores que f(x) assume nos pontos distintos x
0
, x
1
, x
2
, ... x
n
, podemos construir a
tabela:

x
i
Ordem 0 Ordem 1 Ordem 2 .... Ordem n
x
0
f[x
0
] f[x
0
,x
1
] f[x
0
,x
1
,x
2
] f[x
0
,x
1
,x
2
... x
n
]
x
1
f[x
1
] f[x
1
,x
2
] f[x
1
,x
2
,x
3
]

x
2
f[x
2
] f[x
2
,x
3
] f[x
2
,x
3
,x
4
]

... ... ... ... ...
x
n-2
f[x
n-2
] f[x
n-2
,x
n-1
] f[x
n-2
,x
n-1
,x
n
]

x
n-1
f[x
n-1
] f[x
n-1
,x
n
]



x
n
f[x
n
]



6.6.2 Propriedade do Operador Diferenas Divididas
Pode-se provar que as diferenas divididas satisfazem a propriedade de ser simtrico nos
argumentos.

Exemplo:
f[x
0
,x
1
] =
0 1
0 1
] [ ] [
x x
x f x f

=
1 0
1 0
] [ ] [
x x
x f x f

= f[x
1
,x
0
]

Pode-se provar que cada coeficiente a
n
do polinmio interpolador de Newton corresponde ao
operador de grau n de diferenas divididas:

f[x
0
] = a
0

f[x
0
,x
1
] = a
1

f[x
0
,x
1
,x
2
] = a
2

M
f[x
0
,x
1
,x
2
,...,x
n
] = a
n


P
n
(x) = a
0
+ a
1
.(x x
0
) + a
2
.(x x
0
).(x x
1
) + ... + a
n
.(x x
0
).(x x
1
).(x x
2
) ... (x x
n-1
)

P
n
(x) = f[x
0
] + f[x
0
,x
1
] . (x x
0
) + f[x
0
,x
1
,x
2
] . (x x
0
) . (x x
1
) + ...
+ f[x
0
,x
1
,x
2
, ... x
n
] . (x x
0
) . (x x
1
) . (x x
2
) ... (x x
n-1
)
6.6.3 Exemplos
Exemplo 1: Obter f(0.5) usando um polinmio interpolador de Newton do segundo grau (3 pontos).
Considere a seguinte tabela:

x
i 1 0 1 2 3
F(x
i
) 2 1 2 5 10

a) Clculo dos coeficientes de P
n
(x):

X Ordem 0 Ordem 1 Ordem 2 Ordem 3 Ordem 4
x
0
1 2 1 1 0 0
x
1
0 1 1 1 0
x
2
1 2 3 1
x
3
2 5 5
x
4
3 10


77

onde:

f[x
0
] = f(x
0
) = 2
f[x
1
] = f(x
1
) = 1
f[x
2
] = f(x
2
) = 2
f[x
3
] = f(x
3
) = 5
f[x
4
] = f(x
4
) = 10

f[x
0
,x
1
] =
0 1
0 1
] [ ] [
x x
x f x f

=
) (
) ( ) (
0 1
0 1
x x
x f x f

=
1 2
0 1

+
= 1
f[x
1
,x
2
] =
f
x
f
x
x x
[ ] [ ]
2 1
2 1

=
2 1
1 0

= 1
f[x
2
,x
3
] =
x x
x
f
x
f
2 3
2 3
] [ ] [

=
1 2
2 5

= 3
f[x
3
,x
4
] =
x x
x
f
x
f
3 4
3 4
] [ ] [

=
2 3
5 10

= 5

f[x
0
,x
1
,x
2
] =
0 2
1 0 2 1
] , [ ] , [
x x
x x f x x f

=
1 1
1 1
+
+
= 1
f[x
1
,x
2
,x
3
] =
f
x x
f
x x
x x
[ , ] [ , ]
2 3 1 2
3 1

=
3 1
2 0

= 1
f[x
2
,x
3
,x
4
] =
x x
x x
f
x x
f
2 4
3 2 4 3
] , [ ] , [

=
1 3
3 5

= 1

f[x
0
,x
1
,x
2,
x
3
] =
f
x x x
f
x x x
x x
[ , , ] [ , , ]
1 2 3 0 1 2
3 0

=
1 1
2 1

+
= 0
f[x
1
,x
2
,x
3,
x
4
] =
f
x x x
f
x x x
x x
[ , , ] [ , , ]
2 3 4 1 2 3
4 1

=
1 1
3 0

= 0

f[x
0
,x
1
,x
2,
x
3
,x
4
] =
f
x x x x
f
x x x x
x x
[ , , , ] [ , , , ]
1 2 3 4 0 1 2 3
4 0

=
0 0
3 1

+
= 0

b) Polinmio interpolador:

P
2
(x) = 2 1(x + 1) + 1(x + 1)(x 0)
P
2
(x) = 2 (x + 1) + x (x + 1)
P
2
(x) = 2 x 1 + x
2
+ x
P
2
(x) = x
2
+ 1

c) Resposta:

P
2
(0.5) = (0.5)
2
+ 1 = 1.25

Exemplo 2: Obter f(40) usando um polinmio interpolador de Newton de grau 3 (4 pontos). Considere a
seguinte tabela:

x
i
30 35 45 50 55
F(x
i
) 0.5 0.574 0.707 0.766 0.819



78
a) Clculo dos coeficientes de P
n
(x):

Pegar os pontos mais prximos do ponto que desejamos:

X Ordem 0 Ordem 1 Ordem 2 Ordem 3
x
0
30 0.5 0.0148 0.0001 0
x
1
35 0.574 0.0133 0.0001
x
2
45 0.707 0.0118
x
3
50 0.766

Como o polinmio obtido no ter grau 3, devemos escolher um novo conjunto de pontos:

X Ordem 0 Ordem 1 Ordem 2 Ordem 3
x
0
30 0.5 0.0148 0.0001 0.0000002
x
1
35 0.574 0.0133 0.000105
x
2
45 0.707 0.0112
x
3
55 0.819

b) Polinmio interpolador:

P
3
(x) = 0.5 + 0.0148(x 30) 0.0001(x 30)(x 35) 0.0000002(x 30)(x 35)(x 45)

c) Resposta:
P
3
(40) = 0.5 + 0.0148(10) 0.0001(10)(5) 0.0000002(10)(5)(5)
P
3
(40) = 0.64305

Exerccio 1: Obter f(0.47) usando um polinmio interpolador de Newton do segundo grau (3 pontos).
Considere a seguinte tabela:

x
i
0.2 0.34 0.4 0.52 0.6 0.72
F(x
i
) 0.16 0.22 0.27 0.29 0.32 0.37

Polinmio interpolador: P
2
(x) = 0.27 + 0.16667(x 0.4) + 1.041665(x 0.4)(x 0.52)
P
2
(0.47) = 0.27802

Exerccio 2: Obter f(0.5) usando um polinmio interpolador de Newton do quarto grau (5 pontos).
Considere a seguinte tabela:

x
i 1 0 1 2 3
F(x
i
) 1 1 0 1 2

Polinmio interpolador:
P
4
(x) = 1 + 0.(x + 1) +


2
1
(x + 1)(x) +

6
1
(x + 1)(x)(x 1) +


24
1
(x + 1)(x)(x 1)(x 2)
P
4
(0.5) = 1 0.375 0.0625 0.02344 = 0.53906
6.7 Interpolao de Gregory-Newton
Muitas vezes so encontrados problemas de interpolao cuja tabela de pontos conhecidos tem
valores que so igualmente espaados, ou seja:

x
1
x
0
= x
2
x
1
= x
3
x
2
= ... = x
n
x
n-1
= h



79
Assim x
i+1
x
i
= h , para todo i, sendo h uma constante.

x
i
= x
i-1
+ h x
i
= x
0
+ i * h
6.7.1 Diferenas Ordinrias ou Finitas

0
f(x) = f(x)

1
f(x) = f(x + h) f(x)

2
f(x) =
1
f(x + h)
1
f(x)
...

n
f(x) =
n-1
f(x + h)
n-1
f(x)

x
i
Ordem 0 Ordem 1 Ordem 2 ... Ordem n
x
0
f(x
0
)
1
f(x
0
)
2
f(x
0
)
n
f(x
0
)
x
1
f(x
1
)
1
f(x
1
)
2
f(x
1
)

x
2
f(x
2
)
1
f(x
2
)
2
f(x
2
)

... ... ... ... ...
x
n-2
f(x
n-2
)
1
f(x
n-2
)
2
f(x
n-2
)

x
n-1
f(x
n-1
)
1
f(x
n-1
)


x
n
f(x
n
)



6.7.2 Relao entre diferenas divididas e diferenas ordinrias
Teorema: Se x
j
= x
0
+ j.h, para j = 0, 1, 2, ..., n, ento f[x
0
,x
1
,x
2
,...,x
n
] =
n
n
h n
x f
!
) (
0

.
Prova:

f[x
0
] = f(x
0
)
f[x
0
,x
1
] =
0 1
0 1
] [ ] [
x x
x f x f

=
) (
) ( ) (
0 1
0 1
x x
x f x f

=
h
x f h x f ) ( ) (
0 0
+
=
h
x f ) (
0



f[x
0
,x
1
,x
2
] =
0 2
1 0 2 1
] , [ ] , [
x x
x x f x x f

=
h
h
x f
h
x f
2
) ( ) (
0 1

=
2
0
2
2
) (
h
x f

M
e por induo podemos mostrar que esta regra valida para valores maiores que 2.
6.7.3 Gregory-Newton usando Diferenas Ordinrias
Partindo da formula original do mtodo de Newton, que

P
n
(x) = f[x
0
] + f[x
0
,x
1
].(x x
0
) + f[x
0
,x
1
,x
2
].(x x
0
).(x x
1
) + ...+ f[x
0
,x
1
,x
2
,...,x
n
].(x x
0
).(x x
1
).(x
x
2
)...(x x
n-1
)

podemos derivar a nova formula que utiliza as diferenas ordinrias:

P
n
(x) = f(x
0
) +
h
x f ) (
0

.(x x
0
) +
2
0
2
2
) (
h
x f
.(x x
0
).(x x
1
) + ... +
n
n
h n
x f
!
) (
0

.(x x
0
).(x x
1
).(x
x
2
)...(x x
n-1
)
6.7.4 Exemplos
Exemplo 1: Obter f(0.5) usando um polinmio interpolador de Gregory-Newton (G-N) do segundo grau
(3 pontos). Considere a seguinte tabela:


80

x
i 1 0 1 2 3
f(x
i
) 2 1 2 5 10

a) Tamanho do intervalo:
h = 1

b) Clculo dos coeficientes de P
n
(x):

X Ordem 0 Ordem 1 Ordem 2 Ordem 3 Ordem 4
x
0
1 2 1 2 0 0
x
1
0 1 1 2 0
x
2
1 2 3 2
x
3
2 5 5
x
4
3 10

c) Polinmio interpolador:
P
2
(x) = 2 +


1
1
(x + 1) +

2
1 2
2
(x + 1)(x)
P
2
(x) = 2 (x + 1) + x (x + 1)
P
2
(x) = 2 x 1 + x
2
+ x
P
2
(x) = x
2
+ 1

d) Resposta:
P
2
(0.5) = (0.5)
2
+ 1 = 1.25

Exerccio 1: Obter f(0.04) usando um polinmio interpolador de Gregory-Newton do segundo grau (3
pontos). Considere a seguinte tabela:

x
i
0.01 0.03 0.05 0.07
F(x
i
) 1.01 1.09 1.25 1.49

Polinmio interpolador: P
2
(x) = 100x
2
+ 1
P
2
(0.04) = 1.16

Exerccio 2: Obter f(3.7) usando um polinmio interpolador de Gregory-Newton do terceiro grau (4
pontos), onde f(x) = ln(x). Considere a seguinte tabela:

x
i
1 2 3 4
F(x
i
) 0 0.6931 1.0986 1.3863

Polinmio interpolador: P
3
(x) = 0.6931.(x 1) 0.1438.(x 1)(x 2) + 0.0283.(x 1)(x 2)(x 3)
P
3
(3.7) = 1.30225590

6.8 Interpolao Splines: Linear, Quadrtica, Cbica

Uma funo spline intervalar um polinmio constitudo sobre certas condies de continuidade.




81
6.8.1 Spline Linear

Para um conjunto de dados chamados ns :
) , , 2 , 1 , , ( n i y x
i i
L =
, a spline linear definida por

[ ] 1 , , 2 , 1 , , , ) (
1
= + =
+
n i x x x for b x a x s
i i i i i
L

(1.1)

A condio C
0
,
i i i
y x s = ) (
e
1 1
) (
+ +
=
i i i
y x s
produz
) 2 ( 2 n
equaes para os pontos interior ao domnio
de x. Acrescentada a estas condies duas condies nos pontos extremos do domnio de x so
estabelecidas produzindo um total de
2 2 n
equaes concordar com
2 2 n
incgnitas:
1 , , 2 , 1 , , = n i b a
i i
L
. Aplicando essas condies obtm-se:

[ ]
1
1
1
1
1
1
1
, ), ( ) (
+
+
+
+
+
+
+

+ =

=
i i i
i i
i i
i
i i
i
i
i i
i
i i
x x x x x
x x
y y
y
x x
x x
y
x x
x x
y x s
(1.2)


Est equao resulta em linhas retas juntando pontos vizinhos.
Observa-se que,
) (x s
i
o polinmio de interpolao de Lagrange para o conjunto de dados:
) , (
i i
y x
e
) , (
1 1 + + i i
y x
. A eq(1.2) a soluo intervalar aproximada linearmente em uma dimenso.


Exemplo 1.1. Calcular a spline linear do conjunto de dados abaixo:

i 1 2 3 4 5
x 0 5 7 8 10
y 0 2 -1 -2 20

Spline Linear

] 5 , 0 [ , 5 . 2
0 5
0
2
5 0
5
0 ) (
1
=

= x x
x x
x s


] 7 , 5 [ , 5 . 9 5 . 1
5 7
5
1
7 5
7
2 ) (
2
+ =

= x x
x x
x s


] 8 , 7 [ , 6
7 8
7
2
8 7
8
1 ) (
3
+ =

= x x
x x
x s


] 10 , 8 [ , 90 11
8 10
8
20
10 8
10
2 ) (
4
=

= x x
x x
x s




82
0 1 2 3 4 5 6 7 8 9 10
-5
0
5
10
15
20
x
y
Linear Spline Interpolation
interp1: MATLAB function.
Type "help interp1" in MATLAB
window for its usage and options.
data points
linear spline
interp1: linear

Figura 1.1 Spline Linear.

Pseudocdigo: Matlab

(1) Input dados x(i) ,y(i), i = 1,n; Plot usando smbolos usando plot;
(2) For i = 1, n-1, do
A = linspace(x(i),x(i+1),nint) % Divide cada intervalo em nint pontos
Call c1=linear_spline % Call a funo linear_spline.m
Call c2=interp1 % Call a funo do MATLAB (opo default: linear)
Plot c1
Plot c2
Enddo



A funo linear_spline.m contruda de acordo com o seguinte algoritmo:

(1) Input x, onde se deseja determinar o valor de y;
Avalie se x est fora do intervalo; se sim pare o programa; se no, prossegue;
(2) Calcule o intervalo onde o valor de x reside;
(3) Calcule y de acordo com a eq(1.2).

function f = linear_spline(x,y,xx)

n=length(x); % No.de dados em ordem crescente
if (xx<x(1)) | (xx>x(n));
error('x esta fora do intervalo!'); % erro
end;
% procura do intervalo onde xx reside
for i = 1:n-1;
if (xx>=x(i)) & (xx<=x(i+1));
m=i;
break;


83
end;
end;

% Calcule y(XX) eq(1.2).
f = y(m)*(xx-x(m+1))/(x(m)-x(m+1)) ...
+y(m+1)*(xx-x(m))/(x(m+1)-x(m));

Examplo 1.2 Calcule as splines intervalar lineares para os dados:

i 1 2 3 4 5 6
x 0 1 2 3 4 5
y 1 1 1 -1 -1 -1

Avalie o resultado segundo o grfico na Figura 1.2.

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
x
y
Linear Spline Interpolation
data points
linear spline
interp1: linear

Figure 1.2 Spline Linear.

claramente notado em ambos os exemplos as splines so linhas retas. Estes conjuntos de dados
sero usados em todo este material com o objetivo de comparar os diferentes tipos de splines.


84

6.8.2 Spline Quadrtica

Uma spline quadrtica para cada intervalo definida como:

[ ] 1 , , 2 , 1 , , , ) (
1
2
= + + =
+
n i x x x for c x b x a x s
i i i i i i
L
(2.1)

A qual posta certas condies para satisfazer as condies de se C
0
e C
1
.
Para a condio de ser C
0
se obtm:
1 ,... 2 , 1 , ) ( , ) (
1 1
= = =
+ +
n i y x s y x s
i i i i i i
(2.2)

Para a condio de ser C
1
se obtm:
2 , , 2 , 1 ), ( ) (
1 1 1
= =
+ + +
n i x s x s
i i i i
L
(2.3)

Dos trs requerimentos acima, existem 3n-4 condies. Porm as splines quadrticas requer um total de
3n-3 condies, de forma que h necessidade de uma condio a ser adicionada. Usualmente usa-se,
s
1
(x
1
) = 0 como condio. Com isso se obtm a ento chamada spline natural quadrtica. Certamente
outras condies podem ser usadas, tal como s
1
(x
1
) = s
n-1
(x
n
).
Para determinar a equao da spline, primeiro denote d
i
= s
i
(x
i
), ento desde que s(x) uma spline
linear para o conjunto de dados (x
i
, d
i
, i = 1,2, , n), obtm-se

i i
i i i i i i
i i
i
i
i i
i
i i
x x
x d x d x d d
x x
x x
d
x x
x x
d x s

+
=

=
+
+ + +
+
+
+
+
1
1 1 1
1
1
1
1
) (
) (

i i
i i
i i
d x x
x x
d d
+

=
+
+
) (
1
1

aqual uma equao linear para a inclinao (slope).
Integrando em x, obtm-se

i i i i
i i
i i
i
y x x d x x
x x
d d
x s + +

=
+
+
) ( ) (
) ( 2
) (
2
1
1
(2.4)

Nesta soluo a constante de integrao calculada utilizando a condio de contorno C
0
:
i i i
y x s = ) (
.
Uma spline quadrtica definida uma vez que os
i
d
s sejam conhecidos.

Fazendo x = x
i+1
, obtm-se
i i i i i i
i i
i i
i
y x x d x x
x x
d d
y + +

=
+ +
+
+
+
) ( ) (
) ( 2
1
2
1
1
1
1

O qual conduz a:
1 , , 2 , 1 , 2
1
1
1
=

=
+
+
+
n i d
x x
y y
d
i
i i
i i
i
L
(2.5)

A eq(2.5) descreve um esquema recursivo. Se d
1
conhecido, ento d
i+1
pode ser calculado pela eq(2.5).
Varias condies podem ser aplicadas para obter d
1
:
Para a ento chamada Spline Natural,
0
1
= d
.
Se d
1
= d
2
, ento d
1
pode ser calculado por
1 2
1 2
1 1
1 2
1 2
2 1
2
x x
y y
d d
x x
y y
d d

= =
(2.6)


85
Se d
1
= d
n
, ento d
1
pode ser calculado por

|
|

\
|

=

|
|

\
|

= =

= +
+ +

= +
+ +
impar n solucao sem
par n
x x
y y
d
d
x x
y y
d d
n
i i i
i i i n
n
n
i i i
i i i n
n
,
, ) 1 (
) 1 ( ) 1 ( 2
1
2 1
1 1
1
1
1
2 1
1 1
1
(2.7)
Esta condio no pode ser aplicada quando n um nmero impar.

Pseudocdigo do algoritmo em Matlab quadratic_spline.m como segue:

(1) Input os pontos x(i) ,y(i), i = 1,n; Plot estes pares usando smbolos com a funo plot;
(2) For i = 1, n-1, do
A = linspace(x(i),x(i+1),nint) % Divide cada intervalo e nint pontos
Call c1=quadratic_spline with d
1
= 0; % Spline Natural Quadrtica
Call c2=quadratic_spline with d
1
= d
2
;
Plot c1
Plot c2
Enddo

A funo quadratic_spline.m construda de acordo com o seguinte algoritmo:

(1) Input x onde se deseja calcular o valor interpolado y;
Avaliar se x est fora do intervalo; se sim, pare o programa; se no, prossegue;
(2) Calcule o intervalo onde x pertence;
(3) Calcule d
1
; Calcule d
i
(Equao (2.5));
(4) Calcule y de acordo com a equao (2.4).

function f = quadratic_spline(x,y,xx,ioption)

n=length(x); % No. de dados em ordem crescente
if (xx<x(1)) | (xx>x(n));
error('x esta fora do intervalo!'); % Erro
end;
% declara o tamanho da matriz para d=ds/dx
d=1:1:n;

% Calcule d(1)
if ioption==1;
d(1)=0.0; % Spline Quadratica Natural
else;
d(1)=(y(2)-y(1))/(x(2)-x(1)); % para d(1)=d(2), eq(2.6)
end;
% Usa algoritmo recursivo eq(2.5) para calcular todosl d(i)
for i = 2:n;
d(i)=2.0*(y(i)-y(i-1))/(x(i)-x(i-1))-d(i-1);
end;
% Calcular qual o intervalo que reside xx
for i = 1:n-1;
if (xx>=x(i)) & (xx<=x(i+1));
m=i;
break;
end;
end;
% Calcule y(xx) para spline quadratica eq(2.4).
f = (xx-x(m))*( 0.5*(d(m+1)-d(m))*(xx-x(m))/(x(m+1)-x(m)) ...
+d(m) ) + y(m);




86
Examplo 2.1. Dado os mesmo dados do examplo 1.1, calcule a spline quadrtica.

Usando a spline natural quadrtica, onde d
1
= 0, ento se obtm

8 . 3 8 . 0
5 7
2 1
2 , 8 . 0 0
0 5
0 2
2
3 2
=


= =

= d d


2 . 20 8 . 1
8 10
2 20
2 , 8 . 1 8 . 3
7 8
1 2
2
5 4
=

+
= = +

+
= d d


] 5 , 0 [ , 08 . 0 0 ) 0 ( 0 ) 0 (
) 0 5 ( 2
0 8 . 0
) (
2 2
1
= + +

= x x x x x s


] 7 , 5 [ , 5 . 289 3 . 12 15 . 1 2 ) 5 ( 8 . 0 ) 5 (
) 5 7 ( 2
8 . 0 8 . 3
) (
2 2
2
+ = + +


= x x x x x x s


] 8 , 7 [ , 8 . 162 4 . 9 8 . 2 1 ) 7 ( 8 . 3 ) 7 (
) 7 8 ( 2
8 . 3 8 . 1
) (
2 2
3
+ =

+
= x x x x x x s


] 10 , 8 [ , 6 . 273 8 . 71 6 . 4 2 ) 8 ( 8 . 1 ) 8 (
) 8 10 ( 2
8 . 1 2 . 20
) (
2 2
4
+ = +

= x x x x x x s


Os resultados das splines devido condio d
1
= d
2
, so plotados na figura 2.1. Prximo x = 0, a spline
natural tem uma curva achatada devido derivada zero em x = 0. A outra spline tem uma inclinao
linear no primeiro intervalo. Para todos os intervalos de dados, estas duas splines so diferentes, embora
as diferenas sejam pequenas.
0 1 2 3 4 5 6 7 8 9 10
-5
0
5
10
15
20
x
y
Quadratic Spline Interpolation
data points
natural quadratic spline
quadratic spline with d
1
=d
2

Figure 4.2.1. Spline Quadrtica.




87


Exemplo 2.2. Utlizando os dados do exemplo 1.2, obter as splines quadrticas.

A nica mudana necessria no script quadratic_spline1.m trocar o conjunto de dados x e y pelos da
tabela do exemplo 1.2. As splines so plotadas na figura 2.2. Note que as splines natural e as splines
devido a condio d
1
= d
2
so exatamente as mesmas. Isso causado pelo fato que ambas as opes
produzem o mesmo resultado: d
1
= 0.

Tambm, as splines no 4

e 5

intervalos tm grandes oscilaes. Seria desejvel uma transio suave no 3


intervalo e as splines apresentam esta transio. Contudo devido a depresso no intervalo 4, existem
oscilaes no 4

e 5

intervalos. Geralmente, quando a ordem do polinmio spline maior este problema


torna-se mais severo.
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
-2
-1.5
-1
-0.5
0
0.5
1
1.5
x
y
Quadratic Spline Interpolation
data points
natural quadratic spline
quadratic spline with d
1
=d
2

Figura 2.2. Sline Quadrtica.


6.8.3 Spline Cbica Natural

Geralmente, uma funo s chamada de spline do grau k sobre
n
x x x < < < L
2 1
se

(1)
[ ]; ,
1 n
x x s

(2)
1 , , 2 , 1 , 0 ,
) (
= k j s
j
L
so todas funes contnuos no
[ ]
n
x x ,
1
onde s
(j)
a j-sima derivada;
(3)
s
um polinmio de grau
k
em cada intervalo
[ ]
1
,
+ i i
x x
.

Se
3 = k
, a spline chamada de spline cbica. As curvaturas dadas pelas derivadas segundas podem ser
aproximadas por funes lineares em um intervalo e denotando os valores nos pontos
i
x
como
n i x s e
i i i
, , 2 , 1 ), ( L = =
, elas podem ser aproximadas pelo polinmio interpolador de Lagrange no


88
) ( ) (
1 i i i i
x s x s

=
conjunto de dados
) , , 2 , 1 , , ( n i e x
i i
L =
. Contudo
1 , , 2 , 1 , ) (
1
1
1
1
=

=
+
+
+
+
n i
x x
x x
e
x x
x x
e x s
i i
i
i
i i
i
i i
L
(3.1)

Integrando em x duas vezes, obtm-se

) ( ) ( ) (
6
) (
6
) (
1
3
1
3 1
x x d x x c x x
h
e
x x
h
e
x s
i i i
i
i
i
i
i
i
+ + + =
+ +
+
(3.2)

Onde h
i
= x
i+1
- x
i
e c e d so constantes de integrao.

Aplicando a condio C
0
, obtm-se:

6
;
6
1 1 i i
i
i i i
i
i
h e
h
y
d
h e
h
y
c = =
+ +
(3.3)

A qual conduz a


) )(
6
( ) )(
6
( ) (
6
) (
6
) (
1
1 1 3
1
3 1
x x
h e
h
y
x x
h e
h
y
x x
h
e
x x
h
e
x s
i
i i
i
i
i
i i
i
i
i
i
i
i
i
i
i
+ + + =
+
+ +
+
+
(3.4)

Logo a spline cbica definida desde que se determina os e
i
s.
Os valores de e
i
podem ser determinados da condio C
1
de continuidade. Diferenciando a equao
anterior, obtm-se

)
6
( )
6
( ) (
2
) (
2
) (
1 1 2
1
2 1 i i
i
i i i
i
i
i
i
i
i
i
i
i
h e
h
y h e
h
y
x x
h
e
x x
h
e
x s + =
+ +
+
+

e

i
i i i i i i
i
i i i
i
i
i
i
i
i i
b
h e h e h e
h
y h e
h
y
h
h
e
x s + = + =
+ + +
3 6
)
6
( )
6
(
2
) (
1 1 1
2



onde
1 , , 2 , 1 ,
1
=

=
+
n i
h
y y
b
i
i i
i
L
(3.5)

Tambm
1
1 1 1 1 1
1
1 1
1
2
1
1
1
3 6
)
6
( )
6
(
2
) (

+ + = + =
i
i i i i i i
i
i i i
i
i
i
i
i
i i
b
h e h e h e
h
y h e
h
y
h
h
e
x s


Fixando para todos os pontos no interior do intervalo, obtm-se

1 , , 3 , 2 ), ( 6 ) ( 2
1 1 1 1 1
= = + + +
+
n i b b e h e h h e h
i i i i i i i i i
L
(3.6)

Um sistema linear tridiagonal de equaes em termos das incgnitas
i
e
s. Existem
n
incgnitas e
2 n

equaes. Duas condies adicionais so necessrias para determinar as splines cbicas. Quando elas so


89
0
1
= =
n
e e
, as splines resultantes so chamadas de spline cbica natural. Essas equaes podem ser
rearranjadas como:

0
1 , , 3 , 2
0
1 1 1
1
=
= = + +
=
+
n
i i i i i i i
e
n i v e h e u e h
e
L
(3.7)
onde

1 , , 3 , 2
) ( 6
) ( 2
1
1
=
=
+ =

n i
b b v
h h u
i i i
i i i
L
(3.8)

O algoritmo do cdigo cubic_splin.m muito similar ao linear_spline.m, ento o algoritmo
para a funo cubic_splin1.,m ser representado aqui.

(1) Input x onde se deseja calcular a interpolao y desejado; % s = y aqui.
(2) Avaliar se x esta for a do intervalo; se sim, pareo programa; se no, prossegue;
(3) Calcule h
i
e b
i
(eq(3.5));
(4) Calcule u
i
e v
i
(eq(3.8));
(5) Fixe e
1
= 0, ento calcule e
i
(eq(3.7))
(6) Calcule em que intervalo reside x;
(7) Calcule y com a eq(3.4).


Example 3.1. Dado os pontos do exemplo 1.1, obter a spline natural cbica.

Para calcular a 2

derivadas, primeiro determine



h
1
= 5, h
2
= 2, h
3
= 1, h
4
= 2

b
1
= 0.4, b
2
= -1.5, b
3
= -1, b
4
= 11

Usando os dados acima se pode calcular os u
i
s e v
i
s como

u
2
= 14, u
3
= 6.0, u
4
= 6.0

v
2
= -11.4, v
3
=3.0, v
4
= 72.0

Ento da eq(3.7), obtm-se

0 . 72
0 . 3
4 . 11
6 1 0
1 6 2
0 2 14
4
3
2
e
e
e


Os valores de e
2
, e
3
, e e
4
pode ser obtido usando o algoritmo de Thomas. Estes valores juntamente com
e
1
= e
5
= 0 fornecem:

e
2
=-0.67211538461538, e
3
=-0.99519230769231, e
4
=12.33173076923077

As splines cbicas natural so plotadas na figure 3.1. As funes Matlab spline e interp1 com as
opes corretas so usadas para produzir as mesmas splines. Duas outras condies so adicionadas
nestas funes Matlab como segue


90

) ( ) ( , ) ( ) (
1
) 3 (
1 1
) 3 (
2 2
) 3 (
2 2
) 3 (
1
= =
n n n n
x s x s and x s x s


0 1 2 3 4 5 6 7 8 9 10
-5
0
5
10
15
20
x
y
Cubic Spline Interpolation
data points
natural cubic spline
interp1:spline
spline

Figura 3.1. Spline Cbica.

INTERPOLACAO por SPLINE CUBICA
xi -> Valores de x
ci -> Coeficientes Linear
bi -> Coeficientes Linear
ai -> Coeficientes Cubic
fpa -> Primeira Derivada em a
0.0000
fpb -> Primeira Derivada em b
0.0000

--------------------------------------------------------------------
x(i) x(i+1) a(i+1) ai bi ci
--------------------------------------------------------------------
0.00 5.00 -0.0224 0.0000 0.0000 0.9601
5.00 7.00 -0.0829 -0.0560 1.2240 -0.1683
7.00 8.00 2.0553 -0.1659 -0.8341 -4.0553
8.00 10.00 0.0000 1.0276 -5.1106 10.0000

Exemplo 3.2. Dados os pontos do exemplo 1.2, obter as splines cbicas.

As splines so plotadas na figura 3.2. Todas as splines apresentam resultados melhores que
quelas gerados pela spline quadrticas. As oscilaes so menores. As splines naturais aqui apresentam
melhores resultados que os gerados por spline e interp1: spline no 1

e 5

intervalos.


91
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
-1.5
-1
-0.5
0
0.5
1
1.5
x
y
Cubic Spline Interpolation
data points
natural cubic spline
interp1:spline
spline

Figura 3.2. Spline Cbica.

function f = cubic_spline(x,y,xx)
%--------------------------------------------------------------------------
%echo off; clear; clc; format long;
%--------------------------------------------------------------------------
%
n=length(x); % No. dados em ordem crescente.
if (xx<x(1)) | (xx>x(n));
error('for a do intervalo de x!'); % Erro
end;
%
% Inicialize h, b, u, v.
h=1:1:n-1;
b=1:1:n-1;
u=1:1:n-1;
v=1:1:n-1;
%
for i=1:n-1;
h(i)=x(i+1)-x(i); % Calcule h(i)
b(i)=(y(i+1)-y(i))/h(i); % Calcule b(i) usando eq(3.5)
end;
%
% Calcule u(i), v(i) usando eq(3.8)
u(2)=2.0*(h(1)+h(2));
v(2)=6.0*(b(2)-b(1));
for i=3:n-1;
u(i)=2.0*(h(i)+h(i-1));
v(i)=6.0*(b(i)-b(i-1));
end;
%
% Condicoes para Spline Cubica Natural
e(1)=0.0;
e(n)=0.0;
% Calcule e(i) usando eq(3.7)
sub(1:n-2) = h(1:n-2); % diagonal inferior
dia(1:n-2) = u(2:n-1); % diagonal principal
super(1:n-2) = h(2:n-1); % diagonal superior
rhs(1:n-2) = v(2:n-1); % lado direito


92
%--------------------------------------------------------
[xs]=triDiag(n-2,sub,super,dia,rhs);
e(2:n-1)=xs;
%--------------------------------------------------------
% Calcular intervalo onde xx reside
for i = 1:n-1;
if (xx>=x(i)) & (xx<=x(i+1));
m=i;
break;
end;
end;
%
hm=x(m+1)-x(m);
xt1=xx-x(m);
xt2=x(m+1)-xx;

% Calcule y(XX) cubic spline usando eq(3.4).
f = (e(m+1)*xt1^3+e(m)*xt2^3)/(6.0*hm) ...
+xt1*( y(m+1)/hm-hm*e(m+1)/6.0 ) ...
+xt2*( y(m)/hm-hm*e(m)/6.0 );

function [xs]=triDiag(dim,sub,super,diag,rhs)

for i=1:dim-1 %Elimination
m=sub(i)/diag(i);
diag(i+1)=diag(i+1)-m*super(i);
rhs(i+1)=rhs(i+1)-m*rhs(i);
end
x(dim)=rhs(dim)/diag(dim); %Back Substitution
for i=dim-1:-1:1
x(i)=(rhs(i)-super(i)*x(i+1))/diag(i);
end
xs=x;


%************** CUBIC_SPLINE_1 ******************
%
%-------------------------------------------------
clear all; clc; format long;
%-------------------------------------------------
for iexample=1:2;
if iexample==1;
%x=[-2 -1 0 1 2];
%y=[ 4 -1 2 1 8];

x=[0. 5. 7. 8. 10.0]; % data points for Example 3.1
y=[0. 2. -1. -2. 20.];
else;
x=[0. 1. 2. 3. 4. 5.]; % data points for Example 3.2
y=[1. 1. 1. -1. -1. -1.];
end;
figure;
plot(x,y,'ko'); % Plot original data points
hold;

n=length(x)-1;
nint=11; % Use nint points in plotting for each data interval

for i=1:n; % loop for each data interval
a=linspace(x(i),x(i+1),nint); % Divide each data interval into nint points
for i1=1:nint;
c1(i1)=cubic_spline(x,y,a(i1)); % Call cubic_spline function
c3(i1)=interp1(x,y,a(i1),'spline'); % Call MATLAB function interp1.m with
% option 'spline'
c4(i1)=spline(x,y,a(i1)); % Call MATLAB function spline.m
end;


93
plot(a,c1,'k'); % Plot points due to cubic_spline
plot(a,c3,'k:'); % Plot points due to interp1's spline
plot(a,c4,'k+'); % Plot points due to spline function
end;

legend('data points','natural cubic spline', ...
'interp1:spline','spline',0) % Create legend
xlabel('x'), ylabel('y'),title('Cubic Spline Interpolation'); % Title for plot
grid;
end;

6.8.4 Consideraes Gerais sobre Interpolao

Splines de crescente ordem so obtidas aumentando a ordem de continuidade nos pontos atravs
de todos os intervalos, splines quadrtica requer que as primeiras derivadas sejam satisfeitas nos pontos
de extremos dos intervalos, splines cbica requer as derivadas segundas, etc. Splines de ordem maior que
3 so raramente usadas em aplicaes prticas. Porm o aumento da ordem paga o esforo para ger-la?
Observando os grficos estes revelam que para ordem maior que 1 h oscilaes atravs dos
dados. A comparao das splines mostrada nas figuras 4.1 e 4.2. possvel observer que as splines
quadrticas, em geral, oscilam mais que as splines cbicas quando comparadas com as splines lineares.
Ento aumentando a ordem nem sempre aumenta as oscilaes. Ento qual spline escolher?
A Seleo de uma spline apropriada depende da aplicao. Se procura interpolar os dados por si
s, talvez a spline linear a melhor escolha. Se os dados forem de natureza cbica a spline cbica ser a
melhor escolha. Se desejar conhecer derivadas dos dados, uma spline linear gera saltos nos pontos,
portanto algum grau de suavidade seria desejvel. Ento novamente, a escolha dever ser feita em funo
da aplicao. Em projetos, as splines permitem suavizao local atravs dos dados e a spline cbica a
escolha usual.
Como as splines se comparam aos polinmios interpolantes de Hermite que tambm tratam de
derivadas? muito importante entender o seguinte conceito: splines concordam atravs das condies de
derivadas nos pontos extremos dos intervalos, no derivadas dos dados por si s. Em outras palavras,
splines so funes discretas as quais aproximam os dados preenchendo os dados nos intervalos: as
condies de suavidade nos pontos de juno so asseguradas assim como nos pontos gerados no interior
do intervalo. Por outro lado, a interpolao de Hermite requer derivadas de dados, isto , as derivadas so
partes dos dados, i.., posio, velocidade, acelerao. A nica relao entre spline e interpolao de
Hermite que ambos so polinmios.

Figura 4.1
Comparao
de Spline.
0 1 2 3 4 5 6 7 8 9 10
-5
0
5
10
15
20
x
y
Spline Comparison
data points
natural cubic spline
natural quadratic spline
linear spline


94
Figura 4.2
Comparao
Spline.



0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
-2
-1.5
-1
-0.5
0
0.5
1
1.5
x
y
Spline Comparison
data points
natural cubic spline
natural quadratic spline
linear spline


95
7 Ajuste de Curvas
Uma das formas de se trabalhar com uma funo definida por uma tabela de valores a
interpolao polinomial. Contudo, a interpolao no aconselhvel quando:
a) preciso obter um valor aproximado da funo em algum ponto fora do intervalo de
tabelamento, ou seja, quando se quer extrapolar.
b) Os valores tabelados so resultados de algum experimento fsico ou de alguma pesquisa,
porque, nestes casos, estes valores podero conter erros inerentes que, em geral, no so
previsveis.

Surge ento a necessidade de se ajustar a estas funes tabeladas uma funo que seja uma "boa
aproximao" para os valores tabelados e que permita extrapolar com certa margem de segurana.

O problema do ajuste de curvas no caso em que temos uma tabela de pontos (x
1
, f(x
1
)), (x
2
, f(x
2
)),
..., (x
m
, f(x
m
)) com x
1
, x
2
, ..., x
m
, pertencentes a um intervalo [a, b], consiste em: escolhidas n funes
g
1
(x), g
2
(x), ..., g
n
(x), contnuas em [a, b], obter n constantes
1
,
2
, ...,
n
tais que a funo (x) =
1
g
1
(x)
+
2
g
2
(x) + ... +
n
g
n
(x) se aproxime ao mximo de f(x).

Genericamente, no caso linear, estaremos supondo que os dados sero aproximados por uma
funo do tipo:
f(x) (x) =
1
g
1
(x) +
2
g
2
(x) + ... +
n
g
n
(x)

onde as funes g
1
(x), g
2
(x), ..., g
n
(x) so preestabelecidas.

Dizemos que este um modelo matemtico linear porque os coeficientes a determinar,
1
,
2
, ...,

n
, aparecem linearmente, embora as funes g
1
(x), g
2
(x), ..., g
n
(x) possam ser funes no lineares de x,
como por exemplo, g
1
(x) = e
x
, g
2
(x) = (x
2
+ 2), g3(x) = sen(x), etc.

A escolha das funes pode ser feita observando o grfico dos pontos conhecidos ou baseando-se
em fundamentos tericos do experimento que nos forneceu a tabela.

Portanto, dada uma tabela de pontos (x
1
, f(x
1
)), (x
2
, f(x
2
)), ..., (x
m
, f(x
m
)), deve-se, em primeiro
lugar, colcoar estes pontos num grfico cartesiano. O grfico resultante chamado diagrama de
disperso. Atravs deste diagrama pode-se visualizar a curva que melhor se ajusta aos dados.

Exemplo: Seja a tabela:

i 1 2 3 4 5 6 7 8 9
x
i
1.0 0.75 0.5 0.25 0 0.25 0.5 0.75 1.0
f(x
i
) 2.1 1.3 1.1 0.2 0 0.5 0.6 1.5 2.2

O diagrama de disperso ser conforme mostrado abaixo:

0
0.5
1
1.5
2
2.5
-1.5 -1 -0.5 0 0.5 1 1.5



96

Portanto, natural escolher apenas uma funo g
1
(x) = x
2
e procurar ento (x) = x
2
(equao
geral de uma parbola passando pela origem).

Se considerarmos uma experincia onde foram medidos vrios valores de corrente eltrica que
passa por uma resistncia submetida a vrias tenses, colocando os valores correspondentes de corrente e
tenso em um grfico, poderemos ter:

i
V
i
0
i
q
V
0
V
q


neste caso, existe uma fundamentao terica relacionando a corrente com a tenso V = Ri, isto , V
uma funo linear de i.

Assim, g
1
(x) = i e (i) = g
1
(i)

O problema determinar qual parbola com equao x
2
se ajusta melhor ao primeiro grfico e
qual reta, passando pela origem, melhor se ajusta ao segundo grfico.

No caso geral, escolhidas as funes g
1
(x), g
2
(x), ..., g
n
(x) temos de estabelecer o conceito de
proximidade entre as funes (x) e f(x) para obter as constantes
1
,
2
, ...,
n
.

Uma maneira impor que o desvio (f(x
i
) (x
i
)) seja mnimo, para i = 1, 2, ..., m. veremos a
seguir o mtodo conhecido como Mtodo dos Quadrados Mnimos.
7.1 Mtodo dos Quadrados Mnimos
O Mtodo dos Quadrados Mnimos provavelmente a tcnica de aproximao mais usada na
anlise numrica e em problemas prticos. Isto se deve tanto sua simplicidade quanto ao fato de que em
geral, buscamos aproximaes para dados que so medidas obtidas experimentalmente com um certo grau
de incerteza. Veremos que o mtodo dos quadrados mnimos comtempla a possvel existncia de erros
nos dados a serem aproximados. O critrio de aproximao consiste em minimizar os resduos.

Chamaremos de f(x) a funo que ser convenientemente aproximada por outra funo (x). No
caso dos quadrados mnimos lineares, partimos da hiptese de que temos algumas informaes sobre o
comportamento de (x). Poderamos saber, por exemplo, que (x) uma reta, ou seja:

(x) =
1
+
2
x

A questo encontrar qual esta reta, ou seja, quais so os valores de
1
e
2
que ajustam os
pontos conhecidos.

Num outro exemplo, vamos procurar valores para
1
,
2
e
3
que tornam a funo:

(x) =
1
+
2
x +
3
x
2

uma boa aproximao dos dados.


97

Sejam dados os pontos (x
1
, f(x
1
)), (x
2
, f(x
2
)), ..., (x
m
, f(x
m
)) e as n funes g
1
(x), g
2
(x), ..., g
n
(x)
escolhidas de alguma forma. Considerando que o nmero de pontos m, tabelados, sempre maior ou igual
a n o nmero de funes escolhidas ou o nmero de coeficientes
i
a se determinar.

Nosso objetivo encontrar os coeficientes
1
,
2
, ...,
n
tais que a funo (x) =
1
g
1
(x) +
2
g
2
(x)
+ ... +
n
g
n
(x) se aproxime ao mximo de f(x).

Seja d
k
= f(x
k
) (x
k
) o desvio em x
k
. O conceito de proximidade que d
k
seja mnimo para todo k
= 1, 2, ..., m. No mtodo dos quadrados mnimos consiste em escolher os a
j
's de tal forma que a soma dos
quadrados dos desvios seja mnima.
7.1.1 Ajuste Linear Simples
Dada uma tabela com m valores (x
i
, f(x
i
)), i = 1, 2, ..., m, queremos encontrar a reta que melhor
ajusta esta tabela, no sentido dos quadrados mnimos. Como o ajuste ser feito por uma reta, tomaremos
g
1
(x) = 1 e g
2
(x) = x., isto :

f(x) (x) =
1
+
2
x

O resduo para cada par (
1
,
2
) e para cada x ser r(
1
,
2
; x) = f(x)
1

2
x. Assim, pelo
mtodo dos quadrados mnimos devemos procurar
1
e
2
que minimizam a funo:

<r, r> (
1
,
2
) = < f(x)
1

2
x, f(x)
1

2
x> = ( )

=

m
i
i i
x x f
1
2
2 1
) ( .

Do Clculo Diferencial sabe-se que a condio necessria do ponto crtico que as derivadas nele
se anulem, esto :
1

<r, r> =
2

<r, r> = 0

ou ainda, procedidas as respectivas derivaes na expresso <r, r> temos:

( )

=

m
i
i i
x x f
1
2 1
) ( 2 = 0 e ( )

=

m
i
i i i
x x x f
1
2 1
) ( 2 = 0

Aps o desenvolvimento, estas duas equaes formam um sistema linear com as incgnitas
1
e

2
, que podem ser reescrito na forma:


= = =
=
m
i
m
i
i
m
i
i
x x f
1 1
2 1
1
0 ) (


= = =
=
m
i
m
i
i i
m
i
i i
x x x f x
1 1
2
2 1
1
0 ) (

ou

m
1
+
2

=
m
i
i
x
1
=

=
m
i
i
x f
1
) (



98

=
m
i
i
x
1
+
2

=
m
i
i
x
1
2
=

=
m
i
i i
x f x
1
) (

A soluo deste sistema pode ser obtida pelo mtodo da Eliminao de Gauss. Atravs das
substituies retroativas obtm-se:

1
=
m
x x f
m
i
i
m
i
i 2
1 1
) (


= =
e
2
=
2
1 1
2
1 1 1
) ( ) (



= =
= = =
m
i
i
m
i
i
m
i
m
i
i i
m
i
i i
x x m
x f x x f x m


Assim, a soluo do sistema de equaes lineares
1
e
2
dados pelas equaes acima, e com
estes valores os resduos apresentam o seu menor valor.

Como este mtodo consiste em achar o mnimo de uma funo quadrtica, ele conhecido como
mtodo dos mnimos quadrados.

Exemplo 1: Ajustar os dados da tabela abaixo a uma reta de modo que o resduo seja o menor possvel.

i 1 2 3 4 5
x
i
1.3 3.4 5.1 6.8 8.0
f(x
i
) 2.0 5.2 3.8 6.1 5.8

Usando os valores da tabela temos:

a) Clculo dos somatrios:

m = 5

=
m
i
i
x
1
= (1.3) + (3.4) + (5.1) + (6.8) + (8.0) = 24.6

=
m
i
i
x
1
2
= (1.3)
2
+ (3.4)
2
+ (5.1)
2
+ (6.8)
2
+ (8.0)
2
= 149.5

=
m
i
i
x f
1
) ( = (2.0) + (5.2) + (3.8) + (6.1) + (5.8) = 22.9

=
m
i
i i
x f x
1
) ( = (1.3)(2.0) + (3.4)(5.2) + (5.1)(3.8) + (6.8)(6.1) + (8.0)(5.8) = 127.54

b) Resoluo do sistema:

Assim, os valores de
1
e
2
da melhor reta (no sentido dos quadrados mnimos) so obtidos pelo
sistema:

= +
= +
54 . 127 5 . 149 6 . 24
9 . 22 6 . 24 5
2 1
2 1




Resolvendo o sistema, obtem-se
1
= 2.0098 e
2
= 0.5224.


99

Usando as frmulas de
1
e
2
temos:

1
=
m
x x f
m
i
i
m
i
i 2
1 1
) (


= =
=
5
) 5224 . 0 )( 6 . 24 ( 9 . 22
=
5
851 . 12 9 . 22
= 2,0098

2
=
2
1 1
2
1 1 1
) ( ) (



= =
= = =
m
i
i
m
i
i
m
i
m
i
i i
m
i
i i
x x m
x f x x f x m
=
2
) 6 . 24 ( ) 5 . 149 )( 5 (
) 9 . 22 )( 6 . 24 ( ) 54 . 127 )( 5 (

=
16 . 605 5 . 747
34 . 563 637.7

=
34 . 142
36 . 74
= 0.5224

Ento, a melhor reta que passa pelos pontos, usando a equao, :

(x) = 2.0098 + 0.5224x.

c) Clculo do quadrado dos resduos:

Os valores de (x
i
) e os respectivos resduos esto na tabela abaixo:

i 1 2 3 4 5
x
i
1.3 3.4 5.1 6.8 8.0
f(x
i
) 2.0 5.2 3.8 6.1 5.8
(x
i
)
2.68892 3.78596 4.67404 5.56212 6.189
r(x
i
) 0.68892 1.41404 0.87404 0.53788 0.389

Neste exemplo, a soma dos quadrados dos resduos :

=
m
i
i
x r
1
2
) ( = 3.6787

Exerccio 1: Considere o ajuste da tabela abaixo por uma reta:

i 1 2 3 4 5
x
i
0 0.25 0.5 0.75 1.00
f(x
i
) 1.0000 1.2840 1.6487 2.1170 2.7183

Resposta: (x) = 0.89968 + 1,70784x.

=
m
i
i
x r
1
2
) ( = 0.039198
7.1.2 Ajuste Polinomial
O ajuste linear simples um caso especial do ajuste polinomial. A equao geral do ajuste
polinomial dada por:

(x) =
1
+
2
x +
3
x
2
+ ... +
n+1
x
n


e as equaes normais ficam:



100





=
=
=
=
= =
+
=
+
=
=
+
= = =
=
+
= = =
= = =
) (
) (
) (
) (
.
1
1
2
1
1
3
2
1
1
2
1
2
1
1
1
1
2
1
4
1
3
1
2
1
1
1
3
1
2
1
1 1
2
1
i
m
i
n
i
i
m
i
i
i
m
i
i
m
i
i
n
m
i
n
i
m
i
n
i
m
i
n
i
m
i
n
i
m
i
n
i
m
i
i
m
i
i
m
i
i
m
i
n
i
m
i
i
m
i
i
m
i
i
m
i
n
i
m
i
i
m
i
i
x f x
x f x
x f x
x f
x x x x
x x x x
x x x x
x x x m
M
M
L
M M M M M
L
L
L



Exemplo 1: Ajustar os pontos da tabela abaixo equao (x) =
1
+
2
x +
3
x
2
.

I 1 2 3 4 5 6
x
i
2 1.5 0 1 2.2 3.1
f(x
i
) 30.5 20.2 3.3 8.9 16.8 21.4

O vetor a soluo do sistema acima, que, neste caso, torna-se:




=
=
=
= = =
= = =
= =
m
i
i i
m
i
i i
m
i
i
m
i
i
m
i
i
m
i
i
m
i
i
m
i
i
m
i
i
m
i
i
m
i
i
x f x
x f x
x f
x x x
x x x
x x m
1
2
1
1
3
2
1
1
4
1
3
1
2
1
3
1
2
1
1
2
1
) (
) (
) (
.



a) Clculo dos somatrios:

m = 6

=
m
i
i
x
1
= (2) + (1.5) + (0) + (1) + (2.2) + (3.1) = 2.8

=
m
i
i
x
1
2
= (2)
2
+ (1.5)
2
+ (0)
2
+ (1)
2
+ (2.2)
2
+ (3.1)
2
= 21.7

=
m
i
i
x
1
3
= (2)
3
+ (1.5)
3
+ (0)
3
+ (1)
3
+ (2.2)
3
+ (3.1)
3
= 30.064

=
m
i
i
x
1
4
= (2)
4
+ (1.5)
4
+ (0)
4
+ (1)
4
+ (2.2)
4
+ (3.1)
4
= 137.8402

=
m
i
i
x f
1
) ( = (30.5) + (20.2) + (3.3) + (8.9) + (16.8) + (21.4) = 6.9

=
m
i
i i
x f x
1
) ( = (2)(30.5) + (1.5)(20.2) + (0)(3.3) + (1)(8.9) + (2.2)(16.8) + (3.1)(21.4) = 203.5



101

=
m
i
i i
x f x
1
2
) ( = (2)
2
(30.5) + (1.5)
2
(20.2) + (0)
2
(3.3) + (1)
2
(8.9) + (2.2)
2
(16.8) + (3.1)
2
(21.4) =
128.416

b) Resoluo do sistema:

O sistema :

416 . 128
5 . 203
9 . 6
.
8402 . 137 064 . 30 7 . 21
064 . 30 7 . 21 8 . 2
7 . 21 8 . 2 6
3
2
1



A soluo deste sistema :

1
= 2.018

2
= 11.33

3
= 1.222

Portanto, (x) = 2.018 + 11.33x 1.222x
2
.

c) Clculo do quadrado dos resduos:

i 1 2 3 4 5 6
x
i
2 1.5 0 1 2.2 3.1
f(x
i
) 30.5 20.2 3.3 8.9 16.8 21.4
(x
i
)
29.566 21.7625 2.018 8.09 16.99352 21.36158
r(x
i
) 0.934 1.5625 1.282 0.81 0.19352 0.03842

A soma dos quadrados dos resduos :

=
m
i
i
x r
1
2
) ( = 5.652312337

Exemplo 2: Considerando a funo tabelada abaixo

i 1 2 3 4 5 6 7 8 9 10 11
x
i
1.0 0.75 0.6 0.5 0.3 0 0.2 0.4 0.5 0.7 1
f(x
i
) 2.05 1.153 0.45 0.4 0.5 0 0.2 0.6 0.512 1.2 2.05

a partir do diagrama de disperso, deve ser ajustada por uma parbola passando pela origem, ou seja, f(x)
= (x) =
3
x
2
(neste caso temos apenas uma funo g(x) = x
2
).

Temos ento o sistema abaixo:




=
=
=
= = =
= = =
= =
m
i
i i
m
i
i i
m
i
i
m
i
i
m
i
i
m
i
i
m
i
i
m
i
i
m
i
i
m
i
i
m
i
i
x f x
x f x
x f
x x x
x x x
x x m
1
2
1
1
3
1
4
1
3
1
2
1
3
1
2
1
1
2
1
) (
) (
) (
0
0
.




102
ou seja,

=
m
i
i
x
1
2

3
=

=
m
i
i
x f
1
) (

=
m
i
i
x
1
3

3
=

=
m
i
i i
x f x
1
) (

=
m
i
i
x
1
4

3
=

=
m
i
i i
x f x
1
2
) (

Tomando a ltima equao temos:

m = 11

=
m
i
i
x
1
4
= (1) + (0.3164) + (0.1296) + (0.0625) + (0.0081) + (0) + (0.0016) + (0.0256) + (0.0625) +
(0.2401) + (1) = 2.8464

=
m
i
i i
x f x
1
2
) ( = (2.05) + (0.6486) + (0.162) + (0.1) + (0.145) + (0) + (0.008) + (0.096) + (0.128) + (0.588)
+ (2.05) = 5.8756

Assim, a nossa equao 2.8464
3
= 5.8756
3
=
8464 . 2
8756 . 5
= 2.0642

Portanto, (x) = 2.0642x
2
a parbola que melhor se aproxima, no sentido dos quadrados
mnimos, da funo tabelada.

Exerccio 1: Ajustar os pontos da tabela abaixo equao (x) =
1
+
2
x +
3
x
2
.

i 1 2 3 4 5 6 7
x
i
0.75 0.5 0.25 0 0.25 0.5 0.75
f(x
i
) 1.3 1.1 0.2 0 0.5 0.6 1.5

Resposta: (x) = 0.176190476 - 0.024285714x + 2.2666666x
2
.

=
m
i
i
x r
1
2
) ( = 0.25095238095238



103
8 Integrao Numrica
8.1 Introduo
Do ponto de vista analtico existem diversas regras, que podem ser utilizadas na prtica. Contudo,
embora tenhamos resultados bsicos e importantes para as tcnicas de integrao analtica, como o
Teorema Fundamental do Clculo Integral, nem sempre podemos resolver todos os casos. No podemos
sequer dizer que para uma funo simples a primitiva tambm ser simples, pois f(x) = 1/x, que uma
funo algbrica racional, possui uma primitiva que no o ; a sua primitiva a funo ln(x) que
transcendente.

Quando no conseguirmos calcular a integral por mtodos analticos, mecnicos ou grficos, ento
podemos recorrer ao mtodo algortmico. Em algumas situaes, s podemos usar o mtodo numrico.
Por exemplo, se no possuirmos a expresso analtica de f, no podemos, em hiptese nenhuma, usar
outro mtodo que no o numrico. A integrao numrica pode trazer timos resultados quando outros
mtodos falham.

A soluo numrica de uma integral simples comumente chamada de quadratura.

Sabemos do Clculo Diferencial e Integral que se f(x) uma funo contnua em [a, b], ento esta
funo tem uma primitiva neste intervalo, ou seja, existe F(x) tal que f(x) dx = F(x) + C, com F(x) =
f(x); demostra-se que, no intervalo [a, b],
f x dx F b F a
a
b
( ) ( ) ( ) =



tais mtodos, embora variados, no se aplicam a alguns tipos de integrandos f(x), no sendo conhecidas
suas primitivas F(x); para tais casos, e para aqueles em que a obteno da primitiva, embora vivel,
muito trabalhosa, podem-se empregar mtodos para o clculo do valor numrico aproximado de
f x dx
a
b
( )

.

A aplicao de tais mtodos obviamente necessria no caso em que o valor de f(x) conhecido
apenas em alguns pontos, num intervalo [a, b], ou atravs de um grfico.
Lembrando que f x dx
a
b
( )

=
n
i
i
n
lim
f x xi

( )
1
(Riemann), onde xi [x
i-1
, x
i
] partes de [a, b], com
x
0
= a, x
n
= b e x
i
= | x
i
x
i-1
|, para n suficientemente grande e x
i
suficientemente pequeno, f x x i
i
n
i ( )
=

1

representa uma boa aproximao para f x dx
a
b
( )

.
Convm lembrar, tambm, que, sendo f(x) no negativa em [a, b], f x dx
a
b
( )

representa,
numericamente, a rea da figura delimitada por y = 0, x = a, x = b e y = f(x), como mostra a figura abaixo:



104
y
x 0
b a
y=f(x)
A

A = f x dx
a
b
( )



Quando f(x) no for somente positiva, pode-se considerar f(x) em mdulo, para o clculo da rea,
conforme figura abaixo:
y
x
0
b
a
y=f(x)
A
A
c

A = f x f x dx
c
b
a
c
( ) | ( )| +

ou A = | ( )| f x dx
a
b



A idia bsica da integrao numrica a substituio da funo f(x) por um polinmio que a
aproxime razoavelmente no intervalo [a, b]. Assim o problema fica resolvido pela integrao de
polinmios, o que trivial de se fazer. Com este raciocnio podemos deduzir frmulas para aproximar
f x dx
a
b
( )

.

As frmulas que deduziremos tero a expresso abaixo:

f x dx
a
b
( )

A
0
f(x
0
) + A
1
f(x
1
) + ... + A
n
f(x
n
), x
i
[a, b], i = 0, 1, ..., n.
8.1.1 Frmulas de Newton-Cotes
Nas frmulas de Newton-Cotes a idia de polinmio que aproxime f(x) razoavelmente que este
polinmio interpole f(x) em pontos de [a, b] igualmente espaados. Consideremos a partio do intervalo
[a, b] em subintervalos, de comprimento h, [x
i
, x
i+1
], i = 0, 1, ..., n-1. Assim x
i+1
x
i
= h = (b a)/n.

As frmulas fechadas de Newton-Cotes so frmulas de integrao do tipo x
o
= a, x
n
= b e
f x dx
a
b
( )

= f x dx
x
xn
( )
0

A
0
f(x
0
) + A
1
f(x
1
) + ... + A
n
f(x
n
) = A f x i i
i
n
=

0
( ) , sendo os coeficientes A
i

determinados de acordo com o grau do polinmio aproximador.

Analisaremos a seguir algumas das frmulas fechadas de Newton-Cotes como regra dos
retngulos, regra dos trapzios e regra de Simpson.


105

Existem ainda as frmulas abertas de Newton-Cotes, construdas de maneira anloga s fechadas,
com x
o
e x
n
(a, b).
8.2 Regra dos Retngulos
Seja o intervalo finito [a, b] no eixo x que particionado em n subintervalos igualmente espaados
[x
i
, x
i+1
], com x
0
= a e x
n
= b e h
i
= x
i+1
x
i
. Seja f uma funo contnua ou simplesmente Riemann
integrvel, cuja integral no conhecida.
Nosso objetivo calcular f x dx
a
b
( )

pelo mtodo da rea dos retngulos. Tais retngulos podem


ser considerados de diversas maneiras, conforme mostra as figuras abaixo:

R
1
R
2
R
3
R
1
R
2
R
3
R
1
R
3
(a) (b) (c)
R
2


No primeiro caso, figura (a), a rea de cada retngulo f(x
i
) h
i
; no segundo caso f(x
i+1
)h
i
e no
ltimo f((x
i
+ x
i+1
)/2) h
i
. Em qualquer caso a soma das reas dos retngulos ser uma aproximao para
f x dx
a
b
( )

.

Subdividindo o intervalo [a, b] em n subintervalos, pela regra dos retngulos, que ser indicado
por R(h), dada pelas frmulas:
R(h
n
) = i h x f
n
i
i
). (
1
0

=
, ou
R(h
n
) = i h x f
n
i
i
). (
1
0
1

=
+
, ou
R(h
n
) = i h
x x
f
n
i
i i
.
2
1
0
1

=
+

+


conforme for tomado o caso (a) ou (b) ou (c) da figura acima.

Como h
i
constante, temos h
b a
n
=

. Ento :
R(h
n
) = ) (
1
0

=
n
i
i
x f h
ou
R(h
n
) = ) (
1
0
1

=
+
n
i
i
x f h
ou



106
R(h
n
) =

=
+

+
1
0
1
2
n
i
i i
x x
f h

Em geral, quando utilizarmos a regra dos retngulos iremos efetuar os clculos atravs do caso (c),
ou seja, R(h
n
) =

=
1
0
) (
n
i
i
x f h , sendo xi =
2
1 +
+
i i
x x
.
8.2.1 Exemplos
Exemplo 1: Calcular
x
x
dx
1
2
0
1
+

. Considere n = 10 e 4 casas decimais com arredondamento.



a) Nmero de intervalos:
n = 10

b) Tamanho do intervalo
h
b a
n
=

= (1 0) / 10 = 0.1

c) iteraes:
i xi f( xi )
0 (0 + 0.1) = 0.05 0.0499
1 (0.1 + 0.2) = 0.15 0.1467
2 (0.2 + 0.3) = 0.25 0.2353
3 (0.3 + 0.4) = 0.35 0.3118
4 (0.4 + 0.5) = 0.45 0.3742
5 (0.5 + 0.6) = 0.55 0.4223
6 (0.6 + 0.7) = 0.65 0.4569
7 (0.7 + 0.8) = 0.75 0.4800
8 (0.8 + 0.9) = 0.85 0.4935
9 (0.9 + 1) = 0.95 0.4993
3.4699

R(0.1) = h f xi ( )

= (0.1).(3.4699) = 0.34699

d) mtodo analtico:

x
x
dx
1
2
0
1
+

=
1
2
1
1
2
2 1 0 34657
2
0
1
ln( ) (ln( ) ln( )) , +

= =
x
.

Exemplo 2: Quando no for possvel conhecer f(x
i
) pode-se usar f( xi ) = (f(x
i-1
) + f(x
i
))/2, para o clculo
anterior, ter-se-ia:

a) Nmero de intervalos:
n = 10

b) Tamanho do intervalo:
h
b a
n
=

= (1 0) / 10 = 0.1

c) iteraes:



107
i f(x
i
) f( xi )
1 0

0 0.0990 0.0495
1 0.1923 0.1457
2 0.2752 0.2338
3 0.3448 0.3100
4 0.4000 0.3724
5 0.4412 0.4206
6 0.4698 0.4555
7 0.4878 0.4788
8 0.4972 0.4925
9 0.5000 0.4986
3.4574

R(0.1) = h f xi ( )

= (0.1).(3.4574) = 0.34574

Exerccio 1: Calcular
3
1
1
x
dx

, para n = 8.

R(0.25) = h f xi ( )

= (0.25).(0.0000) = 0.0000
mtodo analtico:
3
1
1
x
dx

=
4
4
1
4
1
4
0
1
1
x

= =

.
8.3 Regra dos Trapzios
Seja o intervalo finito [a, b] no eixo x que particionado em n subintervalos igualmente espaados
[x
i
, x
i+1
], com x
0
= a e x
n
= b e h
i
= x
i+1
x
i
. Seja f uma funo contnua ou simplesmente Riemann
integrvel, cuja integral no conhecida.

Numericamente: A regra dos trapzios obtida aproximando-se f por um polinmio interpolador do 1


grau (ao invs de zero, como na regra dos retngulos). Se usarmos a frmula de Lagrange para expressar
o polinmio p
1
(x) que interpola f(x) em x
0
e x
1
temos:

T
b
a
b
a
I dx x f
h
x x
x f
h
x x
dx x p dx x f
x
x
x
x
=

=

=
=
1
0
1
0
) (
) (
) (
) (
) ( ) (
1
0
0
1
1


Assim, I
T
= [ ] ) ( ) (
2
1 0
x f x f
h
+ , que a rea do trapzio de altura h = x
1
x
0
e bases f(x
0
) e f(x
1
).

Geometricamente: Podemos ver, conforme mostra a figura abaixo:

f(xi+1)
f(x)
f(xi)
xi+1 xi
P1(x)

Interpretao geomtrica da regra dos trapzios


108

A rea de cada trapzio (f(x
i
) + f(x
i+1
))/2 h
i
. A soma destas reas ser uma aproximao para
f x dx
a
b
( )

.
8.3.1 Regra do Trapzio Repetida
Dividindo o intervalo [a, b] em n subintervalos, pela regra dos trapzios, o resultado, que ser
indicado por T(h), dada pela frmula:

i
n
i
i i
n
h
x f x f
h T ).
2
) ( ) (
( ) (
1
0
1

=
+
+
=

Como h
i
constante, temos h
b a
n
=

. Ento :

)
2
) ( ) (
( ) (
1
0
1

=
+
+
=
n
i
i i
n
x f x f
h h T
ou
[ ] ) ( ) ( 2 ... ) ( 2 ) ( 2 ) (
2
) (
1 2 1 0 n n n
x f x f x f x f x f
h
h T + + + + + =


8.3.2 Exemplos
Exemplo 1: Calcular

6 , 3
0 , 3
1
dx
x
pela regra dos trapzios e, depois, analiticamente. Considere n = 6 e 4 casas
decimais com arredondamento.

a) Nmero de intervalos:
n = 6

b) Tamanho do intervalo:
h
b a
n
=

= (3.6 3.0) / 6 = 0.1

c) iteraes:

i x
i
f(x
i
) c
i
c
i
. f(x
i
)
0 3.0 0.3333 1 0.3333
1 3.1 0.3226 2 0.6452
2 3.2 0.3125 2 0.6250
3 3.3 0.3030 2 0.6060
4 3.4 0.2941 2 0.5882
5 3.5 0.2857 2 0.5714
6 3.6 0.2778 1 0.2778
3.6469

[ ] ) ( ) ( 2 ... ) ( 2 ) ( 2 ) (
2
) (
6 5 2 1 0 6
x f x f x f x f x f
h
h T + + + + + =
T(0.1) =
2
1 . 0
(3.6469) = 0,182345


109

d) mtodo analtico:

6 , 3
0 , 3
1
dx
x
= ]
6 , 3
0 , 3
) ln(x = ln(3.6) ln(3.0) = 0.18232156
Exerccio 1: Calcular

+
1
0
) 3 2 ( dx x pela regra dos trapzios e, depois, analiticamente. Considere n = 1 e 4
casas decimais com arredondamento.

T(1) =
2
1
(8) = 4
mtodo analtico:

+
1
0
) 3 2 ( dx x = ]
1
0
2
3x x + = 1 + 3 (0 + 0) = 4

Como a regra dos trapzios aproxima por uma reta e a funo integranda f(x) = 2x + 3 (uma
reta), o valor da integral obtido exato.
Exerccio 2: Calcular x x dx ln( )
1
2

pela regra dos trapzios, considerando diversos valores para n e,


depois, analiticamente.

T(1) =
2
1
(1.3863) = 0.6932

T(0.5) =
2
5 . 0
(2.6027) = 0.6507

T(0.25) =
2
25 . 0
(5.1191) = 0,6399

T(0.125) =
2
125 . 0
(10.1951) = 0,6372

mtodo analtico: x x dx ln( )
1
2

=
2 2
1
2
2 2
1
2
2 4
2
4
x
x
x x
x
x
ln( ) ln( )
] ]
=

= = 0.63629436
8.4 Regra de Simpson
A regra de Simpson obtida aproximando-se f por um polinmio interpolador de 2 grau, ou seja,
uma parbola.

Numericamente: Novamente podemos usar a frmula de Lagrange para estabelecer a frmula de
integrao resultante da aproximao de f(x) por um polinmio de grau 2. Seja p
2
(x) o polinmio que
interpola f(x) nos pontos x
0
= a, x
1
= x
0
+ h e x
2
= x
0
+ 2h = b:

p x
x x x x
h h
f x
x x x x
h h
f x
x x x x
h h
f x 2
1 2
0
0 2
1
0 1
2
2 2
( )
( )( )
( )( )
( )
( )( )
( )( )
( )
( )( )
( )( )
( ) =


+

+



Assim,



110
f x dx f x dx p x dx
a
b
x
x
x
x
( ) ( ) ( )

= =
0
2
0
2
2

f x
h
x x x x dx
f x
h
x x x x dx
f x
h
x x x x dx
x
x
x
x
x
x
( )
( )( )
( )
( )( )
( )
( )( )
0
2
1 2
1
2
0 2
2
2
0 1
2 2
0
2
0
2
0
2
+



Resolvendo as integrais obtemos a regra de Simpson:

f x dx
h
f x f x f x Is
x
x
( ) ( ) ( ) ( ) [ ] + + =

3
4 0 1 2
0
2


Geometricamente: Podemos ver, conforme mostra a figura abaixo:
f
x
0
=a
p
2
(x)
x
2
=b x
1
h h

Interpretao geomtrica da regra de Simpson simples
8.4.1 Regra de Simpson Repetida
Aplicando a regra de Simpson repetidas vezes no intervalo [a, b] = [x
0
, x
n
]. Vamos supor que x
0
,
x
1
, ..., x
n
so pontos igualmente espaados, h = x
i+1
x
i
, e n par (isto condio necessria pois cada
parbola utilizar trs pontos consecutivos). Assim teremos:

f x dx
a
b
( )

[ ] ) ( ) ( 4 ... ) ( 2 ) ( 4 ) ( 2 ) ( 4 ) (
3
) (
1 4 3 2 1 0 n n
n x f x f x f x f x f x f x f
h
h S + + + + + + + =


8.4.2 Exemplos
Exemplo 1: Calcular uma aproximao para
x
e
dx
0
1

usando a regra de Simpson com n = 10.


a) Nmero de intervalos:
n = 10

b) Tamanho do intervalo:
h
b a
n
=

= (1 0) / 10 = 0.1

c) iteraes:

i x
i
f(x
i
) c
i
c
i.
f(x
i
)
0 0.0 1 1 1
1 0.1 1.1052 4 4.4208


111
2 0.2 1.2214 2 2.4428
3 0.3 1.3499 4 5.3996
4 0.4 1.4918 2 2.9836
5 0.5 1.6487 4 6.5948
6 0.6 1.8221 2 3.6442
7 0.7 2.0138 4 8.0552
8 0.8 2.2255 2 4.4510
9 0.9 2.4596 4 9.8384
10 1.0 2.7183 1 2.7183
51.5487

S h
e e e e e e e
( )
,
[ ... ]
, , , , , , ,
10
0 0 0 1 0 2 0 3 0 8 0 9 1 0
0 1
3
4 2 4 2 4 = + + + + + + + = 1,71829

d) mtodo analtico:
x
e
dx
0
1

=
x
e e e
0
1
1 0
2 7182818 1 1 7182818
]
, , = = =
Exerccio 1: Calcular o valor de , dado pela expresso 4

+
1
0
2
1
1
dx
x
, considerando n = 10.

S h f x f x f x f x f x f x f x ( )
,
[ ( ) ( ) ( ) ( ) ... ( ) ( ) ( )] 10 0 1 2 3 8 9 10
0 1
3
4 2 4 2 4 = + + + + + + + = 3,14157

mtodo analtico: 4

+
1
0
2
1
1
dx
x
= 4( ]
1
0
) (x arctg ) = 4.(arctg(1) arctg(0)) = 3.14159265

Exerccio 2: Calcular x x dx ln( )
1
2

pela regra de Simpson, considerando diversos valores para n e, depois,


analiticamente.

S(0.5) =
3
5 . 0
(3.8191) = 0,6365

S(0.25) =
3
25 . 0
(7.6355) = 0.63629167

S(0.25) =
3
125 . 0
(15.2711) = 0,63629583

mtodo analtico: x x dx ln( )
1
2

=
2 2
1
2
2 2
1
2
2 4
2
4
x
x
x x
x
x
ln( ) ln( )
] ]
=

= = 0.63629436
Exerccio 3: Calcular uma aproximao para
2
0
1
1
x
dx +

usando Simpson com n = 2.



] 2 ) 25 . 1 ( 4 1 [
3
5 . 0
) 5 . 0 ( + + = S =
4
3
= 1.33333...



112
mtodo analtico:
2
0
1
1
x
dx +

=
3
0
1
3 3
3
1
3
1
0
3
0
4
3
x
x + = + + =
]
( ) ( ) = 1.33333...

Como a regra de Simpson se aproxima por uma parbola e, sendo f(x) = x
2
+ 1 uma parbola, o
valor da integral obtido exato independente do nmero de subintervalos utilizado no clculo.


9 Soluo Numrica de Equaes Diferenciais Ordinrias

9.1 Introduo
A equao diferencial definida como uma equao que envolve uma funo e algumas de suas
derivadas, da forma:
)] ( ),......., ( ' ' ), ( ' , [ ) (
) 1 ( ) (
x y x y x y x f x y
n n
=

Na engenharia a utilizao de equaes diferenciais tem como objetivo descrever o comportamento
dinmico de sistemas fsicos. Uma equao diferencial pode descrever o comportamento dinmico do
circuito mostrado na figura:





S


V(t)=sin(3,5t) i(t)





Ao fechar-se a chave S, pode-se analisar o comportamento dinmico do circuito a partir da Lei de
Kirchoff para tenses:

+ + = dt t i
C dt
t di
L t Ri t V ) (
1 ) (
) ( ) (

Derivando a equao:
) (
1 ) ( ) ( ) (
2
2
t i
C
dt
t i d
L
dt
t di
R
dt
t dV
+ + =

Substituindo a expresso da tenso e rearranjando a equao, tem-se:

) 5 , 3 cos(
5 , 3
1
) (
1 ) ( ) (
2
2
t t i
C dt
t di
R
dt
t i d
L = + +


9.2 Tipos de Equaes Diferenciais

9.2.1 Equaes Diferenciais Ordinrias

So equaes diferenciais que possuem apenas uma varivel independente.
Exemplos:
1.1.1.1.2 1.1.1.1.1

1.1.1.1.3


113

y x
dx
dy
+ =
y funo de x; x a nica varivel independente.
2 2
y x
dt
dy
+ =
y e x so funo de t; t a nica varivel independente.

0 ) 1 (
2
2
2
= + + y
dt
dy
y
dt
y d
y funo de t; t a nica varivel independente.


9.2.2 Equaes Diferenciais Parciais

Quando a equao diferencial envolve mais de uma varivel independente.

Exemplo:


0
2
2
2
2
=

y
u
x
u
u funo de x e y; x e y so variveis independentes.

9.3 Soluo de Equaes Diferenciais

Determinadas equaes diferenciais podem ser solucionadas de forma simblica, cuja soluo uma
expresso literal. Isto nem sempre possvel. Neste caso, a soluo a utilizao de integrao numrica,
como ser visto na sequncia.

Exemplo :

y
dx
dy
=


dx
y
dy
=



= dx
y
dy


2 1
) ln( c x c y + = +



x c x
ae e x y = =
+
) (



Observe que a soluo da equao diferencial resulta numa famlia de curvas que dependem da constante
a, como pode ser visto na figura abaixo. Uma soluo particular pode ser obtida a partir das condies
iniciais do problema. A especificao de uma condio inicial define uma soluo entre a famlia de
curvas.












114















Suponha no exemplo dado que o problema tem como soluo inicial
1 ) 0 ( = y
. Portanto:

1 1 ) (
0
= = = a ae ae x y
x

A soluo
x
e x y =1 ) (
a soluo para a condio inicial dada.

Quando as condies iniciais esto associadas a um nico valor da varivel independente, define-se como
um problema de valor inicial (PVI). Quando as condies iniciais esto associadas mais de um valor da
varivel independente, define-se como um problema de valor de contorno (PVC). Normalmente,
problemas tendo como varivel independente o tempo, so problemas de valor inicial.


9.4 Ordem de uma Equao Diferencial Ordinria

A ordem da equao determinada pela derivada de maior ordem. Seja o exemplo de uma equao
diferencial ordinria de ordem n:

)] ( ),......., ( ' ' ), ( ' , [ ) (
) 1 ( ) (
x y x y x y x f x y
n n
=


9.5 Reduo de Equaes Diferenciais Ordinrias

Uma equao ordinria de ordem superior pode ser reduzido a um sistema de equaes diferenciais de
primeira ordem. A reduo feita a partir da definio de variveis auxiliares.
Seja a equao diferencial de ordem m com tambm m condies iniciais:

)] ( ),......., ( ' ' ), ( ' ), ( , [ ) (
) 1 ( ) (
x y x y x y x y x f x y
m m
=


m
m
c x y
c x y
c x y
=
=
=

) (
) (
) (
0
) 1 (
2 0
'
1 0
M


Esta equao pode ser transformada em um sistema de equaes diferenciais com m equaes, como
descreve-se abaixo:

-1 -0.5 0 0.5 1 1.5 2
0
5
10
15
20
25
30
35
40
45
y (x)
x


115
)] ( ),......., ( ' ' ), ( ' ), ( , [ ) ( ) (
) ( ) ( ) (
) ( ) ( ) (
) ( ) ( ) (
) ( ) ( ) (
) ( ) (
) 1 ( ) ( '
) 1 ( '
1
4
' ' ' '
3
3
" '
2
2
' '
1
1
x y x y x y x y x f x y x z
x z x y x z
x z x y x z
x z x y x z
x z x y x z
x y x z
m m
m
m
m
m

= =
= =
= =
= =
= =
=
M



Tem-se portanto um sistema com m equaes diferenciais de primeira ordem:

= = =
= = =
= = =
= = =
= = =

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


) ,..., , , ( ) ( ) ( ) (
) ,..., , , ( ) ( ) ( ) (
) ,..., , , ( ) ( ) ( ) (
) ,..., , , ( ) ( ) ( ) (
2 1
) 1 ( ) ( '
2 1 1
) 1 ( '
1
2 1 3 4
' ' ' '
3
2 1 2 3
" '
2
2 1 1 2
' '
1
m m
m m
m
m m m
m
m
m
m
m
z z z x f x y x y x y x f x y x z
z z z x f x z x y x z
z z z x f x z x y x z
z z z x f x z x y x z
z z z x f x z x y x z
M


Com as condies iniciais dadas por:
m
m
m
c x y x z
c x y x z
c x y x z
c x y x z
c x y x z
= =
= =
= =
= =
= =

) ( ) (
) ( ) (
) ( ) (
) ( ) (
) ( ) (
0
) 1 (
0
4 0
' ' '
0 4
3 0
"
0 3
2 0
'
0 2
1 0 0 1
M



Este artifcio deve sempre ser utilizado quando da soluo de equaes diferenciais por mtodos
numricos, pois s pode-se integrar numericamente equaes de primeira ordem. Observe que o sistema
de equaes modela o comportamento dinmico do problema.

Exemplo 8.2: Reduzir as Equaes Diferenciais Ordinrias (EDOs) a sistemas de EDOs de primeira
ordem.

a)
) ( 2 ) ( 3 ) (
' ' '
x y x y x y =
,
1 ) 0 ( = y
e
0 ) 0 (
'
= y


1 2
' " '
2
2
' '
1
1
2 3 2 ) ( 3 ) ( ) (
) ( ) ( ) (
) ( ) (
z z y x y x y x z
x z x y x z
x y x z
= = =
= =
=

Resultando no sistema:



116
0 ) 0 ( 1 ) 0 (
) , , ( 2 3 ) (
) , , ( ) ( ) (
2 1
2 1 2 1 2
'
2
2 1 1 2
'
1
= =

= =
= =
z z
z z x f z z x z
z z x f x z x z


b)
) ( ) 1 ( ) cos( ) 1 (
2 2 2 ' ' ' ' ' '
y x sin y x y x y x y x y + + = + + +


3 , 3 ) 0 ( 2 , 2 ) 0 ( 1 , 1 ) 0 (
' ' '
= = = y y y


Reescrevendo a equao, tem-se:
) ( ) 1 ( ) cos( ) 1 (
2 2 2 ' ' ' ' ' '
y x sin y x y x y x y x y + + + + + =


) ( ) 1 ( ) cos( ) 1 ( ) ( ) (
1
2
1
2
1
2
2 3
' ' ' '
3
3
" '
2
2
' '
1
1
z x sin z x z x z x z x x y x z
z y z
z y z
y z
+ + + + + = =
= =
= =
=


Resultando no sistema:
3 , 3 ) 0 ( 2 , 2 ) 0 ( 1 , 1 ) 0 (
) , , , ( ) ( ) 1 ( ) cos( ) 1 ( ) ( ) (
) , , , (
) , , , (
3 2 1
3 2 1 3 1
2
1
2
1
2
2 3
' ' ' '
3
3 2 1 2 3
" '
2
3 2 1 1 2
' '
1
= = =

= + + + + + = =
= = =
= = =
z z z
z z z x f z x sin z x z x z x z x x y x z
z z z x f z y z
z z z x f z y z


9.6 Soluo Numrica de Equaes Diferenciais Ordinrias Problema de Valor
Inicial


Considere a equao diferencial ordinria:

) , (
'
y x f y =
com condio inicial
0 0
) ( y x y =


A soluo da equao diferencial acima uma funo do tipo
) (x y
, conforme ilustrada abaixo:
















X
x0
X
x1
X
X
X
x2 x3 .... xn
y(x0)
y(x1)
y(x2)
y(x3)
y(xn)
y (x)
x


117


Com a soluo numrica de uma equao diferencial, obtm-se uma aproximao para os valores
) ( ),......, ( ), ( ), ( ), (
3 2 1 0 n
x y x y x y x y x y
, ou seja:
x
1
x

2
x

3
x

.........
n
x

y
1
y

2
y

3
y

.........
n
y


Considera-se que a notao
n j x y
j
,..., 2 , 1 ), ( =
indica a soluo exata da EDO nos pontos
n
x x x x ,..., , ,
3 2 1
, e
n j y
j
,...., 2 , 1 , =
indica a soluo aproximada obtida por mtodo numrico.

Na soluo numrica no se determina a expresso literal da funo
) (x y
, mas aproximaes para pontos
da funo
) (x y
. Com os valores aproximados obtidos, pode-se plotar a curva. Em aplicaes da
engenharia, normalmente estuda-se o comportamento dinmico de determinadas variveis, portanto
necessita-se a evoluo das variveis em funo da varivel independente. Com a curva plotada, pode-se
estudar esta evoluo.

9.6.1 Mtodo de Euler

Seja a soluo de uma equao diferencial do tipo:

) , ( y x f
dx
dy
=
com valor inicial
0 0
) ( y x y =

A soluo desta equao resulta numa funo
) (x y
, como mostrado no grfico:



y(x)














A partir da equao diferencial, pode-se observar que a derivada da funo
) (x y
em um ponto qualquer x
dada por f(x,y). Conhecendo-se a derivada da funo
) (x y
no ponto
0
x
, ou seja [
) , (
0 0
y x f
] , pode-se
estimar o valor da funo
) (x y
no ponto
1
x
por meio de relaes trigonomtricas:




) (
1
x y
0
x
1
x
1
y
) (x y
x
Reta Tangente no ponto
x
0 1
x x h =
0
y


118














) , ( ) , ( ) , ( ) (
0 0 0 1
0 1
0 0
0 1
0 1
0 0
y x hf y y
h
y y
y x f
x x
y y
y x f tg + =

= =


Esta relao pode ser generalizada para um ponto i qualquer, resultando na forma de recorrncia
para soluo de equaes diferenciais pelo Mtodo de Euler:


Exemplo: Achar aproximaes para a soluo o problema de valor inicial, na malha [0,1] e h=0,1, dado
por:
2
'
+ = y x y
para
2 ) 0 ( = y


A soluo desta equao resulta em uma funo
) (x y
, como mostrada na figura abaixo.




















Resolvendo esta equao atravs do Mtodo de Euler, iremos determinar aproximaes para pontos de
) (x y
.
2 0
0 0
= = y x


0 1
y y y =
0 1
x x h =

) , (
1 1 1
+ =
i i i i
y x hf y y
0 0.2 0.4 0.6 0.8 1
0
0.5
1
1.5
2
2.5
3
y (x)
x


119
01 , 2 ) 2 2 1 , 0 ( 1 , 0 2 ) , (
1 1 1 2
= + + = + = h y x f y y


01 , 2 2 , 0 1 , 0 1 , 0
2 1 2
= = + = + = y h x x


029 , 2 ) 2 01 , 2 2 , 0 ( 1 , 0 01 , 2 ) , (
2 2 2 3
= + + = + = h y x f y y


029 , 2 3 , 0 1 , 0 2 , 0
3 2 3
= = + = + = y h x x


0561 , 2 ) 2 029 , 2 3 , 0 ( 1 , 0 029 , 2 ) , (
3 3 3 4
= + + = + = h y x f y y


0561 , 2 4 , 0 1 , 0 3 , 0
4 3 4
= = + = + = y h x x

09049 , 2 ) 2 0561 , 2 4 , 0 ( 1 , 0 0561 , 2 ) , (
4 4 4 5
= + + = + = h y x f y y


Na figura abaixo est plotada a soluo numrica e a soluo exata, observe que para efeitos prticos
podemos observar o comportamento dinmico da varivel, que o qu normalmente interessa em
aplicaes da engenharia.


















Na tabela abaixo, mostra-se os valores calculados comparados aos valores exatos:


j
j
x

j
y

) (
j
x y

) (
j j
x y y

0 0 2,0000000 2,0000000 0,000000
1 0,1 2,0000000 2,0048370 -0,004837
2 0,2 2,0100000 2,0187310 -0,008731
3 0,3 2,0290000 2,0408180 -0,011818
4 0,4 2,0561000 2,0703200 -0,014220
5 0,5 2,0904900 2,1065310 -0,016041
6 0,6 2,1314410 2,1488120 -0,-17371
7 0,7 2,1782969 2,1965850 -0,018288
8 0,8 2,2304672 2,2493290 -0,018862
9 0,9 2,2874205 2,3065700 -0,019149
10 1,0 2,3486784 2,3678790 -0,019201


0 0.2 0.4 0.6 0.8 1
0
0.5
1
1.5
2
2.5
3
soluo numrica
soluo exata


120
9.7 Anlise do Erro para o Mtodo de Euler na Soluo Numrica do Problema de Valor
Inicial

Os erros cometidos so de duas naturezas:

a) Erros de truncamentos causados pelo tipo de tcnica empregada para a atualizao do
valor de y;
b) Erros de arredondamentos causados pela aritmtica de preciso finita utilizadas pelos
computadores digitais e pelo modo de se programar.

Os erros de truncamento podem ser separados em duas partes:

a) Erro de truncamento local: erro cometido num ponto genrico
1 + k
x
, determinado pela
diferena do valor aproximado
1 + k
y
e o valor no ponto
1 + k
x
da soluo da equao
diferencial que passa em
1 + k
y
;
b) Erro de truncamento acumulado: erros cometidos pelas aproximaes produzidas nos
passos anteriores. determinado pela diferena entre o valor aproximado
1 + k
y
com o
valor exato
) (
1 + k
x y
.





















O erro de truncamento local determinado pela expresso:


) (
! 2
' '
2
y
h
E
T
=

j j
x x < <


1


O valor de

desconhecido, entretanto, pode-se definir um majorante para o erro de truncamento local.



Se
) (x y
possui derivada contnua num intervalo fechado
] , [
1 + n n
x x
, que contm os pontos sobre os quais
est sendo feita a discretizao, ento existe:
] , [ ) ( max
1
) 1 (
1 +
+
+
=
n n
k
k
x x x x y M

1
y
1
x

) (
1
x y
0
x
2
x
2
y
Erro
Local
Erro
Acumulado =
Erro Local
3
x

) (
2
x y

) (
3
x y
3
y
) (
0
x y
Erro
Acum
.
Soluo
y(x) do PVI
Sol. da
EDO em
) (x y
Soluo da
EDO em
Soluo da
EDO em
Erro
Erro
x


121
Assim:
] , [ ) (
1 2
) 2 (
+

n n
x x M y

! 2
) (
2
2
1
h M
x E
k T

+

Observe que o erro de truncamento local proporcional ao passo de integrao ao quadrado. O erro
acumulado tambm pode ser limitado por um majorante:

Suponha que
) (x y
represente soluo nica do problema de valor inicial:

= = ) ( ) , (
'
a y b x a y x f y


e
n
y y y ,......., ,
2 1
sejam as aproximaes geradas pelo Mtodo de Euler. Se f(x,y) for contnua para todo x
no intervalo [a,b] e todo y no intervalo
) , (
e ainda existem as constantes L e C, tais que:
L
x
x y x f

)) ( , (
e
C x y ) (
' '


ento para cada
n i ,...... 2 , 1 =
:
[ ] 1
2
) (
) (

a x L
i i
i
e
L
hC
y x y


Pode-se observar que para a determinao dos erros de truncamento local e acumulado, necessita-se do
valor maxmo da segunda derivada de y(x), o que restringe sua utilizao na prtica. Tambm
importante observar-se que o erro tende a zero quando h tende a zero.

Tarefa: Seja o problema do Exemplo:
2
'
+ = y x y
para
2 ) 0 ( = y

A soluo desta equao diferencial dada por:
1 ) ( + + =

x e x y
x

Determine o limite do erro acumulado nos pontos da malha [0,1], com
1 , 0 = h
, quando da soluo da
equao diferencial pelo Mtodo de Euler, e compare com o erro real calculado no Exemplo 8.3.


9.8 Mtodo de Euler Modificado


Para melhorar a qualidade da estimativa, a tangente a ser considerada no a do ponto inicial do
intervalo, mas no ponto mdio.














122



y(x)

















Utilizando o Mtodo de Euler, calcula-se o valor
2 / 1 + i
y
, no meio do intervalo, a partir da tangente
) , (
i i
y x f
:

2
) , (
2 / 1
h
y x f y y
i i i i
+ =
+


Com os valores
2 / 1 + i
x
e
2 / 1 + i
y
, determina-se a reta tangente no meio do intrvalo:
) , (
2 / 1 2 / 1
'
2 / 1 + + +
=
i i i
y x f y


Esse valor assumido representar uma inclinao mdia do intervalo inteiro. Assim, determina-se o valor
de y no ponto
1 + i
x
:

h y y h y x f y y
i i i i i i
+ = + =
+ + + +
'
2 / 1 2 / 1 2 / 1 1
) , (

Observe que a diferena em relao ao Mtodo de Euler normal a utilizao da inclinao no meio do
intervalo.

Exemplo: Repita o exemplo anterior, utilizando o Mtodo de Euler Modificado.
2
'
+ = y x y
para
2 ) 0 ( = y

malha [0,1], h=0,1. Os resultados parciais so apresentados a seguir de acordo com a sequncia:

2
2 / 1
h
x x
j j
+ =
+

2
) , (
2 / 1
h
y x f y y
j j j j
+ =
+

h y y h y x f y y
j j j j j j
+ = + =
+ + + +
'
2 / 1 2 / 1 2 / 1 1
) , (

h x x
j j
+ =
+1

) (
j j
x y y res =


) (
1 + i
x y
i
x
1 + i
x
1 + i
y
) (x y
x
Reta Tangente no ponto
+
x
2
2 / 1
h
x x
i i
+ =
+
i
y
2 / 1 + i
x
2 / 1 + i
y
Reta Tangente no ponto
i
x


123

j = 1 xmedio = 0.05000000000000 ymedio = 2
y
j
= 2.00500000000000 x
j
= 0.10000000000000 erro = 1.629999999996912e-004


j = 2 xmedio = 0.15000000000000 ymedio = 2.00975000000000
y
j
= 2.01902500000000 x
j
= 0.20000000000000 erro = 2.940000000002385e-004


j = 3 xmedio = 0.25000000000000 ymedio = 2.02807375000000
y
j
= 2.04121762500000 x
j
= 0.30000000000000 erro = 3.996250000004586e-004


j = 4 xmedio = 0.35000000000000 ymedio = 2.05415674375000
y
j
= 2.07080195062500 x
j
= 0.40000000000000 erro = 4.819506250002270e-004


j = 5 xmedio = 0.45000000000000 ymedio = 2.08726185309375
y
j
=2.10707576531563 x
j
= 0.50000000000000 erro = 5.447653156251953e-004


j = 6 xmedio = 0.55000000000000 ymedio = 2.12672197704984
y
j
= 2.14940356761064 x
j
= 0.60000000000000 erro = 5.915676106407197e-004


j = 7 xmedio = 0.65000000000000 ymedio = 2.17193338923011
y
j
= 2.19721022868763 x
j
= 0.70000000000000 erro = 6.252286876300417e-004


j = 8 xmedio = 0.75000000000000 ymedio = 2.22234971725325
y
j
= 2.24997525696230 x
j
= 0.80000000000000 erro = 6.462569623049141e-004


j = 9 xmedio = 0.85000000000000 ymedio = 2.27747649411419
y
j
= 2.30722760755089 x
j
= 0.90000000000000 erro = 6.576075508859525e-004


j = 10 xmedio = 0.95000000000000 ymedio = 2.33686622717334
y
j
= 2.36854098483355 x
j
= 1.00000000000000 erro = 6.619848335516210e-004

Na tabela abaixo, mostra-se os valores calculados comparados aos valores exatos:


Exato Euler Erro Euler Mod. Erro
j
j
x

) (
j
x y

j
y

) (
j j
x y y

j
y

) (
j j
x y y

0 0 2,0000000 2,0000000 0,000000 2,0000000 0,0000000
1 0,1 2,0048370 2,0000000 -0,004837 2,0050000 0,0001629
2 0,2 2,0187310 2,0100000 -0,008731 2,0190250 0,0002940
3 0,3 2,0408180 2,0290000 -0,011818 2,0412176 0,0003996
4 0,4 2,0703200 2,0561000 -0,014220 2,0708019 0,0004819
5 0,5 2,1065310 2,0904900 -0,016041 2,1070757 0,0005447
6 0,6 2,1488120 2,1314410 -0,-17371 2,1494035 0,0005915
7 0,7 2,1965850 2,1782969 -0,018288 2,1972102 0,0006252


124
8 0,8 2,2493290 2,2304672 -0,018862 2,2499752 0,0006425
9 0,9 2,3065700 2,2874205 -0,019149 2,3072276 0,0006576
10 1,0 2,3678790 2,3486784 -0,019201 2,3685409 0,0006619

9.8.1 Mtodo Heum

No Mtodo de Euler Modificado a inclinao do intervalo determinada no ponto mdio do intervalo. No
Mtodo de Heum, a inclinao do intervalo determinada pela mdia aritmtica das inclinaes no incio
e no fim do intervalo.
Para o clculo da inclinao no fim do intervalo, faz-se uma estimativa do valor da soluo (
1 + i
y
) pelo
Mtodo de Euler com o valor da inlinao do incio do intervalo
)] , ( [
i i
y x f
:

h y x f y y
i i i i
+ =
+
) , (
0
1


Observe que o superescrito 0 em
1 + i
y
para indicar que apenas uma estimativa, que ser utilizada para
a determinao da inclinao no ponto
1 + i
x
, ou seja:
) , (
0
1 1
1
'
+ +
+ =
i i
i y x f y





























Com o valor da inclinao no final do intervalo, pode-se determinar o valor da inclinao mdia do
intervalo, por meio da mdia aritmtica:

[ ]
2
) , ( ) , (
0
1 1 + +
+
=
i i i i
y x f y x f
Mdia Inclinao


Tangente no Fim do
Intervalo
) , (
0
1 1 + + i i
y x f
Tangente no Incio do
Intervalo
) , (
i i
y x f
y(x)
x
i
x
1 + i
x
i
y
0
1 + i
y
Tangente Mdia do
Intervalo

2 / )] , ( ) , ( [
0
1 1 i i i i
y x f y x f +
+ +



125
O valor da funo no fim do intervalo dado por:

[ ]
h
y x f y x f
y y
i i i i
i i

+
+ =
+ +
+
2
) , ( ) , (
0
1 1 1
1


Observe que o clculo do valor da funo no fim do intervalo pode ser repetido at que se alcance uma
determinada convergncia, ou seja:
[ ]
h
y x f y x f
y y
i i i i
i i

+
+ =
+ +
+
2
) , ( ) , (
1
1 1 2
1

[ ]
h
y x f y x f
y y
i i i i
i i

+
+ =
+ +
+
2
) , ( ) , (
3
1 1 3
1

M

[ ]
h
y x f y x f
y y
k
i i i i
i
k
i

+
+ =

+ +
+
2
) , ( ) , (
1
1 1
1


A cada nova correo, pode-se fazer um teste do tipo:



+ +
1
1 1
k
i
k
i
y y

Caso esteja dentro de uma tolerncia inicial, pode-se parar a correo.


O Mtodo de Heun se enquadra nos chamados mtodos previsor x corretor. Faz-se uma estimativa com o
previsor e se melhora a estimativa atravs do corretor. O corretor pode ser repetido at uma convergncia
determinada.

Previsor:

h y x f y y
i i i i
+ =
+
) , (
0
1



Corretor:

[ ]
h
y x f y x f
y y
i i i i
i i

+
+ =
+ +
+
2
) , ( ) , (
0
1 1 1
1


Exemplo: Repita o exemplo 8.3, utilizando o Mtodo de Heun, com uma iterao de correo.
2
'
+ = y x y
para
2 ) 0 ( = y

malha [0,1], h=0,1. Os resultados parciais so apresentados a seguir de acordo com a sequncia:

h y x f y y
i i i i
+ =
+
) , (
0
1


h x x
i i
+ =
+1

[ ]
h
y x f y x f
y y
i i i i
i i

+
+ =
+ +
+
2
) , ( ) , (
0
1 1 1
1








126
j = 1 y0 = 2 x = 0.10000000000000
y1 = 2.00500000000000 erro = 1.629999999996912e-004


j = 2 y0 = 2.01450000000000 x = 0.20000000000000
y1 = 2.01902500000000 erro = 2.940000000002385e-004


j = 3 y0 = 2.03712250000000 x = 0.30000000000000
y1 = 2.04121762500000 erro = 3.996250000004586e-004


j = 4 y0 = 2.06709586250000 x = 0.40000000000000
y1 = 2.07080195062500 erro = 4.819506250002270e-004


j = 5 y0 = 2.10372175556250 x = 0.50000000000000
y1 = 2.10707576531563 erro = 5.447653156251953e-004


j = 6 y0 = 2.14636818878406 x = 0.60000000000000
y1 = 2.14940356761064 erro = 5.915676106407197e-004


j = 7 y0 = 2.19446321084958 x = 0.70000000000000
y1 = 2.19721022868763 erro = 6.252286876300417e-004


j = 8 y0 = 2.24748920581887 x = 0.80000000000000
y1 = 2.24997525696230 erro = 6.462569623049141e-004


j = 9 y0 = 2.30497773126607 x = 0.90000000000000
y1 = 2.30722760755089 erro = 6.576075508859525e-004



j =10 y0 = 2.36650484679580 x = 1.00000000000000
y1 = 2.36854098483355 erro = 6.619848335516210e-004









Exato Euler Erro Heun Erro
j
j
x

) (
j
x y

j
y

) (
j j
x y y

j
y

) (
j j
x y y

0 0 2,0000000 2,0000000 0,000000 2,0000000 0,0000000
1 0,1 2,0048370 2,0000000 -0,004837 2,0050000 0,0001629
2 0,2 2,0187310 2,0100000 -0,008731 2,0190250 0,0002940
3 0,3 2,0408180 2,0290000 -0,011818 2,0412176 0,0003996


127
4 0,4 2,0703200 2,0561000 -0,014220 2,0708019 0,0004819
5 0,5 2,1065310 2,0904900 -0,016041 2,1070757 0,0005476
6 0,6 2,1488120 2,1314410 -0,-17371 2,1494033 0,0005915
7 0,7 2,1965850 2,1782969 -0,018288 2,1972102 0,0006252
8 0,8 2,2493290 2,2304672 -0,018862 2,2499752 0,0006462
9 0,9 2,3065700 2,2874205 -0,019149 2,3072276 0,0006576
10 1,0 2,3678790 2,3486784 -0,019201 2,3685409 0,0006619

Exemplo 8.6: Repita o exemplo 8.3, utilizando o Mtodo de Heun, com trs iterao de correo.
2
'
+ = y x y
para
2 ) 0 ( = y

malha [0,1], h=0,1. Os resultados so apresentados na tabela a seguir:

Exato Heun
( 1 Corr.)
Erro Heun
(3 Corr.)
Erro
j
j
x

) (
j
x y

j
y

) (
j j
x y y

j
y

) (
j j
x y y

0 0 2,0000000 2,0000000 0,0000000 2,0000000 0,0000000
1 0,1 2,0048370 2,0050000 0,0001629 2,0047625 -0,0000745
2 0,2 2,0187310 2,0190250 0,0002940 2,0185951 -0,0001358
3 0,3 2,0408180 2,0412176 0,0003996 2,0406342 -0,0001837
4 0,4 2,0703200 2,0708019 0,0004819 2,0700980 -0,0002219
5 0,5 2,1065310 2,1070757 0,0005476 2,1062796 -0,0002513
6 0,6 2,1488120 2,1494033 0,0005915 2,1485390 -0,0002729
7 0,7 2,1965850 2,1972102 0,0006252 2,1962975 -0,0002874
8 0,8 2,2493290 2,2499752 0,0006462 2,2490314 -0,0002975
9 0,9 2,3065700 2,3072276 0,0006576 2,3062667 -0,0003032
10 1,0 2,3678790 2,3685409 0,0006619 2,3675749 -0,0003040


9.8.2 Mtodo Runge-Kutta

O Mtodo de Runge-Kutta determinado a partir da Srie de Taylor e sua expresso de recorrncia
dada por:

h h y x y y
i i i i
+ =
+
) , , (
1


onde
) , , ( h y x
i i

chamada de funo incremento e pode ser interpretada coma uma inclinao mdia
sobre o intervalo.
Genericamente:

n n i i
k a k a k a h y x + + + = ..... .......... ) , , (
2 2 1 1



) , (
1 i i
y x f k =

) , (
1 11 1 2
h k q y h p x f k
i i
+ + =

) , (
2 22 1 21 2 3
h k q h k q y h p x f k
i i
+ + + =

M

) .......... , (
1 ) 1 )( 1 ( 2 2 ) 1 ( 1 1 ) 1 ( 1
h k q h k q h k q y h p x f k
n n n n n i n i n
+ + + + + =







128
9.8.3 Derivao do Mtodo de Runge-Kutta de Segunda Ordem

h k a k a y y
i i
+ + =
+
) (
2 2 1 1 1
(1)
) , (
1 i i
y x f k =
(2)
) , (
1 11 1 2
h k q y h p x f k
i i
+ + =
(3)

Deve-se determinar os valores das constantes
1
a
,
2
a
,
1
q
e
11
q
.

Expande-se
1 + i
y
em Srie de Taylor:

! 2
) , ( ) , (
2
'
1
h
y x f h y x f y y
i i i i i i
+ + =
+
(4)

Determina-se
) , (
'
i i
y x f
pela Regra da Cadeia:
dx
dy
y
f
x
f
y x f
i i

= ) , (
'
(5)

Substituindo na expresso (4):
! 2
) , (
2
1
h
dx
dy
y
f
x
f
h y x f y y
i i i i

+ + =
+
(6)
A estratgia do Mtodo de runge-Kutta atravs de manipulaes algbricas, tornar as expresses (1) e
(6) equivalentes. Expande-se a expresso (3) em Srie de Taylor:
) ( ) , ( ) , (
2
1 11 1 1 11 1
h
y
f
h k q
x
f
h p y x f h k q y h p x f
i i i i
+

+ = + +
(7)
Substituindo (7) em (1):

) ( ) , ( ) , ( ) , (
3 2
11 2
2
1 2 2 1 1
h
y
f
y x f h q a
x
f
h p a y x hf a y x hf a y y
i i i i i i i i
+

+ + + =
+
(8)
Reagrupando os termos:
) ( ] ) , ( [ )] , ( ) , ( [
3 2
11 2 1 2 2 1 1
h h
y
f
y x f q a
x
f
p a h y x f a y x f a y y
i i i i i i i i
+

+ + + =
+
(9)
Comparando os termos das equaes (6) e (9):
2
1
2
1
1
11 2
1 2
2 1
=
=
= +
q a
p a
a a


Observe que tem-se trs equaes e quatro incgnitas, portanto tem-se infinitas solues. Portanto
existem infinitos formulaes para o Mtodo de Runge-Kutta de Segunda Ordem.

importante realar que o Mtodo de Heun com uma iterao de correo e o Mtodo de Euler
Modificado podem ser classificados como Mtodos de Runge-Kutta de Segunda Ordem.

9.8.4 Mtodo de Heun



129
Assumindo :

1
2
1
11 1
2 1
= =
= =
q p
a a


h k k y y
i i
+ + =
+
)
2
1
2
1
(
2 1 1

) , (
1 i i
y x f k =


) , (
1 2
h k y h x f k
i i
+ + =


1
k
- inclinao no incio do intervalo
2
k
- inclinao no fim do intervalo

9.8.5 Mtodo de Euler Modificado

Assumindo :

2
1
1
0
11 1
2
1
= =
=
=
q p
a
a


h k y y
i i
+ =
+ 2 1

) , (
1 i i
y x f k =

)
2
,
2
(
1 2
k
h
y
h
x f k
i i
+ + =


O Mtodo de Runge-Kutta mais conhecido o Mtodo de Ralston. Este mtodo propicia um limite
mnimo para o erro de truncamento dos algoritmos de Runge-Kutta de Segunda Ordem.

9.8.6 Mtodo de Ralston

Assumindo :

4
3
3
2
3
1
11 1
2
1
= =
=
=
q p
a
a


h k k y y
i i
+ + =
+
)
3
2
3
1
(
2 1 1

) , (
1 i i
y x f k =


)
4
3
,
4
3
(
1 2
hk y h x f k
i i
+ + =



130

Exemplo: Integre a funo
85 20 12 2 ) , (
2 3
+ + = x x x y x f
de
0 = x
at
4 = x
, passo de integrao
5 , 0 = h
com as trs verses do Mtodo de Runge-Kutta de Segunda Ordem. Condies Iniciais: Para
0 = x
,
1 = y


Mtodo de Heun

h k k y y
i i
+ + =
+
)
2
1
2
1
(
2 1 1

) , (
1 i i
y x f k =


) , (
1 2
h k y h x f k
i i
+ + =


h k k y y + + = )
2
1
2
1
(
2 1 0 1

5 , 8 5 , 8 0 20 0 12 0 2 ) , (
2 3
0 0 1
= + + = = y x f k

25 , 1 5 , 8 5 , 0 20 5 , 0 12 5 , 0 2 ) 25 , 5 , 5 , 0 ( ) , (
2 3
1 0 0 2
= + + = = + + = f h k y h x f k

4375 , 3 5 , 0
2
25 , 1 5 , 8
1 )
2
1
2
1
(
2 1 0 1
=

+
+ = + + = h k k y y

Mtodo de Euler Modificado:
h k y y
i i
+ =
+ 2 1

) , (
1 i i
y x f k =

)
2
,
2
(
1 2
k
h
y
h
x f k
i i
+ + =


h k y y + =
2 0 1

5 , 8 5 , 8 0 20 0 12 0 2 ) , (
2 3
0 0 1
= + + = = y x f k

21875 , 4 5 , 8 25 , 0 20 25 , 0 12 25 , 0 2
) 125 , 3 , 25 , 0 ( ) 5 , 8
2
5 , 0
1 ,
2
5 , 0
0 ( )
2
,
2
(
2 3
1 0 0 2
= + + =
= = + + = + + = f f k
h
y
h
x f k

109375 , 3 5 , 0 21875 , 4 1
2 0 1
= + = + = h k y y


Mtodo de Ralston:
h k k y y
i i
+ + =
+
)
3
2
3
1
(
2 1 1

) , (
1 i i
y x f k =


)
4
3
,
4
3
(
1 2
hk y h x f k
i i
+ + =

h k k y y + + = )
3
2
3
1
(
2 1 0 1

5 , 8 5 , 8 0 20 0 12 0 2 ) , (
2 3
0 0 1
= + + = = y x f k

582031 , 2 5 , 8 375 , 0 20 375 , 0 12 375 , 0 2
) 1875 , 4 , 375 , 0 ( ) 5 , 8 5 , 0
4
3
1 , 5 , 0
4
3
0 ( )
4
3
,
4
3
(
2 3
1 2
= + + =
= = + + = + + = f f hk y h x f k
i i



131
27734375 , 3 5 , 0 ) 582031 , 2
3
2
5 , 8
3
1
( 1 )
3
2
3
1
(
2 1 0 1
= + + = + + = h k k y y


Na tabela a seguir mostra-se o resultado para os passos de integrao seguintes:

x y exato Heun Erro (%) Euler Mod. Erro (%) Ralston Erro (%)
0,0 1,00000 1,00000 0,0 1,00000 0 1,00000 0
0,5 3,21875 3,43750 6,8 3,10937 3,4 3,27734 1,8
1,0 3,00000 3,37500 12,5 2,81250 6,3 3,10156 3,4
1,5 2,21875 2,68750 21,1 1,98437 10,6 2,34765 5,8
2,0 2,00000 2,50000 25,0 1,75000 12,5 2,14062 7,0
2,5 2,71875 3,18750 17,2 2,48437 8,6 2,85546 5,0
3,0 3,00000 4,37500 9,4 3,81250 4,7 4,11718 2,9
3,5 4,71875 4,93750 4,6 4,60937 2,3 4,80078 1,7
4,0 3,00000 3,00000 0,0 3,00000 0 3,03125 1,0


9.9 Mtodo de Runge_Kutta Terceira Ordem

De forma semelhante ao que se fez para o Mtodo de Runge_Kutta de Segunda Ordem, pode-se
determinar para ordens mais elevadas.
As formulaes no so nicas. Apresenta-se a seguir uma dasformulao mais utilizadas:
h k k k y y
i i
+ + + =
+
)] 4 (
6
1
[
3 2 1 1

) , (
1 i i
y x f k =

)
2
1
,
2
1
(
1 2
h k y h x f k
i i
+ + =

) 2 , (
2 1 3
hk hk y h x f k
i i
+ + =



9.10 Mtodo de Runge_Kutta Quarta Ordem

h k k k k y y
i i
+ + + + =
+
)] 2 2 (
6
1
[
4 3 2 1 1

) , (
1 i i
y x f k =

)
2
1
,
2
1
(
1 2
hk y h x f k
i i
+ + =

)
2
1
,
2
1
(
2 3
hk y h x f k
i i
+ + =

) , (
3 4
hk y h x f k
i i
+ + =


Exemplo: Integre a funo
85 20 12 2 ) , (
2 3
+ + = x x x y x f
de
0 = x
at
5 , 0 = x
, passo de integrao
5 , 0 = h
com o Mtodo de Runge-Kutta de Quarta Ordem. Condies Iniciais: Para
0 = x
,
1 = y


h k k k k y y + + + + = )] 2 2 (
6
1
[
4 3 2 1 0 1

5 , 8 5 , 8 0 20 0 12 0 2 ) , (
2 3
0 0 1
= + + = = y x f k



132
21875 , 4 5 , 8 25 , 0 20 25 , 0 12 25 , 0 2
) 125 , 3 , 25 , 0 ( ) 5 , 8 5 , 0 5 , 0 1 , 5 , 0 5 , 0 0 ( )
2
1
,
2
1
(
2 3
1 0 0 2
= + + =
= = + + = + + = f f hk y h x f k

21875 , 4 5 , 8 25 , 0 20 25 , 0 12 25 , 0 2
) 054 , 2 , 25 , 0 ( ) 21875 , 4 5 , 0 5 , 0 1 , 5 , 0 5 , 0 0 ( )
2
1
,
2
1
(
2 3
2 0 0 3
= + +
= = + + = + + = f f hk y h x f k

25 , 1 5 , 8 5 , 0 20 5 , 0 12 5 , 0 2
) 1093 , 3 , 5 , 0 ( ) 21875 , 4 5 , 0 1 , 5 , 0 0 ( ) , (
2 3
3 0 0 4
= + + =
= = + + = + + = f f hk y h x f k


21875 , 3
5 , 0 )] 25 , 1 21875 , 4 2 21875 , 4 2 5 , 8 (
6
1
[ 1 )] 2 2 (
6
1
[
4 3 2 1 0 1
=
= + + + + = + + + + = h k k k k y y


9.11 Mtodos de Passos Mltiplos
Nos mtodos vistos anteriormente, a cada nova estimativa da funo utilizava-se a
informao de um nico ponto anterior. Como o caso do Mtodo de Euler, mostrado na
figura:



y(x)














No caso dos mtodos de passos mltiplos, utiliza-se informao de mais do que um
ponto anterior.



0
x
1
x
1
y
) (x y
x
Estimativa a partir de
um nico ponto
0 1
x x h =
0
y


133

y(x)












9.12 Idia Basica dos Mtodos de Passos Mltiplos

Seja a equao diferencial:
) , (
'
y x f
dx
dy
y = =
Deseja-se uma nova estimativa da soluo y no ponto
1 + n
x . Integra-se a equao diferencial de
n
x a
1 + n
x :

+ +
=
1 1
) , ( ) (
'
n
n
n
n
x
x
x
x
dx y x f dx x y

+
=
+
1
) , ( ) ( ) (
1
n
n
x
x
n n
dx y x f x y x y

+
+ =
+
1
) , ( ) ( ) (
1
n
n
x
x
n n
dx y x f x y x y
Para a nova estimativa, a integral

+1
) , (
n
n
x
x
dx y x f aproximada por alguma forma de quadratura
numrica.

Os Mtodos de passos mltiplos so classificados em explcitos e implcitos.


0
x
1
x
) (x y
x
0
y
2
x
n
x ....
n
y
Estimado a partir de
informaes conhecidas de
n pontos anteriores
1
y
3
y


134
9.12.1 Mtodos Explcitos
Os mtodos explcitos, quando da nova estimativa da soluo no ponto
1 + n
x , utilizam
informaes de m pontos anteriores. Deve-se conhecer: ) , (
n n
y x , ) , (
1 1 n n
y x , .....,
) , (
m n m n
y x

. A partir desses dados, aproxima-se a funo f(x,y) por um polinmio ) (x P
m
, de
grau m.

+
+
+
1
) ( ) ( ) (
1
n
n
x
x
m n n
dx x P x y x y
9.12.2 Algoritmos de Adans-Bashforth de ordem m
m=1: ) , (
1 n n n n
y x f h y y + =
+

m=2: [ ] ) , ( ) , ( 3
2
1 1 1 +
+ =
n n n n n n
y x f y x f
h
y y
m=3: [ ] ) , ( 5 ) , ( 16 ) , ( 23
12
2 2 1 1 1 +
+ + =
n n n n n n n n
y x f y x f y x f
h
y y
m=4: [ ] ) , ( 9 ) , ( 37 ) , ( 59 ) , ( 55
24
3 3 2 2 1 1 1 +
+ + =
n n n n n n n n n n
y x f y x f y x f y x f
h
y y
9.12.3 Mtodos Implcitos
Os mtodos implcitos, quando da nova estimativa da soluo no ponto
1 + n
x , utilizam
informaes de m-1 pontos anteriores e uma estimativa inicial no ponto
1 + n
x . Deve-se
conhecer: ) , (
0
1 1 + + n n
y x , ) , (
n n
y x , ....., ) , (
1 1 + + m n m n
y x . A partir desses dados, aproxima-se a
funo f(x,y) por um polinmio ) (x P
m
, de grau m.

+
+
+
1
) ( ) ( ) (
1
n
n
x
x
m n n
dx x P x y x y
A idia dos mtodos implcitos a utilizao como um algoritmo corretor. Como visto
no Mtodo de Heun.
Utiliza-se um algoritmo previsor, que pode ser algoritmos da famlia Adans-
Bashfoth, e se corrige com um mtodo implcito.

9.12.4 Algoritmos de Adans-Moulton de ordem m

m=1: ) , (
1 1 1 + + +
+ =
n n n n
y x f h y y


135
m=2: [ ] ) , ( ) , (
2
1 1 1 n n n n n n
y x f y x f
h
y y + + =
+ + +

m=3: [ ] ) , ( ) , ( 8 ) , ( 5
12
1 1 1 1 1 + + +
+ + =
n n n n n n n n
y x f y x f y x f
h
y y
m=4: [ ] ) , ( ) , ( 5 ) , ( 19 ) , ( 9
24
2 2 1 1 1 1 1 + + +
+ + + =
n n n n n n n n n n
y x f y x f y x f y x f
h
y y
comum a utilizao dos mtodos implcitos junto com os mtodos explcitos. Os
Algoritmos da famlia Adans-Bashfoth so utilizados como previsores e os algoritmos da famlia
Adans-Moulton como corretores.

9.12.5 Passos para se obter
1 + n
y
I Calcular
) 0 (
1 + n
y por um mtodo explcito (famlia Adans-Bashfoth).
II Inicializar o contador de iteraes 0 = k .
III Calcular ) , (
) (
1 1
k
n n
y x f
+ +
.
IV Calcular
) 1 (
1
+
+
k
n
y , utilizando um mtodo implcito (famlia Adans-Moulton).
V Testar se <

+
+
+
+
) (
1
) (
1
1) (k
1 n
y
k
n
k
n
y
y
, se positivo, incrementar o contador 1 + = k k e voltar ao passo
III. Em caso contrrio calcule o prximo passo de integrao.
Observao 1: Para a utilizao dos algoritmos da famlia Adans-Bashforth com 1 > m ,
necessita-se de informao de mais pontos alm das condies iniciais. Para dar incio ao
algoritmo, pode-se utilizar qualquer dos mtodo de integrao vistos para estimar os pontos
necessrios.
Exemplo: Solucione a equao diferencial abaixo usando o Mtodo de Adans-Bashforth de
ordem 3 como previsor e o Mtodo de Adans-Moulton de ordem 3 como corretor. Execute tres
iteraes do corretor para cada estimativa.
) , (
2
'
y t f
t
y
t
y
y =

= 2 1 t , 1 ) 1 ( = y e 1 , 0 = h
Compare o resultado com o valor real:
1
)) ln( 1 ( ) (

+ = t t t y
Para Utilizar o Mtodo de Adans-Bashforth de ordem trs, necessita-se de informaes da
funo em trs pontos. Como temos apenas a condio 1 ) 1 ( = y , deve-se estimar em mais dois
pontos. Utilizando Runge-Kutta de Quarta Ordem chega-se aos seguintes valores:



136
Para 0043 , 1 10 , 1
1 1
= = y t
Para 0150 , 1 20 , 1
2 2
= = y t
Com os trs pontos pode-se realizar previso para o passo seguinte, utilizando Adans-
Bashforh:

[ ] ) , ( 5 ) , ( 16 ) , ( 23
12
0 0 1 1 2 2 2
) 0 (
3
y t f y t f y t f
h
y y + + =
[ ] 0294 , 1 ) 1 , 1 ( 5 ) 0043 , 1 , 10 , 1 ( 16 ) 0150 , 1 , 20 , 1 ( 23
12
0150 , 1
) 0 (
3
= + + = f f f
h
y
Com o valor da previso calculado, calcula-se trs iteraes utilizando Adans-Moulton:
[ ] ) , ( ) , ( 8 ) , ( 5
12
1 1 2 2
) 0 (
3 3 2
) 1 (
3
y t f y t f y t f
h
y y + + =
[ ] 0299 , 1 ) 0043 , 1 , 10 , 1 ( ) 0150 , 1 , 20 , 1 ( 8 ) 0294 , 1 , 30 , 1 ( 5
12
0150 , 1
) 1 (
3
= + + = f f f
h
y
[ ] 0298 , 1 ) 0043 , 1 , 10 , 1 ( ) 0150 , 1 , 20 , 1 ( 8 ) 0299 , 1 , 30 , 1 ( 5
12
0150 , 1
) 2 (
3
= + + = f f f
h
y
[ ] 0298 , 1 ) 0043 , 1 , 10 , 1 ( ) 0150 , 1 , 20 , 1 ( 8 ) 0298 , 1 , 30 , 1 ( 5
12
0150 , 1
) 3 (
3
= + + = f f f
h
y
Seguindo esta ordem, calcula-se os valores para os passos seguintes. Os resultados e a
plotagem dos valores calculados e exatos so apresentados abaixo:

i
t
i
y exato y
1.00 1.0000 1.0000
1.10 1.0043 1.0043
1.20 1.0150 1.0150
1.30 1.0298 1.0298
1.40 1.0476 1.0475
1.50 1.0673 1.0673
1.60 1.0885 1.0884
1.70 1.1107 1.1107
1.80 1.1337 1.1337
1.90 1.1573 1.1572
2.00 1.1813 1.1812





137












Os grficos com os valores exatos e estimados se confundem.

9.13 Soluo de Sistemas de Equaes Diferenciais
Seja o sistema de equaes diferenciais:
) ,......, , , (
) ,......, , , (
) ,......, , , (
2 1
2 1 2
2
2 1 1
1
n n
n
n
n
y y y x f
dx
dy
y y y x f
dx
dy
y y y x f
dx
dy
=
=
=
M

A soluo de um sistema desta natureza requer o valor inicial em
0
x x = para as n
variveis y.
Todos os mtodos vistos podem ser utilizados na soluo. O procedimento para a
soluo do sistema envolve a soluo do passo de cada equao antes de passar-se ao passo
seguinte.
Exemplo: Solucione o sistema de equaes diferenciais usando o Mtodo de Euler, integrando
de 0 = x a 2 = x , com passo 5 , 0 = h e condies iniciais em 0 = x dadas por 4
1
= y e 6
2
= y .
1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2
1
1.02
1.04
1.06
1.08
1.1
1.12
1.14
1.16
1.18
1.2


138
) , , ( 1 , 0 3 , 0 4
) , , ( 5 , 0
2 1 2 1 2
2
2 1 1 1
1
y y x f y y
dx
dy
y y x f y
dx
dy
= =
= =

A soluo deste sistema resulta em duas funes: ) (
1
x y e ) (
2
x y . A soluo
numrica resulta em aproximaes de pontos dessas funes. Adota-se uma notao
semelhante ao caso de uma equao, introduzindo um novo ndice para indicao das
variveis dependentes:
j k
y
,
valor estimado para o ponto ) (
j k
x y para 2 , 1 = k .
Para a soluo do problema, necessita-se:

j
j
x
j
y
, 1

j
y
, 2

0 0 4 6
1 0,5
1 , 1
y
1 , 2
y
2 1,0
2 , 1
y
2 , 2
y
3 1,5
3 , 1
y
3 , 2
y
4 2,0
4 , 1
y
4 , 2
y

Para 1 = j e 5 , 0
1
= x
3 5 , 0 ) 4 5 , 0 ( 4 ) , , (
0 , 2 0 , 1 0 1 0 , 1 1 , 1
= + = + = h y y x f y y
9 , 6 5 , 0 ) 4 1 , 0 6 3 , 0 4 ( 6 ) , , (
0 , 2 0 , 1 0 2 0 , 2 1 , 2
= + = + = h y y x f y y
Para 2 = j e 0 , 1
1
= x
25 , 2 5 , 0 ) 3 5 , 0 ( 3 ) , , (
1 , 2 1 , 1 1 1 1 , 1 2 , 1
= + = + = h y y x f y y
715 , 7 5 , 0 ) 3 1 , 0 9 , 6 3 , 0 4 ( 9 , 6 ) , , (
1 , 2 1 , 1 1 2 1 , 2 2 , 2
= + = + = h y y x f y y
Para 3 = j e 5 , 1
1
= x
6875 , 1 5 , 0 ) 25 , 2 5 , 0 ( 25 , 2 ) , , (
2 , 2 2 , 1 2 1 2 , 1 3 , 1
= + = + = h y y x f y y


139
44525 , 8 5 , 0 ) 25 , 2 1 , 0 715 , 7 3 , 0 4 ( 715 , 7 ) , , (
2 , 2 2 , 1 2 2 2 , 2 3 , 2
= + = + = h y y x f y y
Para 4 = j e 0 , 2
1
= x
265625 , 1 5 , 0 ) 6875 , 1 5 , 0 ( 6875 , 1 ) , , (
3 , 2 3 , 1 3 1 3 , 1 4 , 1
= + = + = h y y x f y y
0940875 , 9 5 , 0 ) 6875 , 1 1 , 0 44525 , 8 3 , 0 4 ( 44525 , 8 ) , , (
3 , 2 3 , 1 2 2 3 , 2 4 , 2
= + = + = h y y x f y y
Resultando nos valores tabelados:

J
j
x
j
y
, 1

j
y
, 2

0 0 4 6
1 0,5 3,0000000 6,9000000
2 1,0 2,2500000 7,7150000
3 1,5 1,6875000 8,4452500
4 2,0 1,2656250 9,0940875

Exemplo: Solucione o sistema de equaes diferenciais do exemplo 8.9 utilizando o Mtodo de
Runge_Kutta de Quarta Ordem.
) , , ( 1 , 0 3 , 0 4
) , , ( 5 , 0
2 1 2 1 2
2
2 1 1 1
1
y y x f y y
dx
dy
y y x f y
dx
dy
= =
= =

Para a soluo do problema, necessita-se:

j
j
x
j
y
, 1

j
y
, 2

0 0 4 6
1 0,5
1 , 1
y
1 , 2
y
2 1,0
2 , 1
y
2 , 2
y
3 1,5
3 , 1
y
3 , 2
y


140
4 2,0
4 , 1
y
4 , 2
y

Para a soluo de uma nica equao tem-se:
h k k k k y y
i i
+ + + + =
+
)] 2 2 (
6
1
[
4 3 2 1 1

) , (
1 i i
y x f k =
)
2
1
,
2
1
(
1 2
hk y h x f k
i i
+ + =
)
2
1
,
2
1
(
2 3
hk y h x f k
i i
+ + =
) , (
3 4
hk y h x f k
i i
+ + =
Para o caso de um sistema, necessita-se de uma nova indexao:
Seja um sistema com m equaes. Assume-se que tenham sido determinadas as m
aproximaes para o passo j: ] ,......, , , [
, , 3 , 2 , 1 j m j j j
y y y y . Para se obter as novas aproximaes
] ,......, , , [
1 , 1 , 3 1 , 2 1 , 1 + + + + j m j j j
y y y y do passo 1 + j , necessita-se calcular as constantes na seguinte
sequncia:
Para m i ,...., 2 , 1 = determina-se:
) , (
, , , 2 , , 1 , 1 j m j j j i i
y y y x f k =
Calculados todos os
i
k
, 1
, Calcula-se para m i ,...., 2 , 1 = :
)
2
1
,.....,
2
1
,
2
1
,
2
1
(
, 1 , 2 , 1 , 2 1 , 1 , 1 , 2 m j m j j j i
hk y hk y hk y h x f k + + + + =
Calculados todos os
i
k
, 2
, Calcula-se para m i ,...., 2 , 1 = :
)
2
1
,.....,
2
1
,
2
1
,
2
1
(
, 2 , 2 , 2 , 2 1 , 2 , 1 , 3 m j m j j j i
hk y hk y hk y h x f k + + + + =
Calculados todos os
i
k
, 3
, Calcula-se para m i ,...., 2 , 1 = :
) ,....., , , (
, 3 , 2 , 3 , 2 1 , 3 , 1 , 4 m j m j j j i
hk y hk y hk y h x f k + + + + =




141
Calculadas todas as constantes, pode-se determinar para m i ,...., 2 , 1 = as novas estimativas
paro o passo 1 + j .
h k k k k y y
i i i i j i j i
+ + + + =
+
)] 2 2 (
6
1
[
, 4 , 3 , 2 , 1 , 1 ,

Para o exemplo, tem-se 2 = m a nova estimativa no passo 1 + j dada por:
h k k k k y y + + + + = )] 2 2 (
6
1
[
1 , 4 1 , 3 1 , 2 1 , 1 0 , 1 1 , 1

h k k k k y y + + + + = )] 2 2 (
6
1
[
2 , 4 2 , 3 2 , 2 2 , 1 0 , 2 1 , 2

) , , (
, 2 , 1 1 1 , 1 j j j
y y x f k =
) , , (
, 2 , 1 2 2 , 1 j j j
y y x f k =
)
2
1
,
2
1
,
2
1
(
2 , 1 , 2 1 , 1 , 1 1 1 , 2
hk y hk y h x f k
j j j
+ + + =
)
2
1
,
2
1
,
2
1
(
2 , 1 , 2 1 , 1 , 1 2 2 , 2
hk y hk y h x f k
j j j
+ + + =
)
2
1
,
2
1
,
2
1
(
2 , 2 , 2 1 , 2 , 1 1 1 , 3
hk y hk y h x f k
j j j
+ + + =
)
2
1
,
2
1
,
2
1
(
2 , 2 , 2 1 , 2 , 1 2 2 , 3
hk y hk y h x f k
j j j
+ + + =
) , ,
2
1
(
2 , 3 , 2 1 , 3 , 1 1 1 , 4
hk y hk y h x f k
j j j
+ + + =
) , ,
2
1
(
2 , 3 , 2 1 , 3 , 1 2 2 , 4
hk y hk y h x f k
j j j
+ + + =
Para o passo 1 do exemplo:
2 4 5 , 0 ) 6 , 4 , 0 ( ) , , (
1 0 , 2 0 , 1 0 1 1 , 1
= = = = f y y x f k
8 , 1 4 1 , 0 6 3 , 0 4 ) 6 , 4 , 0 ( ) , , (
2 0 , 2 0 , 1 0 2 2 , 1
= = = = f y y x f k
75 , 1 ) 45 , 6 , 5 , 3 , 25 , 0 ( )
2
1
,
2
1
,
2
1
(
1 2 , 1 0 , 2 1 , 1 0 , 1 0 1 1 , 2
= = + + + = f hk y hk y h x f k
715 , 1 ) 45 , 6 , 5 , 3 , 25 , 0 ( )
2
1
,
2
1
,
2
1
(
2 2 , 1 0 , 2 1 , 1 0 , 1 0 2 2 , 2
= = + + + = f hk y hk y h x f k


142
7813 , 1 ) 4285 , 6 , 5625 , 3 , 25 , 0 ( )
2
1
,
2
1
,
2
1
(
1 2 , 2 0 , 2 1 , 2 0 , 1 0 1 1 , 3
= = + + + = f hk y hk y h x f k
7151 , 1 ) 4285 , 6 , 5625 , 3 , 25 , 0 ( )
2
1
,
2
1
,
2
1
(
2 2 , 2 0 , 2 1 , 2 0 , 1 0 2 2 , 3
= = + + + = f hk y hk y h x f k
5547 , 1 ) 8575625 , 6 , 109375 , 3 , 25 , 0 ( ) , ,
2
1
(
1 2 , 3 0 , 2 1 , 3 0 , 1 0 1 1 , 4
= = + + + = f hk y hk y h x f k
6318 , 1 ) 8575625 , 6 , 109375 , 3 , 25 , 0 ( ) , ,
2
1
(
2 2 , 3 0 , 2 1 , 3 0 , 1 0 2 2 , 4
= = + + + = f hk y hk y h x f k
Resultando nas novas aproximaes:
1152 , 3 5 , 0 ] 5547 , 1 7813 , 1 2 75 , 1 2 2 [ ) 6 / 1 ( 4
)] 2 2 (
6
1
[
1 , 4 1 , 3 1 , 2 1 , 1 0 , 1 1 , 1
= + =
= + + + + = h k k k k y y

8577 , 6 5 , 0 ] 6318 , 1 7151 , 1 2 715 , 1 2 8 , 1 [ ) 6 / 1 ( 6
)] 2 2 (
6
1
[
2 , 4 2 , 3 2 , 2 2 , 1 0 , 2 1 , 2
= + + +
= + + + + = h k k k k y y

Os Resultados passo passo so dados abaixo:
J=1
k11 = -2 k12 = 1.8000 k21 = -1.7500 k22 = 1.7150 k31 = -1.7813 k32 = 1.7151
k41 = -1.5547 k42 = 1.6318 y1 = 3.1152 y2 = 6.8577
j=2
k11 = -1.5576 k12 =1.6312 k21 = -1.3629 k22 =1.5478 k31 = -1.3873 k32 =1.5492
k41 = -1.2108 k42 = 1.4682 y1 = 2.4262 y2 = 7.6321
j=3
k11 = -1.2131 k12 = 1.4678 k21 = -1.0614 k22 =1.3880 k31 = -1.0804 k32 = 1.3902
k41 = -0.9430 k42 = 1.3132 y1 = 1.8895 y2 = 8.3269
j=4
k11 = -0.9448 k12 = 1.3130 k21 = -0.8267 k22 =1.2381 k31 = -0.8414 k32 = 1.2408
k41 = -0.7344 k42 = 1.1689 y1 = 1.4716 y2 = 8.9469
Resultando na tabela:


143

j
j
x
j
y
, 1

j
y
, 2

0 0 4,0000 6,0000
1 0,5 3,1152 6,8577
2 1,0 2,4262 7,6321
3 1,5 1,8895 8,3269
4 2,0 1,4716 8,9469

Exemplo: Resolva a equao dinmica do circuito, considerando que antes do fechamento da
chave S no havia nenhuma energia armazenada no circuito, = 2 R , H L 2 = e F C 5 , 0 = ,
integrando de 0 = t a t=5Seg, com passo de integrao 0,1 e o Mtodo de Runge-Kutta de
Quarta Ordem.


S
V(t)=sin(3,5t) i(t)


Ao fechar-se a chave S, pode-se analisar o comportamento dinmico do circuito a partir da Lei
de Kirchoff para tenses:

+ + = dt t i
C dt
t di
L t Ri t V ) (
1 ) (
) ( ) (
Derivando a equao:
) (
1 ) ( ) ( ) (
2
2
t i
C
dt
t i d
L
dt
t di
R
dt
t dV
+ + =
Substituindo a expresso da tenso e rearranjando a equao, tem-se:
) 5 , 3 cos( 5 , 3 ) ( 2
) (
2
) (
2
2
2
t t i
dt
t di
dt
t i d
= + +
1.1.1.1.5 1.1.1.1.4

1.1.1.1.6


144
) 5 , 3 cos( 5 , 3 ) ( 2 ) ( 2 ) ( 2
' ' '
t t i t i t i = + +

Como no havia nenhuma energia armazenada no circuito, as condies para 0 = t so nulas,
ou seja: 0 ) 0 ( = i e 0
) 0 (
=
dt
di
.
Inicialmente deve-se transformar a equao de segunda ordem num sistema com duas
equaes:
) 5 , 3 cos(
2
5 , 3
) ( ) ( ) 5 , 3 cos(
2
5 , 3
) ( ) ( ) ( ) (
) ( ) ( ) (
) ( ) (
1 2
' ' ' '
2
2
' '
1
1
t t z t z t t i t i t i t z
t z t i t z
t i t z
+ = + = =
= =
=

Tem-se o seguinte sistema:
)) ( ), ( , ( ) 5 , 3 cos(
2
5 , 3
) ( ) ( ) ( ) (
)) ( ), ( , ( ) (
2 1 2 1 2
' ' '
2
2 1 1 2
'
1
t z t z t f t t z t z t i t z
t z t z t f z t z
= + = =
= =

0 ) 0 (
0 ) 0 (
2
1
=
=
z
z

Os resultados da integrao so dados pela tabela:
t ) ( ) (
1
t i t z = ) ( ) (
'
2
t i t z =
0.00 0.0000 0.0000
0.10 0.0084 0.1628
0.20 0.0313 0.2886
0.30 0.0644 0.3625
0.40 0.1018 0.3758
0.50 0.1374 0.3274
0.60 0.1654 0.2238
0.70 0.1808 0.0783
0.80 0.1803 -0.0908
0.90 0.1626 -0.2621
1.00 0.1285 -0.4139
1.10 0.0811 -0.5270
1.20 0.0249 -0.5866
1.30 -0.0342 -0.5847
1.40 -0.0899 -0.5205
1.50 -0.1364 -0.4008
1.60 -0.1687 -0.2393
1.70 -0.1835 -0.0546
1.80 -0.1796 0.1317
1.90 -0.1578 0.2979
2.00 -0.1213 0.4246
2.10 -0.0747 0.4972


145
2.20 -0.0240 0.5076
2.30 0.0247 0.4552
2.40 0.0652 0.3470
2.50 0.0927 0.1966
2.60 0.1037 0.0227
2.70 0.0971 -0.1530
2.80 0.0738 -0.3090
2.90 0.0367 -0.4259
3.00 -0.0096 -0.4892
3.10 -0.0591 -0.4911
3.20 -0.1057 -0.4311
3.30 -0.1435 -0.3163
3.40 -0.1676 -0.1605
3.50 -0.1749 0.0176
3.60 -0.1641 0.1963
3.70 -0.1363 0.3540
3.80 -0.0946 0.4716
3.90 -0.0438 0.5348
4.00 0.0102 0.5359
4.10 0.0613 0.4746
4.20 0.1033 0.3584
4.30 0.1316 0.2012
4.40 0.1428 0.0219
4.50 0.1359 -0.1579
4.60 0.1120 -0.3165
4.70 0.0740 -0.4348
4.80 0.0268 -0.4986
4.90 -0.0237 -0.5004
5.00 -0.0712 -0.4400
Os valores so plotados na figura:












0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6


146
10 Utilizando o MATLAB

Familiarizao com o ambiente de trabalho e assimilao dos comandos principais.

A ferramenta de suporte computacional utilizada ao longo deste curso ser o MATLAB.

1. Sintaxe de comandos
Utilize a funo helpwin <comando>

2. Operaes aritmticas

adio +
subtrao -
multiplicao *
diviso /
potenciao ^

O MATLAB executa as operaes aritmticas da esquerda para a direita respeitando a hierarquia
existente na matemtica.

Ex.:
3^2-5-6/(3*2)

ans =

3

3. Variveis
Para identificao das variveis, o MATLAB diferencia maisculas e minsculas. No necessria a
alocao de memria para as variveis, pois o MATLAB o far automaticamente assim que um valor
atribudo a uma varivel pela primeira vez.
A atribuio realizada da seguinte forma:
a=1

a =

1

O acesso realizado atravs do nome da varivel:
a

a =

1

Uma varivel s pode ser acessada se j foi criada, isto , se algum valor j foi atribudo mesma.

No exemplo abaixo a varivel acessada sem ter sido criada:
b
??? Undefined function or variable 'b'.
O comando who mostra as variveis que esto sendo utilizadas no momento e o comando clear exclui as
variveis do ambiente de trabalho do MATLAB.

4. Caracteres especiais usados na janela de comandos


147

= Comando de atribuio
[ ] Delimitar elementos de matrizes e vetores
( ) Alternar a ordem de precedncia das expresses aritmticas
. Ponto decimal
, Separa argumentos de funes e elementos matrizes e vetores
; Finalizador de linha com supresso de impresso
% Comentrio
: Gerao de um vetor com intervalos definidos

5. Funes matemticas bsicas

acos Arco-coseno
asin Arco-seno

atan Arco-tangente
cos Coseno
cosh Coseno hiperbolico
exp Exponencial com base e
log Logaritmo natural
log10 Logaritmo decimal
rand Gera nmeros aleatrios com distribuio uniforme
randn Gera nmeros aleatrios com distribuio normal
rat Aproximao racional
round Arredonda o nmero para o inteiro mais prximo
sign Retorna 1 se for positivo e 0 se for negativo
sin Seno
sinh Seno hiperblico
sqrt Raiz quadrada
tan Tangente
tanh Tangente hiperblica
O MATLAB trabalha com ngulos em radianos.

6. Operaes com vetores

Os vetores devem ser declarados em colchetes:
u = [1 2 3 4]

u =

1 2 3 4

O mesmo resultado seria obtido com:
u = [1,2,3,4]

u =

1 2 3 4

As operaes aritmticas so realizadas elemento a elemento do vetor:
z = u+3

z =


148

4 5 6 7

A operao com apenas um elemento do vetor pode ser feita, especificando o elemento a ser tratado:
z(3) = z(3)+1

z =

4 5 7 7

Se quiser saber o nmero de elementos do vetor , utilize a funo length:
length(z)

ans =

4

A transposta calculada utilizando o smbolo :
w = z'

w =

4
5
7
7

Operaes especiais:

.* Multiplicao de vetores
./ Diviso direita de vetores
.\ Diviso esquerda de vetores
.^ Exponenciao

Ex.:
mult = u.*z

mult =

4 10 21 28

Para a gerao de vetores utilizando intervalos:
x = 0:2:10

x =

0 2 4 6 8 10
Funes teis no tratamento de vetores:

max( ) Devolve o maior dos componentes do vetor
min( ) Devolve o menor dos componentes do vetor
mean( ) Devolve o valor mdio dos componentes do vetor

Ex.:


149
mean(x)

ans =

5
7. Operaes com matrizes

A matriz pode ser definida de maneira semelhante aos vetores, diferenciando-se apenas na necessidade da
digitao de um ; para a separao das diferentes colunas:
a = [1 2 3 ;4 5 6;7 8 9]

a =

1 2 3
4 5 6
7 8 9

As matrizes podem Ter elementos identificados individualmente:
a(2,1)

ans =

4

O tamanho da matriz pode ser obtido pela funo size:
size(a)

ans =

3 3

Para extrair uma submatriz de uma matriz:
b = a(1:2,1:2)

b =

1 2
4 5

Para inserir uma linha na matriz:
c = [b;1 0]

c =

1 2
4 5
1 0

Nas operaes de adio e subtrao os elementos de uma matriz so somados ou subtrados com o seu
correspondente na outra matriz, quando matrizes de mesmo tamanho. A multiplicao e a diviso por
escalares efetuado elemento a elemento da matriz.
div = a*3

div =


150

3 6 9
12 15 18
21 24 27

A exponenciao individual dos elementos de uma matriz pode ser feito:
exp = a.^2

exp =

1 4 9
16 25 36
49 64 81

A multiplicao de matrizes s pode acontecer se o nmero de colunas de uma matriz for igual ao nmero
de linhas da outra.
size(a)

ans =

3 3

size(div)

ans =

3 3

mult = a*div

mult =

90 108 126
198 243 288
306 378 450

A fim de mostrar diviso de matrizes, vamos definir duas novas matrizes:
x = [15 10 8;7 1 0;2 5 1];
y = [3 -1 2;-5 1 1;0 3 4];
div = x/y

div =

-2.0213 -4.2128 4.0638
-0.5745 -1.7447 0.7234
-1.8511 -1.5106 1.5532

divinv = x\y

divinv =

-0.7033 0.0239 0
-0.0766 0.8325 1.0000
1.7895 -1.2105 -1.0000


151

A potenciao de matrizes eqivale a sucessivas multiplicaes por ela mesma:
pot = a^3

pot =

468 576 684
1062 1305 1548
1656 2034 2412

A transposta da matriz obtida por:
trans = a'

trans =

1 4 7
2 5 8
3 6 9

Funes para tratar matrizes:

det Determinante de uma matriz
eye Gera uma matriz identidade
inv Calcula a inversa da matriz
ones Gera uma matriz unitria
rand Gera uma matriz randmica
tril Transforma/gera uma matriz triangular inferior
triu Transforma/gera uma matriz triangular superior
zeros Gera uma matriz de zeros (nula)

8. Nmeros Complexos

A parte imaginria do nmero complexo pode ser simbolizada pelas letras i e j indistintamente.

Ex.:
z1 = 3+4i

z1 =

3.0000 + 4.0000i

O conjugado do nmero complexo pode ser obtido utilizando a funo conj:
z2 = conj(z1)

z2 =

3.0000 - 4.0000i

As operaes com nmeros complexos utilizam os operadores usuais. A potenciao, como visto com as
matrizes, correspondente multiplicao sucessiva do nmero por ele mesmo.

Funes teis para trabalhar com nmeros complexos:

real Retorna a parte real do nmero complexo


152
imag Retorna a parte imaginria do nmero complexo
abs Retorna o mdulo do vetor complexo
angle Retorna o ngulo do vetor complexo

9. Polinmios

Seja o polinmio:
X
3
3x
2
+4x-4
No MATLAB ele definido da seguinte forma:
poli = [1 -3 4 -4]

poli =

1 -3 4 -4

Para encontrar as razes deste polinmio, usamos o comando roots:
r = roots(poli)

r =

2.0000
0.5000 + 1.3229i
0.5000 - 1.3229i

Com as razes do polinmio, pode-se obter os coeficientes deste usando a funo poly:
p = poly(r)

p =

1.0000 -3.0000 4.0000 -4.0000

A funo conv utilizada para a multiplicao de polinmios:
p1 = [2 3 1];
p2 = [5 -2];
p3 = conv(p1,p2)

p3 =

10 11 -1 -2

J a funo deconv utilizada para a diviso:
[Q R] = deconv(p3,p1)

Q =

5 -2


R =

0 0 0 0

10. Encontrando a melhor curva partindo de dados experimentais



153
O MATLAB permite fazer a interpolao polinomial partindo-se de dados experoimentais, utilizando o
comando polyfit.

Os pontos experimentais abaixo representam a posio de um mvel ao longo do tempo:
S(cm) 4,00 6,71 9,43 12,18 14,87 17,7
t(s) 0 1 2 3 4 5

Vamos definir os vetores com dados experimentais:
S = [4 6.4 9.93 12.18 14.87 16.7];
t = [0 1 2 3 4 5];

Agora vamos traar os pontos para vermos a evoluo dos mesmos:
plot(t,S,'+')
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
4
6
8
10
12
14
16
18

Agora iremos traar a reta obtida sobre os dados experimentais:
poly = polyfit(t,S,1)

poly =

2.6046 4.1686

hold on;
t = 0:.1:5;
S = polyval(poly,t);
plot(t,S);


154
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
4
6
8
10
12
14
16
18

Grficos em 2D

Os principais comandos utilizados para a criao de grficos so:

plot Plota um vetor ou uma funo
title Adiciona ttulo ao grfico
xlabel Adiciona um rtulo ao eixo x
ylabel Adiciona um rtulo ao eixo y
text Insere um texto numa determinada posio da janela grfica
gtext Insere um texto no grfico usando o mouse como posicionador
grid Traa linhas de grade

A formatao de cor e estilo da linha podem ser facilmente ajustados atravs de argumentos do comando
plot.

Cor da Linha Estilo da Linha
Caracter Cor Caracter Estilo
y amarela . ponto
m margenta o crculo
c cyan x marca x
r vermelha + mais
g verde * asterisco
b azul - slido
w branca : pontilhado
k preta -- tracejado

11. Programando com o MATLAB

Os operadores relacionais, aqueles que respondem a uma determina operao com verdadeiro e falso, e
que so simbolizados respectivamente por 1 e 0. A tabela a seguir relaciona operador com a descrio:

Operador Descrio
< Menor que
<= Menor ou igual
> Maior que


155
>= Maior ou igual
== Igual
~= Diferente

No MATLAB temos os seguintes operadores lgicos:

Operador Descrio
& AND
| OR
~ NOT

As rotinas especiais de programao esto descritas abaixo:

Rotinas Descrio
For <cond>
end
Gera um loop enumervel
while <cond>
end
Gera um loop enquanto uma condio (<cond>) for verdadeira
if <cond>
elseif
end
Comando executvel condicional
if <cond>
else
end
Comando executvel condicional
break Sair fora de um loop for ou while
return Retornar a uma funo (arquivo.m)
pause Para num ponto do programa at que se aperte qualquer tecla

Essas rotinas associadas aos inmeros recursos oferecidos pelo MATLAB, propiciam ao usurio,
desenvolver desde simples programas at os mais sofisticados.

Objetivo 2: Desenvolva um programa par o clculo do produto interno.

=
=
=
=
n
i
i i
T
T
n
T
n
y x y x
y y y y y
x x x x x
1
3 2 1
3 2 1
) .., ,......... , , (
) .., ,......... , , (

Objetivo 3: Desenvolva um programa par o clculo do produto entre duas matrizes.
p m
A

,
n p
B


B A C =

=
=
p
k
kj ik ij
b a c
1


Objetivo 4: Realize as seguintes operaes no MatLab:
) , (
; 1 * 7 2 .^ * 21 3 .^ * 35 4 .^ * 35 5 .^ * 21 6 .^ * 7 7 .^
012 . 1 : 0001 . 0 : 988 . 0
y x plot
x x x x x x x y
x
+ + + =
=

O resultado obtido o esperado? Se no for o esperado, qual a explicao para obter-se tal resultado.
Realize agora a operao



156
) , (
; 7 ).^ 1 (
012 . 1 : 0001 . 0 : 988 . 0
y x plot
x y
x
=
=


Analise e compare os resultados.

Objetivo 5: Representao do nmero 0,1 em base hexadecimal. Representao no MATLAB:
e s
f x 2 ) 1 ( ) 1 ( + =





1 bit 11 bits 52 bits


Como a representao da mantissa ficaria no MATLAB?
Confirme com os comandos:
T=0.1;
Format hex
t

Objetivo 6: Considere o sistema de equaes lineares:
3 . 3 3 . 0 3
11 10
2 1
2 1
= +
= +
x x
x x

Uma soluo bvia para o sistema
1
1
= x
e
1
2
= x
. Utilizando o MatLab com os comandos: A=[10 1;3
0.3]; b=[11;3.3]; x=A\b, solucione o sistema. Analise o resultado e justifique.


Objetivo 7: Arquivos M-file. Embora voc possa trabalhar inteiramente nas linhas de comando do
MATLAB, voc tambm pode armazenar em arquivos externos. Esses arquivos so equivalentes a
programas, funes, subrotinas e procedimentos de outras linguagens. Os arquivos M-file so criados a
partir do editor do MATLAB. Abaixo apresenta-se um arquivo para o clculo da raiz quadrada de um
nmero real maior ou igual a zero. Coloque este arquivo no formato M-file e execute-o.

function [x,iter]=sqrtn(a,tol)
%sqrtn Raiz quadrada de um nmero real maior que zero pelo Mtodo de Newton.
% x=sqrtn(z,tol) calcula a raiz do nmero real a utilizando o Mtodo de Newton
% a assumido ser maior ou igual a zero
% tol a tolerncia de convergencia (default eps) - eps - epsilon da mquina
% [x,iter]=sqrtn(a,tol) retorna tambm o nmero de iteraes (iter) para a con-
% vergncia.
if nargin<2,tol=eps;end
x=a;
iter=0;
xdiff=inf;
fprintf(' k x_k erro relativo\n')
while xdiff>tol
iter=iter+1;
xold=x;
x=(x+a/x)/2;
xdiff=abs(x-xold)/abs(x);
fprintf('%2.0f: %20.16e %9.2e\n',iter,x,xdiff)
if iter>50
error('No convergiu apos 50 iteraes')
end
end
s e f


157

Objetivo 8: Introduo ao Mtodo da Bisseo para o clculo de razes de funes.

Algoritmo:

12. Entrada:
12.1 funo f(x)
12.2 intervalo de convergncia [a,b]
12.3 tolerncia
12.4 nmero de iteraes L
13. f0 f(a); f1 f(b)
14. Teste de viabilidade de intervalo:
14.1 Se f0*f1 > 0
14.1.1 Erro na Entrada
14.1.2 Entrar com novo intervalo
14.2 Seno
14.2.1 x0 a
14.2.2 x1 b
14.2.3 i 1
15. Enquanto ((|f0| > ou |f1| > ) e i < L)
15.1 X2 0,5*(x0+x1)
15.2 f2 f(x2)
15.3 Se (f2*f0 < 0)
15.3.1 x1 x2
15.3.2 f1 f2
15.4 Seno
15.4.1 x0 x2
15.4.2 f0 f2
15.5 i i+1
16. se (i > L)
16.1 No atingiu exatido em L iteraes
17. Seno
17.1 A exatido foi atingida em i-1 iteraes, e a raiz x2
18. Fim


Objetivo 9: Seja a funo
x e x f
x
/ ) 1 ( ) ( =

Compute no MatLab a funo por meio do algoritmo:
Algoritmo 1:
Se x=0

1 ) ( = x f

Caso contrrio

x e x f
x
/ ) 1 ( ) ( =

Fim

Calcule para
i
x 10 =
com i variando de -5 a -16 com passo 1.
Analise o resultado e verifique o que est acontecendo.

Compute agora com um algoritmo matematicamente equivalente:

Algoritmo 2:
x
e y =



158
Se y=1

1 ) ( = x f

Caso contrrio

) ln( / ) 1 ( ) ( y y x f =

Fim

Calcule tambm para
i
x 10 =
com i variando de -5 a -16 com passo 1.
Analise o resultado e verifique o que est acontecendo.

Compare os resultados e apresente as concluses.




159

Referncias Bibliogrficas

[1] BARROSO, Lenidas C. et. al., Clculo Numrico (com Aplicaes), 2
a
edio, Editora Harbra, So
Paulo, 1987.
[2] CLAUDIO, Dalcidio M., MARINS, Jussara M., Clculo Numrico Computacional, 2
a
edio, Atlas,
1994
[3] SANTOS, Vitoriano R. B., Curso de Clculo Numrico, 4
a
edio, LTC, 1982.
[4] RUGGIERO, Mrcia A. G., LOPES, Vera Lcia R., Clculo Numrico: Aspectos Tericos e
Computacionais, 2
a
edio, Makron Books, So Paulo, 1996.
[5] CAMPOS, R. J. A., Clculo Numrico Bsico. 1

edio, Atlas, 1978


[6] CAMARGO, W. C. M., Apostila de Clculo Numrico. Departamento de Informtica. UFPR.

Você também pode gostar