Escolar Documentos
Profissional Documentos
Cultura Documentos
Clculo Numrico
Sumrio
CAPTULO 1 Como Utilizar o Computador para Resolver Problemas Prticos?.....................05
Introduo.....................................................................................................................05
1.3.1 Equacionamento..............................................................................................16
Sntese...........................................................................................................................32
Referncias Bibliogrficas.................................................................................................33
03
Captulo 1
Como Utilizar o Computador para
Resolver Problemas Prticos?
Introduo
Voc j reparou como o computador tem uma quantidade limitada de espaos para representar
os nmeros? por isso que, quando vamos representar um nmero, importante sabermos que
certa quantidade de recursos ser reservada, isto , existir um limite mximo para o tamanho
do nmero representado.
J reparou como a matemtica e a computao esto intimamente ligadas? E sabe qual a o que
representa a ligao entre essas duas cincias? O clculo numrico! De forma simplificada,
ele o estudo de algoritmos para obteno de resultados aproximados para diversos problemas
prticos que podem ser equacionados.
Somente conhecendo estas caractersticas dos nmeros que poderemos falar sobre as ope-
raes matemticas elementares, ou seja, precisamos conhecer estes nmeros para entender
como funciona, por exemplo, a soma e subtrao em um computador, entendendo as limitaes
associadas a estas operaes. Depois de conhecermos o sistema numrico computacional, ve-
remos as equaes lineares e utilizaremos estas equaes para resolver problemas associados
produo. Vamos l?
Vale ressaltar que existem equaes de primeiro, segundo, terceiro e quarto grau. J uma equa-
o do quinto grau no pode ser resolvida analiticamente, ou seja, no existe uma frmula para
encontrar as razes de um polinmio de quinto grau. Ento fica a pergunta: como podemos en-
contrar as razes de uma equao do quinto grau? justamente a que entra o clculo numrico.
Com ele, possvel chegar resposta.
05
Clculo Numrico
Saiba que algumas grandes empresas utilizam sistemas de equaes para definir onde instalar
os seus armazns. Estas equaes tambm so utilizadas por empresas que tentam reaproveitar
avies para fazer vrias rotas e vrias conexes. Interessante, no mesmo?
Quando existe um sinal imerso em um rudo que precisa ser identificado, por exemplo, presentes
na produo de um equipamento de telecomunicaes assim como no desenvolvimento de um
radar que tem por objetivo detectar aeronaves. Para estes casos, um estudo das propriedades
do rudo baseia-se no estudo de distribuies, como a distribuio gaussiana. A maioria das
distribuies utilizadas no pode ser integrada de forma analtica. Por exemplo, para obtermos
a integral da funo em um intervalo finito, devemos recorrer a mtodos numricos.
Equaes diferenciais so utilizadas em diversas reas do conhecimento. Por exemplo, para a des-
crio de um circuito eletrnico, as equaes diferenciais so muitssimo importantes. A descrio
da corrente eltrica passando pelos componentes tambm feita com o uso destas equaes.
Resumindo: qualquer problema que possa ser traduzido em equaes, pode ento ser resolvido
com o Clculo Numrico. Percebeu como ele importante?
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
Relembramos que os nmeros destacados no exemplo anterior foram utilizados somente para fa-
cilitar a identificao dos algarismos que compem o nmero decimal que est do lado esquerdo
da igualdade.
07
Clculo Numrico
Vamos usar os mesmos exemplos dos nmeros decimais? Como eles so representados como
nmeros binrios? Veja a seguir. Os nmeros de 0 a 15 na base 2 so:
Decimal Binrio
0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 1001
10 1010
11 1011
12 1100
13 1101
14 1110
15 1111
Para aumentar de uma unidade, primeiro, o algarismo mais direita vai aumentando de um em
um. Assim que o algarismo atinge o valor mximo (1), ele torna-se zero e o prximo algarismo,
logo esquerda, incrementa em uma unidade.
Portanto, entenda que para aumentar o nmero em uma unidade, sempre devemos incrementar
o algarismo mais direita, exceto quando ele j igual a 1. O que fazemos ento? Neste caso,
devemos passar para o prximo nmero esquerda. Quando os dois algarismos da direita atin-
giram o valor 1, eles devem ser zerados e o prximo algarismo esquerda deve ser incrementado
em uma unidade e assim o processo segue em diante.
Agora, veremos como interpretar um nmero binrio. Considere o nmero binrio 10010:
100102 = 116 + 08 + 04 + 12 + 01 = 18
O destaque nos nmeros do exemplo anterior foi utilizado somente para facilitar a identificao
dos algarismos que compem o nmero binrio que est do lado esquerdo da igualdade. Por ou-
tro lado, quando colocamos um nmero 2 subscrito, isto indica que aquele nmero est na base
2; quando no o colocamos, isto quer dizer que o nmero est na base 10, que mais utilizado.
Vimos que os nmeros inteiros de 0 a 15 podem ser representados com 4 algarismos, certo? Em
um computador, cada algarismo representado por um bit. Por sua vez, um bit pode assumir
somente dois valores: 0 ou 1.
VOC O CONHECE?
John von Neumann foi um grande pesquisador, realizando pesquisas em diversas reas,
tais como: Matemtica, Fsica, Economia e Computao. Antes dele, os computadores
utilizavam cartes perfurados para armazenar os algoritmos. Ele props uma arqui-
tetura em que o programa e os dados poderiam compartilhar a mesma memria do
computador. Desta forma, os algoritmos passaram a ser armazenados no prprio com-
putador, acelerando muito o funcionamento destas mquinas. Disponvel em: <http://
www.scielo.br/scielo.php?pid=S0103-40141996000100022&script=sci_arttext>.
Na verdade, podemos representar em um computador somente uma parte dos nmeros inteiros,
pois existem infinitos nmeros inteiros, mas nunca ser possvel representar um nmero com infi-
nitos algarismos em um computador.
Quando o assunto o computador, ao falarmos de um nmero sem sinal, estamos nos referindo
a um nmero positivo. Para representar os nmeros de 0 a 15, precisamos de 4 bits. Convenha-
mos que, alm de querer representar os nmeros, tambm queremos fazer operaes com eles.
As operaes com nmeros inteiros funcionam normalmente, com uma exceo que o overflow.
O que isso? O overflow ocorre quando no possvel realizar a operao com aquela quanti-
dade de bits. Por exemplo, se tivssemos um nmero de 4 bits, o maior nmero que poderia ser
representado seria o nmero 15. Se fizssemos a conta 15 + 5, o resultado seria 4. Por qu?
09
Clculo Numrico
Isto acontece porque o computador no muito inteligente. Assim que ele chega ao maior nme-
ro que pode ser representado, ele simplesmente d a volta e continua a partir do menor nme-
ro. Espervamos que, quando o computador recebesse a operao 15 + 5 ele contasse assim:
16, 17, 18, 19, 20, passando por cinco nmeros aps o 15. Como o computador simplesmente
d a volta, o computador conta assim: 0, 1, 2, 3, 4. O resultado 4.
Isto parece um problema enorme, no mesmo? Entretanto, vale ressaltar que no existem n-
meros inteiros de apenas 4 bits no computador. O menor inteiro que costuma estar disponvel em
um computador possui 8 bits, podendo atingir valores entre 0 e 255. Apesar disso, o mais co-
mum que os nmeros inteiros utilizem 32 bits, podendo assumir valores entre 0 e 4294967295.
De uma forma geral, este nmero permite que representemos todos os nmeros inteiros de nosso
interesse. Caso voc precise de nmeros maiores, existem ainda os nmeros inteiros de 64 bits.
CASO
A msica Gangnam Style, do cantor coreano Psy, estourou o contador do YouTube em dezembro
de 2014. Como isto pode acontecer? O contador do nmero de visualizaes do YouTube era
um nmero de 32 bits com sinal, permitindo que ele chegasse at o valor 2.147.583.647 (2 31
1). Depois que isto aconteceu, os desenvolvedores do YouTube atualizaram o tipo de varivel
utilizada. Agora um inteiro com sinal de 64 bits. Disponvel em: <http://olhardigital.uol.com.
br/noticia/saiba-como-gangnam-style-quebrou-o-contador-do-youtube/45684>.
Considere que para acrescentarmos o sinal a um nmero inteiro, devemos analisar que o sinal
pode assumir somente dois valores possveis (+ e ), portanto, o sinal tambm ocupa 1 bit. Como
cada bit assume somente 2 valores, atribumos a ele os valores 0 e 1, mesmo quando ele repre-
senta o sinal do nmero. Interessante, no mesmo?
Para representar nmeros de 0 a 7, perceba na figura a seguir que podemos utilizar somente 3 bits
(3 algarismos binrios). Se utilizarmos mais um bit para o sinal, poderamos chegar a concluso
que possvel representar nmeros de -7 a +7, mas isto no est totalmente certo, como veremos.
+7 0111
+6 0110
+5 0101
+4 0100
+3 0011
+2 0010
+1 0001
0 0000
-1 1111
-2 1110
-3 1101
-4 1100
-5 1011
-6 1010
-7 1001
-8 1000
Veja que no Quadro 3 utilizamos os nmeros em ordem decrescente com o intuito de mostrar-
mos, primeiramente, os nmeros positivos que j conhecamos. Quanto ao bit de sinal, o valor
zero usado para representar o sinal positivo, enquanto o valor 1 usado para representar o
sinal negativo.
Perceba que estamos diminuindo uma unidade a cada linha da tabela at chegarmos ao nmero
zero. O que acontece com a prxima linha? No parece fcil entender, mas imagine o seguinte:
suponha que estamos trabalhando com nmeros positivos, ou seja, nmeros sem sinal. Se este
fosse o caso, teramos ido do nmero zero (0000) para o maior nmero possvel com 4 bits
(1111). Depois disso, continuamos diminuindo uma unidade a cada linha (1110, 1101, ...), ou
seja, da mesma forma que acontecia com o overflow.
Portanto, se tivermos o nmero 0 representado com 4 bits (00002) e subtrairmos um, obteremos
o nmero binrio: 11112. Este valor obtido independente de estarmos trabalhando com um
nmero com ou sem sinal. Se for um nmero sem sinal, este valor ser o nmero decimal 15. Se
estivermos trabalhando com um nmero com sinal, o resultado ser igual a -1.
Por isso, entenda que a representao dos nmeros negativos simplesmente se aproveita do fato
de que o computador no muito esperto e considera a sequncia dos nmeros inteiros de forma
circular. como se no tivesse um incio nem um fim, se somarmos ou subtrairmos uma unidade
indefinidamente, passaremos por todos os nmeros e voltaremos a passar enquanto estivermos
fazendo esta operao.
11
Clculo Numrico
Esta representao dos nmeros negativos chamada de complemento de dois. Para obter o
valor decimal de um nmero binrio com sinal (que comece com o primeiro bit igual a 1) deve-
mos fazer o seguinte:
1. trocamos o valor de todos os bits: onde tivermos 1 trocamos por zero, onde for zero,
trocamos por 1;
O nome complemento de dois dado simplesmente porque fazemos a troca do valor de todos
os bits. Quer ver um exemplo? Considere o nmero 11002. Vamos fazer os passos apresentados
anteriormente? Acompanhe-nos!
5,0 106
200 2 102
333 2 102
0,0005 5 104
1,23 1,23 100
m 10e
importante notar que um nmero representado em notao cientfica poderia assumir vrias
formas. Por exemplo, o nmero 300 poderia ser escrito como: 300100, 30101, 3102,
0,3103 etc. Para que haja somente uma forma de escrevermos este nmero, foi padronizado
que a mantissa deve ser sempre maior que 1 (ou igual a 1) e menor que 10. Assim, o nmero
300 escrito em notao cientfica fica assim: 3102.
m 2e
Mas qual a diferena entre eles? A primeira diferena que em vez de utilizarmos 10 elevado
a um expoente, usamos 2 elevado a um expoente. A outra diferena que tanto a mantissa (m)
quanto o expoente (e) so escritos na base binria.
Vamos entender isso melhor? Acompanhe um exemplo que envolve nmeros. Considere o nme-
ro binrio (101,11 1011)2. Qual ser o valor deste nmero quando escrito na base decimal?
Observe que um nmero binrio, portanto, a mantissa est escrita na base 2, assim como a
base (102 = 2) e o expoente (112 = 3).
Vejamos alguns nmeros em ponto flutuante juntamente com seu valor na base decimal.
13
Clculo Numrico
(1,1 10 1)2 3
(1,01 10 1)2 2,25
(1,1 10 1)2 0,75
(1,01 10 1)2 0,625
Observe que toda vez que aparece 10 e nas expresses do Quadro 6, o nmero 10 na verdade
o nmero dois escrito na base 2. Lembre-se que, quando escrevemos um nmero decimal em
notao cientfica, a mantissa deve obedecer esta regra:
1 m < 10
1m<2
Desta forma, evitamos que um nmero possa ser escrito de formas diferentes, isto , existe uma
nica representao para cada nmero. Existem dois tipos de nmeros de ponto flutuante que
so comumente usados:
Nmero de ponto flutuante de preciso simples (32 bits): usa 1 bit para sinal, 23 bits para
mantissa e 8 bits para expoente;
Nmero de ponto flutuante de preciso dupla (64 bits): usa 1 bit para sinal, 52 bits para
mantissa e 11 bits para expoente.
VOC SABIA?
Nos nmeros de ponto flutuante, as operaes tambm funcionam de maneira circular
tal como nos nmeros inteiros onde ocorria o overflow? No, isto no acontece com
estes nmeros. Eles tm uma forma de representar trs valores que no devem aparecer
sempre. Os valores so: mais infinito (Inf), menos infinito (Inf) e no numrico (NaN
Not a Number). Infinito um overflow positivo, enquanto que menos infinito um
overflow negativo. No numrico (NaN) o resultado de uma operao invlida, como
a raiz quadrada de um nmero negativo ou a diviso de zero por zero.
Outro erro que pode acontecer com operaes invlidas. Algumas destas operaes so: a raiz
quadrada de um nmero negativo; o logaritmo de um nmero negativo ou nulo; e zero dividido
Existe ainda outro tipo de erro, quando impossvel representarmos um nmero utilizando um
nmero finito de bits. Com nmeros na base 2, no possvel representar o nmero um dcimo
(1/10). Com 12 dgitos binrios aps a vrgula, podemos representar este nmero assim:
0,0001100110012 0,099609
Alm deste erro de impossibilidade de representao de um nmero, existe outro problema que est
muito relacionado a este erro. o problema de propagao de erros. Acompanhe o raciocnio!
Como os nmeros de ponto flutuante esto sujeitos a no serem representados como deveriam,
o erro pode aumentar ao longo de vrias operaes matemticas. Quer ver um exemplo? Vamos
assumir que estamos tentando representar o nmero 0,1, mas devido a um erro, o valor 0,09.
Estamos trabalhando com um erro de 10%. Este erro est muitssimo acima do erro que costu-
mamos trabalhar em um computador, mas vamos utiliz-lo apenas paras entender o problema.
Se atribuirmos este valor a uma varivel , saberemos que esta varivel possui um erro de 10%.
Se fizermos a seguinte operao:
y=xx
Ou seja, se multiplicarmos x por ele mesmo e atribuirmos o resultado a uma varivel y, teremos
uma varivel com um erro de 19%, pois 0,09 0,09 = 0,0081, enquanto que 0,1 0,1 =0,01.
Vemos que o erro se propagou, chegando a 19%.
Em situao prticas, o erro de representao dos nmeros pode ser positivo em alguns casos
e negativo em outros. Quando temos erros positivos e erros negativos em uma mesma conta, o
erro final muito menor. Observe:
x = 0,09
y = 0,11
Cada uma das variveis apresenta um erro, pois o valor de ambas deveria ser 0,1. Realize a
seguinte conta:
z=xy
Verifique que o erro de 10% em cada uma das variveis causa um erro muito menor no resultado
final.
O resultado deveria ser 0,01, isto , o erro de apenas 1%. O erro final menor que o erro
inicial, porque o erro de uma varivel era positivo e o da outra varivel era negativo.
15
Clculo Numrico
1.3.1 Equacionamento
Uma empresa de sucos produz trs tipos diferentes de sucos mistos. So eles: lima-laranja, lima-
-limo e laranja-limo. Para produzir 1 litro de cada um destes sucos, necessrio utilizar certa
quantidade de cada um dos insumos da seguinte forma:
para o suco de lima-laranja: meio litro de suco de lima e meio litro de suco de laranja;
para o suco de lima-limo: 750 ml de suco de lima e 250 ml de suco de limo;
para o suco de laranja-limo: 750 ml de suco de laranja e 250 ml de suco de limo.
A cada dia a empresa tem 200 litros de suco de lima, 162,5 litros de suco de laranja e 87,5
litros de limo. A questo a seguinte: se a empresa quiser utilizar todos os recursos disponveis,
quantos litros de cada suco misto podem ser feitos a cada dia?
Para equacionar este problema, importante notar que temos 3 variveis, cujos valores so des-
conhecidos e precisam ser determinadas:
Observe que o suco de laranja-limo no consome nada de suco de lima, portanto, ao produ-
zirmos x3 litros de suco de laranja-limo, o consumo de suco de lima ser 0x3.
A segunda restrio utilizar todo o suco de laranja disponvel a cada dia. Cada litro de suco de
lima-laranja consome 0,5 litros de suco de laranja, enquanto que cada litro de suco de laranja-
-limo consome 0,75 litros de suco de laranja. Portanto:
A terceira e ltima restrio : utilizar todo o suco de limo disponvel a cada dia. Cada litro de
suco de lima-limo consome 0,25 litros de suco de limo, enquanto que cada litro de suco de
laranja-limo consome 0,25 litros de suco de limo. Portanto:
Podemos escrever este sistema de equaes na forma matricial. Assim, ficamos com a seguinte
equao matricial:
Para que trabalhemos com valores inteiros, vamos multiplicar todos os valores da matriz pelo
nmero 4:
E agora, como resolvermos uma equao colocada na forma matricial? Continue conosco para
chegarmos ao resultado!
17
Clculo Numrico
Quando queremos resolver este tipo de sistema de equaes no computador, comum utilizar-
mos os seguintes mtodos:
eliminao gaussiana;
decomposio LU.
Acompanhe-nos para compreendermos como cada um deles funciona.
Nesta equao, ns utilizamos um sistema com 4 equaes e 4 variveis. Desta vez, chamamos
as variveis de: x1, x2, x3 e x4. Sempre que tivermos N equaes com N variveis, teremos soluo
para o sistema de equaes, ou seja, poderemos descobrir o valor das variveis, desde que as
equaes sejam linearmente independentes.
O que queremos fazer aqui deixar a equao matricial exposta anteriormente da seguinte forma:
A matriz apresentada uma matriz triangular superior. Uma matriz que apresenta somente os
elementos da diagonal principal e os superiores diferentes de zero, ou seja, todos os elementos
abaixo da diagonal principal so diferentes de zero. comum chamar esta matriz de U, enquan-
to seus elementos so chamados de uij, onde i o nmero da linha e j o nmero da coluna.
Costumamos utilizar a letra U para esta matriz em funo do seu nome em ingls (upper, superior
em ingls).
Se conseguirmos representar o sistema de equaes lineares por meio de uma matriz triangular
superior, ento, conseguiremos encontrar o valor das variveis com facilidade. Observe que a
ltima linha da matriz nos fornece a seguinte equao:
Portanto, j conhecemos o valor da ltima varivel. A terceira linha nos d a seguinte equao:
A princpio, temos duas incgnitas nesta equao (x3 e x4), mas observe que descobrimos o valor
de x4 utilizando a equao . Logo, podemos descobrir o valor de x3 porque j conhe-
cemos o valor de x4.
Somente x2 desconhecido, portanto, encontramos o seu valor isolando x2 nesta equao. Agora
que conhecemos o valor de x2, de x3 e de x4, utilizamos a primeira equao para descobrirmos
o valor de x1. Este procedimento pode ser feito para matrizes quadradas (nmero de linhas igual
ao nmero de colunas).
Como queremos deixar a matriz na forma triangular superior, queremos obter o nmero zero nos
elementos da primeira coluna, exceto a primeira linha. Assim, substitumos a segunda linha pela
subtrao da segunda linha pela primeira, ou seja:
L2 L2 L1
A primeira coluna est quase pronta, a nica coisa que temos que nos preocupar com o n-
mero dois no primeiro elemento da primeira coluna. Para resolver isto, basta dividir a primeira
linha por dois:
L1 L1/2
A primeira coluna est pronta! Vamos olhar a segunda coluna. Os elementos da diagonal devem
ser iguais a 1, enquanto os elementos abaixo da diagonal devem ser nulos. Ento, temos que
trocar a linha 2 e a linha 3 de lugar:
L2 L3
19
Clculo Numrico
Agora, precisamos zerar o terceiro elemento da segunda coluna. Como? Basta substituir a linha
3 pela soma da linha 3 com trs vezes a linha 2:
L3 L3 + 3L2
L3 L3/6
z = 150
y + z = 350 y = 200
Assim, percebemos que, para utilizar todos os sucos disponveis, necessrio produzir:
A = LU
Aparentemente no tivemos ganho algum, certo? Parece que agora ficou ainda mais difcil de
chegarmos ao resultado? Isto no verdade. Para mostrar que possvel chegarmos a uma
soluo, vamos criar um vetor de variveis auxiliares, que chamaremos de vetor y, com as com-
ponentes (y1, y2, y3 e y4).
Esta equao que acabamos de escrever no pode ser resolvida ainda, pois temos um total de
4 equaes com 8 incgnitas (as componentes do vetor x e as componentes do vetor y). Mas
podemos substituir esta equao na equao LUx = b. Fazendo isto, podemos substituir Ux por
y, obtendo Ly = b. Escrevendo os componentes da matriz e dos vetores, temos:
Esta equao pode ser resolvida com facilidade, em que encontramos o valor de y1,...,y4. Para
resolvermos esta equao, vamos comear a partir da linha 1, onde temos:
l11y1 = b1
21
Clculo Numrico
Iniciando deste ponto em que sabemos o valor de y1, podemos, ento, descobrir o valor das
prximas variveis: y2, y3 e y4.
Ento, precisamos decompor a matriz A no produto LU, ou seja, descobrir o valor dos elementos
das matrizes L e U.
l11 = a11
Fazemos isto para todos os outros elementos. Veja que trata-se de um processo trabalhoso e
repetitivo, algo que demorado de ser executado por humanos, mas simples de ser feito por
um computador.
Como o processo envolve muitas repeties, no vamos mostrar a obteno de todos os ele-
mentos das matrizes L e U, mas iremos observar a obteno de alguns deles apenas para ilustrar
como funciona o procedimento. Multiplicando a primeira linha da matriz L pela segunda coluna
da matriz U, teremos:
l11u12 = a12
Como acabamos de obter o valor de l11 anteriormente, perceba que podemos obter o valor de
u12, que dado por: u12 = a12/l11. Podemos agora multiplicar a segunda linha da matriz L pela
primeira coluna da matriz U, obtendo:
l21 = a21
Vamos obter mais um valor como exemplo. Vamos multiplicar a segunda linha da matriz L pela
segunda coluna da matriz U, obtendo:
Este processo se repete at que todos os elementos das matrizes L e U sejam obtidos.
A soluo :
l21 = 2
l21u12 + l22 = 0
l21u13 + l22u23 = 3
A soluo :
l21 = 2
l22 = 3
u23 = 1
l31 = 0
l31u12 + l32 = 1
23
Clculo Numrico
A soluo :
l31 = 0
l32 = 1
l33 = 2
Ou seja:
A terceira linha nos d: x3 = 150. Por outro lado, a segunda linha mostra-nos:
x2 x3 = 50 x2 = 200
Ou seja:
importante notar que o resultado o mesmo que aquele obtido pela eliminao gaussiana, ou
seja, para utilizar todos os sucos disponveis, necessrio produzir:
Para auxiliar-nos a ver a vantagem de um mtodo sobre o outro, vamos voltar ao exemplo da
empresa de sucos. Imagine que a quantidade de sucos de lima, laranja e limo variem a cada
dia. Mas observe que a quantidade de insumo que colocado em cada suco misto no varia. A
equao a ser resolvida a cada dia seria:
Como o vetor b varia a cada dia, ento, a eliminao gaussiana teria que ser realizada a cada
dia. Para a decomposio LU, o funcionamento diferente, pois a decomposio depende ape-
nas da matriz A, no dependendo do vetor b. Assim, para a empresa de sucos, precisaramos
descobrir as matrizes L e U apenas uma vez. A nica parte que precisaramos realizar mltiplas
vezes seria a descoberta do vetor auxiliar y e a descoberta do vetor x, que a quantidade de
cada suco misto a ser produzido.
O custo computacional da obteno da soluo do sistema muito baixo, uma vez que a de-
composio LU tenha sido feita.
25
Clculo Numrico
Sabemos que o campo eltrico e o campo magntico se propagam de forma contnua ao longo
de todo o espao, mas se quisermos fazer a modelagem desta situao em um computador,
precisaremos discretizar a situao, criando um nmero muito grande de pontos em um espao
uni, bi ou tridimensional. A partir da situao bidimensional, teremos uma matriz com valores do
campo, por exemplo. Outras situaes em que aparecem grandes matrizes so aquelas relacio-
nadas a redes (redes de distribuio de gua, redes de distribuio de energia eltrica e redes
de telecomunicaes) com um nmero muito grande de ns: situao que acontece ao analisar
a distribuio em uma cidade.
O mtodo Jacobi recebe este nome devido ao matemtico alemo Carl Gustav Jacob Jacobi.
Como todos os mtodos iterativos, este mtodo til para resolver sistemas com milhares de
equaes e variveis.
Apesar de suas vantagens, este mtodo tambm apresenta limitaes. Quais? Ele no pode ser
utilizado para resolver o problema da empresa de sucos que temos usado como exemplo prtico
at ento. Por qu? Porque ele pode ser usado somente quando a matriz estritamente diagonal
dominante. Este tipo de matriz apresenta o mdulo de cada elemento da diagonal maior que ou
igual soma do mdulo dos demais elementos da mesma linha.
O mtodo consiste em, primeiramente, dividir a matriz A como a soma de duas matrizes: A = D + R.
Os elementos da diagonal da matriz A vo para a matriz D, os demais elementos da matriz A vo para
a matriz R.ARA.
Depois de decompormos a matriz A como a soma de duas outras matrizes, fazemos a seguinte
aproximao:
A princpio, atribumos ao vetor x(0) um valor qualquer. Fazemos a iterao vrias vezes, at que
a variao de uma iterao para a prxima seja muito pequena.
dii 1/dii
Para um sistema de 3 equaes com 3 incgnitas, como este que estamos usando atualmente,
as 3 equaes ficam assim:
3 3
3
Quando estvamos resolvendo o problema da empresa de sucos, a matriz que utilizvamos era:
Vemos que esta matriz no estritamente diagonal dominante. Ou seja, os elementos da diago-
nal no so suficientemente grandes para podermos utilizar o mtodo de Jacobi. A primeira linha
no obedece esta regra, pois: |2|<|3|+|0|, o elemento da diagonal no suficientemente
grande. O mesmo acontece para a segunda linha: |0|<|2|+|3|. Somente a terceira linha
obedece a esta regra: |1||0|+|1|. Portanto, vamos utilizar outra matriz como exemplo para
nossos clculos. Observe o seguinte sistema de equaes:
27
Clculo Numrico
fcil ver que esta matriz estritamente diagonal dominante, no mesmo? Por isso, vamos
decomp-la como a soma de uma matriz diagonal (D) e outra matriz que tem a diagonal zerada
(R). Estas matrizes ficam assim:
Fazendo todas as multiplicaes matriciais, podemos simplificar bastante esta equao, obtendo
o seguinte sistema de equaes:
Para resolvermos esta equao, precisamos escolher um valor inicial para o vetor x (ou seja, x1 e
x2). O valor inicial para o vetor x costuma ser chamado de condio inicial. importante saber
que, quando escolhemos um valor prximo da soluo, o nmero de iteraes necessrio para
que cheguemos ao resultado final pode ser bem pequeno. Como no temos ideia da soluo,
vamos escolher a seguinte condio inicial:
0 0.0000 0.0000
1 2.0000 2.2500
2 0.8750 1.7500
3 1.1250 2.0312
4 0.9844 1.9687
5 1.0156 2.0039
6 0.9980 1.9961
7 1.0020 2.0005
8 0.9998 1.9995
9 1.0002 2.0001
A condio de parada utilizada nesta resoluo foi que cada uma das variveis deveria oscilar
menos que 0,001 de uma iterao para a prxima. Apesar de no termos calculado a soluo
exata, interessante saber que a soluo exata deste sistema de equaes :
x1 = 1
x2 = 2
Na primeira iterao, usamos o valor da iterao anterior para calcular o valor de x1 na nova
iterao. Na segunda equao, j utilizamos o valor atualizado de x1 no lugar de usar o valor
de x1 da iterao passada, tal como fazamos no mtodo de Jacobi. Na terceira equao, j
utilizamos o valor atualizado para x1 e para x2.
29
Clculo Numrico
Vamos utilizar o mesmo sistema de equaes que utilizamos quando testamos o mtodo de Ja-
cobi, ou seja:
Utilizamos a mesma condio inicial que utilizamos ao resolver este problema usando o mtodo
de Jacobi, ou seja:
Iterao x1 x2
0 0.0000 0.0000
1 2.0000 1.7500
2 1.1250 1.9688
3 1.0156 1.9961
4 1.0020 1.9995
5 1.0002 1.9999
6 1.0000 2.0000
Veja que foram necessrias 6 iteraes para encontrarmos a soluo com a preciso desejada.
Quando utilizamos o mtodo de Jacobi, precisamos de 10 iteraes para obtermos o mesmo
nvel de preciso.
Perceba que aprendemos que o computador pode ser utilizado para resolver problemas numri-
cos, bem como sistemas de equaes que so muito comuns em vrios problemas, inclusive nos
problemas de engenharia.
31
Sntese
Clculo Numrico
Sntese
Neste captulo, voc teve a oportunidade de:
aprender que utilizando n bits, possvel representar nmeros sem sinal indo de 0 at
2n 1;
conhecer a eliminao gaussiana e verificar que ela pode ser usada para encontrar a
soluo de um sistema de equaes;
BARANIUK, C. As falhas numricas que podem causar desastres. BBC Brasil. Disponvel
em: <http://www.bbc.com/portuguese/noticias/2015/05/150513_vert_fut_bug_digital_ml>.
Acesso em: 06 out. 2015.
Olhar Digital. Entenda como o Gangnam Style quebrou o contador do YouTube. Dis-
ponvel em: <http://olhardigital.uol.com.br/noticia/saiba-como-gangnam-style-quebrou-o-con-
tador-do-youtube/45684>. Acesso em: 14 out. 2015.
QUARTERONI, A.; SALERI, F. Clculo Cientfico com Matlab e Octave. Springer-Verlag, 2007.
33