Escolar Documentos
Profissional Documentos
Cultura Documentos
NDICE
_______________________________________________________________________________________________________________
Captulo1ERROSEMCLCULONUMRICO 1. 2. 3. 4. 5. 6. 7. 8. Introduo TiposdeerrosnaresoluonumricadeproblemasdeEngenharia Errosdearredondamentoearitmticacomputacional 3.1 Representaodenmerosinteiros 3.2 Representaodenmerosreais Valoresaproximados,errosepreciso. Propagaodoerro Errosdetruncatura.SriedeTaylor. Discretizao Mtodositerativos Exercciospropostos
1 3 4 5 9 14 20 26 30 32 33
Captulo2RESOLUODEEQUAESNOLINEARES 1. Introduo 2. Localizao,contagemeseparaodasraizes 2.1 Mtodosgrficos 2.2 Mtodosanalticos 2.2.1 MtododeNewton(delimitaodasrazes) 2.2.2 MtododeRolle 2.2.3 MtododeFourier 2.2.4 RegradesinaisdeDescartes 3. Mtodositerativosparaadeterminaoderazes 3.1 Introduo 3.2 Mtodositerativosdependentesdeumsponto 3.2.1 Mtododopontofixo 3.2.2 MtododeNewtonRaphson 3.3 Mtodositerativosdepontomltiplo 3.3.1 Mtododasecante 3.4 Mtodosqueenquadramaraiz 3.4.1 Mtododabisseco 3.4.2 Mtododafalsaposio Exercciospropostos 39 47 48 49 49 51 55 57 58 58 58 58 70 79 79 81 82 84 88
Captulo3INTERPOLAO 1. Introduo.InterpolaoeAproximao. 2. Interpolaopolinomial 2.1 Clculoeficientedeumpolinmio.AlgoritmodeHorner 2.2 PolinmiointerpoladordeNewton 2.3 PolinmiointerpoladordeLagrange 2.4 NewtonouLagrange? 2.5 Interpolaocompontosdebaseigualmenteespaados 2.6 Oproblemadasoscilaesnainterpolaopolinomial 2.7 Majorantedoerrocompontosigualmenteespaados 2.8 InterpolaocomrazesdeChebyshev 2.9 PolinmiointerpoladordeHermite 2.10 Interpolaocom"SPLINES"cbicos 2.11 Quadroresumodosesquemasdeinterpolao Exercciospropostos Captulo4APROXIMAO.MTODODOSMNIMOSQUADRADOS Introduo Ocritriodosmnimosquadrados Regressolinear Modelosdedoisparmetros Linearizao Modeloslinearesdenparmetros ndicededeterminao Exercciospropostos Captulo5INTEGRAONUMRICA 1. Introduo 2. Intervalosescolhidosouimpostospreviamente 2.1 Casogeral:pontosdebasecomespaamentoarbitrrio 2.2 Pontosdebaseequidistantes 2.2.1 RegradoTrapzio 2.2.2 RegradeSimpson 2.2.3 FrmulasdeNewtonCotes.Casogeral 3. QuadraturadeGauss Exercciospropostos 1. 2. 3. 4. 5. 6. 7. 93 96 98 99 108 110 110 116 117 119 122 125 132 133
ii
Captulo6RESOLUODESISTEMASDEEQUAES 1. Prembulo 2. Intervalosescolhidosouimpostospreviamente 2.1 Introduo 2.2 Soluoporinversodematrizes.RegradeCramer 2.3 Mtodosdirectos 2.3.1 MtododeeliminaodeGauss 2.3.2 MtododeeliminaodeGaussJordan 2.3.3 Pivotagem 2.3.4 Sistemasmalcondicionados 2.3.5 Sistemastridiagonais 2.3.6 MtododafactorizaoLU 2.4 Mtodositerativos 2.4.1 MtododeJacobi 2.4.2 MtododeGaussSeidel 2.5 Comparaoentreosmtodosdirectoseiterativos 3. Sistemasdeequaesnolineares(breveintroduo) 3.1 Sistemasnolineares 2 2 3.2 MtododeNewtonRaphsonparasistemas 2 2 Exercciospropostos Captulo7EQUAESDIFERENCIAISORDINRIAS(EDO) 1. Introduo 2. Prembulomatemtico 2.1 Equaeslineares 2.2 Equaesnolineares 2.3 Equaessdiferenas 3. Integraonumricadeequaesdiferenciaisordinrias 3.1 Formulaesdeumpasso 3.1.1 MtodosbaseadosnasriedeTaylor 3.1.2 MtodosdeRungeKutta 3.2 Formulaescomvriospassos 3.3 Mtodosdeprevisocorreco 4. Estabilidadedosmtodosnumricos Exercciospropostos 177 177 177 180 181 182 190 192 195 198 202 205 205 208 210 211 211 213 216
219 219 220 222 223 224 224 224 230 236 238 243 248
iii
Captulo8EQUAESSDERIVADASPARCIAIS(EDP) 1. Introduo 2. Resoluonumricadeequaessderivadasparciais 2.1 Mtododasdiferenasfinitas 2.2 Mtododoselementosfinitos 2.2.1 Funesdeaproximaoparaelementosaumadimenso 2.2.2 Funesdeaproximaoparaelementosaduasdimenses 3. Estabilidade 3.1 Coeficientedeamplificao 3.2 Matrizdeamplificao 4. Formasdasequaessderivadasparciais 4.1 Equaodiferencialparablica 4.1.1 Casolinearaumadimenso 4.1.2 Casonolinearaumadimenso 4.1.3 Equaoparablicaaduasdimenses(x,y,t) 4.2 Equaodiferencialhiperblica 4.3 Equaodiferencialelptica 4.3.1 Resoluonumricapordiferenasfinitas 4.3.1 Resoluonumricaporelementosfinitos Exercciospropostos ANEXO(soluesdealgunsproblemaspropostos) 251 253 253 255 257 259 262 262 265 267 268 268 271 272 273 279 279 282 288 293
iv
CAPTULO 1
_______________________________________________________________________________________________________________
1. Introduo
O estudo da matemtica introduz conceitos que auxiliam a resoluo dos mais diversos problemas cientficos. No entanto, existem numerosos problemas matemticos para os quais no se conhece nenhuma soluo analtica. A Anlise Numrica procura desenvolver processos de clculo (algoritmos), utilizando uma sequncia finita de operaes aritmticas bsicas, para que certos problemas matemticos se tornem exequveis numericamente, ou de mais simples execuo. Estes algoritmos envolvem em geral um grande nmero de clculos aritmticos e por isso no de estranhar que com o desenvolvimento de rpidos e eficientes computadores digitais, o papel dos mtodos numricos na resoluo de problemas de engenharia tenha sofrido grande incremento nas ltimas dcadas. Um algoritmo caracterizado por permitir resolver problemas matemticos usando uma sequncia finita e pr-definida de operaes de aritmtica. Um mtodo numrico um algoritmo que tem como objectivo determinar um ou mais valores numricos. Os valores obtidos por um mtodo numrico designam-se por solues numricas. A seleco ou construo de algoritmos eficientes, facilmente adaptveis implementao em computador, o objectivo da anlise numrica. Ao contrrio das solues analticas, que conduzem a solues exactas para os problemas, os mtodos numricos produzem, em geral, apenas solues aproximadas. Por este facto, antes da utilizao de qualquer mtodo numrico necessrio decidir qual a preciso com que se pretende obter a soluo numrica desejada. A preciso dos clculos numricos tambm, como veremos, um importante critrio para a seleco de um algoritmo particular na resoluo de um dado problema. Mesmo nos casos em que existe uma frmula disponvel, deve ter-se algum cuidado pois, como mostram os exemplos que se seguem, existem clculos matemticos que oferecem respostas correctas quando se efectuam utilizando nmeros reais exactos, mas do respostas erradas quando se realizam em computador com preciso finita.
Captulo 1
Exemplo 1.1: Efectue um programa de clculo que adicione dez mil vezes o valor
0.00001 a uma unidade. Compare o resultado obtido com o resultado exacto calculando a percentagem de erro. O resultado obtido num PC a trabalhar em simples preciso : SUM=1.100136. Como o resultado exacto SUM=1.1, vem
1.1 1.100136 1 .1 100 0.0124 %
f ( x + x) f(x) x
f pode aproximar f ' ( x) , se existe, quando x 0 . No x entanto, tal no provvel que suceda se os clculos se realizam num computador, a no ser que f ' ( x) seja zero. Para o confirmar, suponha que queremos calcular a derivada da funo f ( x) = sin x para x=1.
Soluo analtica:
Soluo numrica:
d=
_______________________________________________________________
Captulo 1
Figura 1 - Tipos de erros nas diferentes fases de resoluo de um problema de engenharia. 1) Erros inerentes ao modelo - Os modelos matemticos raramente constituem uma representao exacta dos fenmenos reais. Na grande maioria dos casos so apenas modelos idealizados, j que ao estudar os fenmenos da natureza vemo-nos forados, regra geral, a aceitar certas condies que simplificam o problema de forma a torn-lo tratvel. Os melhores modelos so os que incluem apenas aquelas caractersticas do problema real necessrias para reduzir os erros nesta fase a um nvel aceitvel. 2) Erros inerentes aos dados - Um modelo matemtico no contem apenas equaes e relaes; tambm contem dados e parmetros que, frequentemente, so medidos experimentalmente, e portanto, aproximados. As aproximaes nos dados podem ter grande repercusso no resultado final. 3) Erros de truncatura - Muitas equaes matemticas tm solues que apenas podem
Captulo 1
ser construdas no sentido que um processo infinito possa ser descrito como limite da soluo em questo. Por definio, um processo infinito no pode ser completado, por isso tem de ser truncado aps certo nmero finito de operaes. Esta substituio de um processo infinito por um processo finito, resulta num tipo de erro designado erro de truncatura. Em muitos casos, o erro de truncatura precisamente a diferena entre o modelo matemtico e o modelo numrico. 4) Erros de arredondamento - Quer os clculos sejam efectuados manualmente quer obtidos por computador somos conduzidos a utilizar uma aritmtica de preciso finita, ou seja, apenas podemos ter em considerao um nmero finito de dgitos. O erro devido a desprezar os outros e arredondar o nmero designado por erro de arredondamento. Os erros inerentes ao modelo e aos dados so erros iniciais do problema, exteriores ao processo de clculo; os erros de truncatura e de arredondamento ocorrem no processo de clculo duma soluo numrica no computador. pois a anlise destes dois ltimos, com especial relevncia para os erros de arredondamento, que constitui o objectivo principal deste captulo.
Captulo 1
(1)
com 0di9, i=0,1,...,n. No existe qualquer razo intrnseca para se usar a base 10. Outras bases foram utilizadas por diferentes civilizaes, tais como 5 (ndios Norte Americanos e Esquims), 20 (Celtas), 60 (na Mesopotmia). O sistema binrio adquiriu uma importncia especial com o advento dos computadores digitais. Os computadores lem impulsos enviados pelas suas componentes electrnicas. O estado de um impulso "on" ou "off". ento conveniente representar os nmeros em computador no sistema binrio. Sendo a base 2, os coeficientes inteiros podem tomar os valores 0 ou 1. No entanto, se olharmos para as linguagens das mquinas, rapidamente nos apercebemos que outros sistemas de nmeros, mltiplos de dois, particularmente os sistemas octal (base 8) e hexadecimal (base 16), so utilizados. A base de um nmero representada por um ndice: por exemplo (3.224)10 3.224 na base 10 (decimal), (1001.11)2 1001.11 na base 2 (binrio), e (18C7.90)16 18C7.90 na base 16 (hexadecimal). O sistema hexadecimal utiliza os 16 dgitos: 0,1,2,...,9,A,B,C,D,E,F em que os caracteres A,B,...,F representam 10,11,...,15, respectivamente. A generalizao de (1) a uma base b diferente de 10 imediata:
N = ( d n d n 1 ... d 1 d 0 )b = d n b n + d n 1 b n 1 + ... + d 1 b1 + d 0 b0
(2)
Captulo 1
Torna-se frequentemente necessrio conhecer o equivalente, num dado sistema de numerao, de um nmero expresso noutro sistema diferente. A expresso (2) til para efectuar a converso de um nmero inteiro de qualquer base b para a base 10, conforme se ilustra no exemplo que se segue. Exemplo 1.3: Converter (7D3)16 base 10
Consideremos agora o problema inverso, ou seja, pretendermos obter a representao na base b de um nmero N cuja representao decimal dada. fcil verificar que se dividirmos N, na forma (2), por b o quociente dnbn-1 + dn-1bn-2 + ... + d1 e o resto d0. Determina-se assim o dgito de menor ordem, d0, da representao de N na base b. Dividindo o quociente encontrado por b, obtm-se como resto o dgito d1, e assim sucessivamente. O quociente da ensima e ltima diviso dn. Exemplo 1.4: Converter 2003 base hexadecimal
2003 040 083 03 |16 125 |16 13 7
Passamos agora a expor de uma forma sinttica a forma como os nmeros inteiros so representados internamente num computador. Os computadores utilizam, para armazenar
informao, dispositivos fsicos que podem assumir dois estados distintos. Esta caracterstica privilegia a base 2 ou base binria para representao de nmeros nestas mquinas.
Os computadores armazenam nmeros utilizando o que pode imaginar-se como "janelas de base b" cada uma capaz de armazenar os dgitos de base b (0, 1,..., b-1), em que a aritmtica de base b pode ser 2 (binrio), 8 (octal) ou 16 (hexadecimal). Uma janela de base 2 designa-se por bit. Um "bit" um acrnimo de "binary digit" e representa o elemento de memria bsico que assume os dois estados que se associam aos dgitos 0 e 1. Os computadores dividem a
Captulo 1
memria em cadeias de bits designadas palavras. O nmero de bits por palavra o tamanho da palavra do computador. Os tamanhos de palavra variam com o tipo de computador (por exemplo, 16 bits para um IBM XT ou AT, 32 bits para um IBM PC ou VAX 11, 60 bits para um CYBER). O nmero de bits disponveis para a representao de nmeros inteiros determina qual o maior inteiro representvel. As formas como os bits so utilizados para armazenar valores depende do computador. No entanto, sendo finito e fixo para cada computador o nmero de bits utilizados, apenas inteiros num intervalo [-M,N] (M,N>0) faro parte do sistema de numerao de um computador. No caso, por exemplo, do IBM PC (FORTRAN), uma varivel declarada como INTEGER*2 utiliza 2 bytes (ou seja, 16 bits, que corresponde neste caso a meia palavra) para representar um inteiro. O primeiro bit armazena o sinal: positivo se 0, ou negativo se 1. Os restantes 15 bits so utilizados para armazenar os di's. Assim o maior inteiro positivo representvel : 0111 1111 1111 1111 sendo o correspondente valor decimal(1)
14
A representao de um nmero inteiro negativo poder-se-ia efectuar utilizando os mesmos dgitos do correspondente nmero inteiro positivo excepto o primeiro bit que passaria a ser 1. No entanto, esta representao conduziria a que o inteiro zero fosse representado por duas configuraes de bits distintas (+0 e -0) o que constituiria um inconveniente. Assim, e porque facilita tambm as operaes, geralmente utilizada outra tcnica designada por "complemento para 2". Por exemplo, o complemento para dois de (-32767)10 : 1000 0000 0000 0001 em que os dgitos binrios foram obtidos substituindo cada bit 0 por 1 e cada 1 por 0 do inteiro positivo 32767 e somando 1. Esta converso extremamente fcil de efectuar em computador. Nesta forma, o valor decimal determinado supondo em primeiro lugar que o conjunto dos 16 bits expressa um nmero positivo. Se este nmero for menor que 215, ou seja 32768, ento o
(1)
n 1 i =0
a + a b + a b 2 + ... + a b n 1 = a
2i = 2 n 1 .
7
Captulo 1
nmero interpretado como um inteiro positivo. No caso de ser maior ou igual, convertido num inteiro negativo por subtraco de 216. No exemplo anterior, o decimal equivalente a (1000000000000001)2 215+1=32769 > 32768, pelo que, de acordo com a regra anterior, representar o inteiro negativo: 32769 - 65536 = -32767 O menor inteiro negativo em valor absoluto ser representado como (1111 1111 1111 1111)2 que corresponde a -1 em decimal. Um INTEGER*4 utiliza 4 bytes (ou seja, uma palavra de 32 bits) para representar um inteiro. Neste caso, o maior inteiro positivo representvel (Fig. 2) ser o decimal
30
...
N min.
-2 -1
...
0
1 2
N max.
=
-2
31
= - 2.147.483.648
231- 1 = 2.147.483.647
Figura 2 - Gama de inteiros representveis numa palavra de 32 bits. Em qualquer dos casos, importa sobretudo sublinhar que todos os computadores esto limitados na sua capacidade de representao de nmeros inteiros. Todos os inteiros entre zero e o valor mximo possuem representao exacta e tambm so exactas as operaes aritmticas cujos operandos e resultados sejam inteiros nesta gama. Inteiros fora do intervalo [M,N] no podero ser representados, e a tentativa de o fazer conduz conhecida condio de `overflow`. Uma limitao mais severa ocorre no armazenamento e manipulao de nmeros reais como veremos em seguida.
Captulo 1
(3)
X = (d -1 d -2 ... d -k )b = d -1 b1 + d -2 b2 + ...+ d -k bk
Se multiplicarmos X por b, verificamos que d-1 a parte inteira do resultado, enquanto b 1 + ... + d - k b k +1 a correspondente parte fraccionria. Multiplicando esta ltima
d -2
novamente por b e tomando a parte inteira do resultado obtemos d-2, e assim sucessivamente. Exemplo 1.6: Converter 0.625 base 2
0.625 0.250 0.500
Captulo 1
2 = 0.2 o primeiro dgito 0 2 = 0.4 o segundo dgito 0 2 = 0.8 o terceiro dgito 0 2 = 1.6 o quarto dgito 1 2 = 1.2 o quinto dgito 1 2 = 0.4 o sexto dgito 0
Donde, (0.1)10 = (.000110011 ...)2 Representao de ponto flutuante normalizada Para resolver as dificuldades inerentes representao de nmeros muito grandes ou muito pequenos, conveniente utilizar a notao cientfica dos nmeros, que consiste em representar cada nmero X na forma:
X = M bE
na qual, M um nmero real no negativo denominado mantissa, b2 um inteiro positivo denominado base e E um inteiro denominado expoente. Fixada a base b, esta representao no nica pois, por exemplo, X=0.1 pode ser escrito na base 10 de vrias formas:
X = 0.1 = 0.1 100 = 1.0 101 = 0.01 101 = ...
Diz-se, neste caso, que se trata de uma representao normalizada. Nesta representao o primeiro dgito da mantissa de um nmero diferente de zero sempre diferente de 0. obvio que a notao cientfica, tal como anteriormente apresentada, no pode ser implementada em computador, pois, para representar todos os nmeros reais, a mantissa e o expoente exigiriam um nmero infinito de dgitos. A notao cientfica ento modificada de forma a se utilizar um nmero finito de dgitos (t) para a mantissa e um nmero finito de dgitos (p) para o expoente. Obtm-se desta forma o denominado sistema de numerao de ponto flutuante normalizado caracterizado por quatro parmetros: a base (b), que um inteiro 2, o nmero de dgitos da mantissa (t) e os valores mnimo e mximo do expoente
10
Captulo 1
(Emin
Emax,
respectivamente).
Este
sistema,
habitualmente
representado
por
X = M b
Desta forma um X no nulo pode armazenar-se utilizando t+p+1 bits como se segue: Um bit para o sinal: o bit (designado por bit de sinal) armazena o sinal de X Um expoente com extenso (caracterstica) de p bits : p bits armazenam a representao binria do inteiro sem sinal,
E + E0 = (d p 1 ... d1 d 0 )2 = d p 1 2 p 1 + ... + d1 21 + d 0 20
Uma mantissa normalizada de t bits: t bits armazenam a representao binria da fraco sem sinal,
M = (. d 1 d 2 ... d t )2 = d 1 d 2 d + 2 + ... + t 1 t 2 2 2
Este sistema de numerao de ponto flutuante, F, pode ento, em alternativa, ser caracterizado pelos seguintes quatro parmetros: a base b, o nmero t de dgitos da mantissa, o nmero p de dgitos da caracterstica e a extenso E0, ou, de acordo com a notao anterior
F = F ( b, t, p, E0 )
Existem 2 caractersticas E+E0, sendo a menor e a maior, respectivamente (0...00)2 = 0 (1...11)2 = 1x2p-1 + ... + 1 x 21 + 1 x 20 = 2 - 1 A extenso E0 , em geral, igual a 2p-1, em cujo caso E (2 p 1) 2 p 1 = 2 p 1 1
p p
11
Captulo 1
pelo que,
2 p 1 E 2 p 1 1
Exemplos de representao de nmeros reais em computador Como referimos, os sistemas de numerao utilizados pelos computadores contm apenas um nmero finito de nmeros, cada um com um nmero finito de dgitos. Quais os nmeros que fazem parte desses sistemas? Vamos procurar responder a esta questo atravs de dois exemplos. Exemplo 1.8: Considere o sistema hipottico F (2, 3, 1, 2) . Determine quais os nmeros que fazem parte desse sistema de ponto flutuante e a forma como os mesmos se situam ao longo da recta real. Como b=2, x = M 2 E em que a mantissa normalizada M satisfaz
1 M < 1 . As mantissas 2
normalizadas sero da forma (1 ? ? ) . Portanto, os nmeros reais positivos representados neste sistema sero formados pelos seguintes 4 conjuntos de nmeros:
(.0100)2=1/4 (.100)2=1/2 (1.00)2=1 (10.0)2=2 (.0101)2=5/16 (.101)2=5/8 (1.01)2=5/4 (10.1)2=5/2 (.0110)2=6/16 (.110)2=6/8 (1.10)2=6/4 (11.0)2=6/2 (.0111)2=7/16, (.111)2=7/8, (1.11)2=7/4, (11.1)2=7/2, para E 1 para E= 0 para E=1 para E=2
Estes nmeros esto representados na Figura 3. Os restantes elementos de F so os simtricos dos anteriores e o nmero zero, perfazendo um total de 33 nmeros. de salientar a no existncia de nmeros nos intervalos [-1/4,0] e [0,1/4], sendo o nmero positivo mais pequeno representvel x min = 1 / 4 . Verifica-se que os elementos de F so mais densos prximo de xmin e menos densos quando se aproximam de xmax . Tal como nos inteiros, um nmero superior a x max produz uma mensagem de erro de overflow; por outro lado, um nmero positivo inferior xmin produz uma mensagem de erro chamada underflow.
Figura 3 - Nmeros reais positivos que fazem parte do sistema de ponto flutuante
12
Captulo 1
Exemplo 1.9: Representao de um real em preciso simples num PC Um real armazenado em 32 bits (uma palavra) como F(2,24,8,128), ou seja, em binrio com t=24 bits reservados para a mantissa, p=8 bits para o expoente e E0=128. Os 32 bits so distribudos da seguinte forma: o primeiro bit utilizado para o sinal da mantissa, os 8 bits seguintes so reservados para o expoente E, e os ltimos 23 bits para a mantissa. Na forma de vrgula flutuante normalizada, o primeiro dgito da mantissa sempre 1 e, portanto, sendo conhecido, no necessita ser armazenado - bit implcito. Isto explica porque os 24 dgitos da mantissa so armazenados apenas em 23 bits. A mantissa normalizada de 24 bits um nmero entre 1/2 (no 2-24) e 1-2-24. Se os 8 bits destinados ao expoente apenas fossem utilizados para inteiros positivos, o valor do expoente poderia variar entre 0 e 28-1=255 ; no entanto, o expoente tem que incluir nmeros negativos. Para armazenar tanto inteiros positivos como negativos, o expoente em decimal adicionado de E0=128 e convertido em binrio. Por exemplo, se o expoente -3, ento -3+128 = 125 convertido em binrio e armazenado nos 8 bits. Desta forma, o expoente poder variar entre: 0 - 128 = -128 e 255 - 128 = 127
Para cada expoente E, as 223 mantissas normalizadas possveis verificam 0.5M<1-2-24 e representam 223 nmeros reais positivos no intervalo [2E-1,2E[. Podemos ento concluir que os nmeros reais positivos representveis se encontram no intervalo [r,R] em que: r = nmero positivo mais pequeno = 0.5 x 2-128 = 2-129 1.5 x 10-39 R = nmero positivo maior = (1-2-24) x 2127 1.7 x 1038 No entanto, o intervalo [r,R] est dividido em 256 subintervalos:
2 3 255 [r,2r[ , [2r,24[ , [2 2 r,24[ , ... , [2254 r, 243 , [2255 r,3 1 3 123 1 2 3 2 4 r 4 r 142 r[ 1 24[ 4 R E = 128 E = 127 E = 126 E =126 E =127
cada um deles duas vezes maior que o seu predecessor e contendo cada um 223 nmeros reais positivos equidistantes. NOTA: A representao binria de uma mantissa normalizada M pode ser extensa. Alguns computadores armazenam M utilizando "janelas em octal" de 3 bits, sendo cada uma delas capaz de armazenar os dgitos octais 0,1,...,7. Outros utilizam "janelas hexadecimais" de 4 bits, sendo cada uma capaz de armazenar os dgitos hexadecimais 0,1,...,9,A,...,F. Por exemplo, considere uma mantissa de 24 bits
13
Captulo 1
M = (.101 000 100 000 000 000 000 000)2 No caso de se utilizar aritmtica de base 8, M apareceria como 8 "janelas octais" M = (.101 000 100 000 000 000 000 000 )2 = (.50400000 )8 = 5 8
1
4 8
3
81 128
enquanto que se fosse utilizada aritmtica de base 16, M apareceria sob a forma de 6 "janelas hexadecimais" M = (.101 000 100 000 000 000 000 000 )2 = (. A20000 )16 = 10 16
1
2 16
2
81 128
Assim, para os nmeros armazenados como M.8E ou M.16E em vez de M.2E a utilizao de aritmtica de base 8 ou 16 no altera o valor da mantissa M; apenas permite represent-la de uma forma menos complicada.
aproximao de = 3.14159265... . Qual o erro da referida aproximao? Convertendo 22/7 na forma decimal, vem
= 3.14159265 ...
14
Captulo 1
Nos nmeros anteriores, os ... indicam que os nmeros possuam mais dgitos, mas que ns no queremos ou no podemos continuar a represent-los. Uma situao deste tipo ocorre sempre que um nmero no pode ser representado por um nmero finito de casas decimais. Sempre que no decurso dos clculos ocorra uma situao anloga, temos que decidir com quantos dgitos queremos trabalhar. Este aspecto de particular importncia no caso de utilizarmos computador pois, como veremos posteriormente, este retm apenas um nmero fixo de algarismos. Como estamos a lidar com aproximaes, necessrio estabelecer critrios para avaliar o seu grau de preciso. Para o exemplo anterior, se estivssemos a trabalhar com 3 casas decimais,
= 3.142 e
Em geral, dizemos que x o valor aproximado de x, arredondado para k casas decimais correctas, se e s se: x = x x 0.5 10 k (4)
A importncia dum erro pode, em geral, ser melhor apreciada se o compararmos quantidade a ser aproximada, i.e., utilizando o erro relativo:
rx = x x ou rx = x x
O erro relativo expressa o erro como uma fraco de | x | e est relacionado com o erro percentual, ou percentagem de erro, definido como: 100 rx . Na prtica o que se utiliza um limite superior de qualquer dos erros, uma vez que para conhecermos x ou rx teramos de conhecer o valor exacto de x. Necessitamos ento de uma frmula em funo do valor aproximado x . Como:
| x | = | x ( x x ) | | x | | x x | = | x | | x |
obtemos
|rx| | x | | x | - | x |
(5)
15
Captulo 1
para | r x | . Se soubermos que | x | muito pequeno quando comparado com x ento (5) pode simplificar-se para: |rx| psilon da mquina Um indicador importante da preciso do sistema de ponto flutuante utilizado pelo computador consiste em saber qual a diferena entre dois nmeros possveis de serem representados. Qual ser a diferena entre dois nmeros consecutivos representados pelo computador? Essa diferena depender da grandeza dos nmeros. Se o nmero positivo for x1 = M 1 2 E , o nmero seguinte com o mesmo expoente que o computador armazena ser x2 = ( M 1 + 2 t ) 2 E (o qual corresponde a aumentar em uma unidade o dgito menos significativo da mantissa). Portanto teremos x2 x1 = 2 E t . Observe-se que qualquer nmero x = M 2 E no intervalo ( x1 , x 2 ) ser aproximado por arredondamento a fl ( x ) = x1 ou fl ( x ) = x 2 , segundo o extremo do intervalo do qual esteja mais perto. O erro absoluto cometido ser ento x fl ( x) = x2 x1 / 2 = 2 E t 1 . Claramente, o erro absoluto ser tanto maior quanto maior for o valor de x. A cota para o erro relativo, pelo contrrio, permanece constante. Com efeito,
rx = x fl ( x) x < x2 x1 2 x = 2 E t 1 1 = 2t 1 2t E M M 2
| x | x
fcil comprovar que a cota do erro relativo se multiplicaria por 2 no caso de se utilizar arredondamento por corte, ou seja: rx = x fl ( x) x t 2 para arredondamento simtrico 21t para arredondamento por corte
A diferena entre 1 e o menor nmero 1+ que maior que 1 mas que no se armazena como 1 designado psilon da mquina ou unidade de arredondamento da mquina. Denota-se M. Para um computador que armazena mantissas normalizadas de t bits,
16
Captulo 1
pelo que M um majorante do erro relativo, ou seja, se fl(x) a representao em F de um nmero real x, o seu erro relativo no excede M ( fl ( x) = x (1 + ) , M ). por isso fundamental conhecer o M do sistema de ponto flutuante que se usa. Em resumo, a explicao anterior do armazenamento de reais no computador permite ento concluir que: qualquer computador apenas pode armazenar um nmero finito de nmeros reais; os nmeros diferentes de zero esto armazenados nos intervalos [-R,-r] e [r,R] duma forma no uniforme. A mxima densidade encontra-se nas proximidades de r (real mais pequeno) e a mnima densidade prximo a R (maior real representvel); o erro absoluto na representao de um real X num sistema de ponto flutuante F(b,t,p,E0) depende da grandeza de X. Quanto maior o valor absoluto de X, maior o erro de arredondamento. No entanto, o erro relativo permanece sensivelmente constante ao longo da recta real. O psilon da mquina uma cota ou limite superior desse erro.
Erro relativo e nmero de algarismos significativos correctos Na representao decimal de um nmero, um algarismo diz-se significativo se qualquer dos dgitos: 1,2,...,9 ou 0, desde que no sirva simplesmente para fixar a posio do ponto decimal ou preencher o lugar de dgitos desconhecidos. Por exemplo, cada um dos nmeros: 1360, 1.360, 0.001360 tem 4 algarismos significativos correctos. O erro relativo est relacionado com o nmero de algarismos significativos correctos. Dizemos que um algarismo significativo correcto, se arredondado o nmero aproximado precisamente depois desse digito vier um erro absoluto inferior em 0.5 na posio daquele digito. Assim, no caso de escrevermos os nmeros em notao cientfica normalizada diz-se que x = (0. d1 d 2 ... d n )10 10 E uma aproximao de x com n algarismos significativos, se:
17
Captulo 1
x = x x 0.5 10 E n
(6)
expresso equivalente a (4). Alternativamente, o nmero de algarismos significativos dum valor aproximado, o qual d boa informao sobre a qualidade dessa aproximao, pode tambm relacionar-se com o erro relativo dessa aproximao. Em particular, se conhecermos um nmero podemos calcular um limite superior para o erro relativo do respectivo valor aproximado e vice-versa. Assim: Teorema 1: Se o primeiro algarismo significativo do valor aproximado a1 0 e esse valor aproximado tem pelo menos n algarismos significativos correctos, ento o seu erro relativo no excede:
1 a1 10n 1
(7)
Demonstrao: considere um valor aproximado x = (0. a1 a2 ... an ) 10 p , com p inteiro, possuindo n algarismos significativos correctos. Ento, de acordo com (6),
x = xx 1 10 p n 2
ou:
rx 1 2 a1 10 n1 1
vem:
rx 1 a1 10 n 1
c.q.d.
18
Captulo 1
Pode tambm demonstrar-se o seguinte resultado: Corolrio: Se o valor aproximado x tiver dois ou mais algarismos significativos correctos, isto , n2, ento,
|rx| 1 2 a1 10n 1
(8)
Exemplo 1.11: Qual o limite superior do erro relativo quando se toma =3.14? Como a1=3 e n=3, obtm-se de (8):
| r | 1 1 = 31 600 2 3 10
Exemplo 1.12: Quantos algarismos significativos correctos devem considerar-se no clculo de 20 de forma que o erro no exceda 0.1% ? Como o primeiro dgito 4 (20=4.4721...),
1 0.001 4 10 n 1
pelo que:
10
n 1
250 e n 4.
O Teorema e Corolrio anteriores permitem determinar limites superiores para os erros relativos a partir do nmero de algarismos significativos correctos. Para solucionar o problema inverso, ou seja, determinar o nmero de algarismos significativos correctos de um nmero aproximado conhecido o erro relativo, no se pode utilizar o recproco do teorema anterior, pois, em geral, no verdadeiro (verifique, por exemplo, com =3.141). Pode porm afirmar-se o seguinte:
19
Captulo 1
Teorema 2: Se a10 o primeiro algarismo significativo do valor aproximado x de um nmero cujo erro relativo no excede
1 2 ( a1 + 1 ) 10 n 1
(9)
ento esse valor aproximado x tem pelo menos n algarismos significativos correctos. Como 1a19 ento 2a1+110 pelo que o mnimo valor da fraco (9) : conseguinte: Corolrio: x aproxima x com pelo menos n algarismos significativos correctos se
1 n 10 . Por 2
| rx | 0.5 10 n
Verifique-se a analogia entre (10) e (4).
(10)
5. Propagao do erro
verdade que os erros de arredondamento so geralmente pequenos mas, quando repetidos em algoritmos longos e complexos, podem ter efeitos catastrficos. So abundantemente citados na bibliografia dois exemplos notveis: a exploso do mssil Arianne a 4 de Junho de 1996, gerada por um erro de overflow no computador de bordo e o fracasso do mssil americano Patriot durante a Guerra do Golfo em 1991, devido a um erro de arredondamento no clculo da sua trajectria. Neste ponto iremos analisar como se propagam os erros de arredondamento no clculo de funes. Abordaremos primeiro o caso de uma funo de uma varivel. Suponhamos, ento, que pretendemos calcular o valor y = f (x ) utilizando uma aproximao x de x. Em geral,
f (x ) no coincide com f (x) . Seja, assim, por definio y = f (x ) . Qual ser o erro cometido
nesta aproximao? claro que o erro f = y = y y depender do erro | x | e tambm da funo f . Se a funo f for continuamente diferencivel, a aplicao do teorema do valor mdio permite escrever
| f | = | f ' ( ) | | x |
20
Captulo 1
com ( x , x) . Como este ponto no conhecido com rigor, poderemos conhecer um majorante de | f | se substituirmos a derivada de f por um seu limite superior, ou seja
| f | | f ' ( x ) |max. | x |
(11)
Exemplo 1.13: Determine um majorante do erro (absoluto) que se comete ao aproximar o valor
x por x , onde x = 4 .00 um valor aproximado de x com 3 algarismos
.
3 .995 x 4 .005 . Ento:
3.995 x 4.005
f ' ( x) =
A relao (11) facilmente generalizvel a uma funo f que dependa de qualquer nmero de variveis. Seja f ( x1 , x1 , ... , xn ) uma funo de R em Rn, que se considera continuamente diferencivel. A aplicao do teorema do valor mdio para funes de n variveis permite obter:
f x i i =1
n
| f |
max
| xi |
(12)
21
Captulo 1
Exemplo 1.14: Dada uma funo f(x,y,z) das variveis x,y,z determinar um limite superior do valor absoluto do erro que vem para o valor da funo f , quando se utilizam os valores aproximados x , y , z . A aplicao da frmula de propagao do erro (12) a este problema conduz a:
| f | f x | x | +
max
f y
| y | +
max
f z
| z |
max
f z
| z |
( x, y, z )
Com base na frmula de propagao do erro (12), podemos facilmente encontrar as regras para a propagao de erros nas 4 operaes aritmticas. Assim, para o erro absoluto:
22
Captulo 1
| ( x y) | | x | + | y | | ( x y ) | | x || y | + | y || x | | ( x/y) | | x || y | + | y || x | y2
| r ( x y ) | | r x | + | r y | | r ( x/y ) | | r x | + | r y |
Analisando as expresses anteriores, verifica-se que dois tipos de situaes podem constituir uma importante fonte de erros ao trabalhar com aritmtica de ponto flutuante: (a) quando se soma (ou subtrai) um nmero muito pequeno a (de) um nmero de muito maior ordem de grandeza; (b) quando se subtraem nmeros muito prximos. Para efectuar um teste do caso (a), em computador, considere novamente o Exemplo 1.1, referido no incio do captulo. Exemplo 1.1: Efectue um programa de clculo que adicione dez mil vezes o valor
0.00001 a uma unidade. Compare o resultado obtido com o resultado exacto calculando a percentagem de erro. O resultado obtido num PC a trabalhar em simples preciso : SUM=1.100136. Como o resultado exacto SUM=1.1, vem
1.1 1.100136 1 .1 100 0.0124 %
23
Captulo 1
Para explicar porque ocorrem os erros de arredondamento do exemplo 1.1, considere-se o clculo de 1+0.00001 num computador em simples preciso. As representaes binrias de 1 e de 0.00001 so, respectivamente,
(1)10 = ( .1000 0000 0000 0000 0000 0000 ) 2 21 (0.00001)10 = ( .1010 0111 1100 0101 1010 1100 ) 2 2 16
No entanto, os ltimos dgitos da mantissa (sublinhados) tero que ser aproximados, j que a mantissa pode apenas armazenar 24 dgitos. Logo, o resultado do clculo ser armazenado como
Atente-se agora no segundo tipo de situao que pode constituir importante fonte de erros, referenciada anteriormente por (b). Analisando a frmula do erro relativo da subtraco, conclui-se que se x e y so nmeros muito prximos o valor x-y torna-se muito pequeno, e consequentemente o erro relativo da diferena dos dois nmeros pode amplificar-se muito. Esta amplificao do erro relativo designa-se por cancelamento subtractivo e corresponde, portanto, perda de algarismos significativos (e consequente aumento do erro relativo) resultante da subtraco de nmeros muito prximos.
24
Captulo 1
x +1
(base 10) a 7 algarismos significativos. Sugira uma forma de evitar o cancelamento subtractivo. Como x + 1 118.3258 (7 a.s.c.) e
x +1 x 118.3216 (7 a.s.c.) , vem: x 118.3258 118.3216 = 0.0042 , x +1 x , o
que apenas tem 2 a.s.c.. De facto, para valores de x positivos e elevados, que ir implicar cancelamento subtractivo no clculo de
x +1 x .
x +1
x +1 + x +1 +
x = x
1 x +1 +
Ora,
14001 14000 =
1 14001 + 14000
Exemplo 1.17: Um fenmeno idntico pode ocorrer no clculo das razes de uma equao do 2 grau utilizando a frmula habitual. No caso de b2 << | 4 a c | , ento b2 - 4 a c | b |
pelo que ocorre no numerador da frmula resolvente um cancelamento subtractivo. Neste caso pode obviar-se ao problema se utilizarmos a seguinte forma alternativa para calcular as razes da equao do 2 grau:
x1 = 2c b+
b +
b2 4 a c
, x2 =
b2 4 a c 2a
se b > 0
x1 =
2c b2 4 a c , x2 = 2a b b2 4 a c
se b < 0
Captulo 1
seja, a razo porque a aproximao no se torna mais exacta quando x se aproxima de zero. Para um x suficientemente pequeno, o numerador de d perde significado devido ao cancelamento subtractivo e este erro, por sua vez, amplifica-se quando se divide por x. Uma vez iniciado o cancelamento subtractivo, as diminuies sucessivas de x fazem com que a+x se arredonde a a ou f(a+x) e f(a) coincidam com a preciso da mquina, pelo que se obtm d=0. A propagao do erro pode tambm estar relacionada com o tipo de problema matemtico que se pretende resolver. Em geral, diz-se que um problema matemtico mal condicionado se for muito sensvel a pequenas alteraes nos seus dados; se a soluo apresenta fraca sensibilidade s variaes nos dados, o problema diz-se bem condicionado.
de 2 grau: x 2
arredondados a 6 casas decimais correctas (pequena variao nos dados) obtm-se a equao: x 2 0.333333 x + 0.027778 = 0 , que no tem razes reais!
Um mtodo numrico diz-se instvel se os erros se amplificam no decurso dos clculos, de forma a afectar significativamente o resultado final; caso contrrio, o mtodo diz-se estvel. Um mtodo estvel produz sempre bons resultados (aplicado a problemas bem condicionados).
26
Captulo 1
diviso. Assim, por exemplo, um computador pode representar facilmente f ( x) = a x 2 + b x + c pois esta funo envolve apenas operaes aritmticas bsicas. Em contraste, funes transcendentes, como por exemplo, ln x =
x 1
aritmticas bsicas, outras operaes, neste caso integrao. Vejamos ento uma das formulaes matemticas mais utilizadas no mbito dos mtodos numricos para exprimir funes: a srie de Taylor. Consideremos uma funo f(x) contnua e com derivadas contnuas, de qualquer ordem, na vizinhana de x = x0 . Esta funo pode ser representada de forma exacta e nica em qualquer ponto x na vizinhana de x = x0 (mais exactamente, no intervalo ]x0 R , x 0 + R [ , denominado intervalo de convergncia, onde R o raio de convergncia da srie para x = x0 ) atravs da srie de potncias infinita:
f ' ' ( x0 ) f ( n ) ( x0 ) 2 f ( x) = f ( x0 ) + f ' ( x0 ) ( x x0 ) + ( x x0 ) + ... + ( x x0 ) n + ... = 2! n!
(13)
=
k =0
f ( k ) ( x0 ) ( x x0 ) k k!
designada representao em srie de Taylor da funo f(x). No caso particular em que x = x0 = 0 , a expanso de Taylor designada por srie de Maclaurin,
f ( x) = f (0) + f (0) x +
f (0) 2 f (n) (0) n f (k) (0) k x + ... + x + ... = x 2! n! k! k=0
(14)
A ttulo de exemplo, as sries de Maclaurin de ex, sin x e cos x so, respectivamente, x 2 x3 xn + + ... + + ... 2! 3! n!
x e =1+ x +
(15)
sin x = x
x3 x5 x 7 + + ... 3! 5! 7! x 2 x 4 x6 + + ... 2! 4! 6! 27
(16)
cos x = 1
(17)
Captulo 1
Infelizmente, tal como um nmero finito de bits apenas consegue representar um nmero limitado de nmeros reais, um nmero finito de nmeros podem representar apenas um nmero limitado de funes. Embora muitas funes possam ser perfeitamente representadas por sequncias infinitas e operaes aritmticas bsicas, os computadores apenas podem armazenar sequncias finitas. Ento, a sequncia infinita que representa a funo exacta ter de ser artificialmente truncada para um nmero finito de termos. Muitos problemas envolvem no apenas funes contnuas mas tambm operaes sobre funes contnuas como integrao e diferenciao. Se as funes contnuas so substitudas por funes definidas discretamente, ento todos os operadores sobre funes contnuas tm tambm de ser substitudos por operadores sobre funes definidas discretamente. Se a srie de Taylor (13) for truncada aps o termo de ordem n, ser expressa como:
f '' ( x0 ) f ( n ) ( x0 ) f ( x) = f ( x0 ) + f '( x0 )( x x0 ) + ( x x0 )2+ ... + ( x x0 )n + Rn ( x) 2! n! 144444444444 2444444444444 4 3 pn ( x)
em que p n (x) designado por polinmio de Taylor de ordem n para f em torno de x0 e R n ( x ) designado por erro de truncatura (representa o erro da aproximao f ( x) pn ( x) ao truncar os termos de ordem n+1 e superiores) associado a pn (x) . Este erro pode ser expresso por: R n ( x) =
n+ f ( 1) ( ) ( x - x0 )n +1 (n + 1)!
(18)
com entre x e x 0 . No caso de se verificar que R n ( x) 0 a aproximao por polinmios de n Taylor pode ser to exacta quanto se queira, bastando para tal considerar um nmero suficientemente elevado de termos. Como no pode, em geral, ser determinado apenas possvel calcular um limite superior para R n (x) pela considerao de um majorante para
f
( n +1)
( ) .
28
Captulo 1
Exemplo
1.19:
x
possvel calcular o valor exacto de e, tanto pela complexidade das operaes a efectuar como pela impossibilidade de atingir o limite. Recorre-se ento a um processo de clculo mais simples, que fornece um valor aproximado desse nmero dentro de um certo grau de preciso considerado satisfatrio. Utilizando (14) o valor de e pode ser expresso pela soma infinita (recorde que, por definio, 0!=1): e=
i =0
1 i!
i! 2.7182539 ,
i =0
cujas primeiras 4 casas decimais coincidem com o valor Utilizando a frmula do erro (18)
exacto
de
e.
R7 ( x) = R 7 (1) =
garante pelo menos 3 casas decimais correctas. No caso deste exemplo, como
R n ( x) 0 , quanto maior for o nmero de termos da srie de Taylor considerados,
n
O exemplo anterior ilustra um mtodo numrico para o clculo do nmero "e" entre outros possveis.
29
Captulo 1
Exemplo 1.20: A figura 4 ilustra graficamente a forma como a funo cos x aproximada no
intervalo 0 x utilizando diferentes polinmios p k (x) , k=1, 2 e 3, obtidos truncando a srie de Maclaurin (14), ou seja:
cos x =
cos
k =0
2 4 6 2 x k = 1 x + x x + ... k! 2 ! 4! 6!
x 2
4
1
6
x2 x4 + 2 4!
x x x + 2 4! 6!
cos (x)
( )
Figura 4 - Grficos de f ( x) = cos x e das aproximaes obtidas por (15) para k = 1, 2 e 3.
Utilizando a expanso em srie de Taylor, truncamos a srie infinita, utilizando uma soma parcial. Este tipo de erro, motivado por truncar uma srie - erro de truncatura - inerente maioria dos mtodos numricos.
7. Discretizao
Um dos conceitos fundamentais do clculo numrico o de discretizao. Consiste na substituio de um problema contnuo (por exemplo, clculo de uma derivada ou integral) por um problema discreto. Suponhamos que se pretende calcular o permetro de uma determinada elipse com eixo maior e menor a e b, respectivamente. Esse permetro ser dado analiticamente pelo integral
P =
ds = (a
2 0 2
sin 2 x + b2 cos2 x d
que um integral elptico de segundo tipo, que no admite soluo analtica. Por isso que,
30
Captulo 1
P =
ds =
r d = [r ]0 = 2 R
2
(19)
no se conhece a frmula analtica do permetro de uma elipse. O clculo ter de ser efectuado numericamente. Como veremos no Captulo 5, o problema contnuo do clculo do integral ser substitudo pelo problema discreto do clculo de uma soma, introduzindo um erro de discretizao.
Exemplo 1.21: (Exemplo simples do conceito de discretizao) Considere que se efectua o
clculo aproximado do integral (19) pelo processo que se indica na Figura 5, isto , dividindo o permetro do crculo em n partes iguais atravs da construo grfica que se ilustra (discretizao do domnio). Como =
Como se verifica na Figura 5(b), quando n o permetro calculado numericamente tende para o valor exacto ( Paprox. P ). No entanto, qualquer que seja o valor n (finito), obteremos sempre um valor aproximado para o permetro do crculo devido ao erro de discretizao (truncatura) introduzido.
l = 2 R sin
Paprox. P
(a)
n (b)
31
Captulo 1
8. Mtodos iterativos
Outra das ideias fundamentais dos mtodos numricos a de iterao ou aproximao sucessiva. Num sentido amplo, iterao significa a repetio de um processo. Um mtodo iterativo um mtodo numrico em que a soluo do problema matemtico definida como o limite de uma sequncia
x1 , x2 , x3 , ... , xn , ...
definida por iterao, ou seja, atravs de uma equao iterativa. O caso mais geral de uma frmula de iterao estacionria de n pontos xk = g ( xk 1 , xk 2 ,... , xk n ) , k = n, n + 1,...
em que a funo de iterao g ser, em geral, no apenas funo de xk 1 , xk 2 , ... , xk n mas tambm de valores de f(x) e das suas derivadas em um ou mais desses pontos. O caso mais simples corresponde s frmulas de iterao estacionrias de um ponto que, como veremos no Captulo 2, tm a forma: xk = g ( xk 1 ) , k = 1, 2, ...
Cada passo tem o nome de iterao. O ndice k indica a iterao presente. O processo tem que ser iniciado com uma aproximao inicial, x0. Dada a aproximao inicial x0[a,b], um mtodo iterativo diz-se convergente no caso das sucessivas aproximaes:
x1 , x2 , x3 , ... , xk , ...
tenderem para , ou seja, lim xk = .
k
Como os nossos meios de clculo so limitados, os processos iterativos devem ser terminados ao fim de um nmero finito de iteraes. Na prtica, o processo termina quando uma certa preciso for atingida. As condies impostas para que esta situao se verifique definem o chamado critrio de paragem (ou convergncia) do processo iterativo (por exemplo, xk estar prximo de ou f ( xk ) ser prximo de 0, ou aps um nmero mximo de iteraes). O erro de truncatura cometido corresponde diferena entre o valor obtido, quando da paragem do processo iterativo, e o valor exacto que seria obtido no limite.
32
Captulo 1
Exerccios propostos
1. Quantos termos da srie de Maclaurin da funo f(x)=ex so necessrios para obter uma aproximao de e com um erro inferior a 10-6? 2. Utilize o desenvolvimento em srie de Taylor para aproximar f(x)=cos x em xi+1=/3 com base no valor conhecido da funo cosseno em xi=/4. Determine os erros relativos cometidos ao considerar aproximaes de ordem 0, 1 e 2. 3. Efectue a representao interna do nmero: (-1000)10 como INTEGER*2. 4. Considere as seguintes representaes hexadecimais (base 16) num INTEGER*2: 005C e FFA4. a) Mostre a relao existente entre aqueles dois inteiros na base 10. b) Mostre as relaes existentes na base 10 entre aquelas duas representaes num INTEGER*2 e as representaes hexadecimais 0000005C e 0000FFA4 num INTEGER*4. 5. A uma varivel inteira, declarada como INTEGER*2, corresponde a seguinte representao interna em computador: 1000 0000 1000 1111 Qual o valor dessa varivel? Justifique. 6. Mostre que o nmero binrio. 7. Considere um computador hipottico que utiliza a representao de ponto flutuante normalizada: F(b,t,p,E0) = F(2,12,4,8) a) Determine o nmero de reais diferentes que esse computador consegue representar e o valor do menor e do maior reais positivos desse conjunto. b) Verifique se os reais: X1=(0.0390625)10 e X2=(0.05)10 pertencem ao conjunto finito dos nmeros reais representveis. Justifique. c) Qual o mximo erro que o referido computador pode cometer ao armazenar um nmero real positivo no intervalo determinado em a). Justifique. d) Qual a representao interna do nmero inteiro (-300)10. 8. Considere o formato para reais em ponto flutuante: F(2,24,8,128) no qual o primeiro bit da mantissa um bit implcito. Efectue a representao do decimal: (-57.234375)10.
1 no pode ser representado por uma expresso finita no sistema 5
33
Captulo 1
9. Considere um computador com uma palavra de 32 bits que utiliza a representao de ponto flutuante normalizada: F(b,t,p,E0) = F(2,24,8,128) a) Efectue a representao interna do nmero real (-2/15)10. b) Efectue a representao interna do nmero inteiro (-10)10 , sabendo que o mesmo foi declarado como INTEGER*2. 10.a) Considere um computador com uma palavra de 32 bits e um sistema de numerao em ponto flutuante F(2,24,8,128). Efectue a representao interna do decimal: (-450.10)10. b) Qual a gama de inteiros que o referido computador consegue representar quando a varivel declarada como INTEGER*2? Justifique a sua resposta. 11. Considere um computador hipottico com uma palavra de 10 bits e um sistema de numerao em ponto flutuante F(2,5,4,8). a) Efectue a representao interna dos nmeros: 10 (inteiro) e -10.0 (real). b) Verifique se possvel representar de forma exacta o real: X=35.0. 12. Considere um computador que utiliza a representao de ponto flutuante normalizada: F(b,t,p,E0) = F(2,24,8,128) a) Efectue a representao interna do nmero real (-1/15)10. b) Efectue a representao interna do nmero inteiro (-5000)10 , sabendo que foi declarado como INTEGER*2. 13. Considere um sistema de ponto flutuante normalizado de base 2, constitudo por palavras de 8 bits, sendo 1 bit reservado para o sinal da mantissa, 3 bits para a magnitude do expoente (E0=4) e 4 bits para a magnitude da mantissa. Calcule em decimal os limites positivos de overflow e underflow desse sistema. 14. Mostre que: num sistema de ponto flutuante de um computador o valor do expoente mximo dado por: Emax = 2 p 1 E0 , sendo o valor de E0 dado, em geral, por: E0 = 2 p 1 , onde p representa o nmero de bits reservado para a caracterstica C (C=E+E0). Justifique convenientemente a sua resposta. 15. a) Mostre que num sistema de numerao de virgula flutuante normalizado F=F(b, t, p, E0), no qual todos os dgitos da mantissa so armazenados, existem 2 (b 1) b t 1 ( E max E min + 1 ) + 1 nmeros reais distintos (Emin e Emax correspondem, respectivamente, ao mnimo (negativo) e ao mximo (positivo) valores dos expoentes). 34
Captulo 1
b) Considere b=2, t=2, p=3, E0=2p-1. Quais os nmeros reais positivos representados neste sistema? 16. Considere um sistema hipottico de ponto flutuante normalizado de base 2 que efectue a representao de nmeros atravs de uma palavra de 7 "bits" (b=2, t=3, p=3, E0=4). a) Calcule em decimal os limites positivos de underflow e overflow e determine quantos nmeros distintos se podem representar nesse sistema. b) Mostre que o maior nmero inteiro N (base 10), que tem a particularidade de qualquer inteiro x satisfazendo: 0 x N ser representado de modo exacto em forma de ponto flutuante, t dado por: N = 2 . 17. Do cimo de uma torre foi lanado verticalmente um corpo. A equao que rege o respectivo movimento : 1 s (t ) = v0 t + g t2 2 na qual g a acelerao da gravidade (9.8 m/s2), s o espao percorrido (m), v0 a velocidade inicial com que o corpo lanado (m/s) e t o tempo de queda (s). Sabendo que o corpo foi lanado com velocidade inicial de 5 m/s, podendo este valor estar afectado de um erro absoluto que no excede 0.1 m/s, e que o tempo que o corpo levou a atingir o solo foi estimado em 10 0.1 s, determine um valor aproximado para a altura da torre e obtenha um majorante para o respectivo erro. 18. O valor 1.315, com as trs casas decimais correctas, corresponde ao raio, em metros, de um crculo. Calcular a rea do mesmo, assim como o nmero de algarismos significativos do respectivo resultado. Considere para o valor 3.142. 19. Justificando convenientemente os clculos, determine o nmero de algarismos 2 significativos correctos que podemos garantir no resultado do quociente de e por , quando e = 2.718 e = 3.14 . 20. A acelerao da gravidade (g) pode ser determinada empiricamente por medio do 2 2 perodo de oscilao (T) de um pndulo de comprimento L atravs de: g = 4 L / T . Qual o nmero de algarismos significativos correctos necessrios na medio de T para garantir uma preciso de 0.2% na determinao de g, sabendo que o comprimento do pndulo foi avaliado em L = 5 0.005 m. Considere, em primeira aproximao, que o nmero de dgitos correctos utilizados na aproximao de suficientemente grande para se poder desprezar o respectivo erro.
35
Captulo 1
exterior, e a espessura da parede e h a altura do depsito. Utilizando um aparelho que garante uma preciso mnima de 0.1%, um operador obteve os seguintes valores aproximados: R = 2.51 m , e = 0 ,20 m e h = 6,01 m . a) Quantos algarismos significativos correctos tem cada uma daquelas medies? b) Qual a aproximao a utilizar para para garantir um erro mximo de 1% no clculo do volume do depsito? 22. O raio de uma esfera com 3 algarismos significativos correctos igual a 1.00 m. Determinar a aproximao que deve tomar para , por forma a obter o volume da esfera ( V = 4 3 R3 ) com uma preciso mnima de 5%. 23. Justificando convenientemente os clculos, determine o nmero de casas decimais correctas a obter na medio do raio e da altura de um depsito cilndrico, com uma capacidade de aproximadamente 25.00 m3. Considere o valor de a utilizar nos clculos com 5 algarismos significativos correctos e que a altura do reservatrio aproximadamente igual a duas vezes o respectivo raio. 24. Pretende-se obter a capacidade de um reservatrio cnico circular ( V =
1 r 2 h ) com 4 3
algarismos significativos correctos. Supondo que se utiliza nos clculos um valor de com 6 casas decimais correctas, qual ter de ser a preciso do aparelho de medida a utilizar na obteno das respectivas dimenses lineares do reservatrio (raio, r, e altura, h). Justifique a sua resposta. 25. Um construtor civil comprou um terreno de habitao Cmara Municipal com uma rea de aproximadamente 150x200 m2. Na medio de cada um dos lados do terreno, comprimento e largura, tolerou-se um erro de 5 cm por cada 10 metros. a) Calcule a percentagem mxima de erro de que vem afectado o valor da rea do terreno, devido ao facto dos seus lados no terem sido medidos exactamente. b) O construtor deseja dividir o referido terreno em lotes para habitao com aproximadamente 600 m2 cada um, admitindo uma percentagem mxima de erro de 1% em cada um deles. Por este facto, no lhe possvel determinar com exactido o nmero de lotes que se podem obter com a rea total do terreno. Qual ento o nmero mximo e o nmero mnimo de lotes que o construtor poder obter? Justifique.
36
Captulo 1
26. Um depsito cilndrico de seco elptica tem um volume interior aproximadamente igual a 25 m3 (V=abh, sendo a e b os semi-eixos da elipse e h a altura do depsito). Pretendendo-se efectuar uma determinao mais rigorosa daquele volume interior (com 3 algarismos significativos correctos), considerou-se o valor de com 4 algarismos significativos correctos e mediram-se a e b, tendo-se obtido a=1.3110.001 m e o valor arredondado b =2.100 m. a) Determinar limites superiores para os erros absolutos e relativos de , a e b. b) Determinar qual a preciso com que deve ser efectuada a medio da ltima dimenso, h, por forma a conseguir-se o clculo de V com a preciso desejada. c) Supor agora que se pretende determinar V com 4 algarismos significativos correctos, verificar se tal possvel recorrendo apenas ao aumento do nmero de algarismos significativos de e, em caso afirmativo, determinar esse nmero. 27. A capacidade de um depsito cilndrico dada por V= (R-E)2 h, onde E representa a espessura da parede, R o raio exterior da base e h a altura do depsito. Dois operadores diferentes efectuaram as seguintes medies:
E = 0.20 0.02 m 1 operador R = 2.60 0.05 m h = 4.95 0.10 m E = 0.18 0.03 m 2 operador R = 2.55 0.05 m h = 5.05 0.08 m
Utilizando com 4 algarismos significativos correctos, determinar: a) O conjunto de medies mais correcto (medies que minimizam o erro relativo de V). b) Os erros relativos mximos a consentir nas medies de E,R e h, de modo a garantir uma capacidade V com 2 algarismos significativos correctos. 28. O mdulo de Young E (mdulo de elasticidade) pode ser determinado com base na deflexo s que uma barra de seco rectangular sofre quando sobre a mesma se exerce uma fora F, atravs da seguinte expresso: E= 1 F l3 4 a 3b s
onde l e a.b so, respectivamente, o comprimento da barra e a rea da sua seco. Sabendo que se conhecem os valores aproximados: F=20 Kgf, com erro relativo rF=10-3, e s=2.5 cm, l=50 cm, a=3 mm, b=44 mm, com erros relativos rs = rl = ra = rb=10-2, calcular uma aproximao do valor exacto do mdulo de Young E, e determinar uma estimativa da percentagem de erro de que vem afectada essa aproximao.
37
Captulo 1
29. Quantos algarismos significativos correctos se pode garantir que existem no resultado do produto de 13.2 por 0.012579, supondo que os algarismos significativos destes nmeros so, todos eles, correctos. Justificar a resposta. 30. A capacidade de um depsito cilndrico dada por: V = R 2 h onde, R o raio interno e h a altura do depsito. Supondo que: R = 2.5 0.01 m e h = 4.0 0.01 m . a) Verifique se possvel calcular o volume do depsito com uma preciso de 1% . b) Determine qual o menor nmero de algarismos significativos que deve tomar para o valor de , por forma a obter o volume do depsito com uma preciso mnima de 2%. 31. Dado 10 = 3.162278 , calcule com uma preciso mnima absoluta de 10-5 o valor de
10 . Justifique os clculos.
38
CAPTULO 2
_______________________________________________________________________________________________________________
(1)
Uma soluo da equao f(x)=0 um valor de x, seja , para o qual a funo f(x) se anula, i.e., tal que f()=0. Esta soluo designada por zero da funo f(x) ou raiz da equao f(x)=0. As razes de uma equao tanto podem ser reais como complexas. Neste capitulo vamos limitar-nos determinao de razes reais. Geometricamente, uma raiz real da equao f(x)=0 representada pela abcissa x=, para a qual o grfico da funo f(x) intercepta o eixo Ox. Uma equao da forma geral (1) pode ter ou no razes reais. No primeiro caso pode haver apenas uma raiz ou vrias. Por exemplo, a equao quadrtica a x 2 + b x + c no tem razes reais se b 2 < 4 a c ; caso contrrio ter duas razes (figura 1). Naturalmente, se b2=4ac, as duas razes sero idnticas (raiz de multiplicidade 2 ou raiz dupla)2. A funo intercepta o eixo das abcissas, mas f-lo de modo a que o zero seja um ponto de tangencia com o eixo. Neste caso, a funo direita e esquerda da raiz no muda de sinal.
( ) = 0 e f
(m)
( ) 0
39
Captulo 2
No que se refere ao tipo de funo elementar f as equaes podem classificar-se em equaes algbricas e transcendentes. Uma equao algbrica real na varivel x uma relao matemtica que envolve apenas um nmero finito de operaes de soma, subtraco, produto, diviso e radiciao de termos envolvendo a varivel x. So exemplos,
f ( x ) x 4 4 x 3 3 x 2 + 13 x 4 = 0 f ( x) x3 = 0 x 2 1
f ( x ) 3 x 2 + 7 x1/ 2 2 x 3 = 0
Enquanto a primeira uma equao polinomial (a funo f uma funo algbrica racional inteira), a segunda (na qual f uma funo algbrica racional fraccionria, ou seja, que se pode expressar como quociente de dois polinmios) e a terceira (na qual f uma funo algbrica irracional) so equaes algbricas no polinomiais. Exemplo 2.1: Exemplo de uma equao polinomial aplicada a um problema de engenharia deformao de uma viga em consola (carga vertical uniforme)
x= L x=0 =0
max
x=L =1
A deformao linear num ponto ( x = L) est relacionada com a deformao mxima max atravs de:
f ( ) = 4 4 3 + 6 2 3
=0 max
Designam-se por equaes transcendentes, as que no so algbricas, ou seja, que envolvem funes trigonomtricas, exponenciais, logartmicas, entre outras. So exemplos,
40
Captulo 2
os casos f ( x) = x e x 1 = 0 f ( x ) = x + ln( x ) = 0 f ( x ) = x tg ( x ) 1 = 0 Exemplo 2.2: Exemplo de uma equao transcendente aplicada a um problema de engenharia perda de carga numa conduta uniforme
H = f L Q2 D 2 g A2
L w Q p
z1 z=0
z2
A perda de carga (perda de energia por unidade de peso), H , numa conduta uniforme pode ser calculada em funo do denominado factor de atrito f calculado por uma equao do tipo
C 1 = 2 log C1 + 2 f f
na qual C1 e C 2 so coeficientes funo das caractersticas do fluido, velocidade de escoamento e do dimetro e material de revestimento da conduta (dados do problema).
As equaes no lineares, excepto em casos particulares, no podem ser resolvidas atravs de mtodos directos, i.e., algoritmos que permitem obter uma soluo num nmero finito e predeterminado de passos de clculo (se o computador trabalhasse com aritmtica exacta, ou seja, se no existissem erros de arredondamento, a soluo obtida seria exacta). Considere-se o exemplo de uma equao polinomial
f ( x ) a n x n + a n 1 x n 1 + ... + a1 x + a 0 = 0
41
Captulo 2
em que a n , a n 1 , ... , a 0 so nmeros reais designados por coeficientes e n um nmero inteiro positivo, designado por grau da funo polinomial. Para equaes de grau menor ou igual a 4, todas as razes podem ser obtidas directamente por frmulas algbricas, embora para equaes de grau 3 e 4 esse no seja o procedimento mais eficiente. Para n>4 h que recorrer a mtodos iterativos. Quando se pretende determinar no apenas uma mas vrias das solues de uma equao, ser necessrio aplicar o mtodo iterativo para cada uma das solues a calcular. Estas aplicaes devero necessariamente partir de estimativas iniciais x0 diferentes. A implementao computacional de qualquer mtodo iterativo apresenta trs componentes essenciais: i) uma estimativa inicial da soluo ; ii) um processo para calcular uma nova aproximao melhorada - frmula recursiva ou de iterao - ; iii) um critrio para terminar o processo de actualizao - critrio de paragem ou de convergncia -. A ligao entre as diferentes componentes deste processo encontra-se representada, atravs de um diagrama de blocos, na Fig. 2.
INCIO
ESTIMATIVA INICIAL
FRMULA DE ITERAO
NO
42
Captulo 2
importante efectuar a distino entre o algoritmo iterativo - processo global desde o "incio" at ao "parar" - e a principal componente desse processo designada por frmula de iterao, que ser distinta em funo do mtodo iterativo utilizado. O caso mais simples, como se referiu no final do Captulo 1, corresponde s frmulas de iterao estacionrias de um ponto, x k = g ( x k 1 ) (2)
A aplicao da frmula de iterao (2) requer o conhecimento duma aproximao inicial da soluo, seja x0. Muitas vezes x0 pode ser obtido de imediato. Este , por exemplo, o caso em que o problema equacionado permite uma previso do resultado. Nos casos em que tal no possvel, ou ainda no caso mais geral de se pretenderem obter as vrias razes da equao, necessria numa fase prvia obter essa estimativa. Assim, e de forma geral, pode considerar-se que a determinao aproximada das razes de uma equao se efectua em duas etapas: i)- Localizao, separao e contagem das razes Consiste em obter intervalos disjuntos, tantos quantos o nmero de razes, cada um dos quais contendo uma raiz (Fig. 3). Estes intervalos permitiro obter uma "estimativa" da raiz. Na seco 2. apresentam-se diferentes mtodos (grficos e analticos) para obter essa estimativa inicial.
y=f(x)
a1
b1
a2
b2 a3
b3
ii)- Determinao de uma aproximao da raiz utilizando um mtodo iterativo. Aps se obter uma aproximao inicial, que algumas vezes pode ser grosseira, vai-se sucessivamente refinando a aproximao at que a mesma esteja to prxima da raiz da equao quanto seja requerido pelo problema em anlise.
43
Captulo 2
Apresentam-se na seco 3 alguns mtodos iterativos para a determinao das razes reais de uma equao algbrica ou transcendente do tipo f(x)=0. Como os dois primeiros aspectos do algoritmo computacional sero objecto de tratamento mais pormenorizado, vamos deter-nos um pouco mais no aspecto da convergncia. O valor exacto das razes de uma equao pode ser determinado num nmero relativamente pequeno de casos. Isto verdade inclusivamente para a equao quadrtica, pois sempre que b2 - 4ac no seja um quadrado perfeito a raiz quadrada de b2 - 4ac no poder ser calculada de forma exacta. No caso geral de um mtodo iterativo, o valor encontrado no uma raiz exacta mesmo que no ocorram erros de arredondamento. Assim, na maioria das aplicaes prticas o objectivo determinar valores aproximados das razes com a preciso exigida pelo problema em anlise. Obtida a aproximao inicial, x0, por aplicao sucessiva de (2) obteremos uma sucesso de aproximaes x1, x2, x3,... . Esta sucesso {xk} convergir para a raiz se e s se para qualquer >0 existir um inteiro I tal que n>I e m>I implique que: xn - xm < (condio de Cauchy).
A condio de Cauchy no pode ser aplicada directamente, utilizando um comprimento finito de tempo de computador. De facto, um processo de clculo no pode decorrer indefinidamente; tem de ser terminado aps um nmero finito de iteraes. O erro de truncatura cometido no clculo numrico corresponde diferena entre o valor obtido, quando da paragem do processo iterativo, e o valor exacto que seria obtido no limite. Por esta razo, tm de ser definidos critrios de paragem para os processos iterativos. Existem duas interpretaes computacionais possveis para a determinao de ; ou calcular um valor xk muito prximo de , ou calcular xk de forma que f(xk) seja muito pequeno. Analisem-se os dois seguintes casos extremos. Se a funo f(x) tal que a inclinao da curva muito significativa na vizinhana da raiz (Fig. 4a), a preciso com a qual se pode calcular a raiz poder estar limitada pelas capacidades do computador. Considere-se a seguinte funo: f ( x) = (10 x )3 e x
2
a qual tem como zero x==10. No entanto, a soluo com base na implementao em
44
Captulo 2
computador de um mtodo iterativo poder ficar limitada a =1010-14, a qual embora muito prxima da raiz, conduz a um valor para f(x) de aproximadamente 104. Por outro lado, uma funo muito plana na vizinhana da raiz poder tambm causar problemas. Neste caso, a soluo, embora produzindo um valor para a funo muito prximo de zero, pode encontrar-se algo distante da verdadeira soluo (Fig. 4b).
Figura 4 - (a) Valor aproximado xk prximo da raiz exacta , mas f(xk) no pequeno; (b) Embora f(xk) seja pequeno o valor de xk que no est prximo da raiz exacta . Considere-se, por exemplo:
f ( x ) = (10 x ) 3 e x
cuja soluo tambm x==10. No entanto, f(10.01) da ordem de 10-50, e por isso a implementao em computador de um mtodo iterativo poder fornecer uma soluo como 10.01 em lugar de 10. Dependendo do problema em causa aquela soluo poder ou no ser aceitvel. Assim, na prtica, uma sucesso de aproximaes sucessivas x1, x2, x3,... produzida por um mtodo iterativo dita convergente se, dado um inteiro positivo Imax (mximo nmero de iteraes), para algum k<Imax se verificar: f(xk) 1 e/ou xk xk-1 2 xk ( ou xk - xk-1 2 ) nas quais 1>0 e 2>0 so tolerncias pr-definidas. Caso contrrio, a sucesso no converge em I iteraes (convergncia muito lenta) ou ser divergente. Quando se comparam mtodos iterativos, em termos de convergncia, frequente utilizar 45
Captulo 2
os seguintes atributos: Robustez: {xk} converge para independentemente de x0 estar ou no suficientemente prximo de . Ao analisar as condies para as quais um mtodo tem garantia de convergncia, a necessidade de ter ou no estimativas iniciais "suficientemente prximas" do zero pretendido leva-nos a distinguir teoremas de convergncia local e global. Um teorema de convergncia local especifica propriedades de convergncia que dependem do facto do processo iterativo se ter iniciado suficientemente prximo da soluo. Um teorema de convergncia global especifica propriedades de convergncia que dependem apenas da aproximao inicial se encontrar num intervalo claramente especificado. Veremos em seces posteriores que algumas vezes possvel fornecer simultaneamente teoremas locais e globais para determinados mtodos particulares. Rapidez (ou velocidade) de convergncia. A rapidez de convergncia de um mtodo iterativo pode ser determinada comparando valores sucessivos do termo de erro:
xk = xk
Para caracterizar a rapidez de convergncia frequente utilizar a noo de ordem de convergncia. Um mtodo iterativo, que que:
lim xk x k 1
p
convergindo para , dito de ordem de convergncia p se existe uma constante positiva C tal
=C
(3)
A constante C designa-se por razo de convergncia ou constante de erro assimpttico. Se p=1 diz-se que a sucesso converge linearmente para a raiz , ou seja, que o mtodo tem convergncia linear; se p=2 o mtodo ter convergncia quadrtica, etc. Sempre que p>1, a convergncia diz-se supralinear. A expresso (3) costuma por vezes escrever-se na forma assimpttica
p
x k C x k 1
46
Captulo 2
que d uma indicao do modo como o erro evolui quando o nmero de iteraes for suficientemente grande. Para k suficientemente grande,
xk
estar j relativamente
prximo de zero. Assim, quanto maior for p (ordem de convergncia de um mtodo iterativo) menor ser, em princpio, o nmero de iteraes necessrio para atingir uma dada preciso. A razo de convergncia tambm pode ser um aspecto a considerar quando se comparam processos iterativos com a mesma ordem de convergncia. Em termos prticos, definindo o intervalo entre as iteradas de duas iteraes sucessivas como x k x k x k 1 (Fig. 5), para um k suficientemente grande, pode-se garantir que
xk-1
x0
...
x k-1
xk
xk
x k
y=f(x)
Figura 5 - O k-simo incremento xk como majorante do erro xk quandoxk+1<<xk
47
Captulo 2
Exemplo 2.3: Efectuar a localizao, contagem e separao das razes reais positivas de f ( x ) = x tg ( x ) 1 .
48
Captulo 2
( n 1)
( L) 0 , f
(n)
( L) > 0
esse valor L ser um limite superior (ou limite excedente) das razes reais de f(x)=0, ou seja, qualquer das razes reais i (i=1,2...,n) verifica a relao iL. Demonstrao: Considere-se, para simplificar e por ser o caso mais corrente, que a funo f(x) um polinmio de grau n. Atravs do polinmio de Taylor, em torno de L, obtm-se
' pn ( x ) = pn ( L ) + pn ( L ) ( x L ) + ' pn' ( L) p ( n ) ( L) ( x L) 2 + ... + n ( x L )n 2! n!
( pnn ) ( L) = an n! > 0
pelo que,
' pn ( x) = pn ( L ) + pn ( L ) ( x L ) + ' p n' ( L ) p( n) ( L) ( x L ) 2 + ... + n ( x L )n > 0 2! n!
j que a soma de parcelas no negativas, para qualquer x L . O limite inferior ou deficiente das razes reais de f(x)=0 um nmero l tal que qualquer que seja essa raiz, i, se tem li. Para determinar este valor basta construir o transformado de f(x) em (-x), ou seja, o polinmio f *(x)= f (-x). De facto, f *(x)= f (-x) tem razes simtricas de f(x). Ento, se o limite excedente das razes reais de f *(x) for L*, teremos para limite deficiente das razes reais de f (x)=0 o valor l = - L*.
49
Captulo 2
L = 4 limite superior das razes de p4(x)=0 (neste caso, =4 uma raiz da equao).
x =1 p 4 ( x ) = x 4 + 4 x 3 3 x 2 13 x 4
' p 4 ( x ) = 4 x 3 + 12 x 2 6 x 13 ' p 4' ( x ) = 12 x 2 + 24 x 6 ' p 4'' ( x ) = 24 x + 24 IV p 4 ( x ) = 24 ( = 4 !)
x=2 + + + + +
+ + + +
L = 2 limite superior das razes de p4(-x)=0, o que implica que l = - 2 limite inferior das razes de p4(x)=0.
i [2 , 4]
l=-2 -1 0 1 2 3 L=4
Para no se ter que efectuar, como no exemplo anterior, um processo por tentativas sucessivas, pode utilizar-se o seguinte resultado para obter uma estimativa (majorante) de L :
50
Captulo 2
a L 1 + max k a k <0 a n
1 nm
(4)
Exemplo 2.5: Utilizar (4) para calcular um majorante do limite superior da equao p 4 ( x ) x 4 4 x 3 3 x 2 + 13 x 4 = 0 do exemplo 2.4. p 4 ( x ) = x 4 4 x 3 3 x 2 + 13 x 4 max a k negativo Utilizando (4), com n = 4 e m = 3 , obtm-se
L 1+ 4 1
1 4 3
= 5
Uma vez limitadas (localizadas) as razes de f(x)=0 pelo mtodo de Newton, o mtodo de Rolle (ou em alternativa, o mtodo de Fourier) vai fornecer um critrio para as separar e contar.
2.2.2 Mtodo de Rolle O mtodo de Rolle est baseado no teorema de Rolle, e respectivos corolrios, que se recordam: Teorema de Rolle: Seja f uma funo continua no intervalo [a,b] e diferencivel em ]a,b[; se f ( a ) = f ( b ) , existe um ponto c ] a , b [ tal que f ' ( c ) = 0 . Corolrio 1: Entre dois zeros de uma funo diferencivel existe, pelo menos, um zero da sua derivada.
51
Captulo 2
f (x)
Figura 6 Ilustrao grfica do corolrio 1 do teorema de Rolle. Corolrio 2: Entre dois zeros consecutivos da derivada de uma funo diferencivel existe, quanto muito, um zero dessa funo.
f (x) f (x)
xe
Pelo teorema de Bolzano: Se f for uma funo continua em [a,b] e mudar de sinal nos extremos desse intervalo, ento existe pelo menos uma raiz real de f em [a,b]. Por outro lado, como f ' ( x ) = x e
x
+e
= e
(1 + x )
e
x > 0 , x
f '( x) = e
(1 + x )
= 0 x = 1 pois : e
Assim, como no intervalo [0,1] a derivada no se anula, pode concluir-se pelo Corolrio 1 do teorema de Rolle que apenas pode existir uma raiz. Por outro lado, como no intervalo [0,1] existe pelo menos uma raiz (T. de Bolzano) pode concluir-se que a raiz nica em [0,1], c.q.d.
52
Captulo 2
Mtodo de Rolle: Aplica-se ao caso particular de f(x) ser regular em [a,b], em particular, um polinmio, e em que seja possvel determinar as razes reais de f'(x)=0. Sejam elas, j ordenadas s1 < s 2 < s 3 < ... < s k Denominam-se nmeros de Rolle da equao f(x)=0, definida em I R , aos elementos do conjunto formado pelos pontos fronteira de I (limites inferio, l , e superior, L , das razes de f(x)=0 calculados pelo mtodo de Newton) e pelos zeros da derivada de f, ou seja l , s1 , s2 , s3 , ... , sk , L O mtodo de Rolle afirma que: uma vez ordenados de forma crescente, entre dois nmeros de Rolle consecutivos existe no mximo uma raiz real da equao. Demonstrao: De facto, atravs do Corolrio 2, sabe-se que entre dois zeros consecutivos da derivada h quanto muito um zero da funo. Por outro lado, entre o limite inferior e o primeiro zero da derivada tambm s pode existir um zero da funo (j que de acordo com o Corolrio 1 entre dois zeros da funo existe pelo menos um zero da derivada). O mesmo raciocnio pode ser aplicado entre o ltimo zero da derivada e o limite inferior. A existncia ou no de raiz em cada um dos intervalos, formados por dois nmeros de Rolle consecutivos, ser determinada pelos sinais da sucesso de Rolle: f ( l ) , f ( s1 ) , f ( s 2 ) , f ( s3 ) , ... , f ( s k ) , f ( L ) Se entre dois nmeros de Rolle consecutivos a funo f mudar de sinal existir uma raiz no intervalo; caso contrrio, isto , se a funo no mudar de sinal, no existir qualquer raiz no intervalo.
53
Captulo 2
Exemplo 2.7: Utilizar o mtodo de Rolle para efectuar a separao das razes da equao p 4 ( x ) x 4 4 x 3 3 x 2 + 13 x 4 = 0 do exemplo 2.4. Como foi verificado no Exemplo 2.4, =4 uma raiz da equao, pelo que p 4 ( x ) = ( x 4 ) p3 ( x ) Utilizando a regra de Ruffini
1 4 1
obtm-se:
4 4 0
3 0 3
13 12 1
4 4 0
p 4 ( x ) = ( x 4 ) ( x 3 3 x + 1) 14 244 4 3 p3 ( x )
Ns de Rolle: 2 , 1 , 1 , 2
Na prtica, o clculo dos zeros da derivada pode ser to complicado quanto o clculo dos zeros da funo original. essa a dificuldade que surge frequentemente na aplicao do mtodo de Rolle. Nesses casos h que utilizar um mtodo alternativo, como o mtodo de Fourier.
54
Captulo 2
2.2.3 Mtodo de Fourier O mtodo aplica-se a equaes algbricas e transcendentes sempre que as respectivas funes sejam contnuas e admitam derivadas contnuas at uma certa ordem (por exemplo, n) com a derivada dessa ordem de sinal constante no intervalo [a,b] considerado. Sucesso de Fourier a sucesso:
()
( x)
com n
Diz-se que dois termos consecutivos da sucesso de Fourier fazem entre si uma permanncia para x=xo se so do mesmo sinal e fazem uma variao se so de sinais contrrios. Teorema de Fourier - O nmero de razes reais de f(x)=0 em [a,b] igual ao nmero de variaes perdidas pela sucesso de Fourier de f(x) quando se passa de a para b, ou um nmero inferior mas da mesma paridade. O mtodo de Fourier para o clculo do nmero de razes de f(x)=0 em [a,b] consiste em contar o nmero de variaes da sucesso de Fourier de f(x) no ponto a (seja esse nmero V(a)) e no ponto b (seja esse nmero V(b)). O numero de razes reais de f(x)=0 em [a,b] igual a: V(a) - V(b) ou um nmero inferior mas da mesma paridade, i.e. V(a) - V(b) - 2 K , KZo+ O objectivo prtico do mtodo ento tentar construir sub-intervalos [ak, bk], k=1,2,... nos quais se verifique V(ak)-V(bk) = 1.
55
Captulo 2
Exemplo 2.8: Utilizar o mtodo de Fourier para efectuar a separao das razes da equao p 3 ( x ) x 3 3 x 2 + 1 = 0 do exemplo 2.6.
p3 ( x ) = x 3 3 x + 1
' p3 ( x ) = 3 x 2 3 ' p 3' ( x ) = 6 x ' p 3'' ( x ) = 6 ( = 3!)
' ' ' Para : a = l = 2 p 3 ( 2 ), p 3 ( 2 ), p 3' ( 2 ), p 3'' ( 2 ) II II II II 1 , 9 , 12 , 6 14 4 14 4 1 24 2 3 2 3 4 3 V V V ' ' ' Para : b = L = 2 p 3 ( 2 ), p 3 ( 2 ), p 3' ( 2 ), p 3'' ( 2 ) II II II II 3 , 9 , 12 , 6 1 24 1 24 1 24 4 3 4 3 4 3 P P P
V(-2) = 3
V(2)=0
V(0)=2
V(1)=1
N de raizes em ]0 ,1[ V(0) - V(1) = 2 - 1 = 1 1 raiz N de raizes em ]1, 2 [ V(1) - V(2) = 1 - 0 = 1 1 raiz
56
Captulo 2
Aplica-se no caso particular da funo ser um polinmio de grau n, Teorema de Descartes - O nmero de razes reais positivas de um polinmio, suposto ordenado, igual ao nmero de variaes de sinal dos seus coeficientes ou um nmero inferior da mesma paridade (o zero , para este efeito, considerado par).
Demonstrao: O teorema de Descartes corresponde aplicao do teorema de Fourier ao
intervalo [ 0 , + [ . De facto :
V (0) V ( ) = V (0) j que : V ( ) = V ( L ) = 0
E quanto ao nmero de razes negativas? Atendendo a que ele igual ao nmero de razes reais positivas do seu transformado em (-x), justifica-se o seguinte enunciado: O nmero de razes negativas de um polinmio igual ao nmero de variaes de sinal dos coeficientes do seu transformado em (-x) ou a um nmero inferior da mesma paridade. No caso particular do polinmio ser completo o mtodo de Descartes pode enunciar-se: " O nmero de razes reais positivas igual ao nmero de variaes de sinal dos seus coeficientes ou um nmero inferior da mesma paridade, e o nmero de razes negativas ser igual ao nmero de permanncias de sinal dos seus coeficientes ou um nmero inferior da mesma paridade (o zero , para este efeito, considerado par)."
Exemplo 2.9: Utilizar a regra de sinais de Descartes para a contagem das razes
positivas e negativas da equao x 4 4 x 3 3 x 2 + 13 x 4 = 0 do exemplo 2.4. Como o polinmio completo: n de variaes de sinal de f(x)= 3 3 ou 1 razes positivas n de permanncias de sinal de f(x)= 1 1 raiz negativa
57
Captulo 2
Localizada a raiz que se pretende determinar, ou seja, encontrado um intervalo [a,b] que contenha essa e apenas essa raiz, pretende-se agora, atravs de um mtodo iterativo, calcular o valor dessa raiz com uma determinada preciso. Os mtodos para resolver este problema podem ser classificados em dois grandes grupos. Os mtodos de intervalo aberto, para os quais partida no estritamente necessrio definir um intervalo que contenha a raiz, j que a sua filosofia se baseia no conceito de aproximao inicial. O processo iterativo pode ser iniciado, no caso mais simples, com uma nica aproximao raiz (mtodos iterativos dependentes de um s ponto). No entanto, a convergncia dos mtodos deste grupo depende dos valores iniciais atribudos na primeira iterao, razo pela qual ter obtido previamente o intervalo onde se encontra a raiz constitui uma ajuda preciosa na seleco dos valores que iro inicializar o processo. Como exemplos deste tipo de mtodos tem-se o mtodo do ponto fixo, o de Newton-Raphson e o da secante. O segundo grupo engloba os mtodos de intervalo fechado (tambm designados como de encaixe ou mtodos que enquadram a raiz) como so os mtodos da bisseco e da falsa posio. So caracterizados por definirem, em cada iterao, um intervalo que contm a raiz e construir, para a iterao seguinte, outro intervalo encaixado (includo) neste e que continue a conter a raiz. Os intervalos, como aparecem encaixados uns nos outros, tero amplitudes sucessivamente menores.
sempre possvel transformar algebricamente de inmeras (infinitas) formas a equao f(x)=0 numa outra equao equivalente do tipo
x = g ( x)
(5)
fixo de g ento ser zero de f e vice-versa, j que a equao (5) equivalente a f(x)=0.
58
Captulo 2
y=x
y=g(x)
g ()
ponto fixo de g
(6)
satisfazendo: i) g continua em I ; e ii) g I Ento existe pelo menos um I tal que g ( ) = , ou seja, g contm pelo menos um ponto fixo no intervalo I .
Demonstrao: A condio g I significa que: a g ( x ) b para x I , ou seja, o grfico
de g est contido no quadrado (amarelo) da Fig. 9. Intuitivamente verifica-se que para ir de A a B o grfico de g tem de interceptar a recta y=x pelo menos uma vez. Matematicamente, podemos ter as duas seguintes situaes: No caso de g(a)=a ou g(b)=b ter-se- encontrado um ponto fixo de g ; Excluindo este caso trivial, ter que verificar-se que g ( a ) > a e g (b ) < b , ou seja,
g ( a ) a > 0 e g (b ) b < 0 . A funo h ( x ) = g ( x ) x ter ento sinais contrrios em
a e b. Como h(x) continua, pelo teorema de Bolzano, existe pelo menos um ponto
[ a , b ] tal que h ( x ) = 0 , ou seja, g ( ) = . Logo, ponto fixo de g.
59
Captulo 2
y y=x
b g() a a
y=g(x)
xk = g ( xk 1 ) ,
k = 1, 2, ...
(7)
denominado iterao de ponto fixo. O mtodo do ponto fixo um mtodo iterativo a um passo (dependente de apenas um ponto). A Fig. 10 ilustra graficamente trs iteraes deste processo iterativo.
y y=x g(x0) g() y=g(x) y g() g(x0) y=g(x)
y=x
x 2 x1
(a)
x0
x
(b)
x 2 x1 x0
Como foi referido, a equao x=g(x) pode ser definida de inmeros modos a partir de
f(x)=0. A forma geral de g(x) :
g ( x) = x c( x) f ( x)
(8)
na qual c(x) uma funo contnua, no nula em [a,b]. Para diferentes, mas apropriadas,
60
Captulo 2
funes c(x) teremos diferentes funes de iterao g(x) e diferentes mtodos iterativos. As perguntas bvias neste momento so: Como encontrar uma funo g(x) adequada ? Como saber se o mtodo convergente ? Com que rapidez converge ?
Vamos comear por responder a estas questes atravs da anlise dos exemplos que se seguem.
abaixo listadas podem ser utilizadas como funes de iterao do mtodo do ponto fixo: (a) g1 ( x) =
7x+6 x3 6 2 x3 + 6 ; (b) g 2 ( x) = 2 ; (c) g 3 ( x) = 2 7 x 3x 7
Em
relao
(c),
embora
seja
fcil
comprovar
ser
correcta
equivalente x 3 7 x 6 = ( x + 1) ( x + 2) ( x 3) , pelo que ter trs razes reais 1 = 2 , 2 = 1 e 3 = 3 . Efectuar o processo iterativo, utilizando o mtodo do ponto fixo e as trs funes de iterao ( g1 , g 2 e g3 ), para determinar valores aproximados das duas razes negativas
1 = 2 e 2 = 1 .
O processo iterativo foi iniciado com x0 = 2.2 (para a raiz 1 = 2 ) e x0 = 1.1 (no caso da raiz 2 = 1 ). Os Quadros 2.1 e 2.2 apresentam os resultados daquele processo. As condies de paragem utilizadas foram: i) xi+1 - xi 10-5 (convergncia) (divergncia)
61
Captulo 2
g 2 ( x) =
7x+ 6 x2
g 3 ( x) =
2 x3 + 6 3 x2 7
-2.20000 -1.94215 -2.01356 -1.99656 -2.00086 -1.99979 -2.00005 -1.99999 -2.00000 -2.00000
g 2 ( x) =
7 x+ 6 x2
g 3 ( x) =
2 x3 + 6 3 x2 7
-1.10000 -1.04729 -1.02124 -1.00930 -1.00402 -1.00173 -1.00074 -1.00032 -1.00014 -1.00006 -1.00003 -1.00001 -1.00000
-1.10000 -1.40496 -1.94270 -2.01344 -1.99659 -2.00085 -1.99979 -2.00005 -1.99999 -2.00000 -2.00000
Os resultados permitem concluir que as trs funes de iterao no so igualmente bem sucedidas, originando processos iterativos com distintos comportamentos. Ao usar g 3 ( x ) os processos so convergentes tanto para 1 como para 2 . A funo g1 ( x ) d origem a um processo divergente para 1 , embora permita calcular 2 . Pelo contrrio, a funo
g 2 ( x ) d origem a um processo convergente para a raiz
1 , e no permite calcular 2 .
62
Captulo 2
Uma vez que h grande liberdade na escolha da funo de iterao, importante conhecer algum tipo de critrio que permita avaliar se uma dada funo g(x) gerar ou no uma sucesso convergente para a soluo pretendida. A explicao dos resultados anteriores dada pelo seguinte teorema:
Teorema da contraco ou do ponto fixo: se existir um intervalo fechado I,
I = [ a , b ] e uma funo g tal que:
i) x I a g ( x ) b ii) g diferencivel e | g ( x ) | < L < 1 para todo x I ento existe um nico ponto fixo em I, e a sucesso gerada por xk = g ( xk 1 ) converge para qualquer que seja a escolha do valor inicial x0 em I.
Demonstrao: A existncia de pelo menos um ponto fixo j foi provada. Para mostrar a sua unicidade, suponha-se que existiam em I dois pontos fixos, 1 e 2 , distintos. Por definio,
ter-se-ia: g (1 ) = 1 e g ( 2 ) = 2 . Logo, g (1 ) g ( 2 ) = 1 2 . Por outro lado, utilizando o teorema do valor mdio diferencial de Lagrange,
g (1 ) g ( 2 ) = g ' ( ) (1 2 ) .
Assim,
1 2 max g ' ( x) 1 2 L 1 2
x[ a ,b ]
Como de acordo com a condio ii) 0 < L < 1 , a hiptese 1 2 conduz ao absurdo 1 2 < 1 2 , donde se conclui da unicidade do ponto fixo. Para demonstrar a convergncia, comea-se por notar que pode escrever-se,
xk = g ( xk 1 ) g ( ) L xk 1
Aplicando n vezes a desigualdade anterior, conclui-se que
xk Ln x0
Como Ln 0 quando n , pois de acordo com o teorema 0 < L < 1 , resulta que xk 0 , ou seja, xk . Fica assim demonstrado o teorema. A Figura 11 apresenta a interpretao grfica do mtodo para quatro casos distintos. As setas indicam a sequncia das iteraes. Observa-se que nas Figuras 11 (a) e (c) a sequncia {xk} convergente, e que g'(x)<1 na vizinhana da raiz. Pelo contrrio, nas Figuras 11 (b)
63
Captulo 2
e (d) a sequncia {xi} no convergiu e pelos grficos constatmos que, na vizinhana da raiz, g'(x)>1.
(a)
(b)
Figura 11 - Representao grfica ilustrativa da convergncia do mtodo do ponto fixo: caso (a) - convergncia lateral ; caso (b) - divergncia lateral
64
Captulo 2
(c)
(d)
Figura 11 (cont.) - Representao grfica ilustrativa da convergncia do mtodo do ponto fixo: caso (c) - convergncia oscilatria; caso (d) - divergncia oscilatria.
Da figura anterior verifica-se ainda que, quando a derivada da funo de iterao positiva a convergncia ou divergncia lateral (montona), no caso de g'(x) ser negativa a convergncia ou divergncia oscilatria.
65
Captulo 2
ou do ponto fixo. As figuras 12 e 13 permitem uma interpretao imediata dos resultados obtidos no exemplo 2.11, luz do teorema do ponto fixo.
x3 6 . 7
7x+6 . x2
Captulo 2
Com que rapidez converge ? pode demonstrar-se que a convergncia do mtodo linear. De facto, supondo g continua e diferencivel numa vizinhana da raiz x=, o seu desenvolvimento de Taylor de ordem 1, em torno de x k 1 , escreve-se:
g ( x ) = g ( x k 1 ) + ( x x k 1 ) g ' ( )
onde se situa no intervalo fechado limitado por x e x k 1 . Fazendo x=, e utilizando (6) e (7)
x k = g ' ( ) ( x k 1 ) para ( x k 1 , )
ou tomando mdulos
xk = g ' ( ) xk 1
e passando ao limite
lim xk xk 1
para ( xk 1 , )
= g '( )
Consequentemente, se g ' ( ) 0 , o mtodo converge linearmente (p=1) com constante de erro assimpttico C = g '( ) . O resultado anterior mostra tambm que a convergncia do mtodo do ponto fixo ser tanto mais rpida quanto menor o valor de | g ' ( ) | . A Figura 14 resume, de forma esquemtica, os resultados anteriores.
Convergncia
0 1
Divergncia
2
g ' ()
Para efeitos prticos, interessa no apenas saber as condies para as quais um mtodo
67
Captulo 2
converge, mas tambm estimar o erro das aproximaes obtidas. Na demonstrao do teorema do ponto fixo, obteve-se a expresso:
xk Ln x0
que permite estimar o erro na iterao k, priori, isto , sem ter de calcular xk .
Exemplo 2.13: Nas condies do exemplo 2.11, quantas iteraes sero necessrias
xk L k x0 105 .
Por outro lado, g ' ( x) = Assim,
10 5 ln b a 9.903 k 15.08 k = 16 ln L 0.657
Como vimos no exemplo anterior a estimativa do erro priori est bastante dependente de uma boa estimativa para o erro na primeira iterao (erro em x0 ). Em alternativa, pode utilizar-se uma frmula de majorao do erro posteriori, isto , que pressupe o clculo de duas iteradas consecutivas do mtodo do ponto fixo, xk e xk 1 ,
L xk xk 1 1 L Demonstrao: Como vimos anteriormente xk L xk 1 pelo que,
xk
xk L xk 1 = L xk + xk xk 1 L ( xk + xk xk 1 )
68
Captulo 2
donde resulta,
(1 L)
xk L xk 1 xk
Observando que 1 L > 0 (pelo teorema do ponto fixo) a equao anterior pode ser dividida por aquele valor, obtendo-se a estimativa,
xk
L xk xk 1 1 L
c.q.d.
Exemplo 2.14: Nas condies do exemplo 2.11, qual o erro mximo obtido ao
interromper
g1 ( x ) =
3
[a , b] [ 1.1, 0.9] ,
processo
iterativo utilizando
para a
calculo de
da
raiz
funo
iterao
x 6 , aps 12 iteraes ? 7
69
Captulo 2
Fazendo y=0 na equao anterior, a nova aproximao para a raiz, x1, ser dada por
x1 = x 0 f ( x0) f '( x0)
Uma forma alternativa de obter a equao anterior verificar (Fig. 14) que
tg = f ( x 0 ) / ( x 0 x1 ) .
y y= f (x)
B
f(x0)
x2
x1
x0
Naturalmente, o processo anterior pode ser repetido, obtendo-se uma sequncia de pontos
70
Captulo 2
(9)
que corresponde frmula iterativa do mtodo de Newton-Raphson. Comparando (9) com (7) pode concluir-se que o mtodo de Newton-Raphson constitui um caso particular do mtodo de ponto fixo, com uma funo de iterao g(x) definida por
g ( x) = x f ( x) f ( x )
A funo g 3 ( x) utilizada no exemplo 2.10, que foi a funo de iterao que conduziu aos melhores resultados obtidos, pode ser obtida a partir da expresso anterior. Porque ter tido aquela funo de iterao um to bom comportamento? A funo de iterao g ( x ) do mtodo de Newton tem duas propriedades importantes: se
uma raiz de f ( x) = 0 e f ' ( ) 0 , ou seja, se uma raiz simples, ento:
g ( ) = e g ' ( ) = 0
(10)
f ( x) f ''( x) [ f ' ( x )] 2
Se efectuarmos a hiptese que f e as duas primeiras derivadas so contnuas ento, g' ser tambm contnua. Como g ' ( ) = 0 , por continuidade de g', existir sempre um intervalo I contendo tal que
| g ' ( x ) | < 1 para x I.
segunda derivadas tambm contnuas, ento a aplicao do mtodo de NewtonRaphson para encontrar uma raiz simples, , garantida no caso de se partir de uma aproximao inicial, x0, suficientemente prxima da raiz. Embora a expresso 'suficientemente prxima' necessite, na prtica, de uma maior explicitao, como se ver posteriormente, o teorema anterior garante sempre a convergncia do mtodo (o que no acontecia com o mtodo do ponto fixo) para aproximaes iniciais
71
Captulo 2
num intervalo em torno da raiz (embora no se saiba a priori qual a amplitude de tal intervalo). Alm disso, o mtodo tem convergncia quadrtica (p=2) pois, como se passar a demonstrar, lim xk x k 1
2
f ' ' ( )
2 f ' ( )
(11)
De uma forma anloga ao efectuado para o mtodo do ponto fixo, supondo novamente g continua e diferencivel numa vizinhana da raiz x=, o seu desenvolvimento de Taylor de ordem 2, em torno de , escreve-se
( x )2 g ( x ) = g ( ) + ( x ) g ' ( ) + g ' ' ( ) 2
Para x = x k 1 , tem-se
g ( x k 1 ) = g ( ) + ( x k 1 ) g ' ( ) + ( x k 1 ) 2 g ' ' ( ) 2
lim
xk x k 1
2
1 g ' ' ( ) 2
Como foi referido, a expresso 'suficientemente prxima' no tem um significado preciso e, de facto, o mtodo de Newton algumas vezes diverge e, outras vezes, converge para um zero diferente do pretendido. As figuras 15 e 16 apresentam graficamente diferentes casos de
72
Captulo 2
divergncia. No primeiro caso, (Fig. 15-a) ocorre que no decurso do processo iterativo a tangente a f(x) paralela, no ponto de abcissa x1, ao eixo das abcissas ( f ' = 0 ) ; o que, de acordo com a frmula de iterao (9), aborta o processo iterativo. No caso da Fig. 15(b) o processo iterativo entra num ciclo infinito (este caso, ilustra bem a importncia de existir sempre uma condio de paragem que imponha um nmero mximo de iteraes). A Fig 16 mostra o caso de uma funo com forma de S junto raiz (existncia de ponto de inlexo). Na situao da Fig. 16(a) a tangente T1 produz um valor que se afasta muito da raiz (divergncia por overshoot); na Fig. 16(b), embora a curva seja a mesma, o valor inicial est mais prximo da raiz, entrando dentro do intervalo a que se refere o teorema local, e a sucesso de aproximaes converge para a raiz.
y
y y= f (x)
x0
x1
y= f (x) x
x1
x0
(a) Anulao da derivada no decurso do processo iterativo; (b) Ciclo infinito provocado por um ponto de inflexo prximo da raiz.
y y y= f (x)
y= f (x)
x0
x0
x1
x2
x1
(b) Convergncia.
A concluso a extrair a de que nunca podemos estar seguros, por exemplo, no caso de uma curva em S, que a nossa aproximao inicial x0 se encontre dentro do intervalo para o qual
73
Captulo 2
o teorema local garante a convergncia do mtodo. O teorema local apenas nos diz que se x0 estiver suficientemente prximo da raiz para evitar a contra-curvatura do S, o mtodo ser convergente. Ressalta assim o facto de ser desejvel o estabelecimento de condies que garantam a convergncia do mtodo de Newton-Raphson para qualquer escolha de x0 num intervalo prespecificado I = [ a , b ] . Um tal conjunto de condies o que resulta do seguinte teorema:
uma funo contnua em I = [a, b] e: (1) f ( a) f (b) < 0 (2) f ' ( x) 0 , x I (3) f ' ' ( x) 0 ou f ' ' ( x) 0 , x I
(4)
f (a) (b a ) e f ' (a) f (b) (b a ) f ' (b )
ento x0 I = [ a , b ] a sequncia {xk }k =1, 2,... gerada pelo mtodo de Newton-Raphson converge para , nico zero de f em I = [a, b] . As duas primeiras condies, como foi anteriormente referido (teorema de Rolle) garantem que a equao considerada tem um nico zero em I. Alm disso, a segunda condio , como se viu, essencial para a aplicao do mtodo de Newton (recordar a situao ilustrada na Fig. 15(a) onde a derivada de f se anula). A terceira condio impe que no haja pontos de inflexo no intervalo considerado (evitar curva em S). Finalmente, a quarta condio impe que tomando x0=a ou x0=b, a iterada x1 fique no interior do intervalo [a,b] (para evitar a divergncia por overshoot ilustrada na Fig. 16(a). Por outras palavras, esta ltima condio garante que o processo iterativo se realiza sempre no interior de [a,b]. Verificadas as condies de convergncia, embora esta fique garantida,
independentemente da escolha do valor inicial x0[a,b], verifica-se que o modo como se processa diferente quando se inicia o clculo de um lado ou do outro da raiz (x0=a ou x0=b). H um extremo do intervalo, dito extremo favorvel, que conduz a uma sucesso de aproximaes montona (convergncia lateral para a raiz), enquanto que o outro extremo conduzir a uma convergncia no montona. Geometricamente o extremo favorvel
74
Captulo 2
corresponde ao extremo que fica no lado convexo da curva (ver Fig. 17), ou seja, que analiticamente satisfaz:
f ( x0) f ''( x0) > 0
y= f (x)
y= f (x)
x0
x2
x1
x
x2
x1
x0
y= f (x)
x0 x 1 x2
y= f (x)
x1
x2
x0
75
Captulo 2
Newton-Raphson para a raiz = 1 para qualquer valor x 0 [ 1.5 , 0.5 ] . Verificao das condies globais de convergncia i) ii)
f ( 1.5) f ( 0.5) = 1.125 ( 2.625) < 0
f ' ( x) = 0 x =
7 1.528 3
iii) iv)
Concluso: no possvel garantir a convergncia do mtodo de Newton-Raphson para a raiz = 1 para qualquer valor x 0 [ 1.5 , 0.5 ] . Iniciando o processo iterativo com
x 0 = 1.5 pode-se verificar o fenmeno de divergncia por overshoot.
Exemplo 2.16: Verificar, se no caso do exemplo anterior, iniciando o clculo pelo extremo
favorvel possvel garantir a convergncia do mtodo de Newton-Raphson para a raiz
= 1 .
Extremo favorvel:
, logo x0 = b = 0.5
extremo favorvel. A nica condio de convergncia que no foi verificada no exemplo 2.15 era a referente convergncia a partir de x=a. Como sabemos, teoricamente, que a convergncia a partir do extremo favorvel montona para a raiz, apenas ir ocorrer, no caso presente, no ramo da curva esquerda da raiz. Logo possvel garantir a convergncia do mtodo de Newton-Raphson para a raiz = 1 a partir de x 0 = b = 0.5 .
76
Captulo 2
onde k int ( xk 1 , ) . Uma vez que f ' ( xk 1 ) 0 , podemos dividir a equao anterior por f ' ( xk 1 ) , i.e.,
f ( xk 1 ) f ' ' ( k ) + ( xk 1 ) + ( xk 1 )2 = 0 f ' ( xk 1 ) 2 f ' ( xk 1 )
ou ainda,
= xk 1
xk =
que mostra a relao entre o erro da iterao k ( xk ) e o erro na iterao anterior, k-1 ( xk 1 ). No segundo membro da equao anterior aparece o valor f ' ' ( k ) , o qual no se pode calcular, j que sabemos apenas que k um ponto situado no intervalo entre
xk 1 e . No entanto, se calcularmos o mximo valor da 2 derivada naquele intervalo, ou
xk
M2 xk 1 2 f ' ( xk 1 )
Esta desigualdade pode ainda ser reforada se calcularmos o valor m1 = min f ' ( x) , pelo
x[ a ,b ]
que:
77
Captulo 2
xk
ou ainda, mais simplificadamente xk M xk 1
M2 xk 1 2 m1
com M =
M2 2 m1
(12)
k 0 1 2 3
g 3 ( x) =
x[ a ,b ]
x[ 1.1, 0.9 ]
min
3 x 2 7 = 3.37
6 x = 6 .6
M 2 = max
x[ a ,b ]
f ''( x) =
x[ 1.1 , 0.9 ]
max
x1
6.6 0.9 ( 1.1) 2 3.37 6.6 x2 0.392 10 1 2 3.37 6.6 x3 0.150 10 2 2 3.37
2 2 2
Como se verifica, atravs dos resultados apresentados no quadro, a expresso (12) fornece estimativas conservadoras do erro.
78
Captulo 2
( x 0 )
2 4 8
( x 0 ) ( x 0 )
Exemplo 2.17: Nas condies do exemplo 2.16, quantas iteraes sero necessrias para
obter, atravs do mtodo de Newton-Raphson, a raiz = 1 com erro no superior a
0.5 10 6 ?
0.5 10 6
2 k 8.9 k 3.16
79
Captulo 2
Como vimos a grande desvantagem do mtodo de Newton-Raphson reside na necessidade do clculo de f ' (x). Em alguns casos f ' (x) pode no ser dada explicitamente ou requerer considervel esforo de clculo. Uma estimativa de f ' ( x k ) pode ser obtida pela expresso
f '( xk ) f ( x k ) f ( x k 1 ) x k x k 1
que corresponde, em termos grficos, a aproximar localmente a curva y=f(x) por uma sua secante (ver Fig. 18). Substituindo a expresso anterior na frmula iterativa x k +1 = x k de Newton-Raphson, obtm-se
x k x k 1 x k +1 = x k f ( x k ) f ( x k ) f ( x k 1 ) , k = 1, 2 , ... f ( xk ) do mtodo f '( xk )
que a frmula iterativa do mtodo da secante. que requer apenas uma avaliao da funo em cada passo do processo iterativo. Por outro lado, necessitamos de partir sempre de duas aproximaes iniciais x0 e x1. Do ponto de vista geomtrico (Fig.18) a funo aproximada no intervalo de clculo por uma recta, cuja intercepo com o eixo Ox gera a nova aproximao. Assim, o ponto x2 definido pela recta que une (x0,y0) e (x1,y1) ; o ponto x3 pela recta que une (x1,y1) e (x2,y2), etc.
y= f (x)
x3
x2
x1
x0
80
Captulo 2
O mtodo das secantes utiliza claramente uma funo de iterao da forma (frmula de iterao de dois pontos)
x k +1 = g ( x k , x k 1 ) , k = 1 ,2 ,...
Este mtodo necessita de duas aproximaes iniciais: x0 e x1, embora efectue apenas uma avaliao da funo em cada passo do processo iterativo (o mtodo de Newton-Raphson requer avaliao da funo e da derivada). A ordem de convergncia do mtodo de
p= 1 (1 + 5 ) 1.618 2
O preo a pagar pela aproximao numrica da derivada que a convergncia deixa de ser quadrtica passando apenas a ser supra-linear. Tal facto permite concluir que para obter um valor da raiz com idntica preciso o mtodo das secantes requer, em geral, um maior nmero de iteraes que o mtodo de Newton.
81
Captulo 2
(13)
e o valor da funo nesse ponto f ( x k ) . Se f ( x k ) = 0 ento = x k e o processo iterativo termina. Caso contrrio, o ponto mdio x k ir substituir um dos valores extremos do intervalo ( ak ou bk ) de acordo com:
> 0 a k = x k e bk = bk 1 Se : f ( x k ) f ( a k 1 ) < 0 a k = a k 1 e b k = x k
(14)
O processo de diviso do intervalo ao meio e a escolha do subintervalo para a iterao seguinte, repetem-se at o critrio de paragem ser verificado. Este processo iterativo encontra-se esquematicamente ilustrado na Figura 19.
y y= f (x)
x=a
a3 a2 a1 a0 x1 x3 b3 b2 x2
x=b
b1 b0
82
Captulo 2
O mtodo sempre convergente desde que f ( a ). f (b ) < 0 , mas a convergncia pode ser muito lenta. De qualquer forma, o mtodo da bisseco um mtodo de convergncia global. Aps k iteraes a raiz estar contida no intervalo I k = [ak , bk ] de amplitude
bk ak = bk 1 ak 1 bk 2 ak 2 b a ba = = ... = 0 k 0 = k 2 2 2 2 2
que depende apenas da amplitude do intervalo inicial (b a ) e no da forma da funo f(x). Ento, o erro cometido aps k bisseces (iteraes) majorado por
| x k | = | x k | ba 2k
(15)
Desta forma, definida a preciso pretendida no clculo da raiz (majorante do erro ) possvel especificar a priori o nmero de iteraes k necessrias para atingir esse objectivo. Mais precisamente, supondo que se pretende garantir que | x k | basta impor se obtm:
ba ln k ln 2 ba donde 2k
Tomando para k o primeiro inteiro que verifica a condio anterior, tem-se a garantia de que xk satisfaz a preciso desejada. Da expresso (15) deduz-se imediatamente que
0 | xk | 1 | x k 1 | 2
o que mostra, se recordarmos (2.17) ou (2.18), que o mtodo da bisseco converge linearmente, com razo de convergncia igual ou menor a 0.5. De facto o mtodo converge lentamente, o que constitui uma das suas principais desvantagens, como reala o seguinte exemplo.
83
Captulo 2
Ponto fixo Bisseco k 0 1 2 3 4 5 6 7 8 9 10 11 12 13 1.9500 2.1750 2.0625 2.0063 1.9781 1.9922 1.9992 2.0027 2.0010 2.0001 1.9997 1.9999 2.0000
Newton-Raphson
g ( x) = x2 + 2 2x 1
g ( x) =
1.5 1.8708 1.9674 1.9918 1.9980 1.9995 1.9999 2.0000
x+2
mostra na Fig. 20. A abcissa c determinada pela intercepo da referida corda com o eixo Ox.
84
Captulo 2
Verifica-se que a frmula iterativa similar do mtodo da secante, mas no caso presente aps a determinao de c, e de forma inteiramente anloga ao mtodo da bisseco, obriga-se a que os dois pontos utilizados para definir a nova aproximao enquadrem a raiz, ou seja, a verificar (14). Esta diferena entre o mtodo da falsa posio e o mtodo da secante (Fig. 21).
85
Captulo 2
Para uma funo f(x) cncava ou convexa no intervalo [a,b], um dos extremos do intervalo permanece fixo no decurso do processo iterativo, como se observa na Fig. 22 para o caso de uma funo convexa. Nestes casos, uma condio de convergncia do tipo:
x k x k 1
converte-se em (exemplo da Fig. 22), b - c< 1 deixando de ser operativa (a amplitude sempre superior a b-). O critrio de convergncia dever ser para estes casos do tipo: f(c)< 2 Os valores 1>0 e 2>0 so tolerncias pr-definidas, que podero ser distintas ou no.
Pode tambm demonstrar-se que no caso anterior (funes cncavas ou convexas no intervalo [a,b]) a ordem de convergncia do mtodo da falsa posio p=1, ou seja a
86
Captulo 2
Determinar o nmero de iteraes necessrias utilizando os mtodos de Newton, secantes e falsa posio.
x =0. 2
____________________________________________________________________________________________________________
M. de Newton-Raphson
M. das secantes
M. da falsa posio
x0= /2 x1= x2=1.75960 x3=1.84420 x4=1.87701 x5=1.88895 x7=1.89469 x8=1.89521 x9=1.89540 x10=1.89546 x11=1.89548 x12=1.89549
87
Captulo 2
Exerccios propostos:
1. Considerar a funo polinomial: f ( x ) = 12 x + 76 x + 157 x + 35 a) Qual o nmero de razes reais positivas e negativas de f(x)=0. b) Efectuar analiticamente a separao dessas razes reais. Justificar. 2. Considere a equao polinomial: p(x) = 0, com
5 4 3 3 2 x x +7 x 6x+ 2 2 a) Diga o que sabe sobre o nmero de razes reais (positivas e negativas) de f(x)=0. p( x) = x
5
b) Determine os sinais dos termos da sucesso de Fourier de f(x) para x=1 e, em face do resultado, justifique o que poder afirmar acerca do grau de multiplicidade de x=1. c) Utilizando a regra de Ruffini baixe o grau do polinmio. Em seguida faa a separao das restantes razes reais positivas para a equao polinomial resultante do abaixamento de grau do polinmio dado. 3. Considere a seguinte equao: 3 x 4 4 x3 12 x 2 + 1 = 0 a) Aplicando o teorema de Descartes o que pode dizer acerca do nmero de razes positivas b) Mostre, analiticamente, que qualquer raiz da equao raiz pertence a [ 2, 3 ] . c) Verifique, atravs do mtodo de Rolle, que a equao tem 4 razes reais. 4. Dada a seguinte funo: f ( x ) = 2.sin( x ) + x + 2 pretende-se determinar a raiz da equao f ( x ) = 0 pelo mtodo do ponto fixo. a) Localize graficamente a raiz da funo f ( x ) = 0 num intervalo de amplitude / 8. b) Determine uma funo de iterao adequada, verificando as condies de convergncia. c) Calcule um valor aproximado dessa raiz pelo processo iterativo do mtodo do ponto fixo, com um erro no superior a 1%. 5. Confirme que a equao x + ln x = 0 tem uma raiz real entre x=0.5 e x=0.6. Com o
objectivo de determinar um valor aproximado dessa raiz, atravs do mtodo iterativo simples, poderemos seleccionar, entre outras, as seguintes frmulas iterativas:
a) xk = ln xk 1 ; b) xk = e x k 1 ; c) xk = xk 1 + e x k 1 2
e negativas da equao?
Diga qual delas escolheria para obter o mais eficientemente possvel o referido valor aproximado. Justifique.
88
Captulo 2
6. Considere a funo: f(x) = 1.5 x - tg(x) - 0.1 a) Separe as razes reais da equao f(x)=0 em ]-,/2[. b) Para o clculo aproximado da menor raiz real positiva da equao f(x)=0, por um processo
iterativo, considere a funo:
g ( x) = 0.1 + tg ( x) 1 .5
Verifique se esta funo pode ser utilizada como funo de iterao do processo, qualquer que seja a aproximao inicial, no intervalo que contm essa raiz. c) Utilizando o mtodo de Rolle, verifique se a equao x e x 1 = 0 tem uma e uma s raiz real positiva no intervalo [0,1].
d) Mostre que x=0 uma raiz tripla da equao: tan ( x) x e x = 0 . 8. a) Confirme que a equao e 4 x 2 = 0 tem uma raiz real entre x=4 e x=5 e mostre,
analiticamente, porque no possvel determinar essa raiz atravs do mtodo iterativo simples 1 x utilizando como funo de iterao g ( x) = e 2 . 2 b) Tente obter uma outra funo de iterao, g(x), para a qual tenha a garantia de convergncia do mtodo para a raiz pretendida, e determine o seu valor com 3 algarismos significativos correctos.
4 3 2 9. Considere a seguinte equao: x 1.3 x 4 x + 5.4 x + 0.4 = 0
x
a) Mostre, analiticamente, que qualquer raiz da equao pertence a [ 2 , 2 ] . b) Verifique, atravs do mtodo de Rolle, que a equao tem 4 razes reais. c) Suponha que pretende calcular a menor raiz positiva. Efectue uma iterao atravs do mtodo de Newton-Raphson, partindo de x0=0.55. Explique a razo do resultado obtido.
89
Captulo 2
d) Partindo do extremo favorvel de um intervalo que garanta a convergncia para a raiz referida em c) efectue duas iteraes pelo mtodo de Newton-Raphson. Quantas casas decimais correctas poder garantir no resultado obtido? Justifique. 10. A funo f ( x ) = 0,1 x + x e 1 tem duas razes reais.
2
a) Sabendo que uma das razes est localizada entre [ 4.5,1.5] , determine, atravs do
mtodo de Fourier, o intervalo de amplitude unitria onde se encontra essa raiz.
11. Considere a funo: f ( x ) = x + 4 ln x 4 a) Separe graficamente as razes reais da equao f(x)=0. b) Calcule uma aproximao da menor raiz real utilizando o mtodo de Newton-Raphson aps
duas iteraes. Verifique previamente as condies de convergncia.
12. Considere a funo: f ( x ) = e x sec x 1 a) Utilizando o mtodo mais adequado, faa a separao e contagem das razes reais da
equao f(x)=0.
x 2x + 2 = 0
a) Localize graficamente (f1(x)=f2(x)) as razes em intervalos de amplitude unitria. b) Suponha que pretende calcular a menor raiz positiva da equao anterior. Utilizando o
mtodo de Newton-Raphson verifique (analiticamente) se possvel garantir a convergncia para qualquer que seja o valor inicial x0 pertencente ao intervalo determinado em a). Partindo de um valor de x0 que garanta a convergncia determine o valor de com duas casas decimais correctas.
e x x2 c) Considere a funo de iterao g ( x ) = + 1 . Verifique analiticamente, atravs das 2 condies de convergncia do respectivo mtodo, que no possvel utilizar g(x) para garantir a convergncia para o intervalo considerado em a).
2
90
Captulo 2
14. a) Utilizando o mtodo de Newton-Raphson determine, verificando previamente as 10 | cos x | condies de convergncia, o valor da maior raiz positiva da equao: = 1 com 2 x
um erro no superior a 0.5*10-3. Previamente localize graficamente a raiz num intervalo de amplitude / 4 .
15. Suponha que pretende calcular com grande preciso a constante , sabendo apenas que I=[0,5] e que tan = 1 . Para o efeito: 4 x a) Utilizando um mtodo grfico, localize o zero da funo f ( x ) = tan 1 em I, e prove 4
analiticamente que existe um nico zero no intervalo I0 = [3.0, 3.2].
b) Use o mtodo da bisseco para obter uma aproximao de , tal que | f( ) | < 0.01 . c) Prove que o mtodo de Newton converge para a raiz , quando se toma para aproximao
inicial x0 = .
d) Execute duas iteraes do mtodo de Newton para obter uma aproximao de . 16. Num dado circuito elctrico uma corrente oscilatria I(t) descrita pela equao: I (t ) = 10 e t sin (2 t ) , onde t o tempo em segundos. a) Utilizando um mtodo grfico, localize em intervalos de amplitude inferior a 0.5 segundos
os valores positivos de t para os quais I=2.
17. Considere a funo: f ( x) = ln (4 x 2 ) x a) Utilizando o mtodo mais adequado, faa a separao e contagem das razes reais da
equao f(x)=0.
91
Captulo 2
18. Considere a equao: x 2 | sin x | = 4.1 a) Utilizando o mtodo mais adequado, faa a separao e contagem das razes reais da
equao f(x)=0.
19. Considere a funo definida por: f (x) = e x cos ec ( x) 1 a) Utilizando um mtodo grfico, localize as razes da equao f(x)=0. b) Determine, atravs do mtodo de Newton-Raphson, verificando previamente as condies
de convergncia, o valor da maior raiz inferior a com um erro no superior a 0.5*10-3. Comente e justifique as dificuldades que podero surgir no clculo da referida raiz.
20. Considere a equao polinomial: 0.006 x 4 0.014 x 3 0.22 x 2 + 0.32 x + 0.47 = 0 . a) Separe atravs do mtodo de Fourier, considerando intervalos de amplitude igual a duas
unidades, as razes positivas da referida equao.
21. A funo f ( x) = 0.1x 2 + x e x 1 tem duas razes reais. a) Sabendo que uma das razes est localizada entre [ 4.5, 1.5] , determine, atravs do
mtodo de Fourier, o intervalo de amplitude unitria onde se encontra essa raiz.
92
CAPTULO 3
_______________________________________________________________________________________________________________
INTERPOLAO
Na Teoria da Aproximao, partindo dos seguintes dados: intervalo finito [a,b] no qual se pretende aproximar uma funo y=f(x) ; n+1 pontos distintos (xi,yi), i=0,1,...,n tais que xi[a,b], procura-se resolver um dos seguintes problemas:
i) Conhecida a funo s nesses n+1 pontos, conhec-la aproximadamente em qualquer outro ponto x[a,b]; ii) Conhecida a expresso analtica de f(x), cuja forma analtica complicada ou de difcil clculo, aproxim-la por outra expresso mais simples com base num nmero finito de n+1 pontos.
Em qualquer dos dois casos o problema, em termos matemticos, anlogo: com base em pontos conhecidos, construir uma funo que "substitua" uma outra dentro de algum limite de preciso. Uma tal funo designa-se por funo aproximante e a sua forma , em geral, uma combinao de funes elementares. Consideraremos apenas o caso particular da combinao linear destas funes. De acordo com esta restrio, toda a funo aproximante g(x) ter por forma geral:
93
Captulo 3
Interpolao
g ( x ) = a i g i ( x ) = a 0 g 0 ( x ) + a 1 g 1 ( x ) + ... + a m g m ( x )
i =0
(1)
onde gj(x) (j=0,..., m) so funes elementares preestabelecidas e aj (j=0,..., m) so parmetros a determinar. A escolha da funo g(x) que aproximar a funo f(x) depende de vrios factores tais como o conhecimento que se tem de f(x), a preciso com que se obtiveram os valores de xi e yi, a utilizao que se pretende dar a g(x) e o grau de preciso pretendido. intuitivo que quanto melhor for o conhecimento de f(x), ou do fenmeno que representa, maior a facilidade em escolher a forma apropriada para g(x). As classes de funes elementares mais correntemente utilizadas so: funes monmias {xj}, j=0,1,..., m cuja combinao linear, de acordo com (1) conduz a polinmios de grau m, pm(x)
g ( x ) = p m ( x) = ai x i = a 0 + a1 x + a 2 x 2 + ... + a m x m
i =0 m
funes trigonomtricas {sen kx, cos kx}, k=0,1,..., m que conduzem a sries do tipo Fourier:
g ( x ) = a 0 + ( a k cos kx + b k sin kx)
k =1 m
Aps seleccionar a classe de funes {gi(x)} a utilizar, h que escolher o critrio para "ajustar" a funo aproximante, g(x), aos pontos. Esta segunda fase equivalente a estabelecer o mtodo de clculo dos coeficientes a0,a1,..,am. O critrio talvez mais natural consiste em impor que a funo aproximante g(x) tome nas abcissas x0,x1,...,xn dos pontos de base os valores y0,y1,...,yn da funo f(x). Neste caso, o problema passa a designar-se por interpolao. Ou seja, a interpolao um caso particular de aproximao em que o critrio de determinao dos parmetros consiste em fazer com que os pontos (xi,yi) (i=0,...,n) sejam tambm pontos de g(x), isto ,
g ( x i ) = f ( x i ) = y i , i = 0 ,1 ,... , n
(2)
94
Captulo 3
Interpolao
A Fig. 1 apresenta uma ilustrao do problema. A funo a cheio a que desejamos aproximar, conhecida ou no; a funo a tracejado a funo aproximante (funo interpoladora).
x0
x1
x2
...
xn
EXTRAPOLAO
INTERPOLAO
EXTRAPOLAO
(3)
Como a matriz deste sistema (n+1).(m+1) podemos considerar trs casos: 1) n<m : o sistema admitir, no caso geral, um nmero infinito de solues, i.e., ter-se- uma infinidade de funes g(x) que passam pelos pontos (xi,yi), i=0,1,...,n. Seria, por exemplo, o caso de desejarmos passar por dois pontos (n=1), uma parbola de 2 grau (m=2). evidente que existe uma famlia de curvas que satisfazem a esta condio. 2) n=m : o sistema admitir uma nica soluo se o seu determinante for diferente de zero. Esta condio ocorrer desde que os xi, i=0,1,...,n sejam distintos e nenhuma das colunas da matriz seja combinao linear das outras. Este efectivamente o caso da interpolao e g(x) ser designada por funo interpoladora.
95
Captulo 3
Interpolao
Exemplo 3.1: Verificar que para g0(x)=1 e g1(x)=x2 no existe nenhuma funo g(x)= a0 +a1 x2 passando pelos pontos (1,1) e (-1,0). Porqu?
3) n>m: no caso geral o problema impossvel, ou seja, no se pode fazer com que uma curva com m+1 parmetros a determinar passe por n+1 pontos dados. De facto, uma funo aproximante para este caso dever obedecer a outros critrios distintos de (2) e apenas poder ajustar g(x) para "passar" o mais prximo possvel dos pontos dados. Um exemplo o da
2. Interpolao polinomial
Um caso particular de interpolao que requer um estudo pormenorizado, dada a sua grande gama de aplicaes, aquele em que a funo interpoladora um polinmio. O facto dos polinmios serem frequentemente utilizados como funes interpoladoras explicado, por um lado, por ser relativamente fcil operar sobre polinmios, quer nas operaes algbricas quer na diferenciao e integrao, operaes estas que conduzem a outros polinmios. Por outro lado, existe justificao terica para o facto dos polinmios produzirem boas aproximaes da funo f(x) que se pretende interpolar. Assim, qualquer funo contnua pode ser aproximada num dado intervalo fechado por um polinmio podendo o erro ser to pequeno quanto se queira. Este princpio traduzido pelo seguinte teorema:
| f ( x) p n ( x) | < , a x b
O problema reside em saber se o polinmio pn(x) encontrado em cada caso o polinmio a que se refere o teorema de Weierstrass, pois geralmente desconhece-se a funo f(x). No entanto, resta a consolao de que de facto existe um tal polinmio.
96
Captulo 3
Interpolao
dado um conjunto de n+1 pontos (xi,yi), {i=0,1,...,n} que designaremos por suporte da interpolao, determinar um polinmio pn(x) de grau n tal que:
pn ( xi ) = f ( xi ) = yi , i = 0,1,...,n
O polinmio pn(x) pode ser expresso sob vrias formas: srie de potncias
(4)
pn ( x) = a0 + a1 x + a2 x 2 + ... + an x n
forma de ordenadas (polinmio interpolador de Lagrange)
p n ( x) = y 0 l 0 ( x) + y1 l1 ( x) + ... + y n l n ( x)
forma de diferenas (polinmio interpolador de Newton)
p n ( x) = b0 + b1 ( x x0 ) + b2 ( x x0 ) ( x x1 ) + ... + bn ( x x0 ) ( x x1 ) ... ( x xn )
(5)
sendo este sistema um caso particular de (1), em que gj(x) (j=0,...,n) so as funes monmias: g 0( x) = 1 , g1( x) = x , ... , g n ( x) = x n e m=n. Pode demonstrar-se (Mrio Rosa,1992) que o determinante do sistema (5), conhecido como determinante de Vandermonde, nunca se anula se xixj , ij. Portanto, existe um nico conjunto de valores ai soluo do sistema. Por outras palavras, existe um nico polinmio pn(x) que reproduz exactamente f(x) nos pontos xi, i=0,1,...,n. Desta forma, para conhecer o polinmio pn(x), bastaria resolver o sistema de equaes (5) no sendo necessrio recorrer a frmulas interpoladoras. No entanto, por um lado, a resoluo daquele sistema de equaes, principalmente se o nmero de pontos for de dimenso
97
Captulo 3
Interpolao
aprecivel, no fcil de efectuar particularmente por mtodos manuais ( a soluo por computador pode no ser muito precisa, pois as potncias de xi nas equaes podem ser nmeros muito grandes e, nesse caso, os efeitos dos erros de arredondamento podem ser apreciveis). Por outro lado, e talvez mais importante, associado interpolao existe um erro {f(x)-pn(x)} (Fig. 1). Embora este erro no possa ser avaliado de uma forma exacta atravs das frmulas interpoladoras, frequentemente possvel calcular um limite superior para o mesmo ou, pelo menos, conseguir uma estimativa. Como lgico, quanto menor o erro maior o grau de confiana que se tem no polinmio de interpolao.
pode ser recomendvel se pn(x) tiver que ser calculado vrias vezes para diferentes valores de
x. De facto, o respectivo clculo termo a termo ineficiente, especialmente para valores
elevados de n. Se cada termo xk for calculado atravs de k-1 multiplicaes de x, ento so necessrias
(6)
apenas so necessrias n multiplicaes e n somas. O mtodo de clculo de um polinmio descrito por (6) designado por algoritmo de Horner. Como o clculo do parntesis mais interior o primeiro a ser efectuado, o procedimento de clculo para avaliar pn(x) pode ser melhor visualizado escrevendo o segundo membro da expresso (6) na forma inversa, isto ,
p n ( x ) = (( ... ( a n x + a n1 ) x + a n2 ) x + ... + a 1 ) x + a 0
Por exemplo, para n=4
p 4( x) = (((a4 x + a3 ) x + a2 ) x + a1 ) x + a0
98
Captulo 3
Interpolao
Diferenas Divididas
Considere-se a definio de derivada:
d f ( x) f ( x) f ( x0 ) = f '( x0 ) = lim x x0 x x0 d x x0
argumentos x, x0.
A relao entre a diferena finita dividida de 1 ordem e a derivada de 1 ordem dada pelo seguinte teorema:
Teorema do valor mdio diferencial: seja f(x) uma funo contnua para axb e diferencivel para a<x<b; ento existe pelo menos um valor , a<<b, para o qual
f ( ) = f (b) f ( a ) ba
Graficamente (Fig. 2) tal significa que se f(x) contnua e diferencivel num dado intervalo de x, existir pelo menos uma abcissa x= nesse intervalo para a qual o declive da recta tangente a f(x) [ou seja, a derivada, f '()] igual ao declive da recta que une os valores da funo no extremo do intervalo.
99
Captulo 3
Interpolao
Desta forma a diferena finita dividida de 1 ordem e a derivada de 1 ordem estaro relacionadas (sempre que a funo seja contnua e diferencivel) por:
f [ x0 ,x ] = f ( x ) f ( x0 ) = f ( ) , em ( x0 ,x) x x0
Para permitir aproximaes semelhantes para as derivadas de ordem superior, o conceito de diferena finita dividida ampliado de acordo com a Tabela 1.
Ordem 0 1 2 3 ... n
Definio f(x0)
f [ x1 ] f [ x0] x1 x0 f [ x1 , x2 ] f [ x0 , x1] x2 x0 f [ x1 , x2 , x3 ] f [ x0 , x1 , x 2] x3 x0 ... f [ x1 , x2 ,..., xn ] f [ x0 , x1 ,..., xn1] xn x0
(7)
Por outro lado, da definio de diferena dividida de 1 ordem pode concluir-se que:
f [ x0 , x1 ] = f [ x1 , x0 ]
ou seja, a ordem dos argumentos indiferente. Por induo, facilmente se conclui que, em
100
Captulo 3
Interpolao
geral, as diferenas divididas so invariantes para qualquer permutao dos argumentos, isto ,
f [ x0 ,x1,...,x n] = f [ x n , x n1 ,...,x 0 ]
Interpolao Linear Considere-se o problema de interpolar linearmente o valor de f(x) no ponto de abcissa x, x0<x<x1, apenas com base nos pontos: (x0,y0) e (x1,y1). Esta situao visualizada na Figura 3. Apenas por consideraes geomtricas, pode concluir-se para este caso que:
f [ x0 , x] = f [ x0 , x1 ]
(8)
ou,
f ( x) = f [ x0 ] + ( x x0 ) f [ x0 ,x1 ] = p1( x)
(9)
Como todos os elementos do 2 membro de (9), que define uma recta ou polinmio de interpolao de 1 grau p1(x), podem ser determinados com base nos valores conhecidos, o valor de f(x) pode ser calculado directamente .O algoritmo (9) o correntemente utilizado na interpolao linear, apesar de " camuflado" pela utilizao de diferenas divididas.
101
Captulo 3
Interpolao
Exemplo 3.2: Efectuar a interpolao linear entre os pontos (1,1) e (3,5) representados esquematicamente e em forma de tabela na Fig. 4.
Substituindo os valores da tabela em (9) obtm-se:
p1 ( x) = f ( x) = 1 + ( x 1).(2) = 2 x 1
que corresponde recta (polinmio de grau 1) que passa pelos pontos (1,1) e (3,5).
Considere-se agora o caso da interpolao linear aplicada a uma funo f(x) no linear, ou seja, em que a equao (8) apenas uma aproximao,
f [ x0 , x] f [ x0 , x1 ] Neste caso, (9) ser tambm apenas uma aproximao, como se representa esquematicamente na Fig.5.
102
Captulo 3
Interpolao
Para ter em considerao as discrepncias e restabelecer a igualdade traduzida por (9), necessrio acrescentar um termo adicional (erro) R1(x). Ento:
f ( x ) = f [ x0 ] + ( x x0 ) f [ x0 , x1 ] + R1 ( x )
(10)
(11)
(12)
na qual p1(x) [ver (9)] , como anteriormente, o polinmio interpolador de 1 grau que passa nos pontos de base (x0,y0) e (x1,y1). R1(x) a discrepncia entre f(x) e p1(x) e ser designado por termo de erro do polinmio interpolador de 1 grau de f(x). evidentemente impossvel calcular f[x,x1,x0] de uma forma exacta, uma vez que o valor de f(x), necessrio a esse clculo, desconhecido (caso contrrio no seria necessria a interpolao). No entanto, se algum valor adicional de f(x) for conhecido, por exemplo f(x2) para x=x2, efectuando a hiptese de que f[x,x1,x0] no seja uma funo com variao rpida no intervalo que contem x2, x1 e x0, pode admitir-se que:
f [ x,x1 ,x0 ] f [ x2 ,x1 ,x0 ] = f [ x0 ,x1 ,x2 ]
(13)
103
Captulo 3
Interpolao
A interpolao linear para x=0.5 utilizando os pontos de base x0 e x1 definida por (9):
p1 ( x) = 5 + ( x x0 ).(6) = 6 x 5 Ento:
104
Captulo 3
Interpolao
Interpolao com polinmios de graus 2 e 3 Em muitos casos a interpolao linear no satisfatria, j que a funo que est a ser interpolada se afasta consideravelmente de uma funo linear. Para introduzir alguma curvatura na funo interpoladora, admita-se de momento que f [ x0 ,x1 ,x] constante e dada por:
f [ x0 ,x1 ,x] f [ x0 ,x1 ,x2 ]
Ento o resto traduzido por (13) pode ser incorporado em (12) originando um polinmio de 2 grau,
p 2( x) = f [ x0 ] + ( x x0 ) f [ x0 ,x1 ] + ( x x0 ) ( x x1 ) f [ x0 ,x1 ,x2 ]
(14)
A avaliao de (14) para os pontos de base x0, x1 e x2 mostra que satisfaz o critrio (2) para n=2; ento p2(x) o polinmio interpolador de 2 grau que passa pelos pontos: (x0,y0), (x1,y1) e (x2,y2). Sem informao de que f(x) de facto um polinmio de 2 grau, a equao (14) tem de ser modificada a fim de incluir um termo que traduza a diferena entre f [ x0 ,x1 ,x] e
f [ x0 ,x1 ,x2 ] , isto , f ( x) = f [ x0 ] + ( x x0 ) f [ x0 ,x1 ] + ( x x0 ) ( x x1 ) f [ x0 ,x1 ,x2 ] + R2 ( x)
(15)
De modo completamente anlogo ao efectuado para obter (11) pode deduzir-se que:
R2 ( x) = ( x x0 ) ( x x1 ) ( x x2 ) f [ x, x0 ,x1 ,x2 ]
(16)
Tal como ocorria com f[x,x0,x1] no caso linear, a diferena f[x,x0,x1,x2] no pode ser calculada. Mas f[x,x0,x1,x2] pode ser estimada se um ponto adicional, seja (x3,y3), estiver disponvel.
105
Captulo 3
Interpolao
Considerando f[x,x2,x1,x0] constante e igual a f[x3,x2,x1,x0], (16) pode ser incorporada em (15) para obter o polinmio de 3 grau
p3 ( x) = f [ x0] + ( x x0) f [ x1 , x0] + ( x x0) ( x x1) f [ x 2 , x1 , x0]
(17)
A avaliao de (17) para os pontos de base x0, x1, x2 e x3 mostra que se satisfaz o critrio (2) para n=3; ento p3(x) dado por (17) o polinmio interpolador de 3 grau que passa pelos pontos: (x0,y0), (x1,y1), (x2,y2) e (x3,y3).
Seguindo o procedimento utilizado para obter (11) e (16), o termo de erro para o polinmio de 3 grau (17) ter a seguinte forma:
R 3 ( x ) = ( x x 0 ) ( x x1) ( x x 2 ) ( x x 3) f [ x, x 3 , x 2 , x1 , x 0 ]
15 . 8
Uma vez que o suporte da interpolao no exemplo 3.2 constitudo por apenas 4 pontos (Tabela 2) no possvel o clculo da diferena dividida de 4 ordem. Em geral, para xxi, i=0,1,2,3, pode dizer-se que R3(x)=0 apenas no caso de f(x) ser um polinmio de 3 grau ou inferior (caso da funo que originou a Tabela 2). interessante notar que para um argumento x=0.5, o polinmio de 1 grau conduziu a um
106
Captulo 3
Interpolao
resultado mais prximo do valor correcto do que o polinmio do 2 grau. Este exemplo ilustra o facto importante de um polinmio de interpolao de grau mais elevado no conduzir necessariamente a melhores resultados para a interpolao. Caso geral. Frmula de Newton.
O procedimento anteriormente utilizado para gerar os polinmios de interpolao de 1, 2 e 3 graus conduz, por induo, frmula geral para o polinmio de interpolao de grau n, que a frmula fundamental de Newton:
f ( x) = p n ( x) + Rn ( x)
na qual o polinmio de interpolao de diferenas divididas de grau n, pn(x), tem a forma
pn ( x) = f [ x0] + ( x x0) f [ x0 , x1] + ( x x0) ( x x1) f [ x0 , x1 , x2]
+ ... + ( x x0) ( x x1) ... ( x xn1) f [ x0 , x1 ,..., xn] e o correspondente erro, Rn(x), dado por:
R n ( x) = ( x x0 ) ( x x1 ) ... ( x xn ) f [ x,x0 ,x1 ,...,xn ]
(18)
(19)
(20)
com,
( x, x0 , x1 , ..., xn )
No caso de existir um ponto adicional (xn+1,yn+1) disponvel, possvel estimar Rn(x) como:
R n ( x ) ( x x 0 ) ( x x1) ... ( x x n ) f [ x 0 , x1 ,..., x n , x n +1]
(21)
Note que esta estimativa de Rn(x) simplesmente o termo de ordem mais elevada do polinmio de diferenas divididas de ordem (n+1), ou seja, o termo que se suprime ao polinmio pn+1(x) para obter pn(x). Infelizmente, (21) oferece apenas uma estimativa, e no um limite superior, para o erro. Este limite superior apenas pode ser estabelecido, com base em (20), no caso da funo f(x) ser conhecida de forma analtica.
107
Captulo 3
Interpolao
(22)
o qual est relacionado com os n+1 pontos de suporte considerados. A funo L0 um polinmio de grau n, e toma o valor zero para x=x1, x2,...,xn. Se dividirmos L0(x) por L0(x0), a funo resultante,
l 0 ( x) =
torna-se unitria para x=x0 e nula para x=x1, x=x2,...,x=xn. De forma similar, podemos escrever li(x) como:
l i ( x) =
na qual o numerador no inclui (x-xi) e o denominador no inclui (xi-xi). A funo li(x) um polinmio de ordem n que se torna unitrio para x=xi e nulo para x=xj, ji. Estas condies podem escrever-se abreviadamente, 1 se j = i li ( x j) = i j = 0 se j i na qual ij o smbolo delta de Kronecker. Ento se multiplicarmos l0(x), l1(x),...,ln(x), respectivamente, por f(x0), f(x1), ..., f(xn), e adicionarmos os factores, o somatrio resultante ser de novo um polinmio de grau n que igualar cada um dos f(xi) quando i variar entre 0 e n, ou seja,
p n ( x ) = f ( xi ) l i ( x )
i =0 n
(23)
com,
l i ( x) =
108
Captulo 3
Interpolao
A equao (23) algo extensa, particularmente quando a ordem n elevada. No entanto, a sua escrita num programa de computador necessita de um pequeno nmero de linhas como veremos em seguida. Analisando (23), verifica-se que: - a primeira parcela igual a f(x0) vezes um produto de factores do tipo: todo i excepto para i=0; - a segunda parcela igual a f(x1) vezes um produto de factores do tipo: todo i excepto para i=1; - todas as restantes parcelas tm a mesma forma. Ento, (23) pode ser programada em FORTRAN com dois ciclos DO encaixados, da forma que se segue: ( x xi ) , para ( x 0 xi )
( x xi ) , para ( x1 xi )
C-------------------------------------------------------------C X(I), F(I), I=0,1,...N : pontos dados C G : resultado da interpolao C XA : abcissa do ponto a interpolar C-------------------------------------------------------------G=0 DO 20 I=0,N Z=F(I) DO 10 J=0,N 10 IF (I.NE.J) Z=Z*(XA-X(J))/(X(I)-X(J)) 20 G=G+Z
Exemplo 3.6 : Utilizar a frmula de Lagrange (23) para determinar o polinmio interpolador de 3 grau que passa pelos 4 pontos da Tabela 2.
l 0 ( x) = l1 ( x ) =
( x 1) ( x 3) ( x 4) x3 8 x 2 + 19 x 12 = 12 (0 1)(0 3) (0 4) ( x 0) ( x 3) ( x 4) x3 7 x 2 + 12 x = (1 0)(1 3) (1 4) 6
( x 0) ( x 1) ( x 4) x3 5 x 2 + 4 x = l 2 ( x) = 6 (3 0)(3 1) (3 4)
l 3 ( x) =
( x 0) ( x 1) ( x 3) x3 4 x 2 + 3 x = (4 0)(4 1) (4 3) 12
pelo que:
p3( x) = 5 l 0( x) + l1( x) + 25 l 2( x) + 55 l 3( x) = x 3 2 x 2 + 7 x 5
109
Captulo 3
Interpolao
No entanto, a formula de interpolao de Lagrange tem trs importantes desvantagens em relao formulao de Newton. A saber: a interpolao para os mesmos n+1 pontos de base mas para outro valor de x necessita de igual quantidade de clculos; ao no calcular diferenas divididas, em geral no se pode ter qualquer estimativa do erro. De facto, o limite superior dado por (20) apenas pode ser avaliado quando se podem calcular derivadas de ordem superior da funo, o que no , na prtica, o caso usual; no caso de se pretender aumentar o grau do polinmio, pela adio de mais um ponto ao suporte da interpolao, necessrio repetir todo o clculo desde o incio. No por isso recomendvel para casos em que o grau do polinmio no conhecido priori.
110
Captulo 3
Interpolao
...
...
n n 1 n 1 f(x) = f ( x + h) f ( x )
f(x) designada por 1 diferena progressiva, 2f(x) por 2 diferena progressiva, etc. As diferenas progressivas so muito fceis de calcular atravs de uma tabela, como veremos no exemplo 3.7. A relao entre uma dada diferena finita progressiva e a correspondente diferena dividida da Tabela 1 simplesmente:
f [ x1 , x0] = f ( x1) f ( x0) f ( x0 + h) f ( x0) f ( x0) = = h h x1 x0
De forma similar,
f ( x 2) f ( x1) f ( x1) f ( x0) 2 f ( x0) x1 x0 x 2 x1 = f [ x 2 , x1 , x0] = 2 h2 x 2 x0
Em geral,
n f ( x0) f [ x n , x n 1 ,..., x0] = n! h n
(24)
A fim de permitir rescrever o polinmio de diferenas divididas em termos de diferenas progressivas de forma compacta, vamos introduzir um parmetro , tal que
x = x0 + h
(25)
em que 0n para valores de x no intervalo x0xxn. Uma vez que os pontos de base x0,x1,x2,...,xn esto igualmente afastados de h, ento:
x x0 = h x x1 = h h = h ( 1) x x 2 = h ( 2) ... x x n = h ( n)
111
Captulo 3
Interpolao
Em termos de e do operador diferenas progressivas, a frmula fundamental de Newton toma a forma: f ( x0 + h) = pn ( x0 + h) + Rn ( x0 + h) De (18) obtm-se:
p n ( x0 + h) = f ( x0) + f ( x0) +
( 1)
2!
2 f ( x0) +
( 1) ( 2)
3!
3 f ( x0) + ... +
(26)
( 1) ( 2) ... ( n + 1)
n!
n f ( x0)
(27)
(28)
(29)
(30)
Tal como anteriormente, o erro pode ser estimado se se conhecer mais um ponto de base de abcissa xn+1, sendo fcil deduzir que:
n +1 f ( x0) R n ( x0 + h) = n + 1
(31)
112
Captulo 3
Interpolao
Exemplo 3.7: Considere-se o polinmio: x3 - 2x2 + 7x - 5, j utilizado no exemplo 3.3, tabelado em cinco pontos de base para um passo h=1.0 (Tabela 3). Aplicar a frmula de Newton e calcular o polinmio de 2 grau para x=1.5.
i 0 1 2 3 4 xi 0. 1. 2. 3. 4. f(xi) -5. 6. 1. 8. 9. 16. 25. 30. 55. 14. 8. 6. 2. 6. 0 f 2f 3f 4f
O erro pode ser estimado usando (31), 31 1 22 2 x 6 = 3 R 2 (1.5) = 3! 8 Neste caso, -3/8 coincide com o erro exacto, j que f(x) um polinmio de 3 grau e as diferenas de ordem superior so nulas.
A frmula progressiva de Newton apenas utiliza as diferenas ao longo da diagonal superior da tabela de diferenas (assinalada pela linha a cheio da Tabela 3). Consequentemente, esta frmula particularmente conveniente para interpolaes de pontos perto do incio da tabela. No entanto, pode ser aplicada em outras zonas da tabela com a apropriada translao do ndice 0. As diferenas progressivas necessrias, deslocando a origem para x0=1.0, y0=1.0, seriam as correspondentes diagonal assinalada a tracejado na Tabela 3.
113
Captulo 3
Interpolao
.
. n n 1 n 1 f ( x h) f ( x) = f ( x)
f(x) designada por 1 diferena regressiva, 2f(x) por 2 diferena regressiva, etc. Definindo um parmetro , neste caso utilizando como origem o ponto de base xn, de forma que:
x = xn + h
(32)
zero ou negativo (-n0) para valores de x no intervalo x0xxn. A Tabela 4 apresenta as diferenas regressivas correspondentes aos dados da Tabela 3 com os ndices dos pontos de base remunerados. Faz-se notar que as diferenas regressivas da Tabela 4 so idnticas s diferenas progressivas da Tabela 3; apenas os ndices dos pontos de base so diferentes.
xi 0. 1. 2. 3. 4.
f(xi) -5.
f 6.
2f
3f
4f
2. 6. 8. 6. 14. 0
114
Captulo 3
Interpolao
f ( xn + h) = p n ( xn + h) + R n ( x n + h)
com,
pn ( xn + h) = f ( x n) + f ( x n) +
( + 1)
2!
2 f ( xn) +
( + 1) ( + 2)
3!
3 f ( xn) + ... +
(33)
( + 1) ( + 2) ... ( + n 1)
n!
n f ( xn)
(34)
Tal como anteriormente, pode calcular-se uma estimativa do erro se se conhecer mais um ponto de base de abcissa x-1=x0-h, atravs de:
R n ( x n + h) =
( + 1) ( + 2) ... ( + n)
(n + 1) !
n +1
f ( xn)
(35)
ou na forma alternativa,
n +1 f ( xn) R n ( x n + h) = n + 1
(36)
Exemplo 3.8: Utilizando as diferenas da Tabela 4, calcular o valor interpolado para x=3.5
atravs do polinmio interpolador de Newton regressivo de 3 grau. Para este caso:
x x n 3 .5 4 = = 0 .5 h 1
115
Captulo 3
Interpolao
Embora nenhuma das curvas polinomiais aproxime bem y=x na totalidade do intervalo de interpolao [0,16], p2(x) desvia-se menos de x no seu intervalo de interpolao [1,9] do que p3(x) ou p4(x) nos seus respectivos intervalos. Assim, por exemplo, se necessitamos interpolar f(5)=5 por pn(5), a aproximao quadrtica p2(5) muito mais exacta que a aproximao cbica p3(5) ou que a de quarto grau p4(x). Este exemplo ilustra uma limitao da interpolao polinomial que o de poder introduzir oscilaes. De facto, se a curva y=f(x) no anloga de um polinmio (no caso da funo raiz quadrada a sua inclinao aproxima-se de zero quando x, o que apenas pode acontecer no caso de um polinmio constante, e tem uma derivada infinita em x=0), ento os polinmios interpoladores de grau suficientemente alto oscilaro entre os pontos interpolados. Uma vez que se iniciem tais oscilaes, a sua amplitude tende a aumentar ao agregar mais pontos; assim, a adio de pontos produz polinmios que so menos adequados para aproximar f(x).
116
Captulo 3
Interpolao
Poderemos ento perguntar: dado x, que suporte da interpolao deveremos escolher de forma que pn(x) se aproxime o mais possvel de f(x) ? A estratgia "bvia", de usar tantos pontos quantos seja possvel, no produz, como vimos anteriormente, um critrio vlido. Para ajudar a responder pergunta rescrevamos (20)
( n +1) ( n +1) ( ) ( ) f f = Li ( x ) R n ( x) = ( x x0) ( x x1) ... ( x x n) (n + 1) ! (n + 1) !
(20)
Ao analisar a expresso anterior vemos que o erro Rn(x) essencialmente um produto de dois factores, um dos quais, f(n+1)(), depende das propriedades da funo f(x) e no est sujeito a regulao, enquanto que a magnitude do outro, Li(x), determinada exclusivamente pela escolha dos pontos de base da interpolao. Ou seja, a expresso anterior implica que dados x e n, o erro absoluto | f(x) pn (x) | proporcional ao produto | x x 0 | | x x1 | ... | x x n | (37)
onde x-xi a distncia de x a xi. Assim, o erro da aproximao f(x)pn(x) provvel que seja mais pequeno nos casos em que x0<x<xn (interpolao) que quando x<x0 ou x>xn (extrapolao). No caso da interpolao e quando o espaamento entre os pontos de base razoavelmente uniforme, o produto dos x-xi em (37) maior quando x est prximo de um ponto extremo de [x0,xn] e mais pequeno quando x est prximo do centro de [x0,xn]. Assim, para um dado x,
a aproximao mais exacta de f(x) com um polinmio pn(x) ser provavelmente a que utiliza os n+1 pontos de base sucessivos que melhor centrem x.
117
Captulo 3
Interpolao
Consideremos inicialmente o caso da interpolao linear. Se x0xx1, ento de (20), com n=1, resulta:
f ( x ) p1 ( x ) M 2 L1 ( x ) , com L1 ( x ) = ( x x0) ( x x1) 2!
O grfico de L1(x) uma parbola que intercepta o eixo OX em x0 e x1 (Fig. 7-a). Assim L1(x) maximizado em [x0,x1] quando x coincide com o ponto mdio (x0+x1)/2. Portanto, para x0xx1, x +x x x | L1 ( x) | L1 0 1 = 1 0 2 2 pelo que, o erro absoluto da interpolao linear satisfaz
| f(x) p1 (x) | M 2 h2 8
2 x0 x1 h = 2 4
(38)
A Figura 7 mostra os grficos correspondentes s funes Li(x) para i=1,2,3 e 6. Para n=3 verifica-se que o mximo de L3(x) ocorre nos intervalos extremos. Para n>3 verificase que o comportamento exibido por L3(x) vai-se acentuando, como se ilustra na Fig. 7(d) para n=6.
(a) y=L1(x)
(b) y=L2(x)
(c) y=L3(x)
(b) y=L6(x)
118
Captulo 3
Interpolao
Teorema: Se pn(x) interpola n+1 pontos de base xi ,{x0,...,xn}, espaados de h e f(n+1)() contnua e satisfaz f(n+1)(x)Mn+1 em [x0,xn], ento:
| f ( x) pn ( x) | M n +1 hn +1 , sempre que x0 < x < x n 4 (n + 1)
(39)
O problema 6 (final do captulo) mostra como se pode utilizar o teorema anterior para realizar uma interpolao eficaz.
A resposta no necessariamente. O mais famoso exemplo de no convergncia devido ao matemtico alemo Runge que observou que quando n+1 pontos igualmente espaados no intervalo [-5,5] se utilizam para interpolar
f ( x) =
1 1 + x2
(40)
as oscilaes tendem a aumentar nos extremos do intervalo para valores crescentes de n. A Figura 8 ilustra este fenmeno para h=1.25 (n=8) e h=1 (n=10).
119
Captulo 3
Interpolao
" Se x pode estar em qualquer ponto de [a,b], onde se devem colocar os n+1 pontos de base x0,...,xn em [a,b] de forma a assegurar que o erro mximo de pn(x) seja to pequeno quanto possvel ? " Como [a,b] e n esto especificados e no temos controlo sobre f(n+1)(), o mximo que podemos fazer para que o erro mximo de pn(x) seja to pequeno quanto possvel escolher x0,...,xn de forma que a parte do erro que podemos controlar, o polinmio Ln(x), tenha o menor valor mximo em mdulo no intervalo [a,b], isto , de forma a minimizar o valor absoluto mximo de Ln(x). Este problema foi resolvido pelo matemtico russo Chebyshev que demonstrou que a melhor escolha dos pontos de base dada pela frmula:
xi = b+a ba + i 2 2
(41)
onde,
i = cos
2( n - i ) + 1 2n + 2
i = 0 ,1,..., n
(42)
so os zeros do denominado polinmio de Chebyshev Tn+1(x). A interpolao que utiliza os n+1 pontos de base de Chebyshev xi dados por (41) designa-se por interpolao de
120
Captulo 3
Interpolao
Chebyshev ou minimax em [a,b]. Para qualquer valor de x em [a,b], o clculo de pn(x) realizase da forma usual (Newton, Lagrange), utilizando os pontos de base de Chebyshev.
O erro da aproximao f(x)pn(x) satisfar:
ba | f ( x) p n ( x) | 2 4
n +1
M n +1 ( n + 1) !
Exemplo 3.9: Designe-se por (x) a velocidade ou presso de um fluido compressvel ao longo do eixo de um tubo que se faz coincidir com o eixo OX. (x) pode ser monitorizada instalando sensores em pontos fixos ao longo do tubo. a) Em que posio se devem colocar 5 sensores ao longo de um tubo com 60 metros de comprimento de forma a minimizar o erro mximo possvel da interpolao ao utilizar os 5 valores medidos ? b) Determinar um limite superior para o erro mximo da interpolao com 5 pontos da alnea a), considerando M5 como majorante da derivada de ordem 5 de . Resoluo: a) Posio dos sensores
xi = b+a ba 60 + 0 60 0 + + i = i = 30+ 30 i 2 2 2 2 i = 0 ,1,...,4
pelo que:
9 7 x0 = 30 + 30 cos =1.47 m , x1 = 30 + 30 cos = 12.77 m , 10 10 x2 = 30.0m , x3 = 47.63m , x4 = 58.53m
b) Erro da interpolao
60 0 M 5 | R 4( x) | 2 = 12656 .25 M 5 4 5!
5
121
Captulo 3
Interpolao
(43)
no qual aj (j=0,...,k-1) so coeficientes, pode ser ajustado aos K dados. Equacionando (43) aos dados, obtemos um conjunto de K=(p+1)(n+1) equaes:
g ( xi ) = f i i = 0 ,1,..., n i = 0 ,1,..., n g ( xi ) = f i ... ( p) g ( xi ) = f (p) i = 0 ,1,..., n i
(44)
Os coeficientes aj (j=0,...,n) podem ser determinados por resoluo do sistema anterior. O problema poder ser resolvido de uma forma alternativa, similar forma do polinmio de Newton, utilizando uma tabela de diferenas divididas. Se x0=xn, ento a definio de f[x0,x1,...,xn] dada na Tabela 1 no pode ser utilizada, j que o denominador seria x0-xn=0. No entanto, da expresso (7), que aqui rescrevemos:
f [ x0 , x1 ,..., xn] = f
(n)
( ) , n!
em ( x0 , x1 ,..., xn)
podemos inferir que se os xi so distintos e f(n) contnua em x0, ento f[x0,x1,...,xn] deve aproximar-se de f(n)(x0)/n! quando xnx0. Isto sugere que podemos generalizar a definio de f[x0,x1,...,xn], fazendo:
f [ x0 , x1 ,..., xn] = f
(n)
(45)
122
Captulo 3
Interpolao
O exemplo que se segue mostra como (45) permite construir polinmios interpoladores que tm derivadas comuns com f(x) assim como os mesmos valores funcionais em alguns ou todos os pontos de base tabelados xi.
Exemplo 3.10: Determinar um polinmio p(x) de grau menor ou igual a 4 que cumpra as seguintes 5 condies satisfeitas por f(x)=x4 :
f(0)=0 , f'(0)=0 , f(2)=16 , f'(2)=32, e f''(2)=48
Resoluo: A Tabela 5 mostra uma tabela de diferenas divididas na qual se utiliza (45) para satisfazer as condies anteriores. Os pontos de base 0 e 2 esto repetidos uma vez por cada condio que se lhes impe. Os elementos obtidos utilizando (45) esto marcados com um rectngulo; os restantes foram obtidos do modo usual.
Com base na Tabela 5 pode construir-se a forma de Newton de um polinmio p(x) de grau 4 que interpole os cinco pontos, isto :
p4( x) = 0 + 0 x + 4 x 2 + 4 x 2 ( x 2) + 1 x 2 ( x 2) 2 = x 4
123
Captulo 3
Interpolao
Antes de terminar este pargrafo, efectuaremos uma observao relacionando a interpolao de Hermite com a aproximao polinomial de Taylor. Suponhamos que um polinmio p(x) de grau n cumpre as n+1 condies:
f ( x k ) , f ( x k ) , f ( x k ) , ... , f ( n ) ( x k )
(46)
Se p(x) se obtm como no exemplo anterior, ou seja, da tabela de diferenas divididas na qual (xk,fk) aparece n+1 vezes e se utiliza (45), ento a forma de Newton de p(x)
p n ( x) = f ( x k ) +
(n) f ( x k ) f ( x k ) f ( xk ) ( x xk ) + ( x x k )2 + ... + ( x x k )n 1! 2! n!
Este pn(x) o polinmio de Taylor de grau n no ponto xk, isto , o polinmio cujos coeficientes f(i)(xk)/i! (i=0,...,n) esto escolhidos de forma que as suas derivadas em xk, desde a ordem 0 at ordem n, igualam (46). A interpolao osculatria ou de Hermite pode ento ser vista como um "hbrido" entre a interpolao polinomial e a aproximao de Taylor.
124
Captulo 3
Interpolao
Define-se "spline" S(x) de grau m1 em [x0,...,xn], como a funo que satisfaz as seguintes propriedades:
(P1) Coincide com um polinmio de grau m em cada um dos subintervalos [xi,xi+1] i=0,1,...n-1. (P2) S(x) e todas as suas derivadas at ordem m-1 so contnuas em [x0,...,xn], ou seja, S(k)(x) contnuo para 0km-1.
Tal como nos casos anteriores, como estamos com um problema de interpolao, a funo S(x) tem que verificar a restrio:
S ( xi ) = yi , i = 0,1,..., n
(47)
125
Captulo 3
Interpolao
Chama-se a ateno para o facto de um "spline" no se poder confundir com um polinmio interpolador, pois embora coincida com um polinmio em cada intervalo [xi,xi+1], no caso geral, esse polinmio diferente de intervalo para intervalo. O spline de grau 1 uma funo, cuja representao grfica consiste em segmentos de recta unindo pontos consecutivos (xi, yi) e (xi+1, yi+1) , i=0,1,...n-1. Uma curva deste tipo, embora contnua, apresenta pontos angulosos. O spline de grau 2 representado por arcos de parbola a unir os pontos consecutivos, com tangente comum nos ns x1,x2,..., xn-1. No apresenta pontos angulosos, mas em cada um dos x1,x2,..., xn-1 existe descontinuidade na curvatura. Se queremos contemplar a possibilidade de que f(x) tenha um ponto de inflexo entre ns consecutivos temos de utilizar polinmios de 3 grau, ou superior. O spline de grau 3 (spline
(48)
Existem 4n coeficientes a determinar {ai,bi,ci,di} (i=0,1,...,n-1). As restries impostas a S(x) so (47) e as restries de continuidade P2,
(j) (j) S ( xi + 0) = S ( xi 0)
i = 1,..., n 1
j = 0 ,1,2
(49)
Em conjunto, n + 1 + 3 (n-1) = 4 n - 2
restries. Como existem 4n incgnitas, existem dois graus de liberdade na escolha dos
coeficientes de (48). Ser necessrio impor condies suplementares em S(x) de forma a obter um spline interpolador S(x) nico. Antes de discutirmos estas condies vamos analisar o mtodo de resoluo das equaes de forma a obter S(x). O mtodo mais simples consiste em observar que se S(x) cbico, ento S''(x) linear
126
Captulo 3
Interpolao
ou
S ( x) =
( xi +1 x) S ( xi ) + ( x xi ) S ( xi +1) xi
(50)
em que xi=(xi+1-xi). Integrando a expresso anterior duas vezes em ordem a x, vem: onde C e D so constantes de integrao.
( x x ) S ( xi ) + ( x xi ) S ( xi +1) + C ( xi +1 x) + D ( x xi ) S ( x) = i +1 6 xi
3 3
(51)
S ( xi +1) ( x xi )3 x xi x x + xi ( x xi ) + y i i +1 + y i +1 6 xi xi xi
(52)
127
Captulo 3
Interpolao
que a equao do spline cbico, equivalente a (48), expressa em funo de S''(x). Esta expresso vlida, tal como (48), para xi x xi+1 com 0 i n-1. Para utilizar (52) na determinao de S(x) necessrio determinar os valores se S''(xi). Estes valores podem ser calculados utilizando a restrio das primeiras derivadas serem contnuas em x1,...,xn-1:
S i ( x i + 0) = S i ( x i 0) i = 1,..., n 1
ou seja, derivando (52) e avaliando essa derivada em x=xi, nos intervalos [xi,xi+1] e [xi-1,xi] e, posteriormente, igualando os dois valores. Em [xi,xi+1],
2 S ( xi +1) xi yi +1 yi S ( xi ) 3 ( xi +1 xi ) + xi S ( x) = + 6 6 xi xi
Em [xi-1,xi],
S ( x) = S ( xi 1) xi 1 yi y i 1 S ( xi ) 3 ( xi xi 1 )2 xi 1 + + 6 xi 1 6 xi 1
Igualando os segundos membros das equaes anteriores, aps agrupar termos, vem:
xi 1 S ( xi 1) + 2 ( xi + xi 1 ) S ( xi ) + xi S ( xi +1) =
(53)
y y y y i 1 = 6 i +1 i i x xi 1 i
para i=1,2,...,n-1. No caso particular dos ns xi estarem igualmente espaados de h (passo) ento (53) converte-se simplesmente em:
S ( xi 1) + 4 S ( xi ) + S ( xi +1) =
6
h
2
( yi +1 2 yi + yi 1 )
(54)
Em qualquer das formas obtemos um sistema de n-1 equaes independentes onde figuram
n+1 incgnitas, S''(xj) (j=0,1,...,n). Para se obter uma soluo nica, necessrio especificar
duas condies adicionais. Como as incgnitas S''(x0) e S''(xn) aparecem apenas na primeira e
128
Captulo 3
Interpolao
ltima equao do sistema, respectivamente, imposta uma condio adicional em cada ponto extremo, x0 e xn, para as eliminar. As duas estratgias mais comuns de resolver o problema so: Estratgia 1 - Impor S''(x0)=0 e S''(xn)=0, isto , impor que a curvatura nos pontos extremos seja nula. o denominado spline natural.
Exemplo 3.11: Aproximar f(x)=x4 no intervalo -1 x 1 utilizando um spline cbico natural com base nos valores:
xi yi -1.0 1.0 -0.5 0.0625 0.0 0.0 0.5 0.0625 1.0 1.0
Para este caso n=4 e h=0.5 pelo que as 3 equaes (54) se escrevem:
i = 1 : S ( x0) + 4 S ( x1) + S ( x 2) = 6 [ 0 2 (0.0625) + 1 ] = 21 0.25 6 i = 2 : S ( x1) + 4 S ( x 2) + S ( x3) = ( 0.0625 0 + 0.0625 ) = 3 0.25 6 [ 1 2 (0.0625) + 0 ] = 21 0.25
i = 3 : S ( x 2) + 4 S ( x3) + S ( x 4) =
Impondo S''(x0)=0 e S''(x4)=0, as equaes anteriores convertem-se num sistema de 3 equaes a 3 incgnitas { S''(x1), S''(x2) e S''(x3) } de cuja resoluo resulta: S''(x1) = 5.7857 S''(x2) = -2.1429 S''(x3) = 5.7857 A representao grfica deste spline cbico e de f(x)=x4 no intervalo -1 x 1 apresentada na Fig. 11.
129
Captulo 3
Interpolao
Estratgia 2 - Estimar S''(x) nos pontos extremos por extrapolao linear. Utilizando o polinmio de Lagrange:
x0 + x1 x0 S ( x1) S ( x 2) x1 x1
S ( x0) =
S ( x n ) =
xn 2 + xn 1 xn 1 S ( x n 1) S ( x n 2) xn 2 xn 2
No caso dos ns serem igualmente espaados de h, as equaes anteriores podem escrever-se simplesmente como:
S ( x 0 ) = 2 S ( x1) S ( x 2 ) S ( x n ) = 2 S ( x n 1) S ( x n 2 )
130
Captulo 3
Interpolao
Exemplo 3.12: Resolver o exemplo 3.11 extrapolando S''(x) nos pontos extremos. Resoluo: Adoptando a estratgia 2 as equaes apresentadas no exemplo anterior modificam-se para:
i = 1: 6 S ( x 1 )
6 0.25
[ 0 2 ( 0.0625 ) + 1 ] = 21
i = 2 : S ( x 1 ) + 4 S ( x 2 ) + S ( x 3 ) = i = 3:
No caso do nmero de ns ser grande, o sistema de equaes ter de ser resolvido pelo mtodo de eliminao de Gauss, ou por um esquema especial aproveitando o facto do sistema de equaes linear ser tridiagonal. Este tema ser tratado no Captulo 6.
131
Captulo 3
Interpolao
Como ilustrao das potencialidades dos splines em evitar a possibilidade de grandes oscilaes entre pontos sucessivos, a Fig. 13 apresenta a aproximao de um spline cbico, em 1 [-5,5] funo f ( x ) = j apresentada no pargrafo 2.8. A oscilao obtida com o 2 1+ x spline cbico desprezvel quando comparada com a do polinmio de interpolao da Fig. 8.
Vantagens
Forma conveniente. Fcil de programar. A ordem do polinmio pode ser alterada facilmente. A avaliao dos erros fcil. Os erros so mais uniformemente distribudos do que no caso de pontos igualmente espaados. O rigor grande pois utilizam-se tambm valores de derivadas. Aplicvel a qualquer nmero de pontos de base.
Inconvenientes
Trabalhoso para clculo manual. necessrio construir uma tabela de diferenas. Pontos de base distribudos no uniformemente.
Hermite
Spline cbico
132
Captulo 3
Interpolao
Exerccios propostos
1. Do perfil de um vale, que vai ser atravessado por uma estrada, obtiveram-se os seguintes
valores relacionando a distncia ao incio do vale (x) com a respectiva profundidade (h): x (m) h (m) 0 0.0 10 22.5 30 31.5 50 12.5 60 0.0
A estrada manter-se- horizontal e a uma cota h=0. Sabendo que se pretende construir uma ponte para atravessar o vale, recorra ao polinmio interpolador de Lagrange, ou de Newton, para determinar a altura de um pilar a construir a uma distncia de 20 m do incio do vale, considerando que a cota do topo do pilar ser h=0.
Calcular ainda uma aproximao para o valor da funo em x=1/6 e determinar um limite superior para o erro dessa aproximao.
3. Seja f uma funo que nos ns {1, 1, 3} tem como polinmio interpolador
p2 ( x ) = 6 x 2 2 x + 3
a) Sabendo que f [1, 1, 2] = 4, calcule o polinmio de grau 3 que interpola f nos ns
anteriores e tambm em x3 = 2.
b) Sabendo ainda que f ( IV ) ( x) = 24 , para todo x R , determine a expresso analtica de f. 4. Considere a seguinte tabela de valores de uma funo f : x f(x)
0 -32 2 8 4 -8
133
Captulo 3
Interpolao
x y
-1 3
0 1
1 1
Sabendo que f ( x) = 2 x 3 + a2 x 2 + a1 x + a0 com a0, a1 e a2 constantes reais responda s seguintes questes sem calcular os valores das referidas constantes: a) Mostre que 3 f ( x0 ) = 12 (sem efectuar a tabela de diferenas progressivas). b) Elabore a tabela de diferenas progressivas e determine o valor de . c) Determine o valor de f(3).
7. Escrever o polinmio interpolador na forma de Lagrange para interpolar a funo ln(x) no intervalo 1 x 2 utilizando 4 pontos de Chebyshev. Calcular um limite superior do erro da aproximao para x=1. 8. Calcular um valor aproximado de 55, utilizando o polinmio cbico de Hermite com base nos valores da funo e 1 derivada de x nos pontos x0=49 e x1=64. 9. Seja a funo f(x) definida como:
0 para 1 x < 0.25 f(x) = 1 | 4 x | para 0.25 x 0.25 0 para 0.25 < x 1
a) Determinar polinmios de grau 2 e 4 que interpolem f(x) em pontos igualmente espaados no intervalo [-1,1]. Verifique graficamente o erro cometido na interpolao. b) Ajustar um spline cbico natural funo f(x), utilizando 5 pontos igualmente espaados entre -1 e 1. Comparar a curva obtida com o polinmio de grau 4 obtido na alnea anterior e comentar os resultados.
x 3 3x 2 + 2 x + 1 10. Verifique se a seguinte funo: S ( x) = x 3 + 9 x 2 22 x + 17 cbico natural em 1 x 3. Justifique. 1 x 2 2< x3
um spline
11. Na tabela so indicadas as distncias mdias de travagem, d[m], necessrias para imobilizar um dado veculo em funo da respectiva velocidade de circulao. Estime a distncia mdia necessria para imobilizar o veculo quando este se desloca a uma velocidade de 40 Km/h, recorrendo a uma funo spline cbica natural, S(v), tal que:
a (v 30) 3 + b (v 30) 2 + c (v 30) + 50 S (v ) = 0.0025 (v 50) 3 + 0.075 (v 50) 2 + 2.5 (v 50) + 80 se 30 v 50 se 50 v 60
134
CAPTULO 4 ___________________________________________________________________________________________________
APROXIMAO. MTODO DOS MINIMOS QUADRADOS. 1. Introduo
No captulo anterior (interpolao) estudamos uma forma de lidar com funes matemticas definidas por uma tabela de valores. Frequentemente, no entanto, estas tabelas so obtidas com base em dados experimentais contendo erros inerentes ao mtodo utilizado. Alm do mais, esses erros inerentes no sero geralmente previsveis com nenhum grau de certeza. Para ilustrar o problema, considere-se uma y srie de medies de natureza fsica (xi,yi) i=0,1,...m, onde cada yi foi obtido experimen-talmente e aproxima o valor duma funo f no ponto xi. (ex. x - percentagem de cimento , y - resistncia compresso do beto). Estes valores podem representar-se num grfico cartesiano uma " nuvem de pontos " (Fig. 1). formando
x
A relao funcional y=f(x) pode ser completamente desconhecida e a sua forma sugerida pelo grfico dos pontos, consistindo o problema na procura da curva y=g(x) que melhor se ajuste, num dado sentido, "nuvem de pontos" observada. Tal deciso exige alguma prtica e muitas vezes uma simples questo de bom senso. Nestas condies a funo g(x) diz-se uma aproximao da relao funcional desconhecida y=f(x). Noutros casos, a teoria em que a experincia se baseia pode sugerir ou mesmo fixar o tipo de relao existente entre as variveis. Note-se que, mesmo no caso terico em que existe uma relao funcional entre x e y, experimentalmente esta nunca realizada de forma perfeita, pois as medies efectuadas na prtica esto sempre afectadas de erros aleatrios. Como os valores tabelados no so "exactos" no razovel nestes casos utilizar interpolao, ou seja, exigir que a funo aproximante satisfaa exactamente os dados. De facto, em vez de se recorrer a um polinmio que passe exactamente por todos os pares de valores xi, f(xi) com i=0,1,...m, uma melhor abordagem ser a de fazer passar a funo aproximante, g(x), o mais prximo possvel dos pontos (xi,yi). Vamos supor que a forma da funo g(x) conhecida a menos de um certo numero de parmetros, g(x)=g(x;1,2,...,n), e vamos deter-nos na questo de definir um critrio que permita a determinao dos parmetros 1,2,...,n.
135
Captulo 4
Aproximao
(1)
a funo aproximante (o tilde `~` indica tratar-se de um valor aproximado de y). Define-se o desvio (resduo) como a diferena entre o valor tabelado e o correspondente valor da funo aproximante no ponto xi:
y i = y i ~ i = y i g ( xi )
(2)
Geometricamente, i mede a distncia vertical desde o ponto Pi(xi,yi) ao grfico da funo aproximante g(x), como mostra a Figura 2.
(3)
seja mnimo. Suponhamos, no entanto, que temos apenas dois pontos (m=2) como se ilustra na Figura 3(a). Se pensarmos em g(x) como uma recta da forma: y = a x + b ento, naturalmente, a "melhor" recta a que passa atravs de ambos os pontos porque para aquela recta (3) zero. No entanto, para a recta a tracejado representada na Figura 3(a) a soma dos desvios tambm nula, j que os dois desvios so iguais em mdulo, mas de sinais contrrios (1 negativo e 2 positivo).
136
Captulo 4
Aproximao
.
(a)
.
(b)
max
y i ( a xi + b )
designado critrio minimax. Este critrio complexo do ponto de vista matemtico e, por outro lado, atribui geralmente demasiado peso a um ponto com grande desvio. O critrio usual minimizar a soma dos quadrados dos desvios, o critrio dos mnimos
quadrados. Esta abordagem d substancialmente mais peso a um ponto que est fora do
alinhamento dos restantes dados, mas no permite que tal ponto domine completamente a aproximao. Uma razo adicional para preferir a abordagem dos mnimos quadrados, de natureza estatstica. Se os dados tiverem a sua mdia distribuda de modo linear, os valores obtidos pelo mtodo dos mnimos quadrados so estimativas correctas para a equao que descreve a mdia. Analise-se, em primeiro lugar, o caso mais simples que ocorrer quando existir uma relao linear entre y e x.
137
Captulo 4
Aproximao
3. Regresso linear
O problema geral de encontrar a recta dos mnimos quadrados que melhor se ajusta a um conjunto de pontos envolve minimizar:
E ( a,b) = i2 = [ y i ( a xi + b)]
i =1 i =1 m m 2
relativamente aos parmetros a e b. Para ocorrer um mnimo, necessrio que (condies de 1 ordem):
m m [ yi (a xi + b) ]2 = 2 ( yi a xi b ) ( xi ) = 0 a i =1 i =1
e
m [ yi ( a xi + b ) ]2 = 2 b i =1
(y a x b ) ( 1) = 0
i =1 i i
Forma-se assim um sistema de duas equaes a duas incgnitas (a e b) que vai permitir a determinao dos coeficientes da relao linear. Desenvolvendo o sistema vir:
m m m 2 a x i + b xi = x i y i i =1 i =1 i =1 m m a + b m = yi xi i =1 i =1
denominadas equaes normais, que podem ser resolvidas utilizando as tcnicas descritas no Capitulo 6. Em particular, fcil verificar que a e b so dados por:
m xi y i xi
i =1 i =1 m m m
a=
y
i =1 2
m m x i 2 x i i =1 i =1
; b=
x y x x
2 i i =1 i =1 i i i =1 m m m x i 2 xi i =1 i =1 i =1 2
yi
O denominador destas expresses apenas se anula quando todos os xi forem iguais. Ento, sempre que entre os valores tabelados existirem dois ou mais valores distintos de x, a soluo existe e nica. Pode demonstrar-se que a recta ajustada pelo mtodo dos mnimos quadrados passa sempre pelo ponto ( x , y ) em que x =
1 m 1 m e y = yi . xi m i =1 m i =1
138
Captulo 4
Aproximao
Exemplo 4.1: Considere os pontos (xi,yi) apresentados na seguinte Tabela. Para determinar a recta dos mnimos quadrados que aproxima estes dados, completou-se a tabela como se ilustra no presente exemplo.
xi 1 2 3 4 5 6 7 8 9 10 55 yi 1.3 3.5 4.2 5.0 7.0 8.8 10.1 12.5 13.0 15.6 81.0 xi2 1 4 9 16 25 36 49 64 81 100 385 xiyi 1.3 7.0 12.6 20.0 35.0 52.8 70.7 100.0 117.0 156.0 572.4 g(xi)=1.538 xi-0.360 1.18 2.72 4.25 5.79 7.33 8.87 10.41 11.94 13.48 15.02
b=
O grfico desta recta e os pontos dados so apresentados na Figura 4. A soma dos quadrados dos desvios : E = [ y i g ( xi ) ]2 2.34 .
i =1 10
139
Captulo 4
Aproximao
E(g ) = 0
(4)
com,
E ( g ) = [ y i g ( xi ) ]2
i =1 m
(5)
Estas equaes so especialmente fceis de resolver quando g(x) pode expressar-se como: g (x) = 1 (x) + 2 (x) (6)
i.e., como um modelo linear de dois parmetros, do qual a regresso linear um caso particular (1=x e 2=1). De facto, quando a funo g(x), sob a forma (6), se substitui em (5) as equaes normais (4) convertem-se em:
m m m 1 ( x i ) 1 ( x i ) + 1 ( x i ) 2 ( x i ) = 1 ( x i ) yi i =1 i =1 i =1 m m m (x ) (x ) + 2 ( x i ) 2 ( x i ) = 2 ( x i ) yi 2 i 1 i i =1 i =1 i =1
( x ) ( x ) ( x ) ( x )
1 i 2 i 2 i 2 i
2 ( xi ) yi
1 i i
(x ) y
(7)
em que
representa
i =1
Resumindo, as equaes normais de qualquer modelo linear de dois parmetros (6) conduzem ao sistema linear de 2x2 (7) que pode facilmente ser resolvido para determinar o vector de parmetros dos mnimos quadrados e . Por outro lado, uma vez determinados e , a soma dos quadrados dos desvios (5) pode ser determinada atravs da expresso simplificada:
140
Captulo 4
Aproximao
m m E(g) = y i2 1 ( xi ) y i + i =1 i =1
i =1
( xi ) y i
(8)
Os somatrios dentro do termo entre parntesis so as componentes do termo independente de (7). O exemplo que se segue mostra a forma simples como podem resolver-se as equaes normais (7) quando a funo aproximante um modelo linear de dois parmetros da forma (6), e a dificuldade que pode apresentar resolver as equaes normais quando so nolineares.
Exemplo 4.2: Ajuste as seguintes funes: (a) recta g1(x)=ax+b, (b) hiprbole g2(x)=+/x, e (c) exponencial g3(x)= ex,
aos seguintes 5 pontos: P1(1,5.12), P2(3,3), P3(6,2.48), P4(9,2.34), P5(15,2.18) e determine, em cada caso, o somatrio do quadrado dos desvios.
Soluo (a) - Para o caso da recta como 1=x e 2=1 a forma matricial (7) das equaes normais escreve-se:
82.76 352 34 = 15.12 34 5
j que:
Assim:
=
e
5 (82.76) 15.12 (34) = 0.166027 5 (352) 342 352 (15.12) 34 (82.76) = 4.15298 5 (352) 342
=
ou seja,
g1 ( x) = 0.166027 x + 4.15298
141
Captulo 4
Aproximao
Exemplo 4.2: Soluo (b) - A hiprbole g2(x)=/x+ um modelo linear de dois parmetros, com
i =1
1 xi
151 , 90
y = 15.12 , x
i =1 i i =1
= 2
9361 , 8100
x
i =1
yi
i
= 6.93867
Da resoluo do sistema obtm-se: =3.14678 e =1.96808. Assim, g2(x)=1.96808+3.14678/x. A soma do quadrado dos desvios, calculada a partir de (5),
E ( g 2) = 51.5928 [ (1.96808) (15.12) + (3.14678) (6.93867) ] 0.00096
sugere que a hiprbole de mnimos quadrados y=g2(x) adequada para ajustar os dados. A Figura 5 confirma graficamente que g2(x) ajusta bem os dados, o que no ocorre com g1(x).
142
Captulo 4
Aproximao
Exemplo 4.2 (cont.): Soluo (c) - Como g3(x)=ex no um modelo linear (no uma soma "ponderada" de duas funes) no possvel determinar e atravs de (7). Neste caso devemos
minimizar (5), E3 ( g ) = [ y i e
i =1 5
xi
seja:
5 5 [ yi e xi ] = 2 [ e xi yi ] e xi = 0 E ( g 3) = 2 [ yi e xi ] i =1 i =1 5 5 E( g ) = 2 [ yi e xi ] [ yi e xi ] = 2 [ e xi yi ] xi e xi = 0 3 i =1 i =1
ou ainda, 5 2 xi 5 y i e xi = 0 e i =1 i =1 5 5 2 xi x i y i e xi = 0 xi e i =1 i =1 Este sistema 2x2 no linear em e no pode por isso resolver-se analiticamente. Apenas possvel ser resolvido numericamente como se ver no Cap. 6. Da sua resoluo obter-se-a: =4.677, =-0.07472, pelo que:
g 3 ( x ) = 4.677 e 0.07472 xi
A soma do quadrado dos desvios, ter de ser calculada a partir da definio, j que (8) no vlida,
E ( g 3) = [ 4.677 e 0.07472 xi y i ]2 1.84
i =1 5
Como 1.84 no um valor pequeno quando comparado com os valores de yi, g3(x) no se ajusta bem aos dados, como se confirma na Figura 5.
5. Linearizao
No exemplo anterior apercebemo-nos das dificuldades da determinao dos parmetros de mnimos quadrados de um modelo no linear g(x)=ex. Para esta g(x) em particular, uma alternativa para no ter que resolver equaes no lineares logaritmizar ambos os membros de: y=ex e observar que:
143
Captulo 4
Aproximao
y = e x ln y = x + ln Y = a X + b
com
Y = ln y , X = x , a = e b = ln
Assim, o ponto (x,y) est na curva y=ex no plano xy se e s se o ponto (X,Y)=(x,lny) estiver na linha recta Y=X+ln no plano XY.
= eb 4.047
isto ,
g ( x) = 4.047 e 0.05060 x .
= a 0.05060
O procedimento anterior pode aplicar-se a qualquer modelo no linear g(x) para o qual possam encontrar-se transformaes de linearizao X=X(x,y), Y=Y(x,y) que transformem a curva y=g(x) numa recta Y=aX+b. A no ser que y seja transformado de um modo proporcional em Y, a funo g(x) obtida por este processo no minimizar E(g). No entanto, pode ser facilmente encontrada (sem ter que resolver sistemas no lineares), e em geral ajusta bem os dados, sempre que g(x) seja uma funo adequada.
144
Captulo 4
Aproximao
Os pontos P1, P2,..., Pm aparecem frequentemente sobre uma curva que montona e convexa em todo o intervalo de ajuste [x1,xm]. Para que g(x) se ajuste bem a tais dados, o seu grfico no deve ter mnimos ou mximos, nem pontos de inflexo em [x1,xm]. A Figura 6 apresenta seis funes g(x) de dois parmetros que se utilizam com frequncia para ajustar dados montonos convexos e mostra como os seus parmetros se relacionam com as interseces e assimptotas dos respectivos grficos.
Figura 6 Exemplo de seis funes aproximantes para ajustar dados montonos convexos.
145
Captulo 4
Aproximao
A Tabela 1 proporciona as transformaes de linearizao para os modelos no lineares da Figura 6, a saber, g1(x)-g4(x). Forma linear Y=a+bX
ln y = ln + x ln y = ln + ln x
i 1 2 3 4
y=g(xi)
y = e x y = x y= y=
X=
Y=
ln y ln y
a=
b=
x ln x
x y
ln ln
+x x +x
y=
1 xy
y x
y = -
y x
Nota: O ponto (0,0) deve ser eliminado do conjunto de dados antes de utilizar as funes g2(x) e g4(x) (ver colunas X= e Y=).
(9)
sendo k, o coeficiente da k-sima funo, o k-simo parmetro. Tais funes g(x) so importantes porque as correspondentes equaes normais so lineares, independentemente do nmero de parmetros. O modelo exponencial de dois parmetros y = e x e o modelo no so modelos lineares porque o parmetro no um "peso" neste sentido. Por outro lado, a hiprbole "desfasada" + do exemplo 4.2 e o logaritmo x "desfasado" + ln x so modelos lineares de dois parmetros para os quais 2(x)=1. Um modelo linear de n parmetros usado com frequncia o modelo polinomial de grau (n-1): potncia y = x
146
Captulo 4
Aproximao
p ( x ) = 1 + 2 x + 3 x 2 + ... + n x n 1
(10)
Observe-se que a maioria dos modelos lineares no possuem grficos correspondentes a uma linha recta; isso apenas ocorre para y(x)=ax+b. Pretende-se minimizar:
E ( g ) = [ y i g ( xi ) ]2 ,
i =1 m
com g ( xi ) = k k ( xi )
k =1
E(g) = 0 , i.e, j
2 [ y i g ( xi ) ]
i =1
m [ yi g ( xi )] = 2 j i =1
y
k =1 i
k ( x i ) j ( xi ) = 0
para j=1,2,...,n. Cancelando o 2, invertendo a ordem dos somatrios i e k, e passando os termos em yi para o segundo membro da equao obtm-se o sistema (nxn) desejado
m m j ( xi ) k ( xi ) k = j ( xi ) y i k =1 i =1 i =1 n
j = 1,2,..., n
ou, em forma matricial: 1 ( xi ) 1 ( xi ) 1 ( xi ) 2 ( xi ) ... 1 ( xi ) n ( xi ) 1 1 ( xi ) y i 2 ( xi ) 1 ( xi ) 2 ( xi ) 2 ( xi ) ... 2 ( xi ) n ( xi ) 2 2 ( xi ) y i = ... ... ... ... n ( xi ) 1 ( xi ) n ( xi ) 2 ( xi ) ... n ( xi ) n ( xi ) n n ( xi ) y i
em que representa
Resolvendo o sistema linear anterior por qualquer mtodo do Cap. 6 obtm-se o vector de parmetros dos mnimos quadrados =[1 2 ...n]T cujos elementos so os coeficientes de g(x).
147
Captulo 4
Aproximao
Exemplo 4.4: A concentrao C de um composto pretendido, t segundos aps se agregarem a uma soluo liquida duas solues de custo elevado, satisfaz (Figura 7):
C = C (t ) = C ss + a e0.47 t + b e0.06 t
Em face do custo, importante obter o mximo rendimento detendo a reaco quando esta estiver to prxima quanto possvel de tmax segundos, ou seja, quando C atinge o mximo. Como a e b dependem da pureza das solues reagentes, a sua determinao ter de ser experimental e requer efectuar um ensaio prvio da reaco medindo o valor de C em alguns tempos t seleccionados
que um modelo linear com 1(t)=1, 2(t)=e-0.47t, 3(t)=e-0.06t. Assim, as equaes normais escrevem-se: 1 e0.47 ti e0.06 ti e0.47 ti e0.94 ti e0.53 ti e0.06 ti e0.53 ti e0.12 ti que para os 6 pontos dados se converte em:
6 0.262474 2.64659 0.262474 0.0598304 0.214210 2.64659 0.214210 1.47298 c 21.5 a = 1.07818 b 10.1642
1 yi c a = e0.47 ti yi b e0.006 ti yi
148
Captulo 4
Aproximao
Para obter a estimativa desejada de tmax, basta verificar que ser soluo de:
C ' (t ) = 0.47 a e 0.47t 0.06 b e 0.06t = 0
ou seja
e
( 0.47 0.06 ) t
0.47 a 0.06 b
pelo que:
0.47 a ln 1 0.06 b 0.47 a = ln = 5.638 t max 0.47 0.06 0.41 0.06 b
j ( xi ) k ( xi ) = xi j 1 xik 1 = xi j+k 2
a forma matricial das equaes normais para pn-1(x) xi m xi2 xi x 2 x 3 i i 2 3 xi4 xi xi ... ... ... n 1 xin xin +1 xi
... ... ... ... ...
1 2 33 = ... n
xi y i xi2 y i ... n -1 xi y i
yi
149
Captulo 4
Aproximao
7. ndice de determinao
Se uma funo aproximante g(x) no adequada para ajustar um dado conjunto de dados, ento, mesmo o "melhor" ajuste no ser "bom". Seria til ter um ndice que pudesse indicar se g(x) proporciona um bom ajuste sem ter que traar o seu grfico. Para este propsito, a soma do quadrado dos desvios S = [ y i g ( xi ) ]2 tem duas deficincias. Em primeiro lugar,
i =1 m
mesmo que o ajuste seja "bom" S pode ser grande (sugerindo um mau ajuste) simplesmente porque o nmero de pontos m grande. Em segundo, e mais importante, que o facto de S ser "pequeno" depende da escala utilizada para os valores de y. Por exemplo, se y for um comprimento pode reduzir-se por um factor de 10000 (sem modificar o ajuste) apenas registando y em metros em vez de centmetros. Os especialistas em estatstica determinam utilizando o quociente definido por:
R=
[g(x ) y ]
i i =1 m
[ y y ]
i =1 i
em que y =
denominador de R proporcional varincia dos yi pelo que constitui uma medida da disperso dos yi em relao sua mdia, y . O numerador, que nunca superior ao denominador, indica o quanto esta disperso "explicada" por g(x). Assim, 0 < R (g) 1 em que o melhor ajuste corresponde a um valor de R prximo a 1. Como o numerador e denominador de R utilizam o mesmo nmero m de pontos e a mesma escala para as ordenadas (y), R um factor adimensional que no tem as deficincias apontadas a S.
150
Captulo 4
Aproximao
Exerccios propostos:
1. Ajustar, atravs do mtodo dos mnimos quadrados, uma curva do tipo: y = a e x + b e x
x y
0 5.02
0.5 5.21
1.0 6.49
1.5 9.54
2.0 16.02
2.5 24.53
2. Quando se utiliza uma bateria de V volts para carregar um condensador a voltagem v (em
volts) atravs do mesmo aps um tempo t satisfaz a equao: v = V (V v0 ) e seguintes leituras quando se utilizou uma bateria de 10 volts (V=10) t (seg.) v (volts) 1 6.48
t
t ,
na qual v0
a voltagem inicial (t=0) e a constante temporal do circuito. Supor que foram obtidas as
2 7.26
3 8.22
4 8.66
3. A variao da populao de uma cidade portuguesa no sculo XX dada pela seguinte tabela:
Ano Populao 1940 12320 1950 13167 1960 15070 1980 20321 1990 22651
151
Captulo 4
Aproximao
+T
aos dados tabelados. Com base na mesma calcule uma estimativa da viscosidade cinemtica para uma temperatura de 100oC.
b) Explique porque prefervel num problema deste tipo utilizar uma funo aproximante em lugar de uma funo interpoladora. 6. Considere a seguinte curva experimental que relaciona duas variveis x e y: x y
-1 0.14 0 1.00 1 7.39 2 54.60
k2 x
a) Pretende-se expressar a relao entre estas duas variveis sob uma forma matemtica
utilizando o mtodo dos mnimos quadrados. Qual das funes: y = k1 e ou
y = k1 x
k2 x
Obtenha a aproximao de mnimos quadrados da forma a x b que melhor se ajusta aos dados tabelados. Com base nessa aproximao, calcule uma estimativa para o valor do tempo t que o automvel leva a percorrer os segundos 100 metros.
152
CAPTULO 5
___________________________________________________________________________
INTEGRAO NUMRICA
1. Introduo
Se uma funo f(x) continua num intervalo [a,b] e conhecida a sua primitiva F(x), o integral definido daquela funo entre a e b pode calcular-se pela frmula fundamental do clculo integral:
I = f ( x) dx = F (b) F (a )
a b
(1)
No entanto, em muitos casos, o processo anterior pode ser complexo (exigindo, por exemplo, integrao por partes, ou uma longa busca at encontrar uma mudana de varivel apropriada) ou mesmo no ser possvel porque:
i) impossvel encontrar uma primitiva de f(x) expressa analiticamente como, por exemplo, no caso das conhecidas integrais elpticas:
1 + (K 2 1 ) x2 dx 1 x2
que representam a quarta parte do permetro da elipse de semi-eixo maior 1 e semi-eixo menor K (Figura 1).
Figura 1 Permetro da elipse ii) f (x) conhecida apenas num nmero finito de pontos como acontece, por exemplo, no caso de dados experimentais.
Em qualquer dos casos resulta imprescindvel obter mtodos numricos, para um clculo aproximado de (1). A integrao numrica de uma funo permite o clculo aproximado do integral definido (1) com base apenas em alguns valores discretos da funo a integrar. Essa aproximao tambm conhecida como quadratura numrica, nome que tem origem na
153
Captulo 5
Integrao numrica
ideia bsica de seguir a definio do integral, aproximando a rea correspondente por reas de rectngulos. Na prtica, aplicam-se modificaes mais sofisticadas desta ideia, como ser mostrado nos pargrafos seguintes. A tcnica normalmente utilizada consiste em substituir a funo integranda f(x) por outra g(x) que aproxima f(x), no intervalo [a,b], e seja mais facilmente integrvel (Figura 2), e estabelecer:
f ( x) dx g ( x) dx
a
(2)
Felizmente os polinmios pn(x) constituem aproximaes razoveis e so de fcil integrao. De facto, estas duas caractersticas justificam a grande importncia dos polinmios no mbito dos mtodos numricos.
a=x0
x1
x2
...
xn =b
154
Captulo 5
Integrao numrica
(3)
conhecendo n+1 pontos de base x0,x1,...,xn, com espaamento arbitrrio, que no necessitam de estar em [a,b] (Fig. 3), e os correspondentes valores funcionais f(xi) (i=0,1,...,n).
f ( x) dx pn ( x) dx
a a
(4)
f(x) dx p
a a
f ( x) dx w0 f ( x0 ) + ... + wn
a
f ( xn )
(5)
155
Captulo 5
Integrao numrica
com
wi = l i ( x) dx =
a
xi x j dx
a j =0 j i
x x j
, para i = 0, 1,..., n
(6)
Como se observa (Eq. 5) o clculo exacto do integral foi substitudo pelo clculo de uma soma ponderada (pesada) de valores discretos da funo integranda. Por esta razo os coeficientes w0 , w1 , ... , wn de (5) so designados por pesos. Note-se que estes pesos wi, dados por (6), so independentes da funo f(x),dependendo apenas de a e b e da disposio dos pontos de base xi. Uma regra de integrao diz-se de grau de exactido ou preciso n se integrar exactamente todos os polinmios de grau n, mas existir pelo menos um polinmio de grau n+1 que no por ela integrada exactamente. Uma concluso imediata a de que o grau de
( ) f (n + 1) !
( n +1)
( x x ) dx
i i =0
(7)
Aparentemente a determinao do erro poderia ser efectuada facilmente com a integrao de (7). No entanto, tal no possvel pois depende de x. No caso do produto (x-x0) ... (x-xn) no mudar de sinal em [a,b], pode aplicar-se o seguinte teorema: Teorema do valor mdio para integrais: Se duas funes f(x) e g(x) so continuas para axb e g(x) mantm o sinal em [a,b], ento existe uma abcissa (a<<b) tal que:
f ( x) g ( x) dx = f ( ) g ( x) dx
a a
(8)
156
Captulo 5
Integrao numrica
E=
( ) f (n + 1) !
( n +1)
( x x ) dx
i a i =0
(9)
f ( x) dx w
0
Aplicar a expresso resultante a f(x)=ex/5. Para o intervalo de integrao [a,b]=[0,1] e os trs pontos de base x0=-1 , x1=0 e x2=2, as expresses (6) para i=0,1,2 , escrevem-se:
w0 =
0 1
f(x) dx 9
0
f (1) +
13 5 f (0) + f (2) 36 12
(10)
Um processo alternativo consiste em fazer f(x)=xk (k=0,1,2) em (5). Tendo em considerao que: 1 1 1 1 1 dx = 1 , x dx = , x 2 dx = 2 0 3 0 0 obtm-se o sistema: w0 + w1 + w2 = 1 w0 + 0 + 2 w2 = 1 2 1 w0 + 0 + 4 w2 = 3 cuja soluo conduz novamente a: w0=-2/9, w1=13/12 e w2=5/36. Aplicando a expresso (10) a f(x)=ex/5 obtm-se:
e 5 dx
0
2 5 13 5 5 5 e + e + e 1.109 9 12 36
157
Captulo 5
Integrao numrica
Exemplo 5.2: Utilize a expresso (9) para determinar a preciso obtida no exemplo 5.1.
A estimativa do erro (9) aplicvel a este caso pois:
( x x ) = ( x + 1) x ( x 2)
i i =0
( x + 1) x ( x 2) dx = 12
0
13
Para f(x)=ex/5,
E=
13 1 /5 e 72 125
com 1 2
ou seja, a aproximao 1.109 sobrestima o valor exacto entre: 13 1 5 e 0.0012 72 125 De facto,
1
13 1 e 5 0.0022 72 125
e
0
x 5
dx = 1.107
f ( x) dx p n ( x) dx
a
(11)
conhecido por mtodo de Newton-Cotes. Se os limites de integrao so pontos de base da interpolao (x0=a e xn=b) obtm-se as "frmulas de integrao fechadas" de Newton-Cotes. Caso contrrio, ou seja nem a nem b so pontos de base da interpolao as frmulas de integrao dizem-se abertas. Todas as frmulas de integrao, abertas e fechadas, podem ser geradas por (5)
158
Captulo 5
Integrao numrica
escolhendo os pontos de base apropriados e os pesos por forma a que frmula seja exacta se f ( x) pn ( x) . No entanto, uma vez que se considera que os pontos de base so equidistantes parece mais lgico escolher uma forma do polinmio interpolador especialmente adaptado a este caso como pode ser o polinmio de Newton de diferenas progressivas (Cap. 3):
f ( x0 + h) = p n ( x0 + h) + R n ( x0 + h)
com:
p n ( x0 + h) = f ( x0 ) + f ( x0 ) +
( 1)
2!
2 f ( x0 )+
( 1)( 2)
3!
3 f ( x0 )
(12)
+ ... +
( 1) ( 2) ... ( n +1)
n!
n f ( x0 )
e Rn ( x0 + h) , dado por:
Rn ( x0 + h) = h n+1 ( 1) ( 2) ... ( n) f ( n+1) ( ) (n +1) !
(13)
x x0 h
obtem - se
dx = h d
f ( x) dx p n ( x) dx = h p n ( x0 + h) d
a 0
(14)
e,
E = h R n ( x0 + h) d
0 n
(15)
159
Captulo 5
Integrao numrica
I = f ( x) dx =
a
ba [ f (a ) + f (b) ] + E 2
(16) (17)
E=
(b a )3 f ( ) , [a,b] 12
y
f(b)
y=f(x)
f(a)
rea = b-a [f(a)+f(b)] 2
b-a
2 = h f ( x0) + f ( x0) 2
f ( x 0) = h f ( x0 ) + 2
Como:
f ( x 0) = f ( x 0 + h) f ( x 0)
obtm-se,
f ( x) dx h f ( x ) +
0 a
f ( x0 + h) f ( x0) h = 2 [ f ( x0 ) + f ( x1)] 2
O erro cometido quando se utiliza a aproximao trapezoidal dado pelo integral (15) substituindo o resto pelo valor dado por (13) para n=1. Assim,
160
Captulo 5
Integrao numrica
E = h R1 ( x0 + h) d = h
0
( 1)
0
f ( ) d 2!
Como o produto (-1) sempre negativo para 0<<1, utilizando o teorema do valor mdio para integrais (8)
E = h3 ( 1)
0 1 1 3 f ( ) f ( ) h d = h 3 ( 2 ) d = f ( ) 2! 2! 12 0
analtica; considere que o seu valor com 7 casas decimais correctas I = 0.7468241).
Como: I = 0 .7468241 (com 7 c.d.c.) , ento E 0.62910 1 . A magnitude do erro percebe-se analisando a Figura 5.
Figura 5 - Aproximao de
e
0
x 2 dx
161
Captulo 5
Integrao numrica
(apenas se
se anular, isto quando f (x) for linear, o que era de esperar por observao
da figura 4) e diminui proporcionalmente a h3 quando h=b-a reduzido. Ento, no caso de b-a no ser suficientemente pequeno, o erro da integrao E pode no satisfazer a preciso desejada. Para diminuir o erro podemos subdividir o intervalo inicial [a,b] em n subintervalos [xi, xi+1] de amplitude constante h=(b-a)/n e aplicar (16) a cada um deles (ver Figura 6).
y
f f0
1
f f3
fi
i-1
f n-1
y=f(x)
h a= x 0 x1
h x2
h x3
h x i-1
h xi
h x n-1
h x n =b
f ( x) dx 2 ( f
a
+ f 1) +
3 n 1
h h h ( f 1 + f 2) + ... + ( f n 2 + f n 1 ) + ( f n 1 + f n) 2 2 2
3 2
e
E= h h h f ( i) = 12 n f ( ) = 12 (b a) f ( ) 12 i =0
ou seja,
b n1 h ( f 0 + 2 f1 + 2 f 2 +L+ 2 f n1 + f n ) = h f 0 + 2 f i + f n 2 2 i=1
f ( x) dx
a
(18)
E=
(b a) 2 h f ( ) , [ a,b] 12
(19)
Da equao (19) pode concluir-se que o erro da frmula trapezoidal composta, para um dado intervalo de integrao [a,b], proporcional a h2.
162
Captulo 5
Integrao numrica
Exemplo 5.4 : O slido de revoluo, mostrado na Figura 7, obtido por rotao em 2 x torno do eixo Ox da curva: y = 1 + , 0 x 2 2
Soluo:
a) O volume dado por:
I = f ( x) dx
0 2
em que
x 2 f ( x) = 1 + 2
b) Foram efectuadas integraes para outros valores de n, cujos resultados se apresentam na tabela que se segue: n 2 4 8 16 32 64 h 1. 0.5 0.25 0.125 0.0625 0.03225 Ih 12.7627 11.9896 11.7940 11.7450 11.7327 11.7296 Eh -1.0341 -0.2610 -0.0654 -0.0164 -0.0041 -0.0010
163
Captulo 5
Integrao numrica
composta com n=2 e o respectivo majorante do erro. Quantos pontos sero necessrios utilizar ao aplicar a regra do trapzio para garantir que o clculo aproximado do integral tem erro inferior a 0.510 3 ?
Como: I = 0 .7468241 (com 7 c.d.c.) E 0.155101 (1 c.d.c.) A resposta questo de quantos pontos so necessrios para garantir um erro inferior a 0.510 3 est na expresso do erro (19) que pode ser escrita como:
ET
(b a )3 M
12
2
O mximo em valor absoluto M 2 = 2 ( f ''(0) = 2 e f ''(1) 0.736 ). Logo, 1 0 E 2 h 2 0.5103 h 2 3103 n 18.25 n =19 12 Conclui-se que so necessrios 20 pontos !
164
Captulo 5
Integrao numrica
Uma caracterstica da regra trapezoidal composta, com grande importncia prtica, a de que no caso de se pretender integrar uma dada funo f(x) entre dois limites fixos a e b (caso do exemplo anterior), poder-se- duplicar o nmero de subintervalos utilizados previamente sem desperdiar o trabalho anteriormente efectuado. Suponhamos que tnhamos aplicado a regra trapezoidal subdividindo o intervalo inicial [a,b] em n subintervalos de amplitude h (Fig.9) e obtido o resultado aproximado T[h], ou seja,
I=T[h]+E[h]. fcil verificar que o resultado aproximado que obteremos duplicando n, isto ,
utilizando intervalos de amplitude h/2 (Fig.9), que designaremos por T[h/2] dado por:
1 h h h T [ ] = T [ h] + f impar [ ] 2 2 2 2
(20)
em que fimpar[h/2] o somatrio dos valores da funo nos pontos mdios dos subintervalos utilizados para obter T[h].
Figura 9 - Efeito da duplicao do nmero de subintervalos sobre os pontos de base. Exemplo 5.6: Aplicar a expresso (20) na resoluo da alnea a) do exemplo 5.4.
Por exemplo, para n=4
I 12.7627 + 0.5 [ f (0.5) + f (1.5) ] = 11.9896 2
165
Captulo 5
Integrao numrica
I = f ( x ) dx =
a
h ( f 0 + 4 f1+ f 2)+ E 3
( 21)
E=
h5 ( 4 ) f ( ) , x0 < < x 2 90
( 22)
y
y=f(x) y=p (x)
2
x0
x1
x2 b
( ) 3!
No caso de f(x) coincidir com um polinmio de 3 grau, f(3)(x)=k, sendo k uma constante. A funo:
166
Captulo 5
Integrao numrica
R2 ( ) =
k 3 h ( 1) ( 2) 6
Tal como a regra trapezoidal, a de Simpson usualmente aplicada na forma composta (Fig. 11):
b
I = f ( x) dx
a
h [ f 0 + 4 f1 + 2 f 2 +L+ 2 f n2 + 4 f n1 + f n ]= 3
(23)
E=
(b a ) 4 h f 180
( 4)
( ) ,
[a,b]
(24)
f(x6)
a=x0 x1 x2 x3 x4 x5 x 6 =b
167
Captulo 5
Integrao numrica
Exemplo 5.7: Utilizar a regra de Simpson composta com n = 2 , 4 , 8 , 16 e 32 para resolver o problema do exemplo 5.4. Resoluo. Para n=2, h=2/2=1
n 2 4 8 16 32 64
Uma comparao dos resultados anteriores com os resultados correspondentes do Exemplo 5.4, permite concluir que, para um mesmo nmero de intervalos, a regra de Simpson composta significativamente mais precisa que a regra trapezoidal composta. Por exemplo, a preciso da regra de trapezoidal composta utilizando 32 intervalos (n=32) equivalente preciso da regra de Simpson composta com n=4.
f ( x) dx
a
= w0 f ( x0 ) + w1 f ( x1 ) + ... + wn f ( xn ) + E
168
Captulo 5
Integrao numrica
isto , como uma soma de valores ponderados da funo nos pontos de base. Para uma mais completa identificao da expresso anterior com as regras trapezoidal e de Simpson, (5) pode rescrever-se, numa forma explicitamente adaptada s frmulas de Newton-Cotes, como:
f ( x)
a
dx = k h [ w0 f ( x0 ) + w1 f ( x1 ) + ... + wn f ( xn ) ] + E
(25)
na qual x0,...,xn so os n+1 pontos de base igualmente espaados que dividem [a,b] em n subintervalos de amplitude h, sendo k e w coeficientes que dependem de n (regra de integrao), e cujos valores se apresentam na Tabela 1.
n
1 2 3 4 5 6 7 8
1 2 1 3
k
1, 1 1, 4, 1 1, 3, 3, 1 7, 32, 12, 32, 7
wi (i=0,1,...,n)
1 12
E
h f ''
3
1 90 3 80
h 5 f IV h 5 f IV
3 8
2 45 5 288
8 945 275
h 7 f VI h 7 f VI
19, 75, 50, 50, 75, 19 41, 216, 27, 272, 27, 216, 41 751, 3577, 1323, 2989, 2989, 1323, 3577, 751 989, 5888, -928, 10496, -4540, 10496, -928, 5888, 989
12096 9 1400
1
140
h 9 f VIII
h f
9 VIII
7
17280 8 14175
8183
3. Quadratura de Gauss
169
Captulo 5
Integrao numrica
Como vimos nos pargrafos precedentes, dados N pontos de base xi (i=1,2,...,N) a frmula:
f ( x)
a
dx w1 f ( x1) + w2 f ( x 2) + ... + wN f ( x N )
(26)
exacta sempre que f(x) seja um polinmio de grau N-1. At ao momento estudamos mtodos de integrao numrica para os quais temos tido plena liberdade de escolha na localizao dos pontos de base a utilizar. A pergunta que agora se pode colocar : ser que poderemos diminuir o erro de truncatura, tal como ocorria na interpolao com o mtodo de Chebyshev, se para um dado nmero de subintervalos determinarmos a localizao dos seus extremos (pontos de base) de forma a obter a preciso mxima possvel? A resposta sim. Gauss concluiu que a ordem de preciso de (26) pode ser mais que duplicada at 2N-1, se os xi so tratados como variveis, em lugar de especificados a priori. Consideremos primeiramente uma funo y = f(x) especificada no intervalo normalizado [-1,1]. O caso geral pode reduzir-se facilmente a este caso mediante uma substituio linear da varivel independente, como observaremos posteriormente. O problema pode ento colocar-se da seguinte forma: como escolher os pontos de base x1, x2,...,xN e os pesos w1, w2,...,wN de forma que a frmula de quadratura:
1
f ( x ) dx w1 f ( x1) + w2 f ( x 2) + ... + w N f ( x N )
(27)
seja exacta para todos os polinmios de grau n to elevado quanto possvel. Como temos 2N parmetros a determinar, xi e wi (i=1,2,...,N) e, um polinmio de grau 2N-1 fica determinado por 2N coeficientes, o seu grau mais elevado possvel no caso geral evidentemente n=2N-1. Para assegurar ordem de preciso 2N-1 a (27) necessrio e suficiente que (27) se converta numa igualdade para:
f ( x) = 1, x , x 2 , ... , x 2 N 1
Para vermos o processo de determinar as 2N constantes xi e wi analise-se o caso mais simples de considerar dois pontos de base (N=2). Relembre-se que com dois pontos de base (regra do trapzio) a integrao apenas era exacta para uma funo linear (polinmio de 1 grau). O prximo exemplo mostra, no entanto, que com uma escolha criteriosa da localizao desses dois pontos a integrao numrica pode garantir ordem de preciso 3 (exacta para um
170
Captulo 5
Integrao numrica
Exemplo 5.8 : Determinar os valores dos pesos w1 e w2 e dos ns x1 e x2 que garantem ordem de preciso 3 frmula de integrao de dois pontos
I = w1 f ( x1 ) + w2 f ( x2 ) + E
Considere-se o intervalo normalizado [-1,1] e o integral
I = f ( x) dx
1
1
(28)
Como w1, w2, x1 e x2 so tratadas como variveis, vamos obrigar que E=0 (ou seja, que I venha exacto) para f(x)=1, x, x2 e x3. Introduzindo cada um destes valores de f(x) em (28) obtemos as seguintes 4 equaes:
w1 1 + w2 1 = 1 dx = 2 w1 x1 + w2 x2 = x dx = 0
2 2 w1 x1 + w2 x2 = x 2 dx = 1 1 1 1 1 1 1
2 3
3 3 w1 x1 + w2 x2 = x 3 dx = 0 1
Este sistema no linear (4x4) possvel de ser resolvido analiticamente se pensamos que os ns x1 e x2 devem estar localizados simetricamente em relao origem, ou seja, x1 = x2 . Das anteriores primeira e segunda equaes, obtm-se:
w1 = w1 = 1
1 2 A quarta equao automaticamente satisfeita. Da terceira equao, x1 = , pelo que, 3 1 1 e x2 = x1 = 3 3
171
Captulo 5
Integrao numrica
no entanto, possvel demonstrar que os xi em (27) so as razes reais do polinmio de Legendre de grau N, o que permite obviar resoluo do sistema. Por essa razo o mtodo designado por quadratura de Gauss-Legendre. A Tabela 2 mostra os ns xi e os pesos wi de Gauss-Legendre para N=2,3,4,5. Pode verificar o facto geral dos ns de Gauss-Legendre estarem localizados simetricamente no intervalo aberto (-1,1) e mais densamente espaados prximo dos pontos extremos de (-1,1). Assim todas as frmulas de quadratura de Gauss-Legendre so frmulas de integrao abertas. Em geral, o intervalo de integrao arbitrrio [a,b] e no [-1,1]. Para quaisquer valores a e b, pode determinar-se uma frmula de quadratura de N pontos, com ordem de preciso 2N-1, para
f ( x) dx
a
(29)
de forma que
x= b+a ba ba + t dx = dt 2 2 2
ba f ( x) dx = 2
b+a ba f t dt + 2 2
e, portanto:
f(x) dx
a
ba [ w1 f ( x1) + w2 f ( x 2) + ... + wN f ( x N ) ] 2
(30)
com
xi = b+a ba + ti , 2 2 i = 1, 2 , ... , N
(31)
Assim, para aproximar o integral (29), com ordem de preciso 2N-1, utiliza-se (31) e os ns de
172
Captulo 5
Integrao numrica
Gauss-Legendre tabelados ti para obter x1, x2, ... , xN (os N ns gaussianos para [a,b]) e depois utilizam-se estes valores em (30) conjuntamente com os pesos de Gauss-Legendre tabelados wi.
N N ptos. 2
ti ns = -0.577350269
t2 = 0.577350269
f(10)()
etc.
...
173
Captulo 5
Integrao numrica
Exerccios propostos
f ( x ) dx = w0 f ( 1) + w1 f (1) + w2 f ( 2)
x x
Aplicar a expresso resultante a f(x)=e . Os resultados obtidos para e no so to bons como os obtidos para e
x/5
xe
2x
dx
3. Determine, com erro absoluto inferior a 0.5x10-1, um valor aproximado para o integral
4. Determine, com erro absoluto inferior a 0.5x10-3 um valor aproximado para o integral
definido: I = x e x dx utilizando a regra de Simpson.
4 7
1 1
f ( x) dx e a seguinte tabela:
-0.5 2.25 0 0.5 -0.75 1.0 -1.5
x f(x)
-1.0 4.5
5.2
a) Qual o menor nmero de pontos a considerar no intervalo de integrao, para que o erro
cometido no clculo do integral no exceda 5x10 quando se utiliza a frmula trapezoidal.
-4
174
Captulo 5
Integrao numrica
xi fi
-1 -2.0
0 -2.0
1 0.0
5 28.0
b) Sabendo que a funo f(x) uma funo polinomial, determine o respectivo grau. c) Efectue o clculo do integral atravs da regra de Simpson simples. Qual o erro do valor
numrico calculado? Justifique.
2 x , x 0 8. Dada uma funo definido por: f ( x) = 2 x, x > 0
2 2
na qual, V a velocidade em m/s, m a massa em kg, g a acelerao da gravidade (9.8 m/s2) e c uma constante habitualmente designada por coeficiente de resistncia. Considere m=68 Kg, c=12.5 Kg/s e que o paraquedista abre o paraquedas 10 segundos aps ter saltado do avio. Determine, por aplicao da regra de Simpson com erro inferior a 0.50 metros, um valor aproximado da distncia percorrida em queda livre pelo paraquedista at ao momento da abertura do paraquedas. Recorde que: d = V (t ) dt
0 t
175
Captulo 5
Integrao numrica
e
0
-t 2
dt
a) Utilizar a regra de Simpson composta para obter o valor de erf(0.5) com 4 casas
decimais correctas. Comparar o resultado obtido com o valor erf(0.5)=0.520499876.
b) Utilizar a quadratura de Gauss-Legendre, com N=3, para determinar o valor de erf(0.5). 11. Considerar o integral: I = 0 log10 | x2 - 3 | x dx , cujo valor aproximado se pretende
calcular com erro no superior a 0.5*10-3.
1
a) Calcular o nmero de pontos necessrio para garantir aquela preciso pela regra dos
trapzios composta.
b) Considerando 4 intervalos calcular o valor aproximado de I pela regra de Simpson. c) Comparar o valor da alnea b) com o dado pela quadratura de Gauss considerando N=3.
e
0
cos( x) dx
a) Determine qual o nmero de pontos a utilizar na frmula dos trapzios para se obter um
valor aproximado de I com erro absoluto inferior a 0.5*10-3. Justifique os clculos.
176
CAPTULO 6
_______________________________________________________________________________________________________________
1. Prembulo
Neste captulo abordam-se os mtodos de resoluo de sistemas de n equaes simultneas a n incgnitas xi , i =1, 2 , ... , n . No caso geral estes sistemas so representados por:
f 1 ( x1 , x 2 , ..., x n ) = 0 f 2 ( x1 , x 2 , ..., x n ) = 0 M f n ( x1 , x 2 , ..., x n ) = 0
que estas funes so lineares, efectuando-se no final do captulo (parte 2) uma introduo resoluo de sistemas no lineares.
(1)
Os aij so os coeficientes das incgnitas e os bi so designados por termos independentes. Se todos os bi so nulos, ento (1) designado por sistema homogneo. Se pelo menos um dos bi for diferente de zero, ento (1) designado por sistema no homogneo.
177
Captulo 6
Sistemas de equaes
A descrio dos sistemas lineares bastante simplificada com a introduo de matrizes, pois permite representar o sistema (1) de forma concisa atravs de uma simples equao vectorial:
A x=b
x o vector das incgnitas e b o vector dos termos independentes. Por outro lado, a lgebra de
matrizes proporciona as ideias e notao necessrias para descrever os diversos mtodos de resoluo de (1). Antes de desenvolvermos alguns algoritmos especficos, analisemos o que queremos dizer com uma soluo e as condies sob as quais a soluo existe (no adianta querer calcular uma soluo se ela no existir). Uma soluo de (1) qualquer conjunto de valores x1 , x2 , ... , xn que satisfazem simultaneamente as m equaes. Se o sistema (1) homogneo, ele possui pelo menos a soluo trivial: x1 = 0 , ... , xn = 0 . Os sistemas lineares podem ter uma soluo nica, mais que uma soluo ou nenhuma soluo. Vamos analisar as condies para que exista uma soluo e para que esta seja nica. O nosso interesse em solues nicas justificado por razes de ordem prtica. Em geral estamos interessados em resolver problemas relacionados com a modelao de processos contnuos para os quais se pretende obter um mximo, mnimo ou posio de equilbrio. Estas posies so em geral determinadas por uma combinao nica de acontecimentos. Uma condio necessria para um sistema de equaes linear ter uma soluo nica possuir pelo menos tantas equaes como incgnitas (mn). Um sistema que tenha mais incgnitas do que equaes (n>m) nunca ter soluo nica. Por outro lado, um sistema com mais equaes que incgnitas (m>n) pode ter uma soluo nica apenas para um valor particular de b. Por exemplo,
=1 x1 x2 = 1 + =2 x1 x 2
178
Captulo 6
Sistemas de equaes
no tem soluo. Em resumo para que um sistema linear A x = b tenha uma soluo nica para qualquer valor possvel de b necessrio que o nmero de equaes seja igual ao nmero de incgnitas (m=n). No entanto, esta condio no suficiente como se demonstra em seguida para o caso bidimensional. No caso de um sistema 2 2 cada equao representada por uma recta no plano xOy (x1Ox2). As coordenadas do ponto de interseco das duas rectas constituem a soluo do sistema. Ento existem 3 casos possveis: (a) No existe soluo no caso das rectas serem paralelas. (b) Existe uma soluo nica se as rectas se interceptam. (c) Nmero infinito de solues se as rectas so coincidentes. x + y =1 x + y = 0 x + y =1 x y = 0 x + y =1 2x+2 y=2
Caso (a)
Caso (b)
Caso (c)
Se o sistema for homogneo, o caso (a) no pode ocorrer, porque as duas rectas passam pela origem, cujas coordenadas (0,0) constituem a soluo trivial. De forma intuitiva, um sistema indeterminado (caso c) se uma das equaes impe uma restrio que j foi imposta pelas outras (equao linearmente dependente) e impossvel (caso a) se uma das equaes impe uma restrio que incompatvel com as impostas por outras. Em trs ou mais dimenses a representao grfica (planos, hiperplanos) no to evidente. No entanto fcil constatar que tanto no caso (a) como no caso (c) o determinante do sistema nulo. Em geral, quando det (A)=0 a matriz A (e o sistema) dita singular.
179
Captulo 6
Sistemas de equaes
Ento um sistema linear de n equaes a n incgnitas A x = b tem uma soluo nica para qualquer b se e s se A no singular, ou seja, det (A)0.
Dado o nosso interesse em sistemas que tenham soluo nica vamos a partir de agora restringir a nossa ateno a sistemas n n .
(2)
(3)
no caso do determinante da matriz A, det (A) =A, ser diferente de zero, tem uma soluo nica. De facto, supondo que det (A) 0 existe uma matriz inversa A-1. Multiplicando esquerda ambos os membros de (3) pela matriz inversa A-1, obtemos
A 1 A x = A 1 b
ou,
x = A 1 b
(4)
Vemos ento que a soluo de um sistema linear pode ser obtido calculando a inversa e formando o produto A 1 b . Infelizmente, quando n>2, o clculo directo da inversa A-1 computacionalmente mais lento que a resoluo do sistema linear A x = b por um mtodo directo.
Utilizando (4), fcil obter frmulas para as incgnitas do sistema (3). De facto de (4) e da relao:
1 A =
1 Adj (A) | A|
obtm-se:
x=
1 Adj (A) b | A|
180
Captulo 6
Sistemas de equaes
na qual Ak o determinante obtido de A substituindo em A a sua k-sima coluna pela coluna dos termos independentes (b1, ...,bn). Teoricamente, a soluo definida atravs da regra de Cramer pode ser utilizada para resolver sistemas n n no homogneos. No entanto, este mtodo de soluo requer a determinao de n+1 determinantes de ordem n, e resulta impraticvel para n maior que 3 ou 4. Na prtica, existem mtodos mais eficientes (apresentados nos prximos pargrafos) para a resoluo de grandes sistemas de equaes. Estes mtodos podem dividir-se em dois grupos: mtodos directos, que so algoritmos finitos, e mtodos iterativos, os quais permitem obter a soluo de um sistema com uma dada preciso mediante processos infinitos convergentes. Naturalmente nenhuma tcnica prtica pode realmente ser infinita. O que se pretende dizer que os mtodos directos em princpio (ou seja, desprezando os erros de arredondamento) produziro uma soluo exacta com um nmero finito de operaes aritmticas. Um mtodo iterativo, pelo contrrio, iria requerer em princpio um nmero infinito de operaes aritmticas para produzir uma soluo exacta. Em outros termos, um mtodo iterativo tem um erro de truncatura, enquanto um mtodo directo no tem. Aps estudarmos os exemplos mais comuns de ambos os mtodos iremos efectuar a sua comparao. Veremos que ambos so teis; ambos tm vantagens e limitaes.
181
Captulo 6
Sistemas de equaes
(dois sistemas de equaes lineares designam-se equivalentes se tm as mesmas solues) de soluo simples ou imediata.
Soluo (a)
Resolvemos a 1 equao em ordem a x1, depois a 2 em ordem a x2 e finalmente a 3 em ordem a x3 como se segue:
x1 = 8 11 + x1 11 + 4 9 2 x1 + x 2 9 8 + 5 = 4 ; x2 = = = 5 ; x3 = = =1 2 3 3 6 6
Soluo (b)
Resolvemos a 3 equao em ordem a x3, depois a 2 em ordem a x2 e finalmente a 1 em ordem a x1 como se segue:
x3 = 7 + 5 x 2 + 8 x3 7 + 15 8 4 6 3 x3 6 + 3 = 1 ; x2 = = = 3 ; x1 = = =0 1 4 1 2 2
182
Captulo 6
Sistemas de equaes
O mtodo de resoluo do exemplo 6.1(a) designa-se por substituio progressiva porque determina as incgnitas de qualquer sistema triangular inferior n n Lx=b (L=[lij] matriz triangular inferior), em ordem progressiva:
x1 = b (l i1 x1 + l i 2 x2 + ... + l i,i1 xi1 ) b1 ; xi = i i = 2 ,...,n l11 l ii
sempre que li,i0 para qualquer i. De forma anloga, o mtodo de resoluo do exemplo 6.1(b) designa-se por substituio regressiva porque determina as incgnitas de qualquer sistema triangular superior n n Ux=c (U=[uij] matriz triangular superior), em ordem regressiva:
xn = c (u i,i +1 xi +1 + ... + u i,n x n ) cn ; xi = i i = n 1,...,1 u nn u ii
Eliminao gaussiana bsica A estratgia para resolver um sistema linear geral A x = b pelo mtodo de Gauss consiste em reduzi-lo coluna por coluna a um sistema equivalente triangular superior Ux=c, e completar a sua soluo utilizando o anterior algoritmo de substituio regressiva. Neste pargrafo apresenta-se o algoritmo bsico, ou seja, sem efectuar pivotagem. O tema da pivotagem ser apresentado posteriormente. Considere-se o sistema genrico n n a11 x1 + a12 x 2 + ... + a1n x n = b1 a 21 x1 + a 22 x 2 + ... + a 2 n x n = b2 M a n1 x1 + a n 2 x 2 + ... + a nn x n = bn
Estgio 1 (1 eliminao)
Comeamos as transformaes anulando os primeiros termos de todas as equaes abaixo da primeira, ou seja, eliminando de todas elas a incgnita x1. A isto chamamos 1 eliminao; o elemento a11, que por hiptese assumimos diferente de zero, designado pivot dessa eliminao, que realizada da seguinte forma:
183
Captulo 6
Sistemas de equaes
define-se um multiplicador:
r2 = a 21 a11
e a primeira equao multiplicada por r2 subtrada da segunda equao para eliminar desta equao a incgnita x1. De facto,
com:
a 2 j = a 2 j r 2 a1 j
(1) (1) b2 = b2 r 2 b1
j = 2 ,..., n
de forma idntica, o primeiro termo de cada uma das equaes posteriores, i>2, eliminado definindo multiplicadores
ri = ai1 , i = 3,..., n a11
e subtraindo a primeira equao multiplicada por ri da i-sima equao. No final da 1 eliminao o sistema escreve-se,
a11 x1 + a12 x 2 + ... + a1n x n = b1 (1) a 22 x 2 + ... + a (21n) x n = b(21) M (1) 1 a n 2 x 2 + ... + a(nn) x n = b(n1)
em que:
(1) aij = aij r i a1 j (1) bi = bi - r i b1
( i = 2,...,n) ( i = 2,...,n )
( j = 2 ,...,n )
184
Captulo 6
Sistemas de equaes
Estgio 2 (2 eliminao)
Consiste na eliminao de x2 da 3 at ltima equao, definindo os multiplicadores
ri = ai 2 , i = 3,..., n (1) a22
(1)
e subtraindo a segunda equao multiplicada por ri da i-sima equao (i=3,...,n). O elemento a220, o pivot desta eliminao.
ou seja, um sistema triangular superior, cuja soluo calculada por substituio regressiva.
Formulao matricial. Algoritmo computacional. A eliminao de Gauss pode ser efectuada escrevendo apenas os coeficientes aij e os termos independentes bi utilizando uma formulao matricial. De facto, isto exactamente que um programa de computador faz ao utilizar a eliminao de Gauss. Mesmo para clculo manual, a formulao matricial mais conveniente que a escrita de todas as equaes. Para simplificar ainda mais a notao formemos a matriz ampliada n ( n + 1)
185
Captulo 6
Sistemas de equaes
a11 a12 ... a1n a1,n +1 a21 a22 ... a2 n a2,n +1 M M am1 am 2 ... amn an ,n +1
No utilizamos os ndices superiores como anteriormente por comodidade de escrita e tambm porque em termos de programao eles so desnecessrios. Isto permite estabelecer somente uma nica varivel bidimensional A(I,J) para descrever todos os coeficientes, antes e depois das operaes de eliminao. O algoritmo, em Fortran, correspondente a esta fase (reduo) pode escrever-se: DO 30 K=1,N-1 DO 20 I=K+1,N R=A(I,K)/A(K,K) DO 10 J=K+1,N+1 A(I,J)=A(I,J)-R*A(K,J) 10 CONTINUE 20 CONTINUE 30 CONTINUE O diagrama de blocos correspondente encontra-se representado na Fig.1. O bloco marcado com * refere-se ao processo de pivotagem que consideraremos posteriormente.
186
Captulo 6
Sistemas de equaes
187
Captulo 6
Sistemas de equaes
40 50
Contagem de operaes aritmticas importante ter uma ideia do esforo computacional exigido na execuo dum algoritmo para poder efectuar comparaes entre os vrios mtodos do ponto de vista da eficincia. Uma medida da eficincia de um algoritmo o nmero de operaes aritmticas requeridas para obter a soluo. Designe-se por N(), N(*) e N(/) o nmero de somas e subtraces, multiplicaes e divises necessrias para resolver Ax=b, utilizando o mtodo de eliminao de Gauss sem pivotagem. Analisando o algoritmo correspondente fase de reduo podemos verificar que: - em cada estgio de eliminao k, como I varia entre K+1 e n (ciclo 20),
N (/) = n k
(n k )
k =1
n 1
e,
N ( ) = N (* ) = ( n k )2 +
k =1 n 1 n 1
(n k )
k =1 n 1 m k obtm-se:
n 1
(nk) =
m k =1 k =1
188
Captulo 6
Sistemas de equaes
N(/ ) = k =
k =1
n 1
n (n 1) 2
e,
N () = N (* ) = k 2 + k =
k =1 k =1 n 1 n 1
n ( n 1) ( 2 n 1) n ( n 1) + 2 6
Uma anlise similar do algoritmo correspondente fase de substituio regressiva, permite a obteno dos resultados que se resumem no Quadro 1. Total de operaes
n ( n 1) (4n + 7) 6
N()=N(*)
n ( n 1) (2n + 2) 6
N(/)
n (n 1) 2
Reduo
n (n 1) 2
2 n3 + 3 n 2 5 n 6
2 n + n 2
4 n3 + 9 n 2 7 n 6
189
Captulo 6
Sistemas de equaes
Para descrever este facto do nmero de operaes aritmticas ser descrito por Cn3 quando n diz-se que da ordem de n3, abreviadamente O(n3). Observe-se que a fase de substituio regressiva requer aproximadamente n2 operaes aritmticas, ou seja, de O(n2) para n grande. Assim, ao resolver A x = b a maioria do "trabalho numrico" efectua-se na reduo de A a U.
Passo 1: Normalizao do elemento akk multiplicando a linha k pelo inverso do elemento akk, no caso deste ser definido;
a kj a = ( k 1) a kk
(k) kj ( k 1)
( j = k,...., n + 1)
190
Captulo 6
Sistemas de equaes
Passo 2: Eliminao dos elementos no-diagonais da coluna k, substituindo a linha i (ik) por uma combinao linear conveniente das linhas i e k.
(k ) ( k 1) ( k 1) ( k ) aik = aij aik a kj
(i = 1,..., n) (i k ) ( j = k,...., n + 1)
A diferena, no processo de eliminao, em relao ao mtodo de Gauss a de que agora, em cada eliminao k, se anulam no s os elementos abaixo como tambm os elementos acima de akk. Por esta razo a variao do ndice i na equao anterior de 1 a n, com ik, pois agora devemos percorrer todas as linhas, excepto a do pivot, a cada eliminao. Um diagrama de blocos do mtodo apresentado na Fig. 2. Como no caso do diagrama de blocos do mtodo de Gauss, o bloco marcado com * refere-se ao processo de pivotagem.
191
Captulo 6
Sistemas de equaes
Em cada etapa k do mtodo, a normalizao efectua: N (/) = n + 1 k e a eliminao: N ( ) = N(*) = ( n + 1 k ) ( n 1 ) , pelo que o nmero de divises e multiplicaes global dado por:
N (/) = ( n + 1 k ) = n
k =1 n n
n +1 2
2 n 1 2
N (* ) = N ( ) = ( n + 1 k ) ( n 1 ) = n
k =1
Como foi anteriormente referido as multiplicaes ou divises requerem mais tempo de clculo que as somas/subtraces. Ento, um bom ndice da relao entre o esforo computacional dos dois mtodos a relao entre o nmero global de multiplicaes e divises de cada um deles, dada por:
2 n2 + 3 n 1 3 n2 + n
pelo que, para valores grandes de n podemos dizer que o esforo computacional do mtodo de Gauss aproximadamente 2/3 do mtodo de Gauss-Jordan.
2.3.3 Pivotagem
Nos pargrafos anteriores os mtodos de eliminao de Gauss e Gauss-Jordan foram aplicados supondo que os elementos pivot eram diferentes de zero. De facto, os algoritmos apresentados no sero vlidos se o elemento a11 for nulo ou se um coeficiente da diagonal se tornar nulo no processo de soluo, j que estes so utilizados como denominadores na fase de eliminao. A pivotagem utilizada para mudar a ordem sequencial das equaes com dois objectivos prioritrios: (a) para evitar a diviso por zero; (b) para minimizar o erro de arredondamento. Vamos analisar com um pouco mais de detalhe o objectivo (b). A soluo exacta de um sistema linear, obviamente, no depende da ordem pela qual aparecem as equaes. No entanto, como mostra o exemplo que se segue, a ordenao das
192
Captulo 6
Sistemas de equaes
equaes pode ter um efeito aprecivel na preciso da soluo calculada quando os clculos se efectuam num dispositivo que apenas pode armazenar k dgitos significativos, como uma calculadora ou um computador.
Exemplo 6.2: Resolver utilizando o mtodo de eliminao de Gauss sem pivotagem e aritmtica com 4 dgitos significativos:
0.07 x + 0.9 y = 7.13 (a) 3 x + 2 y = 13 ; 3 x + 2 y = 13 (b) 0.07 x + 0.9 y = 7.13
Nota: (a) e (b) possuem as mesmas equaes mas em ordem inversa; a soluo exacta x=-1, y=8.
Resoluo:
Para o sistema (a) o multiplicador para a 1 eliminao r=3/0.07 que armazenado arredondado a 4 dgitos significativos como r=42.86. Assim, aps a 1 eliminao obtmse a matriz ampliada:
0.07 0 y= 0 .9 36.57 7.13 292.6
pelo que:
De forma idntica, no caso do sistema (b) o multiplicador para a 1 eliminao r=0.07/30.02333. Assim, aps a 1 eliminao obtm-se a matriz ampliada:
3 0 y= 2 0.8533 13 6.827
e a soluo:
Esta soluo, embora no coincida com a exacta, mais significativa que a encontrada anteriormente.
193
Captulo 6
Sistemas de equaes
Poder-se- objectar que, com a reteno de apenas 4 dgitos significativos, o erro se propaga muito mais facilmente que num computador (8 dgitos significativos). Em contrapartida, como um computador pode ser utilizado para resolver grandes sistemas e os efeitos dos erros de arredondamento vo-se acumulando, o nmero de algarismos significativos retidos pelo computador poder ser insuficiente. O exemplo anterior indica ser vantajoso escolher para pivot o elemento que tiver maior valor absoluto na coluna que se est a considerar, e no simplesmente o elemento da primeira linha. A operao a efectuar em cada eliminao k dever ser a de reordenar as ltimas n-k+1 linhas de forma que o maior dos coeficientes, em valor absoluto, da coluna k seja o pivot dessa eliminao. Este processo designa-se por pivotagem parcial. Quando este processo no for possvel porque todos os elementos da coluna do pivot abaixo da diagonal principal so nulos, o sistema singular. A figura 3 mostra o diagrama de blocos correspondente pivotagem parcial. Este diagrama substitui o bloco marcado com * na figura 1 (mtodo de Gauss) e pode facilmente ser adaptado para formar a sub-rotina da figura 2 (mtodo Gauss-Jordan).
194
Captulo 6
Sistemas de equaes
Para compreender este diagrama de blocos e a sua integrao no diagrama da figura 1, relembre-se que ao entrarmos nesta fase k tem um determinado valor (k=1,..., n-1) e o ndice i acabou de ser fixado como k+1. Comea-se por estabelecer um ndice auxiliar l, igual a k. A primeira comparao entre aik (elemento exactamente abaixo do coeficiente diagonal akk) e alk (igual akk). Se aik superior em valor absoluto, faz-se l=i. O ndice l representa ento o nmero da linha do elemento da k-sima coluna que at ao momento presente tem o maior valor absoluto. O ndice i passa por todos os valores de k+1 a n inclusive. Assim, no final deste ciclo, l identifica o maior elemento em valor absoluto, ou seja o que queremos utilizar como pivot akk aps a troca de linhas, se necessria. Esta troca efectuada por pares de valores, um da linha k e um da linha l, qualquer que seja l, e pode ser efectuada atravs do ciclo Fortran: DO 3 J=K,N+1 AA=A(K,J) A(K,J)=A(L,J) A(L,J)=AA
O erro de arredondamento pode ser ainda mais reduzido se para alm da troca de linhas se efectuar tambm troca de colunas. Por outras palavras, em vez de se restringir a busca aos elementos da k-sima coluna, procurar entre todos os coeficientes restantes que ainda se encontram disponveis (no pertencentes a uma coluna ou linha que j contenham um elemento utilizado como pivot) qual o maior em valor absoluto. Este processo designa-se por pivotagem total. Uma troca de colunas implica uma renumerao das variveis. A experincia demonstrou que a preciso obtida utilizando pivotagem total em geral no suficientemente maior que a obtida com pivotagem parcial para justificar a complexidade adicional de programao e fundamentalmente o tempo de execuo.
195
Captulo 6
Sistemas de equaes
Exemplo 6.3: Examine como pequenas variaes em A e b afectam a soluo x do sistema: x 11 y = b1 9 x + 100 y = b2 Resoluo:
Analise-se em primeiro lugar as variaes relativas rx e ry resultantes de um erro relativo em b, bi - 0.1 = 0.010989 r bi = | bi | 9.1 Vamos supor que modificamos o vector b da seguinte forma: 9.1 9 b = para b = 1 - 1 As respectivas componentes do vector soluo modificam-se de
- 10 r x = 899 0.011123 x = 899. x = 889. para y = 80.9 y = 80. r y = - 0.9 0.011125 80.9 Os erros rx e ry so comparveis a rb.
Vamos agora supor a seguinte modificao em b : 1 1 b = para b = 9.1 9 As componentes do vector soluo modificam-se de
- 1.1 r x = 0.1 = 11.0 x = 1 x = 0.1 para y = 0.1 y=0 r y = - 0.1 = 1.0 0.1
Para este 2 caso uma variao de b2 de aproximadamente -1% provoca uma variao em x de -1100% !
196
Captulo 6
Sistemas de equaes
Para uma maior evidncia da "sensibilidade" da soluo do sistema original a pequenas variaes relativas nos elementos de [A:b] demonstre que, independentemente do vector b, modificando a12 de -11 para -11.1 (variao inferior a 1%) ambas as componentes do vector soluo tm uma variao de aproximadamente 900% ! Para ajudar a compreender porque que a matriz A do Exemplo 6.2 mal-condicionada observe que se a22=100 se modifica para 99 (ra=-1/100=-0.01) a matriz A converte-se numa matriz singular pois det A=0. Uma matriz designa-se por quasi-singular no caso de se tornar singular quando algum dos seus elementos sofre pequenas variaes relativas. A explicao anterior sugere alguma conexo entre quasi-singularidade e mau condicionamento. Para uma confirmao geomtrica considere o sistema linear geral 2x2:
a11 x1 + a12 x2 = b1 a11 x1 + a12 x2 = b1
As linhas rectas correspondentes (Fig. 4) tm declives -ai1/ai2 e ordenadas na origem bi/ai2, que variam continuamente com variaes em ai1, ai2 e bi sempre que ai20. Se estas duas linhas tm um declive quase igual sero quase paralelas; ento, embora pequenas variaes em ai1, ai2 e bi produzam pequenos movimentos destas linhas, estes pequenos movimentos podem provocar grandes movimentos do ponto de interseco x (Figura 4). Foi exactamente isto que sucedeu no exemplo 6.2.
197
Captulo 6
Sistemas de equaes
hiperplanos num sistema de coordenadas n-dimensional, ento os elementos (ai1, ai2, ... , ain) da linha i representam as componentes da "normal" ao i-simo hiperplano. Neste contexto, podemos interpretar um sistema linear mal-condicionado como um conjunto de n hiperplanos cujas "normais" so muito aproximadamente paralelas. Um sistema linear mal-condicionado caracterizado por uma matriz de coeficientes cujo determinante pequeno em comparao com a ordem de magnitude dos elementos da matriz.
O mtodo de eliminao de Gauss sem pivotagem (a pivotagem a ser utilizada destruiria o caracter tridiagonal do sistema) para sistemas deste tipo particularmente simples, como mostra o seguinte exemplo.
Exemplo 6.4: Resolver atravs do mtodo bsico de Gauss o seguinte sistema tridiagonal:
5 x1 3 x 2 x1 + 4 x 2 2 x 3 x 2 + 3 x3 + x 4 2 x3 + 5 x 4 =7 =6 =4 = 15 7 5 3 0 0 1 4 2 0 6 0 1 3 1 4 0 0 2 5 15
198
Captulo 6
Sistemas de equaes
Resoluo
Fase 1 : Reduo Em cada estgio apenas h que eliminar uma incgnita. Assim:
k=1 {linha 2 - 1/5 linha 1}
[1 4 - 2 0 : 6] 1 23 23 [5 3 0 0 : 7] = [0 2 0 : ] 5 5 5
59 23 0
249 59
3 1 (3) =0 59 23 7 (3) 1 =2 5
x1 =
199
Captulo 6
Sistemas de equaes
Observe-se que a reduo deixou a diagonal u inalterada e em cada estgio de eliminao apenas modifica os coeficientes de uma linha. Por outro lado, tambm em cada passo de substituio regressiva apenas necessrio efectuar uma multiplicao. Estas simplificaes so genricas qualquer que seja o tamanho do sistema. Vamos ver como podemos tirar partido delas para construir um algoritmo de eliminao gaussiana para sistemas tridiagonais. Aps a reduo, o sistema pode genericamente escrever-se:
' d1 u1 d '2 u 2 ' d3 u3 ... d i' u i ... ' dn ' b1 x1 b '2 x2 ' x b 3 ... = ...3 ' x i b ...i ... x b ' n n
i = 2,..., n
bi' u i xi +1 xi = d i'
i = n 1, n 2 , ...,1
Num programa de computador, as variveis d'i e b'i no necessitam de ser distinguidas de di e bi respectivamente, sendo armazenadas nos mesmos espaos de memria. Apresenta-se seguidamente uma subrotina Fortran para resoluo de um sistema de equaes tridiagonal.
200
Captulo 6
Sistemas de equaes
10
20
SUBROUTINE TDIDG (L,D,U,B,N) REAL L DIMENSION L(1),D(1),U(1),B(1) DO 10 I=2,N R=L(I)/D(I-1) D(I)=D(I)-R*U(I-1) B(I)=B(I)-R*B(I-1) CONTINUE B(N)=B(N)/D(N) DO 20 I=N-1,1,-1 B(I)=(B(I)-U(I)*B(I+1))/D(I) CONTINUE RETURN END
Quando os clculos na subrotina terminam, a soluo est armazenada no vector B(I). O algoritmo anterior ao explorar o facto do sistema ser tridiagonal permite uma grande simplificao na entrada de dados (apenas necessrio introduzir os coeficientes das 3 diagonais) e muito mais eficiente j que utiliza apenas: 3n - 3 subtraces , 3n - 3 multiplicaes e 2n - 1 divises Assim, para n grande, o nmero de operaes aritmticas necessrias para resolver Tx=b (T representa uma matriz tridiagonal) proporcional a n, ou seja, apenas O(n). Como este algoritmo pressupe a no existncia de pivotagem, corre o risco de falhar se aparece um pivot nulo (d'i=0). No entanto, grande parte dos problemas que do origem a sistemas lineares tridiagonais possuem outras caractersticas que garantem o sucesso do mtodo. Por exemplo, se d1 > u 1 , d i > li + u i para 2 i n - 1 e d n > ln
diz-se que o sistema diagonal dominante e pode provar-se que o algoritmo no poder gerar nenhum pivot nulo.
201
Captulo 6
Sistemas de equaes
(5)
U x =c Lc=b
Podemos ento resolver (5), ou seja, A x = b , em duas fases utilizando os algoritmos de substituio progressiva e regressiva (&3.1)
c1 =
i = 2 ,..., n
(6)
xn =
i = n 1,...,1
(7)
202
Captulo 6
Sistemas de equaes
sabendo que:
1 1 LU = 2 3 2
0 1 0
0 0 1
2 0 0
2 2 0
0 2 4 = 1 3 2
2 1 3
0 4 = A 2
Resoluo:
Como L uma matriz triangular com 1's na diagonal principal, o algoritmo (6) simplifica-se para: c1 = b1 ; pelo que:
c1 = 14 , c2 = 5 +
i = 2,..., n (8)
14 = 12 , c3 = 15
14 = 6
A nica dificuldade de momento est na decomposio de A na forma A=LU. Esta decomposio sempre possvel e nica desde que A seja no singular. O Teorema seguinte mostra como obter aquela decomposio por intermdio do mtodo de eliminao de Gauss.
Teorema (Decomposio A=LU): A matriz triangular superior U que se obtm aps a fase de reduo do mtodo de eliminao de Gauss e a matriz triangular inferior L (com 1's na diagonal) e elementos inferiores obtidos pelos multiplicadores rij utilizados na fase de reduo,
203
Captulo 6
Sistemas de equaes
1 r21 L = r31 M r n1
0 1
0 ... 0 ... M
0 0 0 M 1
Ento, um esquema geral da decomposio LU para uma matriz de ordem n pode obter-se da seguinte forma: (a) A primeira linha de U, u1j para j=1 at n, obtida por:
u1 j = a1 j , j = 1,..., n
l ik =
u kk
, i = k + 1,..., n
Exemplo 6.6: Mostre com base no algoritmo anterior que vlida a decomposio dada no exemplo 6.4
204
Captulo 6
Sistemas de equaes
(9)
ou max
1i n
xi
(k )
xi( k 1) (k ) xi
(10)
em que uma tolerncia pr-definida. Tambm analogamente ao que ocorria com as tcnicas iterativas discutidas no Cap. 2, o erro de arredondamento pequeno, mas o mtodo apenas tem garantia de convergncia sob certas condies que explicitaremos.
205
Captulo 6
Sistemas de equaes
1 x1 = a ( b1 a12 x2 a13 x3 ... a1n xn ) 11 1 ( b2 a21 x1 a23 x3 ... a2 n xn ) x2 = a22 M 1 xn = ( bn an1 x1 an 2 x2 ... an,n 1 xn 1 ) ann
(11)
O sistema (11) pode ser escrito de uma forma mais concisa como:
xi = 1 bi aij x j aii j i i = 1,..., n
(12)
x1(0),
Consideremos agora uma 1 aproximao qualquer para a soluo; designemos esta por x2(0),..., xn(0). Substituindo estes valores no membro direito de (12) obtemos uma nova aproximao: 1 xi(1) = bi aij x (j0 ) i = 1,..., n aii j i
que completa a 1 iterao. Podemos recomear tudo substituindo xi(0) por xi(1) e calcular uma nova aproximao. Em geral, a k-sima aproximao dada por:
xi( k ) = 1 bi aij x (jk 1) aii j i i = 1,..., n
(13)
Exemplo 6.7: Resolva, pelo mtodo de Jacobi, apresentando o resultado com 2 casas decimais correctas, o sistema linear:
4 x1 + 2 x2 + x3 = 11 = 3 x1 + 2 x2 2 x + x + 4 x = 16 1 2 3
Resoluo:
Como todos os elementos diagonais so diferentes de zero, podemos reduzir o sistema forma (13),
206
Captulo 6
Sistemas de equaes
(k ) 1 ( k 1) ( k 1) x1 = 4 ( 11 2 x2 x3 ) (k ) 1 ( k 1) x2 = ( 3 + x1 ) 2 (k ) 1 ( k 1) ( k 1) x3 = 4 ( 16 2 x1 x2 )
Considere-se como aproximao inicial: x1(0)= x2(0)= ... = xn(0)= 0.0 1 iterao (k=1)
(1) 11 x1 = 4 (1) 3 x2 = 2 (1) 16 x3 = 4 = 4
2 iterao (k=2)
( 2) 1 x1 = 4 ( 11 2 * 1.5 4) = 1.0 ( 2) 1 x2 = ( 3 + 2.75) = 2.875 2 ( 2) 1 x3 = 4 ( 16 2 * 2.75 1.5) = 2.25
E assim sucessivamente at que se cumpra o critrio (9) com =0.5*10-2 (2 casas decimais correctas). O Quadro 2 resume os resultados do processo iterativo.
k
x1(k)
2.7500 1.0000 0.7500 1.0547 1.0313 0.9854 0.9978 1.0028 0.9998
x2(k)
1.5000 2.8750 2.0000 1.8750 2.0273 2.0156 1.9927 1.9989 2.0014
x3(k)
4.0000 2.2500 2.7813 3.1250 3.0039 2.9775 3.0034 3.0029 2.9989
1 2 3 4 5 6 7 8 9
207
Captulo 6
Sistemas de equaes
O mtodo de Jacobi tambm conhecido por mtodo das correces simultneas, por alterar todos os elementos de x de forma simultnea aps cada iterao. A convergncia do processo depende unicamente das propriedades da matriz A, e assegurada pelo seguinte teorema:
i = 1,..., n
ento o mtodo de Jacobi converge para a soluo exacta x qualquer que seja a aproximao inicial x(0).
j =i +1
ij
x (jk 1) ,
i = 1,..., n
(14)
208
Captulo 6
Sistemas de equaes
Exemplo 6.8 : Resolva, pelo mtodo de Gauss-Seidel, o sistema linear do exemplo 6.6:
4 x1 + 2 x2 + x3 = 11 = 3 x1 + 2 x2 2 x + x + 4 x = 16 1 2 3
Considere-se a mesma aproximao inicial: x1(0)= x2(0)= ... = xn(0)= 0.0 1 iterao (k=1)
(1) 11 x1 = 4 = 2.75 (1) 1 x2 = ( 3 + 2.75) = 2.875 2 ( 2) 1 x3 = 4 ( 16 2 * 2.75 2.875) = 1.90625
E assim sucessivamente at que se cumpra o critrio (9) com =0.5*10-2. O Quadro 3 resume os resultados do processo iterativo.
k
x1(k)
2.7500 0.8359 1.0154 0.9986 1.0001
x2(k)
2.8750 1.9180 2.0077 1.9993 2.0001
x3(k)
1.9063 3.1025 2.9904 3.0009 2.9999
1 2 3 4 5
209
Captulo 6
Sistemas de equaes
Quando comparamos os valores anteriores como os obtidos pelo mtodo de Jacobi (Quadro 2), fica bem evidente a mais rpida convergncia do mtodo de Gauss-Seidel para este exemplo. O mtodo de Gauss-Seidel tambm denominado mtodo das correces sucessivas, pelo facto de, em cada iterao k, utilizar sucessivamente no clculo de cada xi os valores mais recentes, da iterao k, das incgnitas x1, x2,..., xi-1. O teorema da dominncia igualmente vlido, ou seja, a matriz A ser diagonal dominante uma condio suficiente para a convergncia do mtodo de Gauss-Seidel. possvel demonstrar que o mtodo de Gauss-Seidel em geral converge sempre que o faz o mtodo de Jacobi e com uma maior velocidade. Como tambm mais fcil de implementar em computador o mtodo iterativo mais utilizado.
- Gauss-Seidel : 2 n 2 por iterao Assim, se o nmero de iteraes do mtodo de Gauss-Seidel menor ou igual a n/3, ento este requer menos operaes aritmticas. As tcnicas iterativas tm menor erro de arredondamento pois so auto-correctivas; isto , um erro de clculo individual no afectar o resultado final, j que qualquer aproximao errnea pode considerar-se como um novo vector inicial. Ento apenas os erros de arredondamento cometidos na iterao final tm algum efeito. Os mtodos directos, pelo contrrio, tm erros de arredondamento propagados atravs de todas as suas n3 operaes. O menor erro de arredondamento dos mtodos iterativos frequentemente de importncia suficiente (principalmente em sistemas mal-condicionados) a justificar a sua utilizao mesmo quando o trabalho computacional superior ao dos mtodos directos.
210
Captulo 6
Sistemas de equaes
(15)
O sistema anterior poder ser representado de uma forma abreviada como f(x)=0. Um vector x=(x1, x2,..., xn) que satisfaz f(x)=0 designa-se por raiz do sistema no linear (15). Vimos no &1 (parte 1) que um sistema linear n n pode no ter razes, ter uma s raiz ou ter um nmero infinito de razes. Em contraste, como se mostra em seguida, os sistemas no lineares frequentemente tm um nmero finito de razes.
Identificamos o vector x com o ponto (x,y) no plano xy do modo usual. Como resultado, as razes x=[x,y]T do sistema anterior podem interpretar-se geometricamente como se descreve no exemplo que se segue.
Exemplo 6.9: Utilize o mtodo grfico para estimar todas as razes do sistema 2 2 :
y ex 2 = 0 2 x + y4=0
(16)
Resoluo:
Como as duas equaes anteriores se podem resolver em ordem a y, verificamos que:
211
Captulo 6
Sistemas de equaes
Assim as razes x=[x,y]T correspondem a pontos de interseco destas duas curvas no plano xy. Vemos pela figura anterior que existem duas razes 0.6 1.9 x1 , x 2 0.4 3.7 A eliminao de y em (16) mostra que as coordenadas x de x1 e x2 satisfazem,
x 2 + 2 e x 4 = 0 Esta equao da forma f(x)=0 e pode por isso ser resolvida utilizando qualquer mtodo iterativo do Cap. 2. Em geral, conveniente reduzir n eliminando variveis como fizemos no exemplo anterior. No entanto, isto nem sempre se pode fazer. Por exemplo, nem x nem y podem eliminar-se no sistema no linear:
x e y x5 + y + 3 = 0 x + y + tan x sen y = 0
Este exemplo mostra a necessidade de mtodos para resolver sistemas no-lineares da forma geral:
f ( x, y ) = 0 g ( x, y ) = 0
(17)
212
Captulo 6
Sistemas de equaes
so as superfcies f e g cuja interseco uma curva C no espao xyz, como se mostra na figura 6. Igualar f ( x , y ) e g ( x , y ) a zero corresponde a interceptar f e g com o plano xy (z=0). Assim, uma raiz x de (17) corresponde a um ponto no qual a curva C corta o plano xy.
213
Captulo 6
Sistemas de equaes
Se no existisse erro de truncatura x seria a soluo do problema. Ao no ser assim, obtemos uma nova aproximao de x, que se espera ser melhor que x. Vamos agora generalizar o mtodo de Newton-Raphson a um sistema de duas equaes em duas variveis: f ( x, y ) = 0 g ( x, y ) = 0 sendo xk, yk uma soluo aproximada. Expandindo f(x,y) em srie de Taylor e desprezando os termos no lineares em x e y,
f ( x, y ) = f ( xk 1 , yk 1 ) + ( x xk 1 )
(18)
f f + ( y yk 1 ) x y
g g + ( y yk 1 ) x y
f ( xk , y k ) x = g ( xk , y k ) y { 14 4 2 3
x
f ( x k 1 )
(19)
A soluo de (19), que designamos por x (x,y) a correco que devemos somar a xk-1 para obter xk. Assim,
214
Captulo 6
Sistemas de equaes
Exemplo 6.10: Dada a estimativa inicial (x0,y0)=(1,1) determinar a soluo aproximada do sistema no linear:
x2 + y2 4 = 0 2 x + y2 1 = 0 9 aps duas iteraes pelo mtodo de Newton-Raphson.
Resoluo:
Matriz Jacobiana:
f = 2x ; x g 2 = x ; x 9 f = 2y y g = 2y y
Iterao 1 aproximao inicial: x0=1 , y0=1 pelo que o sistema (19) se escreve:
2 2 9 2 2 2.0 x = 1 y 9
f(x1,y1)=1.445 , g(x1,y1)=0.192
x 1.445 = y 0.192
215
Captulo 6
Sistemas de equaes
Exerccios propostos
2. Determinar as solues do sistema de equaes lineares: [A] {x} = {b} para {b}T={4,6,6} e {b}T={4,4,6} em que: 1 1 1 A = 2 2 1 1 1 2 3. Considerar o seguinte sistema de equaes lineares:
pi xi 1 + d i xi + qi xi +1 = bi ; i = 1,...,5
tendo os vectores p, d, q e b os seguintes elementos {p}T={0,-0.12,-0.12,-0.12,-0.12}, {d}T={1.24,1.24,1.24,1.24,1.24}, {q}T={-0.12,-0.12,-0.12,-0.12,0} e {b}T={0.12,0,0,0,0}. a) Coloque o sistema de equaes na forma matricial. b) Utilizando o processo mais adequado, resolver o sistema de equaes. Admitir que os dados do problema so quantidades exactas e determinar a soluo do sistema com 5 casas decimais correctas.
a) Determinar a sua soluo recorrendo ao mtodo directo de Gauss. b) Partindo dum vector soluo inicial conveniente (x1(0),x2(0),x3(0),x4(0)) resolver em 3 aproximao { soluo aproximada (x1(2),x2(2),x3(2),x4(2))} por um processo iterativo mostrando previamente que o mtodo convergente.
216
Captulo 6
Sistemas de equaes
6 2 3
3 8 2
x 4 y = 4 z 1
a) O sistema, na forma anterior, estar em condies de ser resolvido por um dos mtodos
iterativos estudados? Em caso negativo, escrever a forma conveniente. Justificar.
a) Determinar a decomposio: A = L U .
2 b) Resolver o sistema: [A] {x} = 5 11
xn 1
) 2(1 + h )x
2
=1
com n = 5 .
a) Classifique-o quanto linearidade das equaes. b) Coloque-o na forma [A]{x} = {b}. c) Identifique o procedimento de resoluo mais eficiente. 8. Considerar o sistema no linear:
x2 + y 2 = 4 x e + y = 1
Utilizar o mtodo de Newton-Raphson para determinar as suas razes com pelo menos 3 algarismos significativos correctos. Previamente calcular um vector inicial atravs de um mtodo grfico.
217
Captulo 6
Sistemas de equaes
Q1
Q2
0.5 m 3 /s
Q1 Q 2 Q 3 = 0 Q 2 + Q3 Q4 = 0 1 / 0.56 + 31.28 Q1 / 0.56 + 93.85 Q1 / 0.56 = 1000 93.85 Q1 2 4 31.28 Q1 / 0.56 31.28 Q1 / 0.56 = 0 2 3 Determinar os referidos caudais com um erro inferior a 0.1 m3/s, utilizando os seguintes valores iniciais: Q1=Q4=3.0 m3/s, Q2=Q3=1.5 m3/s.
218
CAPTULO 7
____________________________________________________________________________________________
2. Prembulo matemtico
Assumindo que uma equao diferencial ordinria de ordem n poder escrever-se na forma:
y (n ) (t ) = f t, y (t ), y' (t ), ..., y (n 1) (t )
(1)
entende-se por soluo da equao (1) a funo (t ) , n vezes continuamente diferencivel num dado intervalo e satisfazendo aquela equao; ou seja, (t ) ter de satisfazer:
(n ) (t ) = f t, (t ), (t ), ..., (n 1) (t )
A soluo geral da equao (1) conter, em geral, n constantes arbitrrias, existindo, por conseguinte, n famlias de solues. Se forem fornecidos os valores y (t 0 ), y' (t 0 ), ..., y (n1) (t 0 ) num dado ponto de abcissa t = t 0 , estaremos perante um problema de valor inicial. Assume-se, obviamente, que a funo f satisfaz as condies suficientes para garantia de uma soluo nica para este problema de valor inicial.
219
Captulo 7
EDOs
2.1
Equaes lineares
As equaes diferenciais podero classificar-se em lineares e no-lineares. Uma equao ser linear se a funo f em (1) contiver y e as suas derivadas de forma linear. As equaes lineares gozam da seguinte propriedade importante: se as funes
y1 (t ), y 2 (t ), ..., y n (t ) Ci .
Seja a equao diferencial ordinria linear de segunda ordem y' ' (t )= y . fcil verificar que e t e e t so solues desta equao; por conseguinte, tambm soluo daquela equao a soma:
y (t ) = C1e t + C2 e t
Duas solues y1 e y 2 de uma equao diferencial linear de 2 ordem dizem-se linearmente independentes se o 'Wronskian' da soluo for no nulo, sendo este definido por:
W ( y1 , y 2 ) = y1 y' 2 y 2 y'1 = y1 y2 y'1 y' 2
Obviamente, este conceito de independncia linear extensvel s solues de equaes de ordem superior. Se
y1 (t ), y 2 (t ), ..., y n (t ) forem solues linearmente
designada por soluo geral. Entre as equaes lineares, so particularmente interessantes as equaes com coeficientes constantes, pois so frequentes e permitem um tratamento matemtico simples. Uma equao diferencial linear de ordem n com coeficientes constantes pode
220
Captulo 7
EDOs
(2)
em que ai so constantes reais. Se procurarmos solues de (2) na forma e t , por substituio directa naquela equao resulta a seguinte equao polinomial a que ter de satisfazer:
n + a n 1 n 1 + a n- 2 n- 2 + ... + a 0 = 0
sendo conhecida por equao caracterstica da equao diferencial linear de ordem n, com coeficientes constantes. Se esta equao caracterstica tiver n razes distintas i , ento a soluo geral da equao (2) escreve-se:
y (t ) = C1e t + C 2 e t + ... + C n e t
1 2 n
em que C i so constantes arbitrrias. Se a equao linear (2) for no-homognea, isto , com
y (n ) + a n 1 y (n 1) + a n- 2 y (n- 2 ) + ... + a 0 y (0 ) = g (t )
(3)
e se (t ) for uma soluo particular desta equao, ento a soluo geral da equao (3), assumindo que as razes da equao caracterstica so distintas, escreve-se:
y (t ) = (t ) + C1e t + C 2 e t + ... + C n e t
1 2 n
Se a equao caracterstica da equao (2) tiver razes mltiplas, recorre-se a tcnicas especiais para a obteno de solues linearmente independentes. Em particular, se 1 for t t uma raiz dupla, ento y1 = e e y 2 = te sero solues linearmente independentes da 2 2 2 equao dada. Seja a equao y'' + b y = 0 , cuja equao caracterstica = b ; as razes desta equao so obviamente complexas, com 1 = ib e 2 = -ib , e a correspondente soluo geral escreve-se y (t ) = C1 cos bt + C2 sen bt . No caso mais geral,
1 1
em que a equao caracterstica tem razes complexas da forma a bi , com a 0 e b 0 , o correspondente par de solues y1 (t ) = C1 e at cos bt , y2 (t ) = C2 e at sen bt . linearmente independentes escreve-se:
221
Captulo 7
EDOs
2.2
Equaes no-lineares
De um modo geral, podemos resolver analiticamente qualquer equao diferencial ordinria de 1 ordem que esteja, ou possa colocar-se, na forma:
d (t , y ) = 0 dt
(4)
para qualquer funo (t, y ) . Nesta conformidade, poder-se-o integrar ambos os membros da equao (4) para obter,
(t, y ) = constante
(5)
d [t + sin(t + y )] = 0 dt
A equao (4) claramente o caso mais geral de uma equao diferencial ordinria de 1 ordem que podemos resolver. Todavia, importa ter presente que nem todas as equaes diferenciais podem ser colocadas naquela forma. Com efeito, e atendendo a que,
d y (t , y (t )) = + , t y t dt
d dy = 0 pode ser escrita na forma (t , y ) = 0 dt dt e N (t , y ) = . Ora, prova-se que se e s se existir a funo (t , y ) tal que M (t , y ) = y t
estas condies apenas so satisfeitas para as funes M e N contnuas e com derivadas M N contnuas, relativamente s variveis t e y, se e s se = . y t Por conseguinte, apenas um reduzido nmero de equaes diferenciais poder ser resolvido por via analtica, recorrendo-se em geral obteno numrica de uma soluo particular, y (t 0 ) = y 0 .
222
Captulo 7
EDOs
(6)
em que y j so termos de uma sucesso de valores. usual escrever esta equao na seguinte forma geral:
k y i + k-1 k 1 y i + ... + 1 y i + 0 y i = b
Tal como para as equaes diferenciais lineares homogneas de ordem n, com i coeficientes constantes, procuramos aqui solues da forma y i = , para todo o i.
i Substituindo na equao homognea resultante de (6) obtm-se, aps diviso por , a
Assumindo que os k zeros do polinmio caracterstico 1 , 2 , ..., k so distintos, ento todos eles so solues da equao (6) e por linearidade segue-se que:
i Y H = c j ij = c1 1i + c2 2 + ... + ck ki ; para todo o i
sendo Y a soluo geral da correspondente equao homognea da equao (6). A H P soluo geral da equao no-homognea (6) Y = Y + Y . Se o segundo membro da equao (6) for uma constante, obtm-se uma soluo P particular Y atravs de: b Y P = Constante = aj desde que a j 0 . A ttulo de exemplo, seja a determinao da soluo discreta, yi , da equao s diferenas progressivas:
2 y i 2 y i + y i = 1
223
Captulo 7
EDOs
Ora,
y i = y i +1 y i ; 2 y i = ( y i + 2 y i +1 ) ( y i +1 y i ) = y i + 2 2 y i +1 + y i ,
donde,
2 y i 2 y i + y i = 1 <=> y i + 2 4 y i +1 + 4 y i = 1 . Sendo a soluo geral daquela equao 1 P G P = 1 , e a soluo dada por Y = Y + Y , uma soluo particular escreve-se yi = 1 4 + 4 H i i geral da equao homognea y i + 2 4 y i +1 + 4 y i = 0 yi = C1 2 + C 2 i 2 . A soluo
i=0: y 0 = C1 2 0 + C 2 0 2 0 + 1 = 2 i=1: y1 = C1 21 + C 2 1 21 + 1 = 3
i vindo C1 = 1; C 2 = 0 . Consequentemente, a soluo da equao dada : y i = 2 + 1 .
Numericamente apenas possvel obter uma soluo ou integral particular de um dado problema, calculando um conjunto de valores aproximados y1 , y 2 ,..., y N de y(t ) num nmero finito de pontos t1 , t 2 ,..., t N . Sabendo que y(t ) satisfaz uma certa equao diferencial e que toma o valor y0 em t = t 0 , qualquer esquema numrico utiliza esta informao para calcular o valor aproximado y1 de y em t = t1 = t 0 + h . Usando em seguida este valor aproximado y1 , calcula-se o valor aproximado y2 de y em t = t2 = t1 + h , e assim sucessivamente.
224
Captulo 7
EDOs
podemos calcular o valor de y em t = t k + h atravs de (7). Ora, a 1 derivada de y , quando avaliada em t = t k igual a f (t k , y (t k )) . Por d 2 y (t k ) dada por, conseguinte, a segunda derivada dt 2
d 2 y (t k ) = dt 2 f f t + f y (t k , y (t k ))
(8)
O mtodo mais simples para avaliar y (t k +1 ) obtido por truncatura da srie de Taylor (8) aps o segundo termo. Deste modo resulta o seguinte esquema numrico:
y1 = y 0 + hf (t 0 , y 0 ) , y 2 = y1 + hf (t1 , y1 ) , y 3 = ...
e, em geral,
y k +1 = y k + hf (t k , y k ) , y 0 = y (t 0 )
(9)
O esquema (9) conhecido por mtodo de Euler, com a correspondente representao grfica mostrada na Fig. 1, sendo o valor y (t k +1 ) aqui considerado a soluo exacta da equao diferencial no instante t k +1 . y
y(tk+1) yk+1 yk h tk tk+1
Figura 1 - Mtodo de Euler. Exemplo 7.2: Seja a soluo do problema de valor inicial,
225
Captulo 7
EDOs
dy 2 = 1 + (y t) , dt
y (0 ) =
1 . 2
Usar o mtodo de Euler para calcular valores aproximados y1 , y 2 ,..., y N de y(t ) nos 1 2 pontos t1 = , t 2 = ,..., t N = 1 N N O esquema de Euler para este problema escreve-se,
y k +1 = y k + h 1 + ( y k t k ) , com k = 0 ,1 ,..., N 1 ; h =
2
1 N
y (0 ) =
1 2
Comparar os resultados numricos com a soluo analtica deste problema: 1 . y (t ) = t + 2t Pretende-se agora estimar o erro de discretizao, ek , definido por:
e k = y (t k ) y k
(10)
que resulta para a aproximao y k +1 obtida pelo mtodo de Euler [esquema (9)]. O valor de y (t k +1 ) pode obter-se por expanso da srie de Taylor com resto, vindo:
y (t k +1 ) = y (t k ) + hy' (t k ) + h2 y'' ( k ) ; t k k t k +1 2!
(11)
Deste modo, subtraindo o esquema (9) da equao (11), tendo em conta (10), resulta:
ek +1 = e k + h[ f (t k , y (t k )) f (t k , y k )] + h2 y'' ( k ) 2!
(12)
226
Captulo 7
EDOs
f L y
f f + f D t y
(13)
cujo resultado representa um limite superior para o valor do erro ek +1 , isto , k +1 e k +1 . Pela teoria das equaes s diferenas, apresentada na seco 2.3, a soluo k da equao s diferenas no-homognea (13) dada por:
k = C (1 + hL )
k
hD 2L
a qual ter de ser necessariamente satisfeita para qualquer valor de k, em particular para k = 0, vindo para a constante C o valor +
hD , com 0 = 0 , ou seja, 2L hD (1 + hL )k hD 2L 2L
k =
(14)
227
Captulo 7
EDOs
hD khL hD (t e 1 = e 2L 2L
t 0 )L
Um mtodo bvio para a obteno de melhores resultados que os dados pelo mtodo de Euler consiste na truncatura da srie de Taylor aps o terceiro termo; seja,
y k+1 = y k + hf (t k ,y k ) + h2 2! f f t + f y (t k ,y k ) , com k = 0 ,1, ... e y 0 = y (t 0 ) (15)
O esquema traduzido pela equao (15) designado por mtodo de Euler melhorado
com o terceiro termo da srie de Taylor.
Usando o mtodo de Euler melhorado com o terceiro termo da srie de Taylor [esquema (15)], calcular valores aproximados y1 , y 2 ,..., y N de y(t ) nos pontos 1 2 t1 = , t 2 = ,..., t N = 1 . N N O esquema (15) para este problema escreve-se,
y k +1 = y k + h 1 + ( y k t k ) + h 2 ( y k t k ) , com k = 0 ,1 ,..., N 1 ;
2 3
h=
1 1 e y (0 ) = . N 2
Comparar com os resultados numricos do Exemplo 7.2. A considerao do terceiro termo da srie de Taylor permite melhorar significativamente os resultados do mtodo de Euler. Contudo, tem srias desvantagens do ponto de vista numrico pelo facto de requerer o clculo de derivadas parciais da funo f (t , y ) . Uma boa alternativa ao mtodo traduzido pela equao (15) consiste em integrar
228
Captulo 7
EDOs
y (t k +1 ) = y (t k ) + t
f (t , y (t )) dt
Deste modo, a procura do valor aproximado de y (t k +1 ) reduzida ao clculo do valor aproximado da rea contida abaixo da curva f (t k , y (t k )) entre t k e t k + h . Uma aproximao "grosseira" desta rea hf (t k , y (t k )) (Fig. 2 a) - Regio R), a qual conduz ao esquema numrico de Euler y k +1 = y k + hf (t k , y k ) . Uma melhor aproximao desta rea h dada por [ f (t k , y (t k )) + f (t k +1 , y (t k +1 ))] (Fig. 2 b) - Regio T), a qual conduz ao seguinte 2 esquema numrico implcito,
y k +1 = y k + h [ f (t k , y k ) + f (t k +1 , y k +1 )] 2
(16)
f(t,y(t)) R tk tk + h t
f(t,y(t)) T tk tk + h t
a)
Mtodo de Euler.
b)
k k
Esquema implcito.
(17)
1 . 2
229
Captulo 7
EDOs
Usando o mtodo de previso-correco traduzido pelo esquema (17), calcular 1 2 valores aproximados y1 , y 2 ,..., y N de y(t ) nos pontos t1 = , t 2 = ,..., t N = 1 . N N O esquema (17) para este problema escreve-se,
y k +1 = y k + h 2 2 1 + ( y k t k ) + 1 + y k + h 1 + ( y k t k ) t k +1 2
] },
2
com k = 0 ,1 ,..., N 1 ; h =
1 1 e y (0 ) = . N 2
(18)
em que a funo incremento representa um valor apropriado da funo f(t,y) no intervalo t k t t k +1 . O mtodo de Runge-Kutta mais simples considera como sendo a mdia ponderada de duas derivadas Lk,1 e Lk,2 calculadas no intervalo t k t t k +1 , isto ,
= aL k,1 + bL k,2
o que conduz a:
230
Captulo 7
EDOs
(19)
com Lk ,1 = f (t k , y k ) e Lk,2 = f (t k + h,y k + hL k,1 ) , sendo a, b, e constantes a serem determinadas posteriormente, garantindo que o algoritmo (18) de preciso no inferior ao mtodo da srie de Taylor com manuteno do termo de ordem h 2 . Antes de prosseguirmos, importa agora analisar alguns resultados importantes, nomeadamente no que se refere obteno de derivadas de ordem superior. Se y' = f (t, y ) tiver n derivadas parciais contnuas, na regio de anlise, ento y (n ) = P n 1 f , sendo P um operador definido por: P = + f . t y
f f f = + f = f t + ff y e para a derivada de Nesta conformidade, y' ' = + f t y t y
(f
tt
+ 2 ff ty + f 2 f yy ) + f y ( f t + ff y )
(20)
h3 f tt + 2 ff ty + f t f y + f 2 f yy + ff y2 3!
+ h4
( )
Usando, por outro lado, a expanso em srie de Taylor para funes de duas variveis, obtm-se:
Lk,2 = f (t k + h, y k + hLk,1 )
= f (t k , y k ) + hf t (t k , y k ) + hf (t k , y k ) f y (t k , y k ) +
2 h 2 f 2 (t k , y k ) 2h2 f tt + h 2 f (t k , y k ) f ty + f yy + (h 3 ) 2 2 Substituindo esta expresso para Lk,2 em (19), e atendendo a que Lk,1 = f (t k ,y k ) ,
231
Captulo 7
EDOs
( )
Comparando esta ltima expresso para y k +1 com o desenvolvimento (20), e obrigando a que estas coincidam at ordem h 2 , tem-se:
a + b = 1 ; b = b = 0.5
Temos 3 equaes a quatro incgnitas; por conseguinte, o sistema indeterminado. H, portanto, vrias solues possveis. usual fixar b = 0.5, obtendo-se para as restantes incgnitas: a = 0.5 e = = 1 . Deste modo, obtm-se o seguinte algoritmo, conhecido por
mtodo de Runge-Kutta de segunda ordem:
y k +1 = y k + h [ f (t k , y k )+ f (t k+1 , y k+1 )] , com y k+1 = y k + hf (t k , y k ) ; k = 0, 1, ... 2 h (Lk,1 + Lk,2 ) , com Lk,1 = f (t k , y k ) ; 2 Lk,2 = f (t k + h, y k + hL k,1 )
ou,
y k +1 = y k +
k = 0, 1, ...
(21)
Geometricamente, este algoritmo tem o significado representado na Fig. 3. O mtodo de Euler fornece o incremento Q1Q0 = hf (t k ,y k ) ; obtm-se em seguida um incremento Q 2 Q0 = hf [t k +h, y k + hf (t k ,y k )] , baseado no declive, em t k +1 . A mdia destes dois valores conduz ao incremento Q3Q0 , que corresponde ao resultado dado por (21). Q1 Q Q2 Q0
yk tk tk+1
Figura 3 - Mtodo de Runge-Kutta de 2 ordem. Pode mostrar-se que o erro local do algoritmo (21) da forma:
232
Captulo 7
EDOs
y (t k +1 ) y k +1 =
h3 ( f tt + 2 ff ty 2 f t f y + f 2 f yy 2 ff y2 ) + (h 4 ) 12
A avaliao do limite superior do erro cometido nos mtodos de Runge-Kutta , com efeito, uma das grandes dificuldades de aplicao destes mtodos. Este erro , todavia, da ordem de h 3 , enquanto o erro no mtodo de Euler , como vimos, da ordem de h 2 . Os mtodos de Runge-Kutta garantem, portanto, maior preciso para incrementos da mesma ordem de grandeza. O desenvolvimento de algoritmos de Runge-Kutta de ordem superior em tudo anlogo ao efectuado para o mtodo de 2 ordem; apenas so bastante superiores as manipulaes algbricas no desenvolvimento daqueles algoritmos. Nesta conformidade, apresentamos, sem demonstrao, o mtodo de Runge-Kutta frequentemente mais utilizado para a resoluo de equaes diferenciais ordinrias de 1 ordem: o mtodo de Runge-Kutta de quarta ordem, sendo definido por,
y k +1 = y k +
y 0 = y (t 0 ) e,
(22)
Lk,1 = f (t k ,y k )
1 . 2
Usando os mtodos de Runge-Kutta de segunda e quarta ordens [esquemas (21) e 1 (22)], calcular valores aproximados para y1 , y 2 ,..., y N de y(t ) nos pontos t1 = , N 2 t2 = ,..., t N = 1 . Comparar com os resultados numricos dos Exemplos 7.3 e 7.4. N O mtodo implcito que se baseia na regra dos trapzios [esquema (16)] e o mtodo de Runge-Kutta de quarta ordem [esquema (22)] so, em geral, mtodos suficientemente
233
Captulo 7
EDOs
precisos que podem ser utilizados para calcular a soluo aproximada de uma equao diferencial ordinria de ordem N, ou, o que equivalente, para resolver sistemas de N equaes diferenciais ordinrias de 1 ordem. Assim, seja uma equao diferencial ordinria de 2 ordem
d2y dy = g t,y , fazendo 2 dt dt
dy f (t , y , z ) = z dy 0 dy (t 0 ) dt , com y 0 = y (t 0 ) e . = z0 = dt dt dz = g (t , y , z ) dt
O mtodo de Runge-Kutta de quarta ordem para calcular a soluo aproximada deste sistema de duas equaes diferenciais ordinrias de 1 ordem escreve-se:
K i,1 = hf (t i , y i , z i ) Li,1 = hg (t i , y i , z i ) K L h K i,2 = hf t i + , y i + i,1 , z i + i,1 2 2 2 K L h Li,2 = hg t i + , y i + i,1 , z i + i,1 2 2 2 K L h K i,3 = hf t i + , y i + i,2 , z i + i,2 2 2 2 K L h Li,3 = hg t i + , y i + i,2 , z i + i,2 2 2 2
A extenso para sistemas de N equaes diferenciais ordinrias de 1ordem, ou, o que equivalente, para equaes diferenciais ordinrias de ordem N bvia.
Exemplo 7.6: Usando o mtodo de Runge-Kutta de quarta ordem, obter a soluo da equao diferencial que traduz o movimento oscilatrio, em regime turbulento, de
234
Captulo 7
EDOs
em que z = z (t ) representa a altura atingida no instante t pela superfcie do lquido, contada a partir da posio de equilbrio, num dos ramos do tubo.
-1 -2 Sejam a = 0.05 m ; b = 0.02 m , e as seguintes condies iniciais, no dz instante t = t 0 = 0 s : z 0=z (0 ) = 0.0 m e y 0 = (0 ) = 1.0 ms -1 . dt
Estas duas equaes so agora resolvidas em simultneo, para as condies iniciais (t0 , z 0 , y0 ) dadas:
K i,1 = h( ay i y i bz i ) Li,1 = hy k K K L K i,2 = h -a y i + i,1 y i + i,1 b z i + i,1 2 2 2 K Li,2 = h y i + i,1 2 K K L K i,3 = h -a y i + i,2 y i + i,2 b z i + i,2 2 2 2 K Li,3 = h y i + i,2 2 K i,4 = h -a( y i + K i,3 ) y i + K i,3 b(z i + Li,3 )
Li,4 = h( y i + K i,3 )
y i +1 = y i + z i +1
235
Captulo 7
EDOs
Os mtodos de um passo requerem informao num nico ponto, seja (tk, yk), para obteno da soluo num ponto seguinte, (tk+1, yk+1). Os mtodos de multi-passo utilizam informao da soluo em mais que um ponto. Supondo que conhecemos aproximaes para os valores de y'(t, y) e de y num nmero de pontos igualmente espaados, sejam t0, t1, ..., tk, uma classe de mtodos com vrios passos baseia-se no princpio da integrao numrica. Integrando a equao diferencial y' = f (t, y ) entre t k e t k +1 , obtm-se:
y k +1 = y k + t
t k+1
k
f (t,y (t )) dt
(23)
um polinmio que interpole f (t, y(t )) em (m +1) pontos t k , t k 1 , t k- 2 , ..., t k m . Usemos a notao f (t seja:
p (t ) =
m
j
Para o clculo do integral da equao (23), podemos aproximar a funo f (t, y(t )) por
,y t
( )) = f j
j
( 1) j s j f k j
; s=
t tk h
em que pm (t ) um polinmio interpolador que passa pelos m +1 pontos (t i , f i ) . Substituindo este resultado em (23), e atendendo a que dt = h ds, obtm-se:
j s 1 m y k +1 = y k + h 0 ( 1) j f k j ds j =0 j 2 f k 2 3 f k 3 1 = y k + h 0 f k + sf k 1 + s (s + 1) + s (s + 1)(s + 2 ) + ... 2! 3! m f k m + s (s + 1)(s + 2) ... (s + m 1) ds m!
vindo,
s2 s y k +1 = y k + h sf k + f k 1 + s 2 + 2 3
2
3 f k 3 s2 1 2 f k 2 + s 2 + s + 1 3! 4 2 2!
1
4 f k 4 s 3 3s 2 11s + + ... + s + + 3 4! 2 3 5 0
(24)
ou seja,
y k +1 = y k + h 0 f k + 1 f k 1 + 2 2 f k 2 + ... + m m f k m
(25)
236
Captulo 7
EDOs
0 = 1 ; 1 =
Fazendo na equao (25) m = 0 resulta o mtodo de Euler. Considerando m = 3 obtm-se a seguinte frmula, conhecida por mtodo de Adams-Bashforth:
1 5 2 3 f k 1 + f k 2 + 3 f k 3 y k +1 = y k + h f k + 2 12 8
(26)
Em geral, na prtica, mais cmodo trabalhar com ordenadas fi , em vez de diferenas f i . Por definio resultam:
f k 1
= f k f k 1
(27)
(4 )
( ) 4s
ds
E AB = h 5 f
(4 )
( )01 4s
h 5 y v ( )
ds
vindo,
E AB =
251 720
Com base na integrao numrica podemos agora deduzir vrias formulaes do tipo
237
Captulo 7
EDOs
multi-passo. Assim, integrando f(t, y(t)) em (23) entre t k-p e t k +1 com p 0 , em vez da integrao efectuada entre t k e t k +1 , considerando a frmula de diferenas regressivas de Newton e os mesmos m +1 pontos t k , t k 1 , t k -2 , ..., t k m , obtemos:
yk +1 = y k-p + h -p
1 m j =0
( 1) j s j f k j
j
ds
o que obviamente corresponde integrao de (24) entre [-p, 1], em vez da integrao efectuada entre [0, 1]. Naturalmente, com p = 0 resulta o mtodo de Adams-Bashforth; com m = 1, p =1 e m = 3, p = 3, resultam, respectivamente:
y k +1 = y k-1 + 2 hf k , com E = h ''' y ( ) 3
14 45
3
e
y k +1 = y k- 3 + 4h (2 f k f k 1 + 2 f k 2 ) , com E = 3 h 5 y v ( )
Como se pode verificar efectuando a integrao de (24) entre [-p, 1], para valores mpares de p o coeficiente da diferena regressiva de ordem p nulo. Ora, considerando apenas frmulas de p mpar, como em geral acontece, com apenas p +1 termos (m = p), por conseguinte com o termo de ordem p +1 nulo, resulta a seguinte expresso geral para o clculo dos erros, E:
E = h m + 2 p
1
238
Captulo 7
EDOs
y (0 ) k +1 = y k + h f (t k , y k )
Calcula-se ento f (t k +1 , y (1) k +1 ) e usa-se de novo o esquema (28) para determinar uma aproximao seguinte. Em geral, para cada k, o procedimento iterativo definido por:
y ( j ) k+1 = y k + h f (t k , y k ) + f (t k +1 , y ( j-1) k +1 ) ; j = 1, 2 , ... 2
y ( j ) k +1 y ( j 1) k +1 y ( j ) k +1
< , para um
Uma frmula de tipo corrector de ordem mais elevada pode ser obtida de modo semelhante ao utilizado para a deduo da frmula de Adams-Bashforth. Com efeito, expressando a funo polinomial p m (t k + sh ) em termos de uma diferena regressiva baseada em t k +1 em vez de t k obtm-se:
j 1 s 1 m j y k +1 = y k-p + h -p ( 1) f k j+1 ds j =0 j 2 f k 1 3 f k 2 1 = y k-p + h -p f k+1 + (s 1)f k + (s 1)s + (s 1)s (s + 1) + ... 2! 3!
+ (s 1)s(s + 1) ... (s + m 2 )
m f k m+1 ds m!
2 s 2 1 3 f k 2 s 1 f k 1 s + s2 = y k-p + h sf k+1 + s 1f k + s 2 4 2 3! 3 2 2! 2
4 f k 3 s5 s4 s3 + ... + + s2 4! 5 2 3 p
Com p = 0 resulta,
1 1 1 3 19 4 f k 2 f k 3 + ... y k +1 = y k + h f k+1 f k 2 f k 1 2 12 24 720
239
Captulo 7
EDOs
(29)
com um erro: E = -
Seja a equao diferencia l y' = f (t, y) com h fixo, t k = t 0 + hk e os quatro pontos ( y 0 , f 0 ), ( y1 , f 1 ), ( y 2 , f 2 ) e ( y 3 , f 3 ) dados, para cada k = 3, 4,.... Um mtodo numrico de previso-correco com preciso h 4 para a resoluo daquela equao consiste em:
ii) Calcular f
(0 )
k +1
= f t k +1 , y ( 0 ) k +1
)
+ 19 f k 5 f k 1 + f k 2 ; j = 1, 2 ,...
( j-1)
k+1
iv)
sendo uma quantidade prefixada. Os erros das frmulas (27) e (29) so dados, respectivamente, por:
240
Captulo 7
EDOs
y (t k+1 ) y (0 ) k +1 = y (t k+1 ) y
(1)
k +1
(30)
Nesta
conformidade,
subtraindo
as
equaes
(30),
considerando
y v (t )
aproximadamente constante no intervalo de anlise, obtm-se a seguinte aproximao para h5 y v : 720 (1) h5 y v = (y k +1 y (0 ) k +1 ) 270 Substituindo este resultado na segunda das equaes (30), resulta a seguinte aproximao para o erro do esquema numrico de previso-correco baseado nas frmulas de Adams-Bashforth e Adams-Moulton:
y (t k+1 ) y (1) k +1 = 19 (1) y k +1 y (0 ) k +1 270 1 (1) y k +1 y (0 ) k +1 = Dn +1 14
Exemplo 7.7: O crescimento de uma populao isolada pode traduzir-se pelo seguinte modelo:
dp = ap bp 2 dt
ap 0 . bp 0 + (a bp 0 )e a (t t )
0
utilizando o esquema numrico de previso-correco traduzido pelas frmulas (27) e (29). A elevada preciso dos esquemas numricos de previso-correco com vrios passos tornam-nos especialmente recomendveis para a obteno da soluo aproximada de uma equao diferencial ordinria de ordem N, ou, o que equivalente, para a resoluo de sistemas de N equaes diferenciais ordinrias de 1 ordem.
241
Captulo 7
EDOs
Nesta conformidade, seja uma equao diferencial ordinria de 2 ordem dy d y dy = g t , y . Fazendo = z resulta o seguinte sistema de duas equaes diferenciais 2 dt dt dt
2
ordinrias de 1 ordem:
dy = f (t , y , z ) = z dy (t 0 ) dy dt , com y 0 = y (t 0 ) e 0 = z 0 = dt dt dz = g (t , y , z ) dt
O mtodo de previso-correco com base nas frmulas de Adams-Bashforth e Adams-Moulton para o clculo da soluo aproximada deste sistema de duas equaes diferenciais ordinrias de 1 ordem escreve-se:
(0 y k+)1 = y k +
(0 z k+)1 = z k +
(1 y k+)1 = y k +
[ (
(1 z k+)1 = z k +
[ (
Tal como para a resoluo de equaes diferenciais de 1 ordem, utilizando este mesmo mtodo de previso-coreco, o processo iterativo continuar, em cada j, at que se verifiquem simultaneamente as condies:
y ( j ) k +1 y ( j 1) k +1 y ( j ) k +1 z ( j ) k +1 z ( j 1) k +1 z ( j ) k +1
< 1 ;
< 2
242
Captulo 7
EDOs
fundamentalmente em:
i) tornar possvel estimar e depois corrigir os erros de truncatura locais atravs da aplicao dos termos relativos ao erro; e, ii) possibilitar a utilizao de incrementos relativamente mais elevados que os mtodos de passo nico com preciso semelhante.
Comparando as frmulas de previso [de que exemplo a expresso (27)] com as frmulas de correco [do tipo da equao (29)] chega-se concluso que as segundas so em geral mais precisas que as primeiras. Este resultado no surpreendente, atendendo a que as frmulas de previso envolvem extrapolao do polinmio pm (t ) no intervalo [tk, tk+1] ao passo que as frmulas de correco envolvem interpolao. bvio que o incremento deve ser suficientemente pequeno para garantir o critrio de convergncia para a previso, e de preferncia de tal modo pequeno que se consiga obter a convergncia em uma ou duas iteraes e que satisfaa simultaneamente quaisquer restries relativas ao tamanho do erro local de truncatura. Importa, todavia, que o incremento seja suficientemente grande por forma a que o nmero de determinaes das derivadas seja minimizado, em especial se a funo derivada for complicada e envolver bastante tempo de clculo. Com efeito, esta vantagem dos mtodos de previso-correco poder ser perdida com o aumento do nmero de operaes a efectuar. Verifica-se, alm disso, que mtodos de ordem superior, portanto com erro local de discretizao inferior e, por conseguinte, dos quais se esperaria partida melhores resultados para igual incremento, isso nem sempre acontece. A ttulo de exemplo, seja a soluo da equao diferencial y' = 2 y + 1 para a condio inicial y(0 ) = 1 , utilizando o mtodo de Euler y k +1 = y k + hf (t k , y k ) , cujo erro local de
h2 y'' ( k ) , 2 3 h ''' y ( k ) . + 2 hf (t k ,y k ), com E = 3
discretizao
E=
mtodo
com
vrios
passos
y k +1 = y k-1
1 2
1 . 2
Comparam-se na tabela seguinte os valores de Y1 (k ) e Y2 (k ) obtidos por ambos os mtodos, e os correspondentes erros E1 (k ) e E 2 (k ) , considerando h = 0.025 e diferentes valores para tk . Para dar incio ao esquema numrico com vrios passos necessrio conhecer o valor de y1, tendo, para este efeito, sido utilizado o valor exacto (soluo analtica).
243
Captulo 7
EDOs
************************************************ * t * Y1(t) * Y2(t) * E1(t) * E2(t) * ************************************************ * 0.100 * 0.9073 * 0.9094 * -0.00211 * 0.00004 * * 0.200 * 0.8317 * 0.8352 * -0.00345 * 0.00006 * * 0.300 * 0.7702 * 0.7745 * -0.00423 * 0.00007 * * 0.400 * 0.7201 * 0.7247 * -0.00460 * 0.00008 * * 0.500 * 0.6792 * 0.6840 * -0.00470 * 0.00009 * * 0.750 * 0.6073 * 0.6117 * -0.00425 * 0.00009 * * 1.000 * 0.5643 * 0.5678 * -0.00341 * 0.00009 * * 1.250 * 0.5385 * 0.5411 * -0.00257 * 0.00010 * * 1.500 * 0.5230 * 0.5250 * -0.00186 * 0.00013 * * 1.750 * 0.5138 * 0.5153 * -0.00131 * 0.00019 * * 2.000 * 0.5083 * 0.5094 * -0.00090 * 0.00029 * * 2.250 * 0.5049 * 0.5060 * -0.00061 * 0.00046 * * 2.375 * 0.5038 * 0.5038 * -0.00050 * -0.00057 * * 2.500 * 0.5030 * 0.5041 * -0.00041 * 0.00074 * * 2.625 * 0.5023 * 0.5017 * -0.00033 * -0.00094 * * 2.750 * 0.5018 * 0.5033 * -0.00027 * 0.00122 * * 2.875 * 0.5014 * 0.5000 * -0.00022 * -0.00156 * * 3.000 * 0.5011 * 0.5032 * -0.00018 * 0.00201 * * 3.125 * 0.5008 * 0.4984 * -0.00014 * -0.00257 * * 3.250 * 0.5006 * 0.5041 * -0.00012 * 0.00331 * * 3.375 * 0.5005 * 0.4963 * -0.00009 * -0.00424 * * 3.500 * 0.5004 * 0.5059 * -0.00008 * 0.00545 * * 3.625 * 0.5003 * 0.4934 * -0.00006 * -0.00699 * * 3.750 * 0.5002 * 0.5093 * -0.00005 * 0.00898 * * 3.875 * 0.5002 * 0.4887 * -0.00004 * -0.01152 * * 4.000 * 0.5001 * 0.5150 * -0.00003 * 0.01480 * ************************************************ Verifica-se que para os primeiros valores de tk , o erro E2 consideravelmente inferior ao erro E1, mas aquele cresce muito rapidamente a partir de t > 2.25. Verifica-se, por outro lado, que para valores de t 4 .0 , a soluo dada por Euler aproxima-se do valor assinttico y = 0 .5 enquanto os valores de E2 oscilam em sinal.
Justificao
A soluo que se obtm discretizando a equao dada no ponto central :
y k +1 = y k 1 + 2 h( 2 y k + 1)
donde,
y k +1 + 4 hy k y k 1 = 2 h
244
Captulo 7
EDOs
Trata-se, por conseguinte, de uma equao s diferenas no-homognea, sendo a H P H correspondente soluo dada por: Yk = Yk + Yk . A soluo da equao homognea Yk
Yk
H
donde,
2 + 4h 1 = 0
1 + 4h 2 em srie de Taylor, e
( )]
donde,
Yk
H
= C1 1 2h + (h 2 ) + C 2 ( 1)(1 + 2h ) + (h 2 )
k
( )]
1 k + C 2 ( 1) 1 + 2 h + h 2 2
1
( )]
(1 2h )
vindo,
2 = 1 + 1 h
tk h
1h 2 2t = 1 + 1 h =e
tk
lim y k = C 1 e 2 t +
k
h0
1 k + C 2 ( 1) e 2 t 2
Ora, enquanto C1 e 2 t +
k
1 2
uma componente estranha a essa soluo, a qual resulta da aplicao de um mtodo numrico de ordem superior da equao original. ento bvio que medida que tk
245
Captulo 7
EDOs
cresce, a componente estranha soluo vai aumentando exponencialmente. Se a aritmtica fosse exacta, ter-se-iam necessariamente C 1= no exactido da aritmtica conduz a: C 1 =
1 e C 2 = 0 ; todavia, a 2
1 e C2 = , com 0 . 2
Um mtodo numrico diz-se instvel se os erros introduzidos nos clculos crescerem exponencialmente medida que a soluo avana. Os mtodos de passo simples, como os esquemas de Runge-Kutta, no exibem instabilidade numrica para valores de h suficientemente pequenos. J os mtodos com vrios passos podem, em alguns casos, tornar-se instveis para todos os valore de h, ou, noutros casos ainda, apenas para uma determinada gama de valores. Para verificao da estabilidade de um mtodo numrico podemos utilizar o seguinte procedimento: Se o mtodo de multi-passo conduzir a uma equao s diferenas de ordem k, procuram-se as razes da equao caracterstica correspondente equao homognea. Sejam k ( k
= 1 , 2, ..., m
= C11 + C 2 2 + ... + C k k
Uma das solues desta equao, seja 1 n , tender para a soluo exacta da equao diferencial quando
h 0;
soluo. Nestas condies, um esquema com vrios passos definido como sendo um
k < 1 , k = 2 , 3,K , m
Nesta conformidade, quaisquer erros introduzidos nos clculos numricos decrescero medida que k crescer; pelo contrrio, se algum dos k estranhos for superior unidade, em mdulo, os erros crescero exponencialmente, dizendo-se, neste caso, que se trata de um
246
Captulo 7
EDOs
Define-se ainda um mtodo numrico relativamente estvel se, para todos os k estranhos soluo, se verificar a condio:
lim k < 1 , k = 2 , 3 ,K , m
h0
247
Captulo 7
EDOs
Determinar no intervalo 2 .0 t 2 .5 uma tabela de valores, com quatro casas decimais correctas, da soluo particular que toma o valor y = 2.0 para t = 2.0 , utilizando:
a) O mtodo de Euler, com h = 0 .05 ; b) O mtodo de Euler melhorado com o terceiro termo da srie e Taylor, considerando h = 0 .05 ; c) O mtodo explcito de previso por Euler e correco por trapzios [esquema (17)], com h = 0 .05 e h = 0 .10 . 3. Seja a equao diferencial dy = y cos x , com y(0) = 1.0 .
dx
Determinar a soluo aproximada deste problema de valor inicial no intervalo 0 .0 x 1 .0 , utilizando: a) O esquema numrico implcito traduzido pela equao (16), com h = 0 .05 ; b) O mtodo de Runge-Kutta de quarta ordem, com h = 0 .10 ; c) O mtodo de previso-correco de Adams-Moulton [frmulas (27) e (29)], com h = 0 .10 e h = 0 .20 . Comparar os resultados numricos com a soluo exacta deste problema, y = e sinx
4. A evoluo temporal da velocidade de escoamento numa conduta com um reservatrio de nvel constante a montante e uma vlvula a jusante, aps um fechamento linear desta, descrita pela seguinte equao diferencial ordinria de 1 ordem:
K0 1 2 dV g V = Hr t 2L dt L 1 Tc
248
Captulo 7
EDOs
em que H r a cota do nvel de gua no reservatrio, L o comprimento da conduta, K 0 o coeficiente de perda de carga inicial da vlvula e Tc o tempo de fechamento da mesma. Supondo que inicialmente (regime permanente) a velocidade na conduta era de 2.0 m/s e que: L = 1000 m; H r = 80 m; K 0 = 392 ; Tc = 10 s e g = 9.8 m2/s, calcular a velocidade na conduta 2 segundos aps o fechamento da vlvula ( t = 1 . 0 seg ), utilizando: a) O mtodo de Euler melhorado com o terceiro termo da srie de Taylor; b) O esquema explcito de previso por Euler e correco por trapzios. Um veculo que rodava a uma velocidade v = 120 kmh -1 foi obrigado a travar. Admitese que a retardao do movimento igual ao triplo da raz quadrada da velocidade a que o veculo rodava, ou seja,
dv =3 v dt
5.
Considerando t = 0. 5 seg , calcular um valor aproximado para o tempo necessrio, desde o incio da travagem at completa imobilizao do veculo, utilizando o mtodo de Euler melhorado com o terceiro termo da srie de Taylor.
6. Seja o sistema de equaes que rege o movimento varivel num sistema "albufeiragaleria sob presso-chamin de equilbrio":
L dU + z + H = 0 g dt dz Ach Ag U + Q c = 0 dt
distintas:
H = 0 m
H = 5 m
Com t = 1 . 0 seg , compare, em ambas as situaes, a soluo daquele movimento no intervalo 0 t 900 seg , utilizando o mtodo de Runge-Kutta de 4 ordem e o mtodo de previso-correco com base nas frmulas de Adams-Bashforth e Adams-Moulton. NOTA Importa analisar os tempos de clculo vs preciso dos resultados.
249
Captulo 7
EDOs
7. Um mssil tem uma massa inicial m0 = 200 Kg. disparado no instante t = 0, sendo a partir da acelerado por uma fora constante F = 2000 N. Como essa fora gerada por jacto de gases a partir do mssil, a sua massa decresce taxa (k) de 1.0 Kg/s. Nestas condies a acelerao ser dada por:
d V F - Fr = d t m0 - k t
em que Fr representa a fora correspondente resistncia do ar a que o mssil est sujeito, e que se supe igual a 2V. Calcule a velocidade do mssil 20 segundos aps ter sido disparado, considerando t = 10 s, utilizando os seguintes esquemas de integrao: a) mtodo de Euler; b) mtodo de Euler melhorado com o terceiro termo da srie de Taylor; c) mtodo explcito de previso por Euler e correco por trapzios; d) mtodo de Runge-Kutta de ordem 4. Compare os resultados obtidos nas diferentes alneas com a soluo analtica do
2 problema: V (t ) = 10 t t , e efectue um comentrio aos mesmos.
40
8. A equao diferencial que rege o movimento de oscilao, do tipo pendular, numa chamin de equilibrio de seco constante de um aproveitamento hidroelctrico (ver figura) , para o caso de uma paragem instantnea das turbinas,
d 2z dz dz g A + R + z=0 2 L Ach dt dt dt
z
turbina
Considere R = 0, L/g = 100 s2, A = 1.0 m2 e Ach = 30 m2 e as condies iniciais: V0 = 3.0 m/s; z0 = 0 m. Com t =10 s, utilizando os mtodos de Euler e Runge-Kutta de ordem 4, compare ambas as solues do movimento no intervalo 0 t 100 s
250
CAPTULO 8
____________________________________________________________________________________________
1. Introduo
As equaes s derivadas parciais (EDP) so equaes diferenciais cujas variveis dependentes ( h, u, v, w, p , etc.) so funes de duas ou mais variveis independentes; estas so variveis de espao ( x, y, z ), s quais se juntar o tempo ( t ) sempre que a equao traduza um fenmeno de evoluo. Estas equaes resultam da aplicao dos princpios de conservao da massa, da quantidade de movimento e da energia, sempre com condies iniciais e de fronteira apropriadas. Uma EDP pode ser classificada de acordo com vrios critrios. A classificao destas equaes um conceito importante, pois uma teoria e os correspondentes mtodos de resoluo so especficos de determinado tipo de equao. Em geral, na prtica, as equaes raramente so de ordem elevada, sendo as mais correntes de segunda ordem; tambm sobre estas equaes que se apoia uma classificao geral das equaes s derivadas parciais. Apresentam-se em seguida quatro tipos de classificaes. A - Ordem da EDP a ordem da mais alta derivada parcial na equao.
Exemplos 8.1:
u u +u =0 t x
u 2u = 2 t x u 3u = 2 t x t
251
Captulo 8
EDPs
Exemplos 8.2:
u h u +u +h =0 t x x
u u u h +u +v +g =0 t x y x
C - Linearidade Uma EDP diz-se linear se a varivel dependente e todas as suas derivadas aparecerem de forma linear; isto , se no aparecerem termos quadrticos da varivel ou de qualquer das suas derivadas, produtos de derivadas da varivel, ou ainda produtos da varivel por qualquer das suas derivadas.
Exemplos 8.3:
u 2u = (t ) 2 t x
2u 2u + =0 x 2 y 2 2u 2u + 2 + ku 2 = 0 2 x y
u u u h +u +v +g =0 t x y x
(1)
com
A, B ,C , D , E , F
252
Captulo 8
EDPs
Qualquer EDP linear de segunda ordem a duas variveis [como a equao (1)] de um dos seguintes tipos: a) b) c)
se se se
B 2 4 AC = 0 B 2 4 AC > 0 B 2 4 AC < 0
Exemplos 8.4:
u 2u = (t ) 2 t x
Parablica Hiperblica
2u 2u = x 2 y 2 2u 2u + =0 x 2 y 2
Elptica
253
Captulo 8
EDPs
u (x + x , t + t ) = u (x , t ) + x + t u (x , t ) x t 1 + x + t u(x , t ) + L 2! x t + 1 x + t (n + 1)! x t
n 1 2
u ( x , t ) + Rn
Consideremos o ponto do espao (i x , n t ) , tambm designado por n (i, n) , da malha de clculo representada na Fig. 1.
(i , n + 1)
t
(i 1, n)
(i , n)
x
(i + 1, n)
(i , n 1)
Figura 1 - Malha de diferenas finitas.
Expandindo u in1 e u in+1 em srie de Taylor em torno do valor u in obtm-se:
u u
n i 1
n i +1
u ( x ) u x + x 2! 2 u ( x ) u in + x + x 2!
2 n i
2 u ( x ) 3! x 2 3 2 u ( x ) + 3! x 2
3
3u +L x 3 3u +L x 3
(2)
Considerando agora as equaes (2), somando e subtraindo uma da outra obtm-se as seguintes frmulas de diferenas finitas para as derivadas de primeira e segunda ordem em (i , n) , segundo a direco ix :
u u in+1 u in = + O (x ) x x u u in u in1 = + O (x ) x x u u in+1 u in1 2 = + O (x ) x 2 x
(Diferenas centradas)
254
Captulo 8
EDPs
2 u u in+1 2u in + u in1 2 = + O (x ) 2 2 x (x )
(6)
u 2 u e 2 , expandindo u in1 e u in+1 em srie t t
O mtodo das diferenas finitas consiste em substituir as derivadas contnuas das variveis nas equaes que regem os fenmenos por frmulas dos tipos (3) a (6), neste caso apenas derivadas de 1 e 2 ordens, e calcular os valores das incgnitas, no caso presente apenas u, em pontos (i, n) de uma malha previamente estabelecida em todo o domnio.
255
Captulo 8
EDPs
interpolao e das suas derivadas (Mtodo de Petrov-Galerkin). O procedimento a adoptar para a resoluo de um problema num meio contnuo pelo mtodo dos elementos finitos pode resumir-se basicamente nas seguintes etapas:
i) Discretizao do meio contnuo em elementos: segmentos (1D), superfcies (2D), ou espaos (3D); ii) Seleco das funes de interpolao que iro representar a variao da varivel, ou variveis de campo em cada elemento; iii) Determinao das propriedades dos elementos ou, alternativamente, obteno da soluo da equao ou equaes para cada elemento usando, por exemplo, uma tcnica de resduos pesados; iv) Ligao dos elementos de acordo com certas regras, por forma a obter um sistema de equaes cuja soluo represente o comportamento da varivel ou variveis de campo. A base desta ligao a que um n partilhado pelos elementos que se reunem nele, sendo o valor da varivel ou variveis nesse n o mesmo para qualquer elemento que o partilhe; v) Imposio das condies de fronteira no sistema de equaes formado no passo anterior; vi) Resoluo do sistema de equaes, usando tcnicas directas ou iterativas.
Seja uma equao gerada pelo operador diferencial L() ,
L() = f
A formulao da tcnica dos resduos pesados consiste nos seguintes passos:
(7)
i)
256
Captulo 8
Re = L( ) f
EDPs
A optimizao na aproximao de soluo exacta obtida atravs da minimizao do resduo Re . De acordo com a tcnica dos resduos pesados, esta minimizao requere a ortogonalidade de Re relativamente a uma srie de funes,
[L()
e
]Wi
de , i = 1,...ne
iii) A integrao conduz-nos a ne equaes algbricas, habitualmente agrupadas num sistema de equaes relativament aos ne valores desconhecidos i . A soluo do
sistema fornece os valores da funo .
= 1 + 2 x
j
x
xi
i
L
xj
= 1 + 2 x
sendo os coeficientes 1 e 2 determinados com base nas seguintes condies nos ns:
= i , para x = x i = j , para x = x j
(8)
257
Captulo 8
EDPs
cuja soluo ,
1 = 2 = i x j j xi L j i L
Substituindo estes valores em (8) resulta a funo de aproximao , vlida em qualquer ponto do elemento, usando funes lineares:
=
xj x L x xi j L
i +
N i x x i N j 1 1 = e Nj = ; = x x L L L
ne
Exemplo 8.5: Considere-se uma barra metlica com a distribuio de temperaturas representada na Fig. 3.
T Ti = 120C Tj = 90C x
xi = 1.5 cm
x j = 6.0 cm
258
Captulo 8
EDPs
Determinar o valor da temperatura em x = 4 cm e o gradiente de temperaturas na barra. x i = 1.5 cm ; x j = 6 .0 cm => L=x j -x i = 4 .5 cm . A distribuio de Ora, xj x x xi Ti + T j ; por conseguinte, temperaturas na barra dada por T ( x ) = L L x = 4 .0 cm resulta T (4.0 ) = 103.33 o C . 1 1 T = Ti + T j , Para o gradiente de temperaturas na barra, atendendo a que x L L T = 6.67 o C / cm . obtm-se x Considerando a soluo ao longo de um domnio com M elementos, a funo expressa aproximadamente pelo somatrio,
(e ) (e ) = [N ] {}
M e =1
sendo evidente que o valor local de (x), com x k x x k +1 , apenas influenciado pelos valores das funes de interpolao e do valores nodais de situados entre x k e x k +1 .
259
Captulo 8
EDPs
Em geral, a numerao dos ns efectuada em sentido contrrio ao do movimento dos ponteiros do relgio, sendo o primeiro n (neste caso i) escolhido arbitrariamente. O polinmio de interpolao neste caso dado por:
= 1 + 2 x + 3 y
(9)
sendo os coeficientes i determinados com base nas seguintes condies nos ns:
= i , para x = xi e y = y i = j , para x = x j e y = y j = k , para x = x k e y = y k
cuja soluo ,
1 (x j y k xk y j )i + (xk yi xi yk ) j + (xi y j x j yi ) k 2A 1 (y j y k )i + ( y k yi ) j + (yi y j ) k 2 = 2A 1 (xk x j )i + (xi xk ) j + (x j xi ) k 3 = 2A 1 =
= N i i + N j j + N k k = N l l , com n e = 3
l =1
ne
em que:
a i = x j y k x k y j 1 (a i + bi x + c i y ) , com bi = y j y k Ni = 2A c i = x k x j
260
Captulo 8
EDPs
a j = x k y i x i y k 1 (a j + b j x + c j y ) , com b j = y k yi Nj = 2A c j = xi x k a k = x i y j x j y i 1 (a k + bk x + c k y ) , com bk = y i y j Nk = 2A c k = x j xi
com,
bj N j b N i N k b = = i ; e = k x x 2A 2A x 2A
261
Captulo 8
EDPs
Determinar o valor da presso P no ponto B(2.0,1.5), sabendo que Pi = 40 Ncm -2 , P j = 34 Ncm -2 e Pk = 46 Ncm -2 . Ora, P dada por, P = N i Pi + N j P j + N k Pk , sendo N i , N j e N k funes das coordenadas dos ns, atravs de a i , a j , a k , bi , b j , bk e c i , c j , c k , com:
a i = 19.0 , a j = 0.0 e a k = 0.0 bi = 4.5, b j = 5.0 e bk = 0.5 c i = 2 . 0 , c j = 2 .0 e c k = 4 . 0
vindo para a rea A = 19 / 2 cm 2 . Por conseguinte, a presso P em qualquer ponto do elemento dada por:
P=
resultando para o ponto B(2.0,1.5), P = 39 .37 Ncm -2 . Para alm dos mtodos de diferenas finitas e de elementos finitos, de aplicao generalizada na resoluo de equaes diferenciais, analisaremos ao longo deste captulo outros mtodos numricos especficos de determinados tipos de equaes s derivadas parciais. Antes, porm, importa tecer algumas consideraes sobre a estabilidade dos processos iterativos a que somos conduzidos na resoluo numrica destas equaes.
3. Estabilidade
Por definio, dizemos que um processo de clculo sequencial ou iterativo estvel se os erros de arredondamento no se amplificarem medida que os clculos progridem.
262
Captulo 8
EDPs
A equao anterior designada por equao de difuso do calor, representando T ( x,t ) a temperatura de uma barra metlica inicialmente temperatura T ( x,0 ) = T0 ( x ) e tendo as extremidades submetidas a diferentes temperaturas T (0,t ) e T (L,t ) conhecidas; L o comprimento da barra. Qualquer esquema numrico utilizado para a discretizao desta equao, em torno dos ndices j e n, conduz necessariamente a uma forma do seguinte tipo:
1 alk T jn++l k = 0 ; l = -l ,..., -1, 0 ,1, ..., l l,k 1 2
(10)
(x )2
um caso particular. Considerando priori que o espao (0, L) e a soluo daquela equao [curva T ( x,t ) ] se repetem um nmero infinito de vezes e sem descontinuidade (Fig. 6),
x -L 0 L
= a m ( t )[cos (w m x ) + i sin (w m x )]
m =
ao desfasamento de cada harmnico. Para o esquema discreto (10), podemos escrever um desenvolvimento anlogo. Assim, considerando J+1 pontos de discretizao no espao (0, L), o desenvolvimento limitar-se- a 2J + 1 harmnicos, nos intervalos de -J a 0 e de 0 a J; teremos, por conseguinte,
n T jn = Am e iw m=-J J
m
263
Captulo 8
EDPs
com wm x = m
nt .
Designando por m o coeficiente de amplificao do harmnico m entre dois instantes discretos consecutivos, ter-se-, ento:
n n n n Am+1 = m Am e Am+ k = k Am m
Considerando agora que cada harmnico verifica a equao de origem (10), vem:
n Am e iw
m
jx
alk e
l,k
iwm lx
k = 0 m
seja,
alk e
l,k
iwm lx
k = 0 m
(11)
A equao (11) a equao de amplificao relativa ao harmnico m . Se uma soluo m desta equao for em mdulo superior a um, os erros sobre este harmnico sero amplificados e o clculo tornar-se- instvel. A condio de estabilidade , por conseguinte, que nenhum destes coeficientes seja superior a 1 em mdulo, isto ,
max m 1
m
A escrita de uma equao que d o coeficiente de amplificao imediata. Com efeito, iw lx basta substituir no esquema discretizado T jn++l k por k e , quaisquer que sejam os sinais m
m
de k e l.
T 2T 2 = 0 , a qual se t x
pretende resolver numericamente utilizando o seguinte esquema explcito de diferenas finitas, j atrs apresentado,
T jn +1 T jn t T jn1 2T jn + T jn+1 =0
(x )2
264
Captulo 8
EDPs
Fazendo r =
(x )2
2 + e + iw + e + iw
m
)= 0
= 2 cos (w m x ) :
m = 1 2 r + 2r cos (wm x )
(12)
A estabilidade estar assegurada verificando-se, qualquer que seja m, 1 m 1 . Ora, o 2 membro de (12) sempre igual ou inferior unidade, restando-nos portanto garantir que o mesmo jamais seja inferior a -1; tal verifica-se desde que 1 1 4 r , vindo,
r= t 1 2
(x )
(13)
Nesta conformidade, diz-se que o esquema numrico utilizado condicionalmente estvel, sendo a condio de estabilidade traduzida por (13). Em geral, fixa-se o incremento espacial x , obtendo-se o incremento temporal a partir da condio de estabilidade, neste caso da equao (13).
265
Captulo 8
EDPs
t , x
V = Bm e iw
n j m
em que Am e B m so as amplitudes dos harmnicos m no instante nt . Por substituio termo a termo no sistema de equaes original, designando por + + Am e Bm as amplitudes no instante (n + 1)t , obtm-se:
r e -iw 2 Am
m
= Am Bm =
+
r -iw e 2
-e iw
)B
-e iw
)A
Bm
-e -iw x = r sin (wm x ) , resultam as seguintes matrizes dos Fazendo m=r 2i coeficientes das variveis, H 1 e H 0 , do primeiro membro e do segundo membro,
m m
e +iw
respectivamente:
266
Captulo 8
EDPs
1 H1 = i m
0 , 1
1 i m H0 = 0 1
donde,
1,2 =
2 2 2 m m m 4
2 Para m < 4 as razes so complexas e o seu mdulo vale 1; para valores de 2 > 4 m
um dos valores prprios em mdulo superior unidade, logo o esquema de discretizao , nestas condies, instvel. A condio de estabilidade resulta ento 2 de m 4 , seja r 2 4 , donde,
c t 1 2 x
vimos anteriormente que uma EDP classificada em parablica, hiperblica ou elptica, consoante o valor de B 2 4 AC igual, superior ou inferior a zero, respectivamente. Veremos em seguida a importncia desta classificao e a forma como se reflecte na utilizao de mtodos numricos para a obteno da soluo de uma EDP.
267
Captulo 8
EDPs
Considerando
que se mantm constante ao longo do tempo, determinar o perfil da superfcie fretica uma hora depois do incio da sobrelevao, utilizando:
a) uma forma explcita da equao de diferenas; b) uma forma implcita da equao de diferenas.
kh0 ne
Fazendo c =
268
Captulo 8
EDPs
H in +1 H in H n 2 H in + H in+1 = c* i 1 t (x )2
Definindo =
(x )2
(15)
Para garantias da estabilidade e convergncia deste esquema numrico (formulao explcita), provmos em (3.1) que dever ser respeitada a seguinte condio de estabilidade:
1 (16) 2 ou seja, fixando partida o valor de x , o incremento t a utilizar calculado atravs de, 0 < cc
t
(x )2
2c
269
Captulo 8
EDPs
ou ainda,
H in +1 = cc*H in+1 + (1 cc )H in + cc*H in+1 1 1 + cc
xi
tn+1 tn
xi 1
xi +1
Por conseguinte, entre os quatro pontos da malha de clculo (espao/tempo) da Fig. 9 existe a seguinte relao,
cc * H in+1 + (1 + 2 * cc ) * H in +1 cc * H in++1 = H in 1 1
(17)
Em qualquer instante de clculo, a equao (17) apenas necessita de ser escrita uma s vez para cada ponto i da malha, com 1 i M 1 , resultando um sistema tridiagonal de n +1 M 1 equaes simultneas a M 1 incgnitas, H i .
270
Captulo 8
EDPs
Uma alternativa ao esquema totalmente implcito (17), igualmente incondicionalmente estvel, o mtodo de Crank-Nicolson. De acordo com este mtodo, a segunda derivada espacial calculada por:
2 H 1 H in+1 2 H in +1 + H in++1 1 H in1 2 H in + H in+1 1 1 = + 2 2 2 2 x (x ) (x )2
donde,
cc H in+1 + 2 (1 + cc ) H in +1 cc H in++1 1 1
= cc H in1 + 2 (1 cc ) H in + cc H in+1
(18)
O sistema de equaes lineares resultante igualmente tridiagonal. Considerando um vector auxiliar V, com 1 i M 1 , o sistema resultante, na forma matricial, escreve-se:
0 0 cc 2 (1 + cc ) cc 2 (1 + cc ) 0 cc 0 2 (1 + cc ) cc cc M M M M 0 0 0 0 L L L L L H 1 V1 H V 0 0 2 2 H 3 = V3 0 0 M M M M cc 2 (1 + cc ) H M 1 V M 1 0 0
271
Captulo 8
EDPs
esquema de carcter implcito no se tenha em conta a dependncia de (u ) . Assim, aconselhvel, sobretudo quando depende fortemente de u, em adoptar para a passagem de nt a (n+1)t um valor intermdio entre (U n ) e (U n +1 ) . Isto pode corresponder, por exemplo, ao esquema,
U in +1 U in 2U = t
n +1
(x )2
+ (1 ) 2U
designando
( U )
2
n +1
n +1
+ (1 ) ( 2U )i = 0
n
(x )
[ (U ) + (1 ) (U )]
n+1 i n i
A aplicao dos mtodos anteriormente descritos para uma dimenso so aqui igualmente aplicveis. O mtodo de Crank-Nicolson, ou qualquer outro esquema implcito, permite ultrapassar a limitao imposta aos mtodos explcitos, mas conduz a sistemas de equaes algbricas com tantas incgnitas quantas o nmero de pontos nodais da malha de clculo. Para solues 2D ou 3D em grandes domnios o nmero de incgnitas pode ser de tal modo elevado que coloca algumas restries aplicao destes mtodos. Este problema frequentemente resolvido recorrendo a tcnicas numricas especiais, como o mtodo ADI (Alternating Directions Implicit). Esta tcnica consiste, tal como o
272
Captulo 8
EDPs
prprio nome sugere, em aplicar alternadamente esquemas numricos implcitos e explcitos ao longo das direces x e y. Isto resulta na necessidade de resolver, alternadamente, j MAX sistemas de equaes algbricas a iMAX incgnitas, num incremento temporal, e iMAX sistemas de equaes a j MAX incgnitas, no incremento temporal seguinte. Se o esquema de Crank-Nicolson for usado alternadamente com um mtodo explcito, o procedimento ADI pode ser descrito pelas seguintes equaes:
n U i,j+1 U i,nj
2U n+1 2 2U n + x 2 y 2
e, consequentemente,
n n+ U i,j+ 2 U i,j 1
2U n+1 2U n+3 2 + x 2 y 2
com,
U n+1 2 = 1 n U + U n +1 2
e U n+3 2 =
1 n +1 U + U n+2 2
(19)
Estas equaes gozam da seguinte propriedade importante: ao longo de certas famlias de curvas ou superfcies, chamadas curvas (ou superfcies) caractersticas, estas equaes variam em conformidade com uma lei especfica. No caso particular das equaes a 1D, as famlias de curvas so linhas descritas pelas equaes:
273
Captulo 8
EDPs
dx =uc dt
(20)
e a funo u(x,t) constante ao longo destas linhas caractersticas. Esta propriedade, isto , a existncia de curvas caractersticas, muito importante para a obteno da soluo analtica ou numrica de uma equao hiperblica.
ou seja, u constante (tem derivada nula) ao longo de cada uma das linhas caractersticas x = x 0 + ct . Seja de novo a equao de 1 ordem (19), com c > 0. Para a resoluo numrica desta equao consideremos o seguinte esquema ponderado:
(21)
274
Captulo 8
EDPs
Fazendo r = c
cujo mdulo dever ser no superior unidade qualquer que seja o valor do ngulo wm x compreendido entre 0 e 2 . Vrias hipteses podem ocorrer, entre estas destacamos:
A.
= 1, = 0
Este esquema explcito; para a condio de estabilidade m 1 resulta: c sendo a preciso de primeira ordem.
t 1, x
= 1, = 1 B. Este esquema implcito, sendo, por conseguinte, sempre estvel e com preciso de primeira ordem.
C. D.
=0
= =1 2
Este esquema sempre estvel; as ponderaes so iguais em ambas as direces e a preciso de segunda ordem. Um problema comum em Hidrulica prende-se com a anlise de transientes resultantes, por exemplo, da interrupo sbita do caudal em condutas elevatrias, devido a um corte da energia elctrica a uma estao de bombagem, ou ainda ao fechamento ou abertura de uma vlvula. Mediante certas hipteses, o modelo matemtico que permite analisar este fenmeno, em termos da velocidade do escoamento V e da carga hidrulica H, escreve-se: 2 V V H +V +g = 0 t x x r (22) 2 H H c V +V + =0 t x g x com a tenso de atrito aproximada por 0 K V V , sendo K aproximadamente constante; r o raio da conduta. As perdas por atrito so normalmente pequenas, devido rapidez do fenmeno, e com
275
Captulo 8
EDPs
velocidades relativamente moderadas, pelo que o sistema de equaes (22) frequentemente simplificado para a seguinte forma (23):
V H +g =0 t x H c 2 V + =0 g x t
(23)
Este sistema de equaes (23) do tipo hiperblico. As condies iniciais, traduzidas pelos valores iniciais de V e de H em todos os pontos da malha de clculo, e as condioes de fronteira, traduzidas pelas condies de desacelerao do grupo electrobomba, ou pela localizao de um reservatrio de grandes dimenses (permitindo considerar a carga constante - presso hidrosttica) a montante, e pelas condies de fechamento ou de abertura de uma vlvula a jusante, completam o modelo. No caso de fechamento 'instantneo' de uma vlvula a jusante, a velocidade ser zero nesta seco; considerando o fechamento ou a abertura linear da vlvula, o princpio da continuidade conduz seguinte lei de fechamento:
V = S S0 2 gH
sendo S = S(t) a seco do escoamento; S 0 a abertura inicial da vlvula e H a carga hidrulica. Um esquema numrico adequado para a resoluo do sistema de equaes (23) o mtoda das caractersticas. Para isso, torna-se necessrio escrever aquele sistema em termos das linhas ou direces caractersticas e das chamadas invariantes de Rieman, as quais se obtm efectuando, por exemplo, as operaes seguintes. Multiplicando a 2 equao (23) por g c , somando-a e subtraindo-a 1 destas equaes obtm-se o sistema de equaes (24):
gH gH =0 + c V + V + x t c c gH gH =0 c V V x t c c
(24)
276
Captulo 8
EDPs
d gH dx = +c V + = 0 , ao longo de dt c dt d gH dx = c V = 0 , ao longo de dt c dt
(25) (26)
O significado fsico destas equaes que as linhas caractersticas so rectas com gH constantes ao longo destas linhas. Um inclinaes +c e -c, sendo os valores V c procedimento explcito de integrao destas equaes numa malha ortogonal estabelecida no plano x-t apresentada em seguida. Seja a notao apresentada na Fig. 11, em que as linhas caractersticas AE e AD com inclinaes +c e -c, respectivamente, passam no ponto A, onde se pretendem calcular os x , os pontos E e D situam-se valores de V e de H. Sendo satisfeita a desigualdade t c nos intervalos [i 1 , i ] e [i , i + 1] , respectivamente; os melhores resultados obtm-se quando x c t = x . Com t > os pontos E e D situam-se fora dos intervalos [i 1 , i ] e [i , i + 1] , c dando origem a instabilidades.
i)
Clculo de VE , H E ,VD e H D :
277
Captulo 8
EDPs
(27)
(28)
Sendo os valores de H conhecidos na fronteira de montante, os valores de V so calculados a partir da caracterstica C , atravs da equao,
V1n +1 = g n +1 H 1 + AD1 c
Se os valores da velocidade forem conhecidos na fronteira de jusante, os valores de H podem ser obtidos a partir da caracterstica C + , atravs de,
H in +1 =
MAX
c AE i g
MAX
Vi n +1
MAX
Seja um sistema constitudo por um reservatrio de grandes dimenses a montante e o fechamento linear de uma vlvula a jusante de uma conduta com 6000 m de comprimento, um dimetro de 0.50 m e uma espessura e = 4 mm. Considerem-se V 0 = 9 .9 ms -1 , H 0 = 5 .0 m , o fechamento total da vlvula em 2.0 s e perdas de carga por atrito nulas. Nestas condies, a celeridade c vale aproximadamente 2980 ms-1. Considerando 11
278
Captulo 8
EDPs
(29)
Uma equao deste tipo (elptica) um problema de valor de fronteira; trata-se, por conseguinte, de um problema de regime permanente, fortemente dependente das condies conhecidas/impostas ao longo da fronteira S que limita a regio R do plano xy, seja U (x , y ) = g (x , y ), (x , y ) S . Existem fundamentalmente trs tipos de condies de fronteira:
i) Condies de Dirichlet, quando so conhecidos os valores de u em pontos da fronteira do domnio; ii) Condies de Newmann, quando so conhecidos os valores dos gradientes da varivel u normais fronteira; iii) Condies mistas, quando so conhecidos alguns valores da varivel e alguns gradientes da varivel em pontos da fronteira. 4.3.1 Resoluo numrica por diferenas finitas
Um procedimento comum para a resoluo numrica de equaes elpticas consiste na aproximao das derivadas de 2 ordem por diferenas finitas centradas, resultando num esquema implcito. Assim, considerando incrementos espacias iguais ( x = y = s ), e representando, como habitualmente, as abcissas e as ordenadas pelos ndices i, j ( xi = ix , y j = jy ) , a equao (29) na forma discretizada escreve-se,
U i+1,j + U i 1,j + U i,j +1 + U i,j 1 4U i,j = f i,j
(s )2
(30)
pontos localizados em torno de (i, j ) , as equaes de diferenas (30) tero de ser resolvidas simultaneamente para os pontos da malha de clculo estabelecida em todo o domnio
279
Captulo 8
EDPs
(valores i variando de 1 a imax e de j desde 1 a jmax). A matriz do sistema de equaes algbricas resultante tridiagonal. Alguns elementos desta matriz podem ser, tambm eles, igualmente matrizes. Os procedimentos mais comuns para a resoluo deste problema so:
A.
(31)
com,
max
= gi
max
,j
U i ,0 = g i ,0 , U i , j
max
= gi , j
(32)
max
A ttulo de exemplo, suponha-se i max = 4 e j max = 3 , correspondendo malha de clculo representada na Fig. 12.
7 16 15 1 4 8 2 5 9 3 6 10 11
14
13
12
280
Captulo 8
EDPs
4 1 0 1 0 0 U 1 g 7 + g16 1 4 1 0 1 0 U g 8 2 0 1 4 0 0 1 U 3 g 9 + g10 = 1 0 0 4 1 0 U 4 g14 + g15 0 1 0 1 4 1 U 5 g13 0 0 1 0 1 4 U 6 g11 + g12 O mtodo directo de Gauss agora utilizado para a resoluo deste sistema de seis equaes algbricas s seis incgnitas: U 1 , U 2 ,..., U 6 .
Ri,j =
( s )2
f i,j
designando o ndice k a ordem da iterao. Este resduo calculado em cada ponto da malha e os valores de U (k ) so actualizados de acordo com:
( ( U i,jk+1) = U i,jk ) +
w (k ) Ri,j 4
sendo w o coeficiente de relaxao, com o valor ptimo situado no intervalo 1.8 w 2.0 .
f i,j
(s )2
4
Alguns problemas podem ocorrer em pontos de fronteira, quando estes no coincidem com pontos da malha; estes casos resolvem-se desenvolvendo formas particulares para o clculo das 1 e 2 derivadas e gradientes normais da varivel.
281
Captulo 8
EDPs
Seja o escoamento de um fluido ideal no domnio representado na Fig. 13, com as condies de fronteira mistas igualmente representadas.
Pretende-se: i) obter os valores de nos ns da malha; e, ii) traar as linhas equipotenciais e de corrente.
(33)
Usando funes de peso, ou ponderao, Wi , iguais s funes de interpolao, N i , a aplicao do mtodo dos resduos pesados de Galerkin para a resoluo desta equao conduz seguinte equao, 2 2 e (34) A 2 + 2 N i dA 0 x y
e
O uso de funes de interpolao lineares, como as apresentadas na seco 2.2.2, exige que a equao a resolver possua apenas derivadas de 1 ordem, isto , derivadas de
282
Captulo 8
EDPs
ordem no superior ordem das funes de interpolao. Nesta conformidade, temos necessidade de baixar a ordem das derivadas da equao (34), o que se consegue recorrendo ao teorema de Green, ou integrao por partes, vindo,
2 2 2 2 2 + 2 N i dA = A N i dA + A N i dA A y y 2 x 2 x
e e e
N i N i = A x x + y y
e e
dA
+ S n x x + n y y N i dS
em que n x e n y so os cosenos directores da normal superfcie. Usando agora este resultado, e atendendo a que,
q= = nx + ny = q , em S n x y
N i N i + y y x x dA S q N i dS 0
e
A
e
(35)
e , pelas aproximaes x y
equaes seguintes:
N N 3 N 1 N 3 N 1 N 1 N 2 N 2 i = 1: A 1 1 + + 2 + 3 y 1 + y 2 + y 3 y dA x x x x S q N 1 dS 0
e e
N N 3 N 2 N 1 N 3 N 2 N 2 N 2 2 + 3 + i = 2: A 1 1 + y 1 + y 2 + y 3 y dA x x x x S q N 2 dS 0
e e
N N 3 N 3 N 1 N 3 N 3 N 2 N 2 2 + 3 i = 3: A 1 1 + + y 1 + y 2 + y 3 y dA x x x x S q N 3 dS 0
e e
283
Captulo 8
EDPs
Substituindo os valores de N i ,
b' 2 b'1 + c' 2 c'1 2 2 b' 2 + c' 2 b' 2 b' 3 + c' 2 c' 3
b' 3 b'1 + c' 3 c'1 1 b' 3 b' 2 + c' 3 c' 2 2 dA b' 32 + c' 32 3
(37)
Uma vez que todos os coeficientes so constantes (dependem apenas das coordenadas dos ns), resulta para a matriz K e ,
b'12 + c'12 K e = A e b'1 b' 2 + c'1 c' 2 b'1 b' 3 + c'1 c' 3
e com o vector dado por:
b' 2 b'1 + c' 2 c'1 2 2 b' 2 + c' 2 b' 2 b' 3 + c' 2 c' 3
b' 3 b'1 + c' 3 c'1 b' 3 b' 2 + c' 3 c' 2 b' 32 + c' 32
1 = 2 3
e
284
Captulo 8
EDPs
fronteiras no comuns a dois elementos. Supondo um valor constante de q segundo o lado j-k do elemento triangular representado na Fig. 4, os valores de P e reduzem-se a, 0 1 q N i dS q l jk 1 2 1
n j
n k
(38)
ou seja, o valor de q corresponde mdia dos ns j e k, sendo l jk a distncia entre estes ns. A frmula (38) uma aproximao 'grosseira' do integral, pois esta corresponde utilizao da regra dos trapzios, que apenas deve ser utilizada quando q constante e linear. Em geral utilizam-se mtodos numricos mais precisos, como a frmula de Simpson e a quadratura de Gauss-Legendre. O procedimento descrito para o elemento triangular pode ento resumir-se na seguinte forma geral: e e e k11 k12 k13 1 p1e 0 e e e e (39) k 21 k 22 k 23 2 p 2 0 e e e p e 0 k 31 k 32 k 33 3 3 Esta formulao agora estendida a todo o domnio, somando de forma apropriada as contribuies de todos os elementos 2D da regio R ( M ) e de todos os elementos 1D da fronteira S ( M ), de modo a obter:
e s
e =1
A
e
Me
M N i N i dA S q N i dS 0 + y y e =1 x x
s e
Tal como para um elemento, podemos, de igual modo, escrever para todo o domnio:
K P 0 ou K P
ou ainda,
k11 k 21 : k n1 k12 k 22 : kn2 ... k1n 1 p1 ... k 2 n 2 p 2 = ... : : : ... k nn n p n
em que n representa o nmero de pontos nodais da malha de elementos finitos. A soluo deste sistema de equaes fornece os valores das incgnitas i . Se se pretender em seguida
285
Captulo 8
EDPs
com os valores i , j e k conhecidos, respectivamente, nos ns i, j e k desse elemento. Para ilustrar este procedimento (composio da matriz global), considere-se a malha com quatro elementos triangulares e seis pontos nodais representada na Fig. 14.
2 1 2 1 3 4 3 4 5 6
1 k14 1 k 44 1 k 24
Elemento 1 (e = 1):
1 1 k12 1 p1 1 k 42 4 p 1 4 1 k 22 2 p 1 2
2 2 k 31 3 p 3 2 2 k 41 4 p 4 2 k11 1 p12 3 k 34 3 3 k 64 6 3 k 44 4 3 p3 3 p6 p3 4
Elemento 2 (e = 2):
2 k 34 2 k 44 2 k14
Elemento 3 (e = 3):
3 k 36 3 k 66 3 k 46
Elemento 4 (e = 4):
4 k 56 4 k 66 4 k 36
4 4 k 53 5 p 5 4 4 k 63 6 p 6 4 4 k 33 3 p 3
286
Captulo 8
EDPs
1 2 k11 + k11 1 k 21 2 k 31 1 2 k 41 + k 41 0 0
1 k12 1 k 22 0 1 k 42 0
2 k13 0 2 3 4 k 33 + k 33 + k 33 2 3 k 43 + k 43 4 k 53 3 4 k 63 + k 63
1 2 k14 + k14 1 k 24 2 3 k 34 + k 34 1 2 3 k 44 + k 44 + k 44 0 3 k 64
0 0 4 k 35 0 4 k 55
4 k 65
1 0 1 p1 + p12 p1 0 2 2 2 3 4 3 4 3 p 3 + p 3 + p 3 k 36 + k 36 1 2 3 3 k 46 4 p 4 + p 4 + p 4 4 4 k 56 5 p5 3 4 3 4 k 66 + k 66 6 p6 + p 6
i) ii)
Condies de fronteira
A introduo de condies de fronteira do tipo Newmann corresponde considerao do integral de linha, que resulta da aplicao do teorema de Green para reduzir a ordem das derivadas, nos elementos com lados coincidentes com a fronteira do domnio tendo condies de fronteira deste tipo; por conseguinte, esta condio no implica qualquer modificao no sistema de equaes global. J uma condio do tipo Dirichlet ( = ) pode ser introduzida no sistema final, depois de adicionadas as contribuies de todos os elementos e de todos os lados de fronteira com condies de Newmann, fazendo igual a um o elemento da diagonal principal da correspondente linha da matriz, com todos os restantes elementos desta linha iguais a zero, e inserindo o valor imposto da varivel na correspondente posio do vector de termos independentes. Suponham-se conhecidos no exemplo anterior os valores 1 = 1 e 2 = 2 ; o correspondente sistema de equaes global toma a seguinte forma: 1 0 2 k 31 1 2 k 41 + k 41 0 0 0 1 0 1 k 42 0 0 0 0
2 3 4 k 33 + k 33 + k 33 2 3 k 43 + k 43 4 k 53 3 4 k 63 + k 63
0 0
2 3 k 34 + k 34 1 2 3 k 44 + k 44 + k 44
0 0
4 k 35 0 4 k 55 4 k 65
0 3 k 64
1 1 2 2 2 3 4 3 4 k 36 + k 36 3 p3 + p3 + p3 1 2 3 3 k 46 4 p 4 + p 4 + p 4 4 4 p5 k 56 5 3 4 3 4 k 66 + k 66 6 p6 + p 6 0 0
Exerccios propostos
287
Captulo 8
EDPs
com r =
(x )2
2. Mostrar que o esquema numrico traduzido pela seguinte expresso (Mtodo de Saul'Yev):
H in +1 =
c t
cc *H in+1 + (1 cc )H in + cc *H in+1 1 1 + cc
com cc =
(x )2
incondicionalmente estvel.
3. Considerando variveis adimensionais apropriadas, o nvel fretico subterrneo de um solo homogneo e isotrpico pode ser descrito pela seguinte equao s derivadas parciais:
H 2 H = , 0 < x 1.0 e 0 < t T t x 2
onde H ( x,t ) = altura do nvel fretico; x = espao; t = tempo e T = tempo limite. Considerar as condies de fronteira:
H = 0, se x = 0 e t > 0 H = 0, se x = 1.0 e t > 0
a) Partindo das sries de Taylor, obter a equao de diferenas finitas na forma implcita (diferenas progressivas no tempo, para o espao i, e diferenas centradas no espao para o tempo n +1). b) Considerando x = 0.25 e t = 0.10 , deduzir o sistema de equaes correspondente
288
Captulo 8
EDPs
primeira iterao, utilizando o mtodo implcito da alnea a) [apresentar o sistema na forma matricial].
c) Quais as principais vantagens e desvantagens dos mtodos implcitos de diferenas finitas relativamente aos mtodos explcitos. 4. a) Seja a funo h(x,t). Partindo de desenvolvimentos apropriados desta funo em srie 2H de Taylor, obter uma expresso para o clculo numrico do valor aproximado de 2 , no t ponto (i , n). b) Num canal de seco rectangular constante, com uma largura b = 10 m, uma inclinao I = 0.1% e um coeficiente de rugosidade de Manning K = 30 m1/3 s-1, forma-se uma curva de regolfo causada por uma barragem com uma altura de 7 m. No canal escoa-se um caudal Q = 100 m3s-1, sendo a altura normal do escoamento no canal (a cerca de 20 km a montante da barragem) de 5.54 m e a altura do escoamento sobre a barragem, correspondente ao regime crtico, de 2.17 m. Sabendo que a forma da superfcie livre (curva de regolfo) formada em consequncia da existncia da barragem obedece seguinte equao:
h + hi +1 (b + 2 h ) Q 2 , com E = h + E Q2 e h= i =I 10 3 2 2 2 x 19.61 (b h ) K (b h )
43
a qual ter de ser necessariamente resolvida por um processo iterativo, expor de forma clara um procedimento numrico a adoptar para o clculo dos valores das alturas do escoamento hi , considerando um incremento espacial x = 1000 m . Apresentar os clculos para os dois primeiros valores h1 e h2 , situados s distncias de 1000 m e de 2000 m para montante da barragem, respectivamente. NOTA: O clculo efectuado de jusante para montante (sentido negativo do sistema de eixos), devendo ser iniciado na seco da barragem, altura h = h0 = 9.17 m (Condio de fronteira).
5. Assiste-se frequentemente ao lanamento de produtos com elevado grau de toxicidade nos cursos de gua, sejam eles provenientes de redes de guas domsticas, ou residuais, ou ainda de resduos industriais, sem qualquer tratamento prvio. No essencial, estes tipos de problemas podem reduzir-se procura da soluo de um modelo matemtico de difusodisperso, sendo, nestes casos, a quantidade desconhecida, a concentrao C da massa de um poluente.
Um modelo matemtico simplificado, no caso de um escoamento permanente
289
Captulo 8
EDPs
sendo um coeficiente de disperso longitudinal, neste caso considerado constante. Seja a diluio de um poluente num troo de rio com 2.5 km, no qual circula um caudal lquido com uma velocidade mdia u = 1.0 m/s. A partir do instante t = 0+, permanentemente rejeitada na seco inicial deste troo, uma substncia poluente com uma concentrao c = 1 ppm (partes por milhar). Pretende-se determinar a evoluo da concentrao mdia do poluente ao longo do troo de rio, nos instantes t = 10, 15 e 20 minutos, considerando valores para o coeficiente de disperso, , iguais a 0.10 e a 10.0 m2/s. Resolva numericamente este problema, utilizando:
a) Um esquema explcito de diferenas finitas para obter a soluo da equao diferencial dada, satisfazendo o(s) critrio(s) de estabilidade. b) Um esquema semi-implcito de Crank-Nicolson ( = 0.5 ), com obteno da soluo do sistema de equaes resultante pelo mtodo directo de Gauss. 6. Adoptando determinadas regras simplificativas, o escoamento num canal de largura indefinida pode ser representado por:
h t + x (hu ) = 0 u + ( gh ) = 0 t x
Considerando que: - o canal tem um comprimento L = 1000 m ; - a altura e a velocidade iniciais do escoamento so:
h( x, 0 ) = 1.0 m 1 u ( x, 0 ) = 0.8 ms
290
Captulo 8
EDPs
determinar o perfil do escoamento e a distribuio de velocidades ao longo do canal, no instante t = 240 s, utilizando:
a) um mtodo semi-implcito de diferenas finitas, com ponderao idntica no tempo () e no espao ( ) ( = = 0.5 ); b) um mtodo de diferenas finitas do tipo previsor-corrector.
291
Anexo
Solues
Captulo 1
1. 9 termos. 2. -41.40%, -4.40%, 0.45% 3. 1111 1100 0001 1000 4. a) Simtricos (92 e 92) b) (0000005C)16=(92)10 (0000FFA4)16=(65444)10 5. - 32625 6. (0.2)10=(.0011 0011 0011 ...)2 7. a) 65537, 0.1953125x10-2, 127.96875 d) 1111 1110 1101 0100 8. 1| 110 0100 1111 0000 0000 0000 | 10000110 9. a) 1 | 000 1000 1000 1000 1000 1000 | 0111 1110 b) 1111 1111 1111 0110 10. a) 1 | 110 0001 0000 1100 1100 1100 | 1000 1001 b) Inteiros desde -32768 at 32767. 11. a) 1111 1101 10 e 1 | 10100 | 1100 b) No possvel 12. a) 1 | 000 1000 1000 1000 1000 1000 | 0111 1101 b) 1110 1100 0111 1000 13. Xund.=0.03125 e Xover.=7.5 15. b) conjunto de 16 nmeros reais positivos cujo menor elemento 1/32 e o maior 6. 16. a) Xund.=0.03125 ; Xover.=7.0 ; 65 nmeros distintos 17. s=540 m ; |s| 11.3 m 18. A5.43 ; n=2 19. 2 a.s.c. 20. n=4 21. a) 2 algarismos b) 3.14 22. 3 algarismos significativos correctos 23. k=4 24. 0.167 mm/m 25.a)1.01% ; b) Nmax=51 lotes , Nmin=49 lotes 26.a) |r|1/3*10-3 ; |ra|0.7634*10-3 ; |rb|0.2382*10-3 ; b)|h|0.00147 c) No possvel 27.a) Medies do 1 operador 28. 8.1% 29. 2 a.s.c. 30.a) No possvel b) n=3 31. 6 a.s.c. b) |rE|0.01079 ; |rR|0.00083 b) X1 sim ; X2 no c) 4.88x10-4
292
Anexo
Solues
Captulo 2
1. a) No existem razes positivas; 1 ou 3 razes reais negativas. b) ]-1,0[ 2. a) 4,2 ou 0 razes reais positivas ; 1 raiz real negativa b) =1 raiz dupla 3. a) 2 ou 0 razes reais positivas ; 2 ou 0 razes reais negativas b) Mtodo de Newton 4. a) ] -/4,-/8[ b) g ( x) = arcsen ( ( x + 2) / 2) c) -0.7073 5. A escolha dever ser c) 6. a) 1]0,/8[ ; 2]/4,/2[ b) possvel utilizar g(x) 7. b) x0]1.58,2.29[ 8. a) Mostrar que funo g(x) no verifica as condies de convergncia b) g(x)=ln(4 x2) ; 4.31 9. a) Aplicar mtodo de Newton b) 1=-2 ; 2]-2,0[; 3]0.523,1.699[; 4]1.699,2[ c) x0=0.7 x1=2.1 ! ; Ponto de inflexo no intervalo(x1.11) d) x0=1.15 1.567 (k=1) 10. a) ]-3.5, -2.5[ b) -3.34 11. a) 1]-2.0,-1.0[ ; 2]-0.5,0.0[ ; 3]0.0,0.5[ ; 4]1.0,2.0[ b) x2-1.523 (x0=-2) 12. a) Nmero infinito de razes positivas ; b) 1 1.29 13.a) 1]-3, -2[ ; 2]0, 1[ 15. b) 3.15 d) 3.14159 16.a) t1]0,1/4[ ; t2]1/4,1/2[ ; t3]1,5/4[ ; t4]5/4,3/2[ 17.a) 1]-2,-1.5[ ; 2]1,1.5[ b) 1.06 b) 0.03 b) No se verifica a condio no extremo a=0; x0=1 14. a) ], 5/4[ b) x0=2.6 divergncia (anulao da derivada)
18.a) N infinito de razes ; a menor, 1],5/4[ b) 3.49 19.a) 1]0,/2 [ ; 2]/2, [ , ... b) 3.096 20.a) 1[1,3] ; 2[5,7] b) 2.36 21.a) ]-3.5, -2.5 [ b) -3.34 22. FP-0.783 , S-0.788 23. 0.855
293
Anexo
Solues
Captulo 3
1. h=32 m 2. a) p2(1/6) 0.833 b) R2(1/6)0.0478 3. a) p3 ( x ) = 2 x3 4 x + 9
b) p4 ( x ) = x 4 3 x 3 + 7 x 2 + x + 1
10. S(x) um spline cbico natural (S(1)=S(3)=0) 11. S(40)=61.25 m (a=0.00125, b=0, c=1)
Captulo 4
1. y = 2.020 e x + 3.014 e x 2. v(10) = 10-(10-4.9663) e
-10/3.004
= 9.82 volts
5. =37.11 ; =15.58 ; (10-6 m2s-1)=0.32 5. a) A primeira b) x=2.307 (parmetros da curva: k1=1.01368 e k2=1.98986) 6. ln a =3.2129 ; b=1.0136 ; t=3.88 seg.
Captulo 5
1. w0=5/36 ; w1=13/12 ; w2=-2/9 2. IT 0.079
294
Anexo
Solues
3. IT 2.94 (n=5) 4. IS 0.0843 5.a) IT = 1.5 + 0.5 , I S = 1 + 4 / 3 6.a) 6 pontos b) IT=1.828 7.a) b) = 0.5
I = 5/3
f (x ) dx 52.667
c)
f (x ) dx = 42
(Erro=0)
8.a) p2 ( x ) = x 2
b) I S = 16 / 3 ; ES = 8 / 3
9. 289.2 m (5 pontos) 10.a) erf(0.5) 0.5205 b) erf(0.5) 0.5205 11.a) 19 pontos ; b) IS 0.1974 ; c) IG 0.1975 12. a) 89 pontos b) Por defeito c) i) 13.34; ii) 11.58; iii) 12.13; Valor exacto
12.07
Captulo 6
1. x1=1 ; x2=3 ; x3=2 2. Sistema indeterminado ; sistema impossvel 3. x1=0.09770 ; x2=0.00954 ; x3=0.00093 ; x4=0.00009 ; x5=0.00001 4.a) x1=1/9 ; x2=22/27 ; x3=4/9 ; x4=10/9 5.a) No b) ||>5
1 6. a) L = 5 1 0 1 6 0 1 0 ; U= 0 0 1 0 1 0 3 13 77
7.a) Sistema linear b) Sistema tri-diagonal 8. x=1.004 , y= -1.723 9. Q1=1.605 Q2=1.105 m3/s 10. x=1.28 , y= -0.28 , z=1.87 11. Q1=Q4=2.49 m3/s ; Q2=Q3=1.24 m3/s
295