81
Universidade Federal do Paraná Departamento de Informática CI-202 MÉTODOS NUMÉRICOS Prof. Ionildo José Sanches Prof. Diógenes Cogo Furlan E-Mail: [email protected] URL: http://www.ionildo.cjb.net/metodos/ CURITIBA 01/2004

Sanches, i.j. e Furlan, d. c. Métodos Numéricos

Embed Size (px)

DESCRIPTION

Livro métodos numéricos

Citation preview

  • Universidade Federal do ParanDepartamento de Informtica

    CI-202

    MTODOSNUMRICOS

    Prof. Ionildo Jos SanchesProf. Digenes Cogo Furlan

    E-Mail: [email protected]: http://www.ionildo.cjb.net/metodos/

    CURITIBA01/2004

  • SUMRIO

    1 REPRESENTAO DE NMEROS REAIS E ERROS.................................................................................41.1 INTRODUO......................................................................................................................................................4

    1.1.1 Erros na Fase de Modelagem............................................................................................................ .................41.1.2 Erros na Fase de Resoluo.......................................................................................................... .....................4

    1.2 REPRESENTAO DOS NMEROS REAIS..................................................................................................................51.3 SISTEMA DECIMAL E BINRIO..............................................................................................................................61.4 ARITMTICA DE PONTO FLUTUANTE......................................................................................................................8

    2 CONCEITO DE ERRO......................................................................................................................................122.1 INTRODUO....................................................................................................................................................122.2 ERROS ABSOLUTOS E RELATIVOS........................................................................................................................122.3 ERRO DE ARREDONDAMENTO.............................................................................................................................122.4 ERRO DE TRUNCAMENTO...................................................................................................................................142.5 PROPAGAO DE ERROS....................................................................................................................................14

    3 ZEROS DE EQUAES TRANSCENDENTES E POLINOMIAIS...........................................................163.1 INTRODUO....................................................................................................................................................16

    3.1.1 Derivada de uma funo num ponto........................................................................................... ......................163.1.2 Tipos de Mtodos........................................................................................................................................... ...163.1.3 Isolamento de Razes........................................................................................................................ ................17

    3.1.3.1 Nmero de Razes Reais...........................................................................................................................................................................183.1.3.2 Refinamento..............................................................................................................................................................................................18

    3.1.4 Classificao dos mtodos.......................................................................................................................... ......183.2 MTODO DA BISSEO......................................................................................................................................19

    3.2.1 Estimativa do Nmero de Iteraes......................................................................................... .........................193.2.2 Consideraes Finais...................................................................................................................... .................203.2.3 Exemplos................................................................................................................................................. .........20

    3.3 MTODO DA FALSA POSIO.............................................................................................................................213.3.1 Casos especiais.......................................................................................................................... ......................223.3.2 Consideraes finais............................................................................................................... .........................233.3.3 Exemplos................................................................................................................................................. .........23

    3.4 MTODO DA ITERAO LINEAR..........................................................................................................................243.4.1 Casos de convergncia................................................................................................................. ....................253.4.2 Consideraes finais............................................................................................................... .........................263.4.3 Exemplos................................................................................................................................................. .........26

    3.5 MTODO DE NEWTON-RAPHSON OU MTODO DAS TANGENTES..............................................................................273.5.1 Consideraes finais............................................................................................................... .........................283.5.2 Exemplos................................................................................................................................................. .........283.5.3 Condies de Newton-Raphson-Fourier........................................................................................ ...................29

    3.6 MTODO DA SECANTE.......................................................................................................................................303.6.1 Exemplos................................................................................................................................................. .........32

    3.7 MTODO MISTO...............................................................................................................................................323.7.1 Exemplos................................................................................................................................................. .........33

    4 SISTEMAS LINEARES.....................................................................................................................................354.1 INTRODUO....................................................................................................................................................35

    4.1.1 Classificao Quanto ao Nmero de Solues................................................................................... ...............364.2 MTODOS DIRETOS (ALGORITMOS DIRETOS).......................................................................................................36

    4.2.1 Regra de Cramer..................................................................................................................................... .........364.2.1.1 Exemplos...................................................................................................................................................................................................36

    4.2.2 Mtodo da Eliminao de Gauss............................................................................................... .......................374.2.2.1 Resoluo de Sistemas Triangulares.........................................................................................................................................................384.2.2.2 Estratgias de Pivoteamento.....................................................................................................................................................................384.2.2.3 Classificao do Sistema Triangular.........................................................................................................................................................394.2.2.4 Exemplos...................................................................................................................................................................................................39

    4.2.3 Mtodo de Jordan........................................................................................................................................ .....40

    ii

  • 4.2.4 Exemplos................................................................................................................................................. .........404.3 MTODOS ITERATIVOS (ALGORITMOS ITERATIVOS)................................................................................................41

    4.3.1 Mtodo de Gauss-Jacobi ( Algbrico )........................................................................................................ ......414.3.1.1 Exemplos...................................................................................................................................................................................................42

    4.3.2 Mtodo de Gauss-Jacobi ( Matricial )........................................................................................ ......................434.3.2.1 Exemplos...................................................................................................................................................................................................44

    4.3.3 Mtodo de Gauss-Seidel ( Algbrico )............................................................................................................. ..454.3.3.1 Exemplos...................................................................................................................................................................................................46

    4.3.4 Mtodo de Gauss-Seidel ( Matricial )............................................................................................. ..................474.3.4.1 Exemplos...................................................................................................................................................................................................48

    4.4 MTODO DE RELAXAO..................................................................................................................................49

    5 INTERPOLAO..............................................................................................................................................565.1 INTRODUO....................................................................................................................................................56

    5.1.1 Conceito de Interpolao....................................................................................................... ..........................565.2 INTERPOLAO LINEAR.....................................................................................................................................57

    5.2.1 Obteno da Frmula..................................................................................................................................... ..575.2.2 Exemplos................................................................................................................................................. .........58

    5.3 INTERPOLAO QUADRTICA.............................................................................................................................595.3.1 Obteno da Frmula..................................................................................................................................... ..595.3.2 Exemplos................................................................................................................................................. .........59

    5.4 INTERPOLAO DE LAGRANGE............................................................................................................................605.4.1 Obteno da Frmula..................................................................................................................................... ..615.4.2 Exemplos: ...................................................................................................................................................... ..62

    5.5 INTERPOLAO PARABLICA PROGRESSIVA..........................................................................................................635.6 DIFERENAS DIVIDIDAS.....................................................................................................................................66

    5.6.1 Propriedade do Operador Diferenas Divididas..................................................................................... ..........665.7 INTERPOLAO DE NEWTON COM DIFERENAS DIVIDIDAS.....................................................................................66

    5.7.1 Exemplos................................................................................................................................................. .........675.8 INTERPOLAO DE GREGORY-NEWTON................................................................................................................68

    5.8.1 Diferenas Ordinrias ou Finitas........................................................................................... ..........................685.8.2 Relao entre diferenas divididas e diferenas ordinrias................................................................... ............695.8.3 Gregory-Newton usando Diferenas Ordinrias.............................................................................. .................695.8.4 Exemplos................................................................................................................................................. .........69

    6 INTEGRAO NUMRICA...........................................................................................................................716.1 INTRODUO....................................................................................................................................................71

    6.1.1 Frmulas de Newton-Cotes.................................................................................................... ..........................726.2 REGRA DOS RETNGULOS..................................................................................................................................72

    6.2.1 Exemplos................................................................................................................................................. .........746.3 REGRA DOS TRAPZIOS.....................................................................................................................................75

    6.3.1 Regra do Trapzio Repetida.................................................................................................. ...........................766.3.2 Exemplos................................................................................................................................................. .........76

    6.4 REGRA DE SIMPSON..........................................................................................................................................776.4.1 Regra de Simpson Repetida............................................................................................................. .................786.4.2 Exemplos................................................................................................................................................. .........78

    REFERNCIAS BIBLIOGRFICAS................................................................................................................81

    iii

  • 1 Representao de Nmeros Reais e Erros

    1.1 IntroduoClculo 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.).

    ProblemaFsico

    ModeloMatemtico 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).

    1.1.1 Erros na Fase de ModelagemAo 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 = do + vo * t + 1/2 * * t2onde:

    d : distncia percorrida do : distncia inicial vo : velocidade inicial t : tempo : acelerao

    Determinar a altura de um edifcio com uma bolinha de metal e um cronmetro: 3sd = 0 + 0 * 3 + 1/2 * 9.8 * 32 = 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.

    1.1.2 Erros na Fase de ResoluoPara 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.

    4

  • 1.2 Representao dos Nmeros Reais

    {Nmeros Complexos (2+ 3 -1 )Reais { Irracionais ( pi; 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 , pi e 31 .

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

    a) A = 31400m2 b) A = 31416 m2c) A = 31415.92654 m2

    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 pi, por exemplo, no pode ser representado atravs de um nmero finito de dgitos decimais. No exemplo mostrado acima, o nmero pi 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 pi, Qualquer que seja a circunferncia, a sua rea nunca ser obtida exatamente, uma vez que pi 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 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.

    5

  • 1.3 Sistema Decimal e BinrioNo 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*103 + 0*102 + 1*101 + 5*100 = 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.

    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).

    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*24 + 0*23 + 0*22 + 1*21 + 1*20 = 16 + 0 + 0 + 2 + 1 = 19

    De um modo geral, um nmero na base , (ajaj-1...a2a1a0), 0 ak ( -1), k = 1, 2, ..., j, pode ser escrito na forma polinomial:

    aj j + aj-1 j-1+...+ a22 + a11 + a00

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

    A converso de um nmero decimal para binrio feita da seguinte forma:

    19 291 2

    41 220 2

    10 201

    19(10) = 10011(2)

    Consideremos agora a converso de um nmero fracionrio da base 2 para a base 10.

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

    0.0012 = 0*2-1 + 0*2-2 + 1*2-3 = 0.12510

    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.d1d2...dj...)2 sua representao no

    6

  • sistema binrio. Os dgitos binrios d1, d2, ..., dj, ... so obtidos atravs do seguinte algoritmo:

    Passo 0: r1 = r; k = 1

    Passo 1: Calcule 2rk.Se 2rk = 1, faa: dk = 1,caso contrrio, faa: dk = 0

    Passo 2: Faa rk+1 = 2rk dkSe rk+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: r1 = 0.125.

    k = 1 2r1 = 0.25 d1 = 0r2 = 0.25 d1 = 0.25

    k = 2 2r2 = 0.5 d2 = 0r3 = 0.5

    k = 3 2r3 = 1.0 d3 = 1r4 = 0

    Temos ento 0.12510 = 0.0012, sendo portanto a representao binria finita. J para r = 0.110, teremos: r1 = 0.1

    k = 1 2r1 = 0.2 d1 = 0r2 = 0.2

    k = 2 2r2 = 0.4 d2 = 0r3 = 0.4

    k = 3 2r3 = 0.8 d3 = 0r4 = 0.8

    k = 4 2r4 = 1.6 d4 = 1r5 = 0.6

    k = 5 2r5 = 1.2 d5 = 1r6 = 0.2 = r2

    Como r6 = r2, teremos que os resultados para k de 2 e 5 se repetiro e ento: r10 = r6 = r2 = 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.

    7

  • 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 = 011

    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 a seguir permite calcular 011

    1000

    .i= , sendo 100 o valor exato dessa somatria.

    PROGRAM Arredondamento;{$N+} {usar o co-processador numrico 80x87}VAR i : INTEGER;

    x : REAL;BEGIN

    x := 0;FOR i := 1 TO 1000 DO

    x := x + 0.1;WRITELN(x:16:14);

    END.

    Quando essa somatria efetuada utilizando o computador o valor : 99.99999998544808

    1.4 Aritmtica de Ponto FlutuanteUsa-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

    ttdddd ....321 321

    ++++

    onde:: a base em que a mquina opera;di: so nmeros inteiros contidos no intervalo 0 di ( - 1); i = 1, 2, ..., t; d1 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 dtt

    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:

    8

  • 0.12510 = 1

    102

    105

    10101 2 3

    0+ +

    .

    3.141510 = 0.31415 101 = 3

    101

    104

    101

    105

    10101 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:

    1010 = 10102 = 0.101 24 = 12

    02

    12

    21 2 34+ +

    .

    410 = 1002 = 0.1 * 23 = 12

    * 23

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

    2510 = 110012 = 0.11001 * 25 = 0.11001 * 2101

    12

    12

    02

    02

    12

    02

    02

    02

    02

    021 2 3 4 5 6 7 8 9 10

    + + + + + + + + +

    *

    2101

    ou, de uma forma mais compacta:

    1100100000 0101Mantissa 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:

    2510 =

    3.510 = 0.111 * 210

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

    que, na base decimal, tem o seguinte valor: 0.1111111111 * 21111 = 3273610

    0 1 1 0 0 1 0 0 0 0 0 0 0 1 0 1Valor 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

    9

  • E o menor valor seria: 0.1111111111 * 21111 = 3273610

    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.d1d2d3 * 10e, 0 dj 9, d1 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 * 105 = 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 * 103. Observe que este nmero possui 5 dgitos na mantissa. Esto representados exatamente nesta mquina os nmeros: 0.235*103 e 0.236*103. Se for usado o truncamento, x ser representado por 0.235*103 e, se for usado o arredondamento, x ser representado por 0.236*103. 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

    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

    10

  • 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*109. 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 aumentam de forma significativa.

    O Turbo Pascal fornece 5 (cinco) tipos de real pr-definidos. Cada tipo tem um intervalo e uma preciso especificada:

    Tipo Intervalo Dgitos Tamanho (Bytes)Real 2.9E39 ... 1.7E38 11-12 6Single 1.5E45 ... 3.4E38 7-8 4Double 5.0E324 ... 1.7E308 15-16 8Extended 3.4E4932 ... 1.1E4932 19-20 10Comp

    9.2E18 ... 9.2E18 19-20 8

    O Turbo Pascal suporta dois modelos na gerao de cdigo com ponto flutuante: Software ponto flutuante, {$N} 80x87 ponto flutuante, {$N+}

    Deve-se usar a diretiva de compilao $N para escolher um dos dois modelos. Por default utilizado o primeiro modelo. Os tipos Single, Double, Extended e Comp so tipos de dados do co-processador 80x87, portanto para usar um destes 4 tipos necessita obrigatoriamente da diretiva de compilao {$N+}. A diretiva de compilao {$N+} faz com que o compilador gere cdigo para realizar o clculo de todos os tipos acima usando o co-processador numrico 80x87.

    11

  • 2 Conceito de Erro

    2.1 IntroduoA 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 captulo acima, sobre representao de nmeros reais, pudemos acompanhar vrias situaes em que ocorrem erros. Iremos a seguir falar um pouco mais sobre erros de arredondamento e erros de truncamento.

    2.2 Erros Absolutos e RelativosErro absoluto (EA) a diferena entre o valor exato de um nmero N e o seu valor aproximado N:

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

    EAN = N N Erro absoluto

    Por exemplo, sabendo-se que pi (3.14, 3.15) tomaremos para pi um valor dentro deste intervalo e teremos, ento, |EApi| = |pi - pi| < 0.01.

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

    ER EAN

    N NN

    NN

    = =

    ''

    'Erro Relativo

    claro que EAN 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 3733876,

    0,000096 < 10-4 = 0 373

    1,

    0,373 < 5*100

    2.3 Erro de ArredondamentoAo 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.

    12

  • 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)23 = 1.259 ... 1.26 (1.259 ... + 0.005 = 1.264 ... 1.26)

    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 23 , 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 Pascal, calcula uma aproximao do da mquina:

    PROGRAM Precisao;VAR Eps: REAL;BEGIN

    Eps := 1;REPEAT Eps := Eps / 2;UNTIL (Eps + 1 = 1);WRITELN('A maquina acha que ', Eps,' vale zero!');READLN;

    END.

    O programa acima, executado num Pentium, obteve a seguinte resposta: A mquina acha que 4.5474735089E-13 vale zero!

    Logo o nmero de dgitos significativos 14. Se em vez de usarmos o tipo Real, usarmos o tipo Extended, teremos 5.42101086242752E0020 e com o tipo Comp, teremos 0.00000000000000E+0000.

    13

  • 2.4 Erro de TruncamentoSo 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! ! !...

    ex = 12 3

    2 3

    + + + +x x x! !

    ...

    Fazendo truncamento:

    seno(x) x x x x xn

    nn

    + + + 3 5 7

    3 5 71

    ! ! !... ( )

    !

    ex 12 3

    2 3

    + + + + +x x x xn

    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.

    2.5 Propagao de ErrosDurante 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 Ea e Eb, os erros dos operandos.

    A + B = (a + Ea) + (b + Eb) = a + b + Ea + Eb EAA+B = Ea + EbA B = (a + Ea) (b + Eb) = a b + Ea Eb EAA-B = Ea EbA * B = (a + Ea) (b + Eb) = ab + aEb + bEa + Eb*Ea EAA*B = aEb + bEa + Eb*Ea

    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: x1 = 0.3491*104 e x2 = 0.2345*100 tem-se:

    (x2 + x1) x1 = (0.2345*100 + 0.3491*104) 0.3491*104

    = 0.3491*104 0.3491*104= 0.0000

    x2 + (x1 x1) = 0.2345*100 + (0.3491*104 0.3491*104)= 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 (x2 + x1), cujo resultado tem 8 dgitos. Como a mquina s armazena 4 dgitos, os menos significativos foram desprezados.

    14

  • 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.

    15

  • 3 Zeros de Equaes Transcendentes e Polinomiais

    3.1 IntroduoSeja 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 ba

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

    x x a x

    yx

    f x f ax a

    f a x f ax

    =

    =

    + 0 0

    lim lim( ) ( )

    lim( ) ( )

    Quando f derivvel em a, o limite chamado derivada de f no ponto a.

    3.1.2 Tipos de MtodosPode-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) = x2 3x + 2. A soluo direta pode ser obtida atravs da frmula de Baskara com a

    expresso: X b b aca

    =

    2 42

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

    PROGRAM Baskara;VAR a, b, c : INTEGER;

    delta : INTEGER;x1, x2 : REAL;

    BEGINa := 1; b := -3; c := 2; {f(x) = x^2 - 3*x + 2}delta := b*b - 4*a*c;IF delta >= 0 THENBEGIN

    x1 := (-b + SQRT(delta)) / (2*a);x2 := (-b - SQRT(delta)) / (2*a);WRITELN('x1 = ',x1);WRITELN('x2 = ',x2);

    ENDELSE WRITELN('Nao possui raizes reais');

    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.

    16

  • 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.

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

    2

    11

    +

    =

    nn

    n

    xx

    x

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

    onde: x: o nmero a ser calculado a raizx0: atribuio inicial qualquer.

    Como vimos anteriormente, o clculo das duas razes de uma equao do segundo grau, colocada sob a forma ax2 + 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:

    ex + x = 0cos(x) x = 0ln(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 {xi} e teremos que a raiz x' ser dada por:

    iixx

    = 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.

    3.1.3 Isolamento de RazesNesta fase feita uma anlise terica e grfica da funo f(x). Para tal fim, usa-se freqentemente um

    importante teorema da lgebra.

    17

  • Teorema: Se uma funo f(x) contnua num intervalo [a, b] assume valores de sinais opostos nos 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.3.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.

    3.1.3.2 RefinamentoDepois 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 {xi} de aproximao, cujo limite a raiz exata . Em cada aproximao xn, da raiz exata , usa-se um destes critrios e compara-se o resultado com a tolerncia pr-fixada.

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

    | f(xn) | ( abordagem pelo eixo y)

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

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

    ||||

    1

    1

    n

    nn

    xxx

    3.1.4 Classificao dos mtodosMtodos 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 x0 e construmos a seqncia {xi} na qual cada termo dado por xi+1 = (xi), onde uma funo de iterao.

    18

  • Conforme for , (dzeta) teremos diferentes mtodos de ponto fixo, tais como. 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 xi+1 utilizamos vrios pontos anteriores: xi, xi-1, ..., xi-p. Exemplo:

    Mtodo da Secante.

    3.2 Mtodo da BisseoSeja f(x) uma funo contnua no intervalo [a, b] e seja uma raiz desta funo, sendo que (a, b), tal

    que f() = 0.y

    x0 ba x 1

    x 2

    f(x)

    f( a)

    f( b)

    x 3x 4

    Interpretao geomtrica do mtodo da bisseo

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

    2baxn

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

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

    Critrio de Parada:errof xn )(

    ou| b a | erro

    Restrio: necessrio conhecer um intervalo que contenha o valor desejado .3.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:

    kkk

    kkabab

    ab22

    0011 =

    =

    Deve-se obter o valor de k tal que bk ak < , ou seja,

    19

  • 1

    y

    x0

    x 1x 2 x 0

    y=xy=g(x)

    Divergncia oscilanteg(x) < 1

    y

    x0

    x 1x 2 x 0

    y=x

    y=g(x)

    x 3x 4Convergncia no mtodo da iterao linear

    3.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 x0 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 ( | xn xn-1 | erro ) no implica necessariamente que | xn | erro, conforme vemos na figura abaixo:

    y

    x0

    y=x

    y=g(x)

    x n x n-1

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

    a) Algoritmo: )( 1= nn xgx

    b) Escolha da funo de iterao:y = x

    26

  • y = 3402

    x y' = 32x

    divergncia oscilante

    y = 3

    40+x

    y' = 2)3(40

    +

    x convergncia oscilante

    y = x340 y' = x3402

    3

    convergncia oscilante

    c) Melhor extremo (valor inicial):

    y = x340 y' =x340*2

    3

    y'(4.5) = 0.2914 y'(5.5) = 0.3094 x0 = 4.5

    d) Valor do erro:erro 10-4

    e) Iteraes:x1 = 5.14782x2 = 4.95546x3 = 5.01335x4 = 4.99599x5 = 5.00120x6 = 4.99964x7 = 5.00011x8 = 4.99997x9 = 5.00000 | x9 x8 | = 0.00003 < erro

    f) Resposta:A raiz desejada = 5.00000

    Exemplo 2: Dada a funo f(x) = x2 + 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.81613.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

    x0a

    f(a)

    b=x 0

    f(x)

    x 1x 2

    x' 1

    f(x 0 )

    f(x 1 )

    27

  • Interpretao geomtrica do mtodo de Newton

    Tomemos x0 = b. Ento temos:

    )(')()()(')('

    0

    001

    10

    000 xf

    xfxxxx

    xfxfxftg =

    ==

    Se erroxx 01 , ento x1 a raiz desejada, seno deve-se calcular x2, que obtido com base no

    mesmo raciocnio anterior: )(')(

    1

    112 xf

    xfxx = .

    Se erroxx 12 , ento x2 a raiz desejada, seno deve-se calcular x3, ..., xn, at que erroxx nn 1 . Ento, por induo, temos:

    Algoritmo:

    )(')(

    1

    11

    =

    n

    nnn xf

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

    Critrio de Parada:erroxx nn 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(xi). f''(xi) > 0 Para i = {extremos do intervalo}

    3.5.1 Consideraes finais Requer o conhecimento da forma analtica de f '(x), mas sua convergncia extraordinria.

    3.5.2 ExemplosExemplo 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

    11

    =

    n

    nnn xf

    xfxx

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

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

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

    d) Valor do erro:

    28

  • erro 10-3

    e) Iteraes:

    3783.29900.28589.13

    )3(')3(31 ===

    ffx

    | x1 x0 | = | 2.3783 3 | = 0.6217 > erro

    3543.27226.20653.03783.2

    )3783.2(')3783.2(3783.22 ===

    ffx

    | x2 x1 | = | 2.3543 2.3783 | = 0.0240 > erro

    3542.27058.20002.03543.2

    )3543.2(')3543.2(3543.23 ===

    ffx

    | x3 x2 | = | 2.3542 2.3543 | = 0.0001 < erro

    f) Resposta:A raiz desejada = 2.3542

    Exemplo 2: Obter a raiz cbica de 5, usando o mtodo NR sendo o erro 10-3.Resposta: A raiz desejada = 1.7100Exemplo 3: Calcular a raiz negativa de f(x) = x3 5x2 + x + 3, com erro 10-4.Resposta: A raiz desejada = 0.64575Exemplo 4: 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.Resposta: A raiz desejada = 3.14163.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:

    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.

    29

  • Exemplo 5: Seja a funo f(x) = x2 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

    11

    =

    n

    nnn xf

    xfxx

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

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

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

    d) Valor do erro:erro 10-3

    e) Iteraes:

    5294.85.8

    49)9(')9(91 ===

    ffx

    | x1 x0 | = | 8.5294 9 | = 0.4706 > erro

    5001.85588.72214.05294.8

    )5294.8(')5294.8(5294.82 ===

    ffx

    | x2 x1 | = | 8.5001 8.5294 | = 0.0293 > erro

    5000.85002.70008.05001.8

    )5001.8(')5001.8(5001.83 ===

    ffx

    | x3 x2 | = | 8.5000 8.5001 | = 0.0001 < erro

    f) Resposta:A raiz desejada = 8.5000

    Exemplo 6: Calcular a raiz da equao f(x) = x3 x + 1 = 0, contida no intervalo [2, 1], com um erro 10-3.Resposta: A raiz desejada = 1.32473.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(xn) pelo quociente das diferenas, usando assim, um modelo linear baseado nos dois valores calculados mais recentemente:

    1

    1)()()('

    nn

    nnn xx

    xfxfxf

    30

  • onde xn e xn-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 xf x f xx x

    x x x f xf x f x

    nn

    n n

    nn 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 (x0 e x1) para a raiz.

    y

    x0 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 x0 e x1 e determinamos a reta que passa pelos pontos (x0, f (x0)) e (x1, f (x1)). A interseco desta reta com o eixo x fornece o ponto x2. Em seguida calculado uma nova aproximao para a raiz a partir dos pontos (x1, f(x1)) e (x2, f (x2)). 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 falsa posio que exige que f(xn). f(xn-1) < 0. importante salientar tambm que a raiz no necessita estar entre as duas aproximaes iniciais (x0 e x1).

    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

    11

    +

    =

    nn

    nnnnn xfxf

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

    Critrio de parada:

    | xn+1 xn | erro

    31

  • 3.6.1 Exemplos

    Exemplo 1: Calcular a raiz da funo f(x) = x2 + x 6, sendo x0 = 1.5, x1 = 1.7 e o erro 10

    -2.

    a) Algoritmo : )()()().(

    1

    11

    +

    =

    nn

    nnnnn xfxf

    xfxxxx

    b) Valor inicial:x0 = 1.5 x1 = 1.7

    c) Valor do erro:erro 10-2

    d) Iteraes:

    0357.284.0

    )282.0(7.1)25.2(41.1

    )41.1)(2.0(7.1)5.1()7.1()7.1().5.17.1(7.12 ==

    =

    =

    fffx

    | x2 x1 | = | 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.10357.2(0357.23 =

    =

    =

    fffx

    | x3 x2 | = | 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.29977.1(9977.14 =

    =

    =

    fffx

    | x4 x3 | = | 2.0000 1.9977 | = 0.0023 < erro

    e) Resposta:

    = 2.0000 a raiz procurada.

    Exemplo 2: Calcular a raiz da funo f(x) = 3x cos(x), sendo x0 = 0, x1 = 0.5 e o erro 10-4. Efetue os clculos

    com 5 casas decimais com arredondamento.Resposta: = 0.31675 a raiz procurada.

    Exemplo 3: Calcular a raiz da funo f(x) = x3 4, sendo x0 = 1, x1 = 2 e o erro 0,05.

    Resposta: = 1,5914 a raiz procurada.3.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 Nx1 , determina-se qual valor dos extremos do intervalo ser substitudo ( f(a). f(

    Nx1 ) < 0 b = Nx1 , seno a =

    Nx1 ) e ento aplica-se o mtodo da Falsa Posio. O resultado obtido em Fmx 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:

    32

  • 2Fm

    Nm

    mxxx += , para m = 1, 2, 3, ...

    Critrio de parada:| Fmx

    Nmx | erro

    3.7.1 ExemplosExemplo 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

    Fm

    Nm

    mxxx +=

    f(x) = 10sen(x) + cos(x) 10xf(x) = 10cos(x) sen(x) 10f"(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.0450f"(0.5) = 5.6718 f"(1) = 8.9550 Nx0 = 1

    8078.0)4384.5()0450.1(1

    )1()1(11 =

    ==

    ffx N

    extremo trocar: f(a). f( Nx1 ) = 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.08078.0(5.01 =

    =

    =

    fffx F

    | Fx1 Nx1 | = | 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.02 =

    ==

    ffx 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.07643.0(7488.02 =

    =

    =

    fffx F

    33

  • | Fx2 Nx2 | = | 0.7641 0.7643 | = 0.0002 erro

    e) Resposta:

    7642.02

    7643.07641.0=

    +=

    Exemplo 2: Dada a funo f(x) = x2 + 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.

    Resposta: 8200.02

    82.082.0=

    +=

    34

  • 4 Sistemas Lineares

    4.1 IntroduoSistemas 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 ba x a x a x b

    a x a x a x b

    n n

    n n

    m m mn n m

    + + + =

    + + + =

    + + + =

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

    ondeaij : coeficientes 1 i m, 1 j nxj : incgnitas j = 1, 2, ..., nbi : constantes i = 1, 2, ..., m

    A resoluo de um sistema linear consiste em calcular os valores de xj, 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 ba a a b

    a a a b

    n

    n

    m m mn n

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

    chamada matriz completa ou matriz aumentada do sistema.

    A =

    11 12 1

    21 22 2

    1 2

    a a aa a a

    a a a

    n

    n

    m m mn

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

    a matriz dos coeficientes

    X =

    1

    2

    xx

    xn

    o vetor das incgnitas, e

    35

  • B =

    1

    2

    bb

    bm

    o vetor constante (termos independentes).

    4.1.1 Classificao Quanto ao Nmero de SoluesUm sistema linear pode ser classificado quanto ao nmero de solues em:

    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 bi = 0, i = 0, 1, ..., m, o sistema dito homogneo. Todo sistema homogneo compatvel, pois admitir pelo menos a soluo trivial (xj = 0, j = 0, 1, 2, ..., n).

    4.2 Mtodos Diretos (Algoritmos Diretos)Um mtodo dito direto quando a soluo exata

    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.

    4.2.1 Regra de CramerSeja 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 Dx1, Dx2, Dx3, ..., Dxn os determinantes das matrizes obtidas trocando em M, respectivamente, a coluna dos coeficientes de x1, x2, x3, ..., xn 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:

    x1 = xDD

    1 , x2 = xDD

    2 , x3 = xDD

    3 , ... , xn = xnDD

    A aplicao da Regra de Cramer exige o clculo de n + 1 determinantes ( det A e det Ai, 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 105 anos para efetuar as operaes necessrias.

    Com isso, a regra de Cramer invivel em funo do tempo de computao para sistemas muito grandes.

    4.2.1.1 ExemplosExemplo 1: Resolva o sistema abaixo pela Regra de Cramer:

    36

  • 1 2 3

    1 2 3

    1 2 3

    12 0

    2 0

    x x xx x xx x x

    + + =

    + =

    + =

    Calculando os determinantes D, Dx1, Dx2 e Dx3 temos:

    D = 7121

    112111

    =

    Dx1 = 1120

    110111

    =

    Dx2 = 3101

    102111

    =

    Dx3 =

    5021012111

    =

    Ento, x1 = xDD

    1 = 17

    ,x2 = xDD

    2 = 37

    , e x3 = xDD

    3 = 57

    e a soluo do sistema

    x : 17

    37

    57

    , , T

    Exemplo 2: Resolva o sistema abaixo pela Regra de Cramer:

    2 02 3

    3 2

    1 2 3

    1 2 3

    1 2 3

    x x xx x xx x x

    + =

    + + =

    =

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

    4.2.2 Mtodo da Eliminao de GaussO 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 CompletaConsiste em escrever a matriz completa ou aumentada do sistema linear original.

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

    3 etapa: Retro-substituioConsiste no clculo dos componentes x1, x2, ..., xn, soluo de AX = B, a partir da soluo do

    37

  • ltimo componente (xn), 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.

    4.2.2.1 Resoluo de Sistemas TriangularesSeja 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 ba x a x a x b

    a x a x b

    a x b

    n n

    n n

    n n

    nn n n

    + + + + =

    + + + =

    + + =

    =

    Da ltima equao deste sistema temos:

    xn = n

    nn

    ba

    xn-1 pode ento ser obtido da penltima equao:

    xn-1 = n n n n

    n n

    b a xa

    1 1

    1 1

    ,

    ,

    e assim sucessivamente obtm-se xn-2, ..., x2, e finalmente x1:

    x1 = 1 12 2 13 3 1

    11

    b a x a x a xa

    n n

    4.2.2.2 Estratgias de PivoteamentoO algoritmo para o mtodo de eliminao de Gauss requer o clculo dos multiplicadores:

    mik = -ik

    kk

    aa

    i = k + 1, ..., n e k = 1, 2, 3, ..., n-1

    a cada etapa k do processo. Sendo o coeficiente akk 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

    38

  • 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: aik, i = k, k + 1, ..., n;ii) trocar as linhas k e i se for necessrio.

    4.2.2.3 Classificao do Sistema TriangularSeja 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: 0x1 + 0x2 + ... + 0xn = bm, ento:i) Se bm = 0, ento eliminaremos a equao e continuamos o escalonamento;ii) Se bm 0, ento conclui-se que o sistema incompatvel.

    4.2.2.4 ExemplosExemplo 1: Resolver o sistema abaixo pelo mtodo de Gauss.

    =

    =+

    =++

    230232

    321

    321

    321

    xxxxxxxxx

    1 etapa: Matriz completa:

    M =

    211301123121

    2 etapa: Triangulao:

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

    EEEEEE

    122

    133

    23

    114706330

    3121

    E3 = E3 73

    E2

    33006330

    3121

    39

  • 3 etapa: Retro-substituio:

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

    Substituindo x3 na segunda linha temos: 3x2 3(1) = 6 x2 = 1

    Substituindo x3 e x2 na primeira linha temos: 1x1 + 2(1) + 1(1) = 3 x1 = 0

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

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

    0 25 0 5 0 250 09 0 3 0 490 01 0 1 0 81

    1 2 3

    1 2 3

    1 2 3

    , , ,, , ,, , ,

    x x xx x xx x x

    + + =

    + + =

    + + =

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

    Exemplo 3: Resolver o sistema abaixo pelo mtodo de Gauss:

    =+

    =

    =+

    214121310210

    321

    321

    321

    xxxxxxxxx

    Resposta: Sistema compatvel e indeterminado.

    Exemplo 3: Resolver o sistema abaixo pelo mtodo de Gauss:

    =+

    =

    =+

    214121311210

    321

    321

    321

    xxxxxxxxx

    Resposta: Sistema incompatvel (no possui soluo).

    4.2.3 Mtodo de JordanConsiste em aplicar operaes elementares sobre as equaes do sistema linear dado at que se obtenha

    um sistema diagonal equivalente.

    4.2.4 ExemplosExemplo 1: Resolver o sistema linear pelo mtodo de Jordan:

    x x xx x x

    x x x

    1 2 3

    1 2 3

    1 2 3

    2 401

    2+ + =

    =

    =

    1 etapa: Matriz completa:

    40

  • M = 1 1 2 42 1 1 01 1 1 1

    2 etapa: Diagonalizao:

    2 2 1

    3 3 1

    2E E EE E E

    1 1 2 40 3 5 80 2 3 5

    E3 = E3 23

    E2

    1 1 2 40 3 5 80 0 13

    13

    1 1 2

    2 2 3

    1315

    E E E

    E E E

    +

    +

    1 0 134

    30 3 0 30 0 13

    13

    1 1 3

    22

    31 3

    13

    3

    E E E

    E E

    E E

    1 0 0 10 1 0 10 0 1 1

    3 etapa: Clculo da soluo do sistema:

    Da primeira linha temos: x1 = 1

    Na segunda linha temos: x2 = 1

    Na terceira linha temos: x3 = 1

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

    4.3 Mtodos Iterativos (Algoritmos Iterativos)

    4.3.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 ba 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 :

    11 21 31 1

    22 12 32 2

    1 2 1

    a a a aa a a a

    a a a a

    n

    n

    nn n n n n

    + + +

    + + +

    + + +

    ...

    ...

    ...

    ...

    ou

    aaaa

    aaaaaaaa

    nnnnnn

    n

    n

    121

    2232122

    1131211

    ...

    ...

    ...

    ...

    +++

    +++

    +++

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

    41

  • 11

    111 12 2

    013 3

    01

    0

    21

    222 21 1

    023 3

    02

    0

    11 1

    02 2

    01 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

    nnn

    n n n nn n

    =

    =

    =

    onde, 10

    20 0( ) ( ) ( ), ,...,x x xn so as atribuies inicial do mtodo.

    Condies de Parada:

    Se para todo erroxx jnjn )1()( , ento x jn )( so as solues do sistema.4.3.1.1 ExemplosExemplo 1: Resolver por Gauss-Jacobi, com 4 decimais com arredondamento e erro menor ou igual a 0,01 o sistema abaixo:

    x + 8y z = 166x y + z = 7x + y+ 5z = 18

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

    b) Isolamento das incgnitas:

    x = 61

    ( 7 + y z )

    y = 81

    ( 16 x + z )

    z = 51

    ( 18 x y )

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

    d) Iteraes:

    x(1) = 61

    ( 7 + y(0) z(0) ) = 61

    ( 7 + 0 0 ) = 1,1667

    y(1) = 81

    ( 16 x(0) + z(0) ) = 81

    ( 16 - 0 + 0 ) = 2

    z(1) = 51

    ( 18 x(0) y(0) ) = 51

    ( 18 0 0 ) = 3,6

    x(2) = 61

    ( 7 + 2 3,6 ) = 0,9

    42

  • y(2) = 81

    ( 16 1,1667 + 3,6 ) = 2,3042

    z(2) = 51

    ( 18 1,1667 2 ) = 2,9667

    x(3) = 61

    ( 7 + 2,3042 2,9667 ) = 1,0562

    y(3) = 81

    ( 16 0,9 + 2,9667 ) = 2,2583

    z(3) = 51

    ( 18 0,9 2,3042 ) = 2,9592

    x(4) = 61

    ( 7 + 2,2583 2,9592 ) = 1,0498

    y(4) = 81

    ( 16 1,0562 + 2,9592 ) = 2,2379

    z(4) = 51

    ( 18 1,0562 2,2583 ) = 2,9371

    x(5) = 61

    ( 7 + 2,2379 2,9371 ) = 1,0501 | x(5) - x(4) | = 0,0003 < erro

    y(5) = 81

    ( 16 - 1,0498 + 2,9371 ) = 2,2359 | y(5) - y(4) | = 0,002 < erro

    z(5) = 51

    ( 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

    Exemplo 2: Dado o sistema, pede-se sua soluo por Gauss-Jacobi, com 4 decimais com arredondamento e erro menor ou igual a 0,02. Admitir soluo inicial nula.

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

    Resposta: A soluo deste sistema : (0,9975; 1,0051; 0,9916)T

    4.3.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:

    ik

    iii ij j

    k

    jj i

    n

    x a b a x( ) ( )( )=

    =

    1 11

    a mesma situao pode ser escrita na forma:

    11 1 1 12 21

    13 31

    11

    22 2 2 21 11

    23 31

    21

    1 11

    2 21

    1 11

    a x b a x a x a xa x b a x a x a x

    a x b a x a x a x

    k k kn n

    k

    k k kn n

    k

    nn nk

    n nk

    nk

    nn nk

    ( ) ( ) ( ) ( )

    ( ) ( ) ( ) ( )

    ( ) ( ) ( ) ( )

    ( ... )

    ( ... )...

    ( ... )

    =

    =

    =

    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:

    43

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

    Multiplicando ambos os termos pela matriz inversa da diagonal,

    BDXISDXXISDBDXDD

    kk

    kk

    1)1(1)(

    )1(11)(1

    )()(

    +=

    =

    +

    +

    EXJX kk += )1()(

    onde

    J D S IE D B

    =

    =

    +11

    ( )

    4.3.2.1 ExemplosExemplo 1: Seja o sistema abaixo:

    x + y 5z = -64x y + z = 19x + 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 = 19x + 3y z = 14x + y 5z = -6

    b) Obteno do Algoritmo:

    =

    011001000

    I ,

    =

    000100

    110

    S ,

    =

    500030004

    D ,

    =

    61419

    B ,

    =

    5100

    0310

    0041

    1D

    Ento,

    =

    =

    051

    51

    3103

    14

    14

    10

    011101

    110

    5100

    0310

    0041

    J

    44

  • =

    =

    56

    314

    419

    61419

    5100

    0310

    0041

    E

    Ento,

    +

    =

    56

    314

    419

    051

    51

    3103

    14

    14

    10)1()( XX kk

    c) Atribuio inicial:

    =

    000

    )0(X

    d) Iteraes:

    =

    =

    =

    =

    =

    002,3995,3031,5

    934,2057,4951,4

    020,3822,3850,4

    083,3483,3617,5

    200,1667,4750,4

    )5()4()3()2()1( XXXXX

    =

    ( ),,,

    64 9983 9913 005

    X ( ) ( ),,,

    6 50 0330 0040 003

    X X erro =

  • x(2) = 61

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

    y(2) = 81

    ( 16 - 0,9764 + 2,9958 ) = 2,2524

    z(2) = 51

    ( 18 0,9764 2,2524 ) =2,9542

    x(3) = 61

    ( 7 + 2,2524 2,9542 ) = 1,0497

    y(3) = 81

    ( 16 - 1,0497 + 2,9542 ) = 2,2381

    z(3) = 51

    ( 18 1,0497 2,2381 ) = 2,9424

    x(4) = 61

    ( 7 + 2,2381 2,9424 ) = 1,0493 | x(4) - x(3) | = 0,0004 < erro

    y(4) = 81

    ( 16 - 1,0493 + 2,9424 ) = 2,2366 | y(4) - y(3) | = 0,0015 < erro

    z(4) = 51

    ( 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

    Exemplo 2: Resolver por Gauss-Seidel, com 4 decimais com arredondamento e erro menor ou igual a 0,01 o sistema abaixo. Admitir soluo inicial nula.

    7x + y z = 13x + 8y + z = 302x y + 5z = 21

    Resposta: A soluo deste sistema : (2,0001; 3,0003; 4,0000)T

    4.3.4 Mtodo de Gauss-Seidel ( Matricial )Seja o sistema abaixo,

    11 1 1 12 21

    13 31

    11

    22 2 2 21 1 23 31

    21

    1 1 2 2 1 1

    a x b a x a x a xa x b a x a x a x

    a x b a x a x a x

    k k kn n

    k

    k k kn n

    k

    nn nk

    n nk

    nk

    nn nk

    ( ) ( ) ( ) ( )

    ( ) ( ) ( ) ( )

    ( ) ( ) ( ) ( )

    ...

    ......

    ...

    =

    =

    =

    que pode ser representado na forma matricial:

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

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

    XSIDBIDXIDID kk )1(11)(1 )()()()( ++=++

    BIDXSIDXkk 1)1(1)(

    )()(

    +++=

    47

  • FXGX kk += )1()(

    onde,G D I SF D I B

    = +

    = +

    ( )

    ( )

    1

    1

    4.3.4.1 ExemplosExemplo 1: Dado o sistema abaixo,

    x + 6y = -215x 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 = 19x + 6y = -21

    b) Obteno do Algoritmo:

    =

    6005

    D ,

    =

    0100

    I ,

    =

    0010

    S ,

    =

    2119

    B

    Ento,

    =

    =

    =

    =

    1562

    519

    2119

    61

    301

    051

    30105

    100010

    61

    301

    051

    F

    G

    Logo,

    +

    =

    1562

    519

    30105

    10 )1()( XX kk

    c) Atribuio inicial:

    =

    00)0(X

    d) Iteraes:

    =

    =

    =

    =

    000,4000,3

    000,4001,3

    996,3973,2

    133,4800,3 )4()3()2()1( XXXX

    ( ) ( ) ,,

    4 3 0 0010 000X X erro =

    . Como xi xj para i j, vem que det(A) 0.Logo, P(x) nico.

    Exemplo 1: Sejam os valores: x0 = 1, x1 = 0, x2 = 3 e x3 = 2. Determinar: ( )i ji j

    x x> .

    ( )i ji j

    x x> = (x1 x0) (x2 x0) (x2 x1) (x3 x0) (x3 x1) (x3 x2) =

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

    Este valor igual ao determinante da matriz:

    1 1 1 11 0 0 01 3 9 271 2 4 8

    5.4.1 Obteno da FrmulaSer mostrado, agora, a deduo da frmula de interpolao de Lagrange.

    Sejam x0, x1, x2, ..., xn, (n + 1) pontos distintos e yi = f(xi), i = 0, 1, ..., n.

    61

  • Seja Pn(x) o polinmio de grau n que interpola f em x0, ..., xn. Podemos representar Pn(x) na forma Pn(x) = y0L0(x) + y1L1(x) + ... + ynLn(x), onde os polinmios Lk(x) so de grau n. Para cada i, queremos que a condio Pn(xi) = yi seja satisfeita, ou seja:

    Pn(xi) = y0L0(xi) + y1L1(xi) + ... + ynLn(xi) = yi

    A forma mais simples de se satisfazer esta condio impor:

    Lk(xi) = 01

    se k ise k i

    =

    e, para isso, definimos Lk(x) por

    Lk =

    ( )( )...( )( )...( )( )( )...( )( )...( )

    x x x x x x x x x xx 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 1Como o numerador de Lk(x) um produto de n fatores da forma:

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

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

    Pn(xi) = k k ik

    n

    y L x( )=

    0

    = yiLi(xi) = yi

    Ento, a interpolao de Lagrange para o polinmio interpolador :

    Pn(x) = k kk

    n

    y L x( )=

    0

    onde Lk(x) = ( )( )

    x xx x

    j

    k jjj k

    n

    =

    0

    Pn(x) = kj

    k jjj k

    n

    k

    n

    y x xx x

    =

    =

    ( )( )00 , a frmula da interpolao lagrangeana.

    5.4.2 Exemplos: Exemplo 2: No caso da interpolao linear, visto anteriormente, temos dois pontos distintos: (x0, f(x0)) e (x1, f(x1)) com n igual a 1.

    a) Pontos utilizados:

    62

  • (0.00; 1.35) e (1.00; 2.94)

    b) Clculo dos coeficientes:P1(x) = y0L0(x) + y1L1(x), onde

    L0(x) = ( )( )

    x xx x

    1

    0 1

    L1(x) = ( )( )

    x xx x

    0

    1 0

    Assim, P1(x) = y0( )( )

    x xx x

    1

    0 1 + y1

    ( )( )

    x xx x

    0

    1 0

    que exatamente a equao da reta que passa por (x0, f(x0)) e (x1, f(x1)).

    c) Polinmio interpolador:

    P1(x) = 1.35( )( )x

    10 1 + 2.94

    ( )( )x

    01 0 = 1.35x + 1.35 + 2.94x = 1.59x + 1.35

    que a mesma expresso obtida no exemplo 1 de interpolao linear.

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

    i xi yi0 0 01 1 12 2 4

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

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

    i xi yi0

    1 41 0 12 2 13 3 16

    Polinmio interpolador: P3(x) = x3 4x + 1

    5.5 Interpolao Parablica ProgressivaNa 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:

    63

  • G0

    CTE

    grauPolinmio 0

    P0(x) = a0

    Polinmio de grau 1:

    G1

    CTE

    grauPolinmio 0+

    0

    1

    xporpassando

    grauPolinmio

    P1(x) = a0 + a1.(x x0)

    Polinmio de grau 2:

    G2

    CTE

    grauPolinmio 0+

    0

    1

    xporpassando

    grauPolinmio+

    10

    2

    xporexporpassando

    grauPolinmio

    P2(x) = a0 + a1.(x x0) + a2.(x x0).(x x1)

    Polinmio de grau n:

    Pn(x) = a0 + a1.(x x0) + a2.(x x0).(x x1) + ... + an.(x x0).(x x1).(x x2) ... (x xn-1)

    64

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

    Pn(x0) = f(x0)Pn(x1) = f(x1)Pn(x2) = f(x2)

    Pn(xn) = f(xn)

    Validade:

    ))( ( 00000 xfaxPxx ===

    xxxPxfaxx

    axfaxfxxaaxPxx01

    1011

    01

    01110110111

    )())))()(

    (((

    =

    ==+==

    ))((

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

    1202

    21222120220210222

    (( xxxxxPxfaxfxxxxaxxaaxPxx

    ==++==

    ))...((

    )()

    )))...((...)()(

    10

    1

    10010

    ((

    xxxxxPxfa

    xfxxxxaxxaaxPxx

    nnn

    nnnn

    nnnnnnnnn

    =

    =+++==

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

    xi 5 3 1 2f(xi) 8 4 4 6

    1 Hiptese:

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

    x x af x P x

    x x Px x x= =

    =

    +

    += = + + = +1 1

    1 0 1

    1 01

    4 83 5

    2 8 2 5 2 2( ) ( )

    ( ) ( )

    3 Hiptese:

    x x af x P xx x x x P

    x x= =

    =

    + += = +2 2

    2 1 2

    2 0 2 12

    4 41 5 1 3

    0 2 2( ) ( )

    ( )( ) ( )( )( )

    4 Hiptese:

    65

  • x x af x P x

    x x x x x x Px x= =

    =

    + + = = +3 3

    3 2 3

    3 0 3 1 3 23

    6 62 5 2 3 2 1

    0 2 2( ) ( )

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

    Logo, a expresso : P1(x) = 2x + 2

    5.6 Diferenas DivididasSeja f(x) uma funo tabelada em n + 1 pontos distintos x0, x1, x2, ... xn. Definimos o operador diferenas

    divididas por:

    f[x0] = f(x0)

    f[x0,x1] = 01

    01 ][][xx

    xfxf

    = )()()(

    01

    01

    xxxfxf

    f[x0,x1,x2] = 02

    1021 ],[],[xx

    xxfxxf

    f[x0,x1,x2, ... xn] = 0

    11021 ]...,[]...,[xx

    xxxfxxxf

    n

    nn

    Dizemos que f[x0,x1,x2,...xk] 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 x0, x1, x2, ... xn, podemos construir a tabela:

    xi Ordem 0 Ordem 1 Ordem 2 .... Ordem nx0 f[x0] f[x0,x1] f[x0,x1,x2] f[x0,x1,x2 ... xn]x1 f[x1] f[x1,x2] f[x1,x2,x3] x2 f[x2] f[x2,x3] f[x2,x3,x4] ... ... ... ... ...

    xn-2 f[xn-2] f[xn-2,xn-1] f[xn-2,xn-1,xn] xn-1 f[xn-1] f[xn-1,xn] xn f[xn]

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

    Exemplo:

    f[x0,x1] = 01

    01 ][][xx

    xfxf

    = 10

    10 ][][xx

    xfxf

    = f[x1,x0]

    5.7 Interpolao de Newton com Diferenas DivididasPode-se provar que cada coeficiente an do polinmio interpolador de Newton corresponde ao operador

    de grau n de diferenas divididas:

    f[x0] = a0f[x0,x1] = a1f[x0,x1,x2] = a2f[x0,x1,x2,...,xn] = an

    Pn(x) = a0 + a1.(x x0) + a2.(x x0).(x x1) + ... + an.(x x0).(x x1).(x x2) ... (x xn-1)

    66

  • Pn(x) = f[x0] + f[x0,x1] . (x x0) + f[x0,x1,x2] . (x x0) . (x x1) + ...+ f[x0,x1,x2, ... xn] . (x x0) . (x x1) . (x x2) ... (x xn-1)

    5.7.1 ExemplosExemplo 1: Obter f(0.5) usando um polinmio interpolador de Newton do segundo grau (3 pontos). Considere a seguinte tabela:

    xi 1 0 1 2 3F(xi) 2 1 2 5 10

    a) Clculo dos coeficientes de Pn(x):

    X Ordem 0 Ordem 1 Ordem 2 Ordem 3 Ordem 4x0 1 2 1 1 0 0x1 0 1 1 1 0x2 1 2 3 1x3 2 5 5x4 3 10

    onde:

    f[x0] = f(x0) = 2f[x1] = f(x1) = 1f[x2] = f(x2) = 2f[x3] = f(x3) = 5f[x4] = f(x4) = 10

    f[x0,x1] = 01

    01 ][][xx

    xfxf

    = )()()(

    01

    01

    xxxfxf

    = 1 20 1

    + = 1

    f[x1,x2] = f x f x

    x x[ ] [ ]2 1

    2 1

    = 2 11 0

    = 1

    f[x2,x3] = xx

    xfxf23

    23 ][][

    = 1225

    = 3

    f[x3,x4] = xx

    xfxf34

    34 ][][

    = 23510

    = 5

    f[x0,x1,x2] = 02

    1021 ],[],[xx

    xxfxxf

    = 1 11 1+

    + = 1

    f[x1,x2,x3] = f x x f x x

    x x[ , ] [ , ]2 3 1 2

    3 1

    = 3 12 0

    = 1

    f[x2,x3,x4] = xx

    xxfxxf24

    3243 ],[],[

    = 1335

    = 1

    f[x0,x1,x2,x3] = f x x x f x x x

    x x[ , , ] [ , , ]1 2 3 0 1 2

    3 0

    = 1 12 1

    + = 0

    f[x1,x2,x3, x4] = f x x x f x x x

    x x[ , , ] [ , , ]2 3 4 1 2 3

    4 1

    = 1 13 0

    = 0

    67

  • f[x0,x1,x2,x3,x4] = f x x x x f x x x x

    x x[ , , , ] [ , , , ]1 2 3 4 0 1 2 3

    4 0

    = 0 03 1

    + = 0

    b) Polinmio interpolador:

    P2(x) = 2 1(x + 1) + 1(x + 1)(x 0) P2(x) = 2 (x + 1) + x (x + 1)P2(x) = 2 x 1 + x2 + xP2(x) = x2 + 1

    c) Resposta:

    P2(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:

    xi 30 35 45 50 55F(xi) 0.5 0.574 0.707 0.766 0.819

    Resposta: P3(40) = 0.64305

    Exemplo 3: Obter f(0.47) usando um polinmio interpolador de Newton do segundo grau (3 pontos). Considere a seguinte tabela:

    xi 0.2 0.34 0.4 0.52 0.6 0.72F(xi) 0.16 0.22 0.27 0.29 0.32 0.37

    Resposta: P2(0.47) = 0.27802

    Exemplo 4: Obter f(0.5) usando um polinmio interpolador de Newton do quarto grau (5 pontos). Considere a seguinte tabela:

    xi 1 0 1 2 3F(xi) 1 1 0 1 2

    Resposta: P4(0.5) = 1 0.375 0.0625 0.02344 = 0.53906

    5.8 Interpolao de Gregory-NewtonMuitas vezes so encontrados problemas de interpolao cuja tabela de pontos conhecidos tem valores

    que so igualmente espaados, ou seja:

    x