Você está na página 1de 68

CÁLCULO

NUMÉRICO

Profª Roselice Parmegiani


2018/2
MATLAB capítulo 1
MATLAB é abreviação de MATrix LABoratory, programa especialmente desenvolvido para
solucionar problemas descritos por matrizes. É muito utilizado para encontrar soluções numéricas
para problemas em engenharia e integra análise numérica, cálculo com matrizes, processamento
de sinais e construção de gráficos em ambiente fácil de usar.

Comandos úteis no manuseio de variáveis:

COMANDO AÇÃO
clear Apaga da memória todas as variáveis
clear x Apaga da memória somente a variável x
clc Limpa a tela de comandos
 Retorna a linha anterior
 Retorna a linha posterior
 Move o cursor um caractere para a direita
 Move o cursor um caractere para a esquerda
% Antecede um comentário
... Permite dar enter e continuar a digitação em
outra linha
; Suprime a visualização do resultado na tela
help xxx Dá explicações a respeito da função xxx
diretamente na janela de trabalho
lookfor xxx Procura a palavra xxx em todas as funções da
biblioteca do MATLAB.

Matemática elementar

Da mesma forma que uma calculadora, o MATLAB é capaz de resolver operações diretamente ou
armazenando informações em variáveis. As operações usuais são simbolizadas da seguinte
forma:

adição +
subtração -
multiplicação *
divisão / ou \
potenciação ^
raiz quadrada sqrt

As variáveis são sensíveis a maiúsculas e minúsculas e podem conter até 31 caracteres. O


MATLAB tem diversas variáveis especiais. Algumas delas são:

ans variável padrão usada para resultados


pi o número 3,1415...
inf infinito
NaN não-numérico

O MATLAB oferece diversas funções elementares. Algumas seguem abaixo:


2
sin(x) seno
cos(x) cosseno
log(x) logaritmo natural
log10(x) logaritmo na base 10
exp(x) exponencial: ex
sqrt(x) raiz quadrada
factorial(x) fatorial

O MATLAB sempre memoriza um número com 15 ou 16 casas (precisão dupla), mas pode
mostrar esse número com formatos diferentes, tais como:

format short 5 dígitos


format long 15 ou 16 dígitos
format long e 15 ou 16 dígitos em notação científica
format rat aproximação racional (fração)
format bank 2 dígitos decimais

O MATLAB não altera a representação interna de um número quando optar-se por diferentes
representações.

EXERCÍCIOS:
1) Encontre o resultado das expressões a seguir e apresente-os nos formatos short, long, rat e
bank.
 7 
d) cos 3 
3
a) b) sen  c) 78  e 2 e)  81
5
2  8 
7

2) Declare e inicialize a variável x com o valor 1.35. Em seguida, determine:


a) e 3 x
b) x 3  3x 2  5x

3) Informe para x o valor 2.81. Agora, calcule novamente as expressões (a) e (b) do exercício
anterior e anote os resultados.

4) Limpe a tela de comandos. Digite x . O que você obtém?

5) Digite help abs. Que informações você obtém? Digite abs (2.35) e abs (-2.8) e conclua.

RESPOSTAS:
1) a) 0,5676 b) 0,3827 c) 9,2406 d) -1 e) 0 +9i
2) a) 57,3975 b) 3,7429
3) 4.582,5 b) 12,5497

3
Vetores e Matrizes
Para criar um vetor linha no MATLAB, basta iniciar com um colchete esquerdo, introduzir os
valores separados por espaços (ou vírgulas) e fechar o conjunto com um colchete direito. A aspa
simples, ' ,colocada após o colchete direito, transforma o vetor linha em vetor coluna.

Exemplos:
>> x=[2 4 6 8 9] >> y=[2 4 6 8 9]'
x= y=
2 4 6 8 9 2
4
6
8
9

No MATLAB tem-se acesso aos elementos de um vetor usando-se índices, ou seja, x(1) é o
primeiro elemento do vetor, x(2) é o segundo e assim por diante. Para ter acesso a um bloco de
componentes ao mesmo tempo, o MATLAB utiliza a notação de dois pontos ( : )

Exemplos:
>> x(3) >> x(1:3)
ans = ans =
6 2 4 6

A criação de matrizes segue as mesmas diretrizes que as de vetores. Usam-se vírgulas ou


espaços para separar os elementos de uma linha específica e pontos-e-vírgulas para separar as
linhas.

Exemplos:
>> A=[1 2 3; 4 5 6] >>B=[1 2; -1 0; 3 1]
A= B=
1 2 3 1 2
4 5 6 -1 0
3 1

Matrizes podem ser construídas a partir de outras matrizes utilizando-se comandos como os que
são exemplificados abaixo:

Exemplos:

>> A=[1 2 3; 4 5 6; 7 8 9] ;
>>A(2,2)
5

>> B=A(1:2,:) % seleção das duas primeiras linhas e todas as colunas de A


B=
1 2 3
4 5 6

>> C=A(:,2:3) %seleção de todas as linhas de A e de suas duas ultimas coluna


C=
2 3
5 6
8 9

4
>> D=[A,C] %Anexar uma matriz a outra
D=
1 2 3 2 3
4 5 6 5 6
7 8 9 8 9

Em se tratando de matrizes, pode-se realizar:

A+B Soma de matrizes de mesma ordem


A-B Subtração de matrizes de mesma ordem
A*B Multiplicação de matrizes
A.*B Multiplicação, elemento a elemento
A^2 Potência de matrizes, o mesmo que A*A
A.^2 Potência dos elementos da matriz
inv(A) Inversa da matriz A
det(A) Determinante da matriz A
A’ Transposta da matriz A
A/B É o mesmo que A* B-1 (inversa de B)
A./B Divisão dos elementos correspondentes das matrizes A e B.

5
EXERCÍCIOS
1) Crie um vetor linha v contendo os seguintes elementos: 3, 5, 7, 12.

2) Crie um vetor coluna w que possua os elementos: 12, 42, 9, 27.

3) Calcule, se possível:
a) ln(v) b) sin(v) c) v*v d) v.*v e) v+w f) v*v’ g) v’+w

2 0 3 1
 6 5 0  1
4) Seja a matriz A    . Determine:
 2 4 3 2 
 
1 3 1 8
a) a transposta de A
b) O determinante de A
c) a inversa de A
d) A*inv(A) e inv(A)*A. O que se obtém?
e) 3A – 5AT
f) Compare A*A , A.*A e A2.

5) Para a matriz A definida anteriormente utilize comandos para retirar o que se pede:
a) O elemento da segunda linha e terceira coluna.
b) As duas primeiras linhas.
c) As duas últimas colunas.
d) O elemento da terceira linha e quarta coluna de A.
e) A primeira linha de A
f) A última coluna de A

RESPOSTAS:
1) v=[ 3 5 7 12]
2) w=[12 49 9 27]’
3) a) 1.10 1.61 1.95 2.48
b) 0.14 -0.96 0.66 -0.54
c) Erro
d) 9.00 25.00 49.00 144.00
e) Erro
f) 227
g) 15.00
47.00
16.00
39.00

4) a) Digite A’
b) 1003
c) Digite inv(A)
d) Ambos os produtos resultam na matriz identidade
e) -4.00 -30.00 19.00 -2.00
18.00 -10.00 -20.00 -18.00
-21.00 12.00 -6.00 1.00
-2.00 14.00 -7.00 -16.00
f) A*A=A2

5) corrigir em aula

6
Gráficos Bidimensionais
Para a construção de gráficos bidimensionais um dos comandos utilizados é plot(x,y). Para
utilizar o comando plot é necessário definir um vetor com as abscissas dos pontos e outro com as
ordenadas dos pontos. O MATLAB traça segmentos de reta unindo as abscissas com as
respectivas ordenadas.

Exemplo: 8

>>x=[1 2 3 4 5]; 7
>> y=[2 8 1 7 3];
>> plot(x,y), 6

1
1 1.5 2 2.5 3 3.5 4 4.5 5

O comando grid traça linhas de grade que facilitam a visualização dos pares ordenados.

Exemplo:
>>plot(x,y), grid
8

1
1 1.5 2 2.5 3 3.5 4 4.5 5

Para fixar os limites dos eixos, deve-se usar o comando axis informando os valores mínimos e
máximos dos eixos x e y, respectivamente. Para “congelar” os eixos definidos utiliza-se o
comando hold on (minimizar a janela gráfica após introduzir este comando).

Exemplo
>> axis([0 7 0 10]) 10
>> hold on
9
>> x=[1 2 3 4 5];
8
>> y=[2 8 1 7 3];
>> plot(x,y), grid 7

0
0 1 2 3 4 5 6 7

7
Para traçar uma curva “lisa” é preciso definir muitos pontos para o vetor das abscissas. Então,
utiliza-se um “passo” (incremento) pequeno entre o primeiro e o último número definidos. Isso é
feito com o comando dois pontos ( : ). Abaixo são mostrados alguns gráficos da mesma função
construídos com diferentes incrementos para o vetor do domínio.

Exemplo:
>> x=-2*pi:2*pi; >> x=-2*pi:0.5:2*pi; >> x=-2*pi:0.01:2*pi;
>> y=sin(x) >> y=sin(x) >> y=sin(x)
>> plot(x,y) >> plot(x,y) >>plot(x,y)

1 1 1

0.8 0.8 0.8

0.6 0.6 0.6

0.4 0.4 0.4

0.2 0.2 0.2

0 0 0

-0.2 -0.2 -0.2

-0.4 -0.4 -0.4

-0.6 -0.6 -0.6

-0.8 -0.8 -0.8

-1 -1 -1
-8 -6 -4 -2 0 2 4 6 -8 -6 -4 -2 0 2 4 6 8 -8 -6 -4 -2 0 2 4 6 8

Alguns comandos úteis na construção de gráficos são os seguintes:


grid ou grid on - adiciona linhas de grade
grid off - remove linhas de grade
box off - remove o contorno de uma caixa no qual o gráfico está inserido
box on - restaura a caixa retangular
x label - permite atribuir nome ao eixo x
y label - permite atribuir nome ao eixo y
title - adiciona uma linha de texto ao topo do gráfico
gtext - permite inserir um texto, com o mouse, em qualquer posição.

OBS: A inserção de título ao gráfico e aos eixos e a inclusão de caixas de legenda e texto e
outras formatações podem ser realizadas diretamente na janela Figure Window, clicando-se sobre
o gráfico e/ou usando menus.

O MATLAB possibilita ao usuário a escolha da cor, tipo e estilo da linha para os gráficos
conforme mostra a tabela abaixo. Pode-se adicionar esses argumentos ao comando plot para
escolher a cor da linha, seu tipo e e estilo utilizando a seguinte sintaxe:

plot(x,y, 'tipo cor marcador')


em qualquer ordem

Símbolo Cor Símbolo Marcador Símbolo Tipo de linha


b azul . ponto - linha contínua
g verde o círculo : linha pontilhada
r vermelho xx _. traços e pontos
c ciano ++ -- linha tracejada
m magenta * estrela

y amarelo

k preto

w branco

8
Exemplo:
4
>> x=-2:0.1:2;
>> y= x.^2; 3.5

>> plot(x,y,'*r')
3

2.5

1.5

0.5

0
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

Para plotar múltiplas curvas pode-se definir vários vetores dentro do mesmo comando plot ou
utilizar o comando hold on.

Exemplo:
>> x=-2*pi:0.01:2*pi; ou >> x=-2*pi:0.01:2*pi;
>> y=sin(x); >> y=sin(x);
>> w=cos(x); >> w=cos(x);
>> plot(x,y,x,w) >> plot(x,y)
>> title('Curvas seno e cosseno') >> hold on
>> plot(x,w)
>> title('Curvas seno e cosseno')

Curvas seno e cosseno


1

0.8

0.6

0.4

0.2

-0.2

-0.4

-0.6

-0.8

-1
-8 -6 -4 -2 0 2 4 6 8

9
EXERCÍCIOS:

1) Construa os gráficos das funções abaixo nos domínios especificados:


a) f ( x)  x 3  9 x  3 ,  10  x  10 e, depois,  5  x  5
b) f ( x)  4 * cos(x)  e 2 x ,  5  x  5 , depois x  0
c) f ( x)  x 3  15 x 2  3x  45 ,  10  x  10 , depois  5  x  20

2) Construa os gráficos das funções dadas abaixo sendo cada item no mesmo sistema de eixos.
Explore os recursos de edição (cores, formatos, legendas, etc.)

 x
a) y  cos(x) , g  2 cos(x) , h  cos 
2
b) y  x , g  x  5 , y  x  5
2 2 2

c) y  log( x) , h  ln( x)

x
3) Seja a função f ( x)  . Plote a função f com linha pontilhada e de cor verde.
x 1
2

4) Construa o gráfico da função f ( x)  x 3  0.25 x 2 e de sua derivada no mesmo sistema de eixos.


Use linhas de cores e tipos diferentes. Inclua título e legenda.

10
Arquivos M de comandos
São arquivos de texto com extensão .m onde o usuário poderá colocar uma seqüência de
comandos. Esses arquivos são úteis quando se deseja mudar o valor de uma ou mais variáveis
e/ou reexecutar os comandos.

Há dois tipos de m-files: o function-file cuja primeira linha deve ser function [argumentos de
saída] = nomedoarquivo (argumentos de entrada) e o script-file próprio para fornecer os
argumentos de entrada à medida em que são solicitados durante a execução.

Para criar um m-file, de forma geral, deve-se:


* Na janela de comandos: File New M-File
* Salvar o programa antes de executá-lo: Save As
* Rodar o programa na janela de comandos, digitando o nome do mesmo seguido da tecla Enter.

Alguns comandos utilizados em programação:

while ..... end


if ..... else .... end
if .... elseif .... else ... end
for .... end
Operadores relacionais e lógicos:

<, >, <=, >=, ==, ~=, & (e), ~ (ou)

EXEMPLO 1: Script-file que calcula a média aritmética de três números


% Script que calcula a média aritmética dos números 4, 7 e 8
a=4; b=7; c=8;
ma=(a+b+c)/3;
ma

Salvar a função com o nome “media”, por exemplo, e, na janela de trabalho, digitar este nome:

>> media
ma =
6.3333

EXEMPLO 2: Escreva um script-file para calcular a área total e volume de um cubo qualquer:

11
EXEMPLO 3: Function-file que calcula a média aritmética de três números

% Esta função calcula a media aritmética de 3 números


function m= media(x,y,z)
m=(x+y+z)/3;

Salvar a função com o nome “media” e, na janela de trabalho, digitar tal como segue:

>> m=media(4,7,8)
m=
6.3333

>> m=media(6,6,0)
m=
4

EXEMPLO 4: Script para resolver o problema que segue:


Um hotel cobra R$ 150,00 a diária e mais uma taxa de serviços. A taxa de serviços é de:
a) R$ 10,00 por diária, se o número de diárias for maior que 5;
b) R$ 12,00 por diária, se o número de diárias for igual a 5;
c) R$ 15,00 por diária se o número de diárias for menor que 5.
Construa um algoritmo que mostre a conta do cliente após x dárias.

EXEMPLO 5: Resolva o problema anterior utilizando uma function.

EXEMPLO 4: Escreva uma function que realize a soma valores de 1 até n:

12
EXEMPLO 5: Function-file que calcula o valor de e pela série de Taylor:
x2 x3 xn
ex  1 x    ... 
2! 3! n!

function ex=exponen(x,n)
format long
ex=1;
for i=1:n
ex=ex+x^(i)/factorial(i);
end

>> ex=exponen(1,10)
ex =

2.71828180114638

>> ex=exponen(2,100)
ex =

7.38905609893065

EXERCÍCIOS

a) Crie um script que leia uma temperatura em graus Celsius e a apresente convertida em graus
(9 * C  160 )
Fahrenheit. A fórmula de conversão é F  (teste: 100º C=212 F)
5

b) Escreva um script que calcule o perímetro e a área de um círculo.

c) Escreva um script que calcule a área total e o volume de um paralelepípedo.

d) Crie uma function que calcule a média harmônica de três valores.

e) Escreva uma function que calcule o perímetro e a área de um círculo.

f) Crie uma função que calcule a área total e o volume de um paralelepípedo de dimensões a, b e
c.

g) Escreva um m-file que imprima os resultados da tabuada do 8.

h) Escreva uma função que calcule o valor da expressão aritmética S n  11  2 2  33  ...  n n dado
o valor de n.

1 2 3 n
i) Idem ao anterior considerando a série S n     ... 
2 3 4 n 1

13
j) Faça um algoritmo considerando o que segue: um banco dá crédito especial a seus clientes
conforme o salário médio mensal. Se o salário médio mensal for igual ou maior que R$ 1200,00
ou até R$ 2000,00, então o crédito será de 20% do salário médio. Caso o salário médio seja
maior que R$ 2000,00, o crédito do cliente será de 40% do salário médio. Clientes com salário
médio inferior a R$ 1200,00 não recebem crédito.

k) Uma loja de tintas oferece descontos a seus clientes de acordo com o valor de compra. Para
compras acima de R$ 500,00, o desconto é de 10% e para compras acima de R$ 1000,00 o
desconto dado é de 20%. Escreva um script ou uma function que simule o total pago em
diferentes situações.

 1  1 1 1 
l) O valor de  pode ser calculado pela série   4  ( 1 ) n 1 41     ... . Construa
n 1 2n  1  3 5 7 
uma função que calcule o valor de  com n termos da série.

m) Escreva uma function que calcule o seno de um arco qualquer de acordo com a seguinte série:
 ( 1 ) k
sin( x )   .x 2k 1 .
k 0 ( 2k  1 )!

n) Construa um script que, ao ser executado, mostre um gráfico semelhante à imagem que segue
(incluir legenda e título):
y

o) Idem ao anterior para:


x

14
ERROS capítulo 2
O avanço do poder do cálculo dos atuais computadores permite que muitos problemas
reais possam ser simulados computacionalmente. A simulação desses problemas requer sua
modelagem matemática, a implementação das equações resultantes e a posterior análise dos
resultados produzidos pelo computador. Em todas essas etapas podem ocorrer erros já que, de
um lado, os dados não são exatos e de outro as operações sobre os valores não exatos e a
limitação das máquinas propagam esses erros a seus resultados. É importante a análise dos
erros para que se possa controlar o limite da exatidão da resposta obtida, a fim de melhora-la, se
possível, na implementação algorítmica.

Representação de números

Qual a área de um círculo de raio 100 m?


31400 m2 ou 31416 m2 ou 31415,92654 m2?

Os diferentes resultados são obtidos devido ao fato de que o número  não pode ser
representado através de um número finito de casas decimais. Qualquer que seja a circunferência,
a sua área nunca será obtida exatamente, já que  é um número irracional. Porém, quanto maior
o número de casas decimais utilizadas, maior será a precisão.

Um número pode ter representação finita em uma base e não-finita em outras bases. A base
decimal é a mais empregada atualmente, mas um computador opera normalmente em sistema
binário. Isso ocorre pois um número é representado, internamente, no computador, através de
uma sequência de impulsos elétricos que indicam dois estados: 0 ou 1 – é o sistema binário. Os
dados de entrada são enviados ao computador pelo usuário no sistema decimal; toda essa
informação é convertida para o sistema binário e as operações serão todas efetuadas neste
sistema. Os resultados finais são convertidos para o sistema decimal e, finalmente, serão
transmitidos ao usuário. Todo este processo de conversão é uma fonte de erros que afetam o
resultado final do cálculo.

Conversão de número nos sistemas binário e decimal:


Os números (347)10 e (10111)2 estão escritos na base 10 e 2, respectivamente. Esses números
podem ser desmembrados da seguinte forma:

(347)10 =

(10111)2 =

De um modo geral, um número na base  , (a j a j 1 ...a2 a1ao )  ,0  ak  (  1), k  1,..., j , pode ser
escrito na forma:

a j  j  a j 1  j 1
 ...  a1  1  ao  o

Com essa representação, pode-se converter um número de uma base para outra.

EXEMPLO 1: Converter (11010)2 para a base 10.

15
EXEMPLO 2: Converter (101001)2 para a base 10.

EXEMPLO 3: Converter (347)10 para a base 2.

EXEMPLO 4: Converter (25)10 para a base 2.

Erro absoluto e erro relativo: Seja x o valor exato de um número e x um valor aproximado
(calculado) de x . O erro absoluto é definido por:

EAx  x  x

e o erro relativo é

EAx
ERx 
x

O erro percentual é o erro relativo multiplicado por 100. Se o erro absoluto vier precedido de sinal
positivo, significa erro por falta, caso contrário, erro por excesso.

EXEMPLO 9: Seja o número exato x  3,141592 e seu valor calculado x  3,14 , calcule os erros
absoluto, relativo e percentual.

EXEMPLO 10: Seja o número exato x  1 000 000 e seu valor calculado x  999996 , calcule os
erros absoluto, relativo e percentual.

OBS: Em geral não se conhece o valor exato e, neste caso, é impossível achar o erro absoluto. O que se faz é obter
um limitante superior ou uma estimativa para o módulo do erro absoluto.
16
Erro de truncamento: É o que ocorre na substituição de um processo infinito por um processo
finito.

1 1 1 1
EXEMPLO 11: Seja e  1     ...  . Se o valor de e for substituído por uma aproximação
1! 2! 3! n!
1 1 1 1
e  1    ...  , introduz-se um erro de truncamento.
1! 2! 3! 20!

EXEMPLO 12: Uma aproximação por truncamento de 2/3=0,66666.... é 0,6666

Erro de arredondamento: Se um número tem uma representação decimal ou binária infinita,


processa-se o arredondamento manual ou pelo computador, após o truncamento, para finalidades
práticas. Mesmo quando um número tem uma expressão finita, mas ultrapassa a precisão
necessária ou a precisão do computador, há arredondamento.

Regra de arredondamento na base 10: se o primeiro dígito a abandonar for maior ou igual a
5, acrescenta-se uma unidade ao último dígito a conservar (arredondamento para mais), caso
contrário, deixa-se inalterado o último dígito a conservar (arredondamento para menos).

EXEMPLO 13: Arredonde os números 8,75679 e 0,24134 para quatro casas decimais.

Notação Científica
É uma forma de representar os números utilizando-se uma potência de 10, obedecendo ao
seguinte esquema:

__, __ __ ... __  10  __

em que o número antes da vírgula pode ser 1, 2, 3, 4, 5, 6, 7, 8 ou 9 e o expoente de 10 pode ser


positivo, negativo ou nulo. A posição da vírgula é fixa, separando a casa das unidades da primeira
casa fracionária.

EXEMPLO 14: Escrever em notação científica os seguintes números:


a) 35,276
b) 0,0678
c) 1456
d) 0,00006

Aritmética de ponto flutuante (ou vírgula flutuante)

É o sistema utilizado por computadores ou calculadoras para representar os números. É assim


chamado pois a posição da vírgula não é fixa podendo variar, sendo que a correção é feita na
potência da base. Por exemplo, 34,21 pode ser escrito como 3,421  101 ou 0,3421  102 ou
342,1  10-1, etc.

17
Na representação normalizada de ponto flutuante o número é preparado movendo-se a vírgula
para a direita ou esquerda de forma que o número seja menor que 1, o mais próximo possível de
1, multiplicado por uma potência da base. Em geral, isso significa que o primeiro algarismo
significativo virá imediatamente após o ponto (vírgula).

EXEMPLO 15:
(50,683)10=0,50683  102
(0,0004628)10=0,4628  10-3
(0,00001101)2=0,1101  2-4

No sistema de aritmética de ponto flutuante, o número é representado na forma:

 (.d1d 2 ...d t )   e
em que:
 é a base em que a máquina opera
t é o número de dígitos na mantissa; 0  d j  (  1), j  1,...t , d1  0
e é o expoente  [m, M ]

Em qualquer máquina, apenas um subconjunto dos números reais é representado exatamente e,


portanto, a representação de um número real será realizada através de truncamento ou
arredondamento.

EXEMPLO 16: Seja uma máquina que opera da seguinte forma:   10; t  3; e  [5,5] . Então, os
números serão representados como: 0.d1 d 2 d 3  10 e ,0  d j  9, d1  0, e  [5,5] .
a) Quais são o menor e o maior número, em valor absoluto, representados nessa máquina?

b) Como fica representado o número 235,89 se for utilizado truncamento? E se for utilizado
arredondamento?

c) Como fica representado o número 0,345x10-7?

d) Como fica representado o número 0,875x109?

EXEMPLO 8: Verifique como o MATLAB responde a um overflow ou a um underflow digitando os


seguintes números: 2  10512 e 2  10-512.

OBS: Algumas linguagens de programação permitem a declaração das variáveis em precisão dupla, ou seja, a
variável será representada em ponto flutuante com aproximadamente o dobro de dígitos disponíveis na mantissa.
Neste caso, o tempo de execução e requerimento de memória aumentam significativamente.

18
EXERCÍCIOS
1) Os números abaixo estão escritos na base decimal. Converta-os para a base binária.
a) 48
b) 21
c) 75

2) 1) Os números abaixo estão escritos na base binária. Converta-os para a base decimal.
a) 1000101
b) 11010
c) 1100110011001

3) Escreva em notação científica os números que seguem:


a) 245,6
b) 0,5678
c) 0,00007
d) 14567,890
e) 12,3
f) 220,2  10-3

4) Considere o seguinte sistema de ponto flutuante normalizado:   10; t  4; e  [5,5] .


a) Quais são o menor e o maior número, em valor absoluto, representados nessa máquina?

b) Como fica representado o número 73,758 se for utilizado truncamento? E se for utilizado
arredondamento?

5) Seja o número exato x  0,000012 e seu valor calculado x  0,000009 , calcule os erros absoluto,
relativo e percentual.

19
LOCALIZAÇÃO DE ZEROS DE FUNÇÕES capítulo 3
Um número real k é um zero da função f (x) ou uma raiz da equação f ( x)  0 se f (k )  0 .
Graficamente, os zeros são representados pelas abscissas dos pontos onde uma curva intercepta
o eixo x .

Exemplos: fig. 1 fig. 2

25 80

60
20

40

15
20

10 0

-20
5

-40

0
-60

-5 -80
-5 -4 -3 -2 -1 0 1 2 3 4 5 -5 -4 -3 -2 -1 0 1 2 3 4 5

fig. 3 fig. 4

1 4

0.8 3.5

0.6 3

0.4 2.5

0.2 2

0 1.5

-0.2 1

-0.4 0.5

-0.6 0

-0.8 -0.5

-1 -1
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 -1 -0.5 0 0.5 1 1.5 2 2.5 3 3.5 4

fig. 5

18

16

14

12

10

0
-4 -3 -2 -1 0 1 2 3 4

Observam-se dois zeros reais na fig. 1, três zeros reais na fig. 2, um zero real na fig. 3, um zero
real duplo na fig.4 e nenhum zero real na fig.5.

20
Localização de zeros
Para se obter os zeros de uma função pode-se usar fórmulas explícitas, como a fórmula de
Bháskara para as funções polinomiais de grau dois. No entanto, no caso de funções polinomiais
de grau maior que três e funções transcendentais é, muitas vezes, impossível determinar os zeros
exatamente. Por isso, existem diversos métodos que encontram os zeros de uma função com
qualquer precisão pré-fixada.
Os métodos constam de duas fases:

FASE I – Localização ou isolamento das raízes, que consiste em obter um intervalo que contém a
raiz
FASE II – Refinamento, que consiste em melhorar a aproximação encontrada na primeira fase até
obter uma aproximação para a raiz dentro de uma previsão (tolerância) prefixada.

Fase I

Teorema do Valor Intermediário: Seja f (x) uma função contínua num intervalo [a,b]. Se
f(a).f(b)<0, então existe pelo menos um ponto x  k entre, a e b, que é zero de f (x) .

80 12

60 10

40 8

20 6

0 4
a b
-20 2

-40 0
a b
-60 -2

-80 -4
-5 -4 -3 -2 -1 0 1 2 3 4 5 -4 -3 -2 -1 0 1 2 3 4

EXEMPLO: Seja a função f ( x)  x 3  9 x  3 . Encontre os intervalos em que estão os zeros de


f (x) .

OPÇÃO 1: Construir uma tabela de valores para analisar os sinais de f (x) .

x -5 -4 -3 -2 -1 0 1 2 3 4 5
f (x)

No MATLAB, pode-se fazer:


>> x=-10:10;
>> y=x.^3-9*x+3;
>> format +,y
-------++++--+++++++

Observa-se que os zeros da função encontram-se nos intervalos .........., ......... e ....... Como f (x)
é um polinômio de grau 3, pode-se afirmar que cada intervalo contém um único zero de f (x) .

21
OPÇÃO 2: Construção do gráfico de f (x) .
No MATLAB:
>>x=-10:0.01:10; >>x=-4:0.01:4;
>>y=x.^3-9*x+3; >>y=x.^3-9*x+3;
>>plot(x,y,grid >> plot(x,y), grid

1000 40

800
30
600

400 20

200
10
0
0
-200

-400 -10

-600
-20
-800

-1000 -30
-10 -8 -6 -4 -2 0 2 4 6 8 10 -4 -3 -2 -1 0 1 2 3 4

Observa-se que não ficou muito clara a localização dos Agora é possível localizar três zeros: um entre
zeros. Então, é conveniente diminuir o domínio do gráfico. -4 e -3, outro entre 0 e 1 e outro entre 2 e 3.

OPÇÃO 3: Substitui-se a equação f ( x)  0 por g (x) = h(x) onde f ( x)  g ( x)  h( x) .


Constroem-se os gráficos de f (x) e g (x) e observam-se o(s) valor(es) da(s) abscissa(s) do(s)
ponto(s) de intersecção – este(s) é(são) o(s) zero(s) da função f (x) .

Pode-se tomar, por exemplo, g ( x)  x 3 e h( x)  9 x  3 de forma que f ( x)  x 3  (9 x  3)


No MATLAB:
>> x=-4:0.01:4; 80
>> g=x.^3;
60
>> h=9*x-3;
>> plot(x,g,’b’,x,h,’r’) 40

20

-20

-40

-60

-80
-4 -3 -2 -1 0 1 2 3 4

As curvas se interceptam nos valores de x que são os zeros de f.


Há três zeros no seguintes intervalos: [-4,-3],[[0,1] e [2,3].

EXEMPLO 2: Encontre os intervalos onde se encontram os zeros reais da função f ( x)  x  5e  x


pelos três opções explicadas acima.

22
EXERCÍCIOS
1) Encontre, de duas maneiras distintas os intervalos em que se encontram os zeros reais das
funções abaixo.

a) f ( x)  x 2  3
b) f ( x)  4 cos(x)  e 2 x , x  0
c) f ( x)  2 x  3x
d) f ( x)  x 5  3 x 3  2 x 2  3 x  1
e) f ( x)  x 3  2 x 2  x  1
f) f ( x)  1  x ln x

2) A equação x   ln( x) tem solução real? Em caso positivo, estime um valor para x .

RESPOSTAS
1) a) [-2,-1], [1,2]
b) [0,1]
c) [0,1], [3,4]
d) [-3,-2], [0,1], [1,2]
e) [1,2]
f) [1,2]

2) Conferir em aula

23
MÉTODOS DE REFINAMENTO DE RAIZ
MÉTODO DA BISSECÇÃO capítulo 4

Depois de isolado um zero de f no intervalo [a, b] como foi detalhado na Fase I, passa-se para a
FASE II que consiste no refinamento da raiz. Existem vários métodos e a forma como o
refinamento é efetuado é o que os diferencia. Todos são métodos iterativos, o que significa dizer
que seguem uma sequência de instruções que são executadas passo a passo, algumas das quais
são repetidas em ciclos.

Todos os métodos iterativos para obter zeros devem efetuar um teste do tipo: x n está
suficientemente próximo da raiz exata? A tolerância pode ser avaliada por dois critérios:

(i) | f ( x n ) | tol
Como x n está muito próximo da raiz, f ( x n ) deve estar muito próximo de zero.

(ii ) | xn  xn1 | tol

| x n  x n 1 |
(iii )  tol
| xn |
Teste de erro relativo no domínio

Nem sempre é possível ter todos os critérios satisfeitos simultaneamente. Assim sendo, os
métodos numéricos são desenvolvidos de forma a satisfazer pelo menos um dos critérios. Em
cada aproximação x n da raiz exata k usa-se um desses critérios e compara-se o resultado com a
tolerância pré-fixada.

Em programas computacionais, além do teste de parada usado para cada método, deve-se ter o
cuidado de estipular um número máximo de iterações para evitar que o programa entre em
“looping” devido a erros no mesmo ou à inadequação do método.

Método da Bissecção

Seja a função f (x) contínua no intervalo [a,b] e seja f (a). f (b)  0 . Supõe-se, para exemplificar,
que o intervalo [a, b] contenha uma única raiz simples k da equação f ( x)  0 . O Objetivo desse
método é reduzir a amplitude do intervalo que contém a raiz até se atingir a precisão requerida
usando, para isso, a sucessiva divisão de [a, b] ao meio.

Graficamente:

24
Iterações:
a1  b1
o Partida (1ª iteração): a1  a, b1  b, x1 
2
f (a1 )  0

f (b1 )  0   k  (a1 , x1 )
f ( x1 )  0

a 2  b2
o 2ª Iteração: a 2  a1 , b2  x1 , x2 
2
f ( a 2 )  0

f (b2 )  0   k  (a 2 , x 2 )
f ( x 2 )  0
a  b3
o 3ª Iteração: a3  a 2 , b3  x2 , x3  3
2
f ( a 3 )  0

f (b3 )  0   k  ( x3 , b3 )
f ( x3 )  0 

e assim por diante. O processo se repete até que se obtenha uma aproximação para a raiz exata
k , com a tolerância “tol” desejada.

 Vantagem do método: seja qual for o intervalo [a, b] escolhido que envolva um único zero
da f , o processo da bissecção sempre conduzirá a este zero.
 Desvantagem do método: a convergência é lenta.
 Critério de parada: | xn  xn1 | tol

EXEMPLO 1: Calcule o zero positivo da função f , onde f ( x)  x 2  3 , com tol=0,01.


1º Localização do intervalo que contém a raiz

2º Preenchimento da tabela:
n an bn xn | xn  xn1 |

25
EXEMPLO 2: Encontre o zero da função f ( x)  x 2  ln x no intervalo [0,5;1] e tol=0,01.

ALGORITMO NO MATLAB
Método da bissecção para o cálculo do zero de uma função
k  [ a, b ]

function [c,n,err]=bissec(f,a,b,tol)
n=0;
while abs(a-b)>=tol
c=(a+b)/2; n=n+1;
x=a; fa=eval(f);
x=c;fc=eval(f);
if fa*fc<0
b=c;
else
a=c;
end
end
err=abs(a-b);

26
EXEMPLO 3: Determine o maior zero do polinômio definido pela expressão p( x)  x 6  x  1 , com
tolerância 10-7. Use format long.

OBS:
 O MATLAB representa um polinômio através de um vetor contendo os coeficientes do
mesmo em ordem decrescente das potências. Assim, o polinômio x 4  3x 2  2 é
representado pelo vetor [1 0 3 0 - 2] .

 A função roots([an an-1 ... a1 ao]) fornece, no MATLAB, os zeros do polinômio


p( x)  an x n  an1 x n1  ....  a1 x  ao . Compare o resultado anterior com o fornecido por esta
função.

27
EXERCÍCIOS
1) Determine o único zero da função f , definida pela expressão f ( x)  x  5e  x , com tolerância
de 0,01.

2) Calcule a raiz real da equação x 3  131x  1  0 no intervalo [-12,-11], com tol=0,007.

3) Calcule as raízes reais de f ( x)  x 3  2 x 2  x  1 , com tol=0,001, sendo.

4) Calcule as raízes reais da equação x 4  x 3  2 x 2  1  0 com tol=1e-6

ex
5) Obtenha a menor raiz positiva da equação 2 cos(x)  construindo o algoritmo da bissecção
2
para 10-4 como tolerância.

6) Pontos críticos de uma função são aqueles em que ocorrem os máximos ou mínimos da
mesma. Um ponto crítico de uma função é um número “c” no domínio de f onde f ' (c)  0 ou
x2
f ' (c) não existe. Encontre os pontos críticos da função f ( x)   x(ln x  1) com o auxílio do
2
método da bissecção. Construa o gráfico da função em um intervalo adequado colocando título,
grades e nomeando os eixos. Indique graficamente o(s) ponto(s) encontrado(s).

7) O montante acumulado de uma conta de poupança baseada em depósitos regulares periódicos


pode ser determinado a partir da equação de anuidades devidas:

Nesta equação, A é o montante da conta, P é o valor regularmente depositado e i é a taxa de


juros por período para os n períodos em que os depósitos foram efetuados. Um engenheiro
gostaria de ter em sua conta um total de R$750.000,00 para efetuar retiradas após 10 anos e
pode dispor de R$1.500,00 por mês para atingir essa meta. Qual a taxa de juros mínima a que
esse valor deve ser investido, assumindo que o período de capitalização é mensal?
Para a resolução desse exercício pede-se:
a) A pesquisa da raiz da função por um dos métodos estudados.
b) O gráfico da função com o zero assinalado com *. O gráfico deverá apresentar título.
c) A raiz com tolerância de 1e-5, bem como o erro e o número de interações encontrados pelo
método da Bissecção.

8) Duas escadas, uma de 20 m e outra de 30 m, apoiam-se em edifícios frontais a uma avenida,


conforme ilustrado na figura. Se o ponto no qual as escadas se cruzam está a 8 m de altura do
solo, determinar a largura da avenida. Gruenberger e Jeffrey, em Problems for Computer Solution
(New York: Wiley, 1964), mostram que este problema pode ser formulado para pedir a solução da
seguinte equação:

28
a) Encontre o intervalo em que está a raiz da equação em y pelo terceiro método estudado
em aula. Apresente o gráfico relacionado a esse método e saliente a raiz com *.
b) Encontre a raiz da equação em y pelo método da Bissecção com tolerância de 1e-5.
c) Qual é a largura da avenida?

RESPOSTAS
1) 1.4296875
2) -11,44921875
3) 1,7548828125 Exercício 7
4)-0,58457469940186 ; 0,74344539642334
x.2/2+x.*(log(x)-1)
5) 0,90484619140625 16
6) A função possui um mínimo em
x  0,56714344024658. 14

7) Conferir em aula 12
8) Conferir em aula
10

8
y

-2
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
x

29
MÉTODOS DE REFINAMENTO DE RAIZ
MÉTODO DE NEWTON-RAPHSON capítulo 5
Este método, sob determinadas condições apresenta vantagens sobre os métodos anteriores: é
de convergência mais rápida e, para encontrar as raízes não é obrigatória a condição
f (a). f (b)  0 . A figura traduz a aplicação do método de Newton-Raphson a uma função:

Suponha uma escolha inicial x1 . Para obter um novo valor x 2 , traça-se a tangente à curva no
ponto ( x1 , f ( x1 )) e obtém-se o ponto x 2 , intersecção da tangente com o eixo dos x . Para obter
x3 , repete-se o processo partindo de x 2 .
A inclinação da tangente à curva no ponto ( x1 , f ( x1 )) , é:

f ( x1 )
f ' ( x1 ) 
x1  x 2
logo,

f ( x1 )
x 2  x1 
f ' ( x1 )

Então, cada termo x n 1 da sequência de aproximações é definido por:

f ( xn )
x n 1  x n  é a fórmula de iteração de Newton-Raphson
f ' ( xn )

O gráfico seguinte mostra um caso em que o método não converge. Pode-se notar que entre x o e
x1 existe um ponto de inflexão da função e que em x1 a derivada f ' ( x) é próxima de zero.

30
O outro exemplo que segue também mostra que o método não converge pois as aproximações
sucessivas ficam oscilando entre dois pontos.

 Vantagem do método: Excelente convergência.


 Desvantagem do método: Pode não convergir se x1 não for tomado suficientemente
próximo do zero da função.
 Critério de parada: | f ( xn ) | tol

É condição suficiente para a convergência do método de Newton-Raphson que f ( x) , f ' ( x) e


f ' ' ( x) sejam contínuas no intervalo que contém a raiz e que f ' ( x)  0 .

EXEMPLO 1: Calcular a raiz real de x 3  x  1  0 com tol=10-4.

n xn | f ( xn ) |

31
EXEMPLO 2: Calcule a menor raiz positiva da equação 4 * cos(x)  exp( x)  0 com erro inferior a
0,01.

ALGORITMO NO MATLAB
Método de Newton-Raphson para o cálculo do zero de uma função
k  [ a, b ]

………………………………………………………………………………….

………………………………………………………………………………….

………………………………………………………………………………….

………………………………………………………………………………….

………………………………………………………………………………….

………………………………………………………………………………….

………………………………………………………………………………….

………………………………………………………………………………….

………………………………………………………………………………….

………………………………………………………………………………….

………………………………………………………………………………….

OBS: Utiliza-se um valor c  [a, b] que contém o zero da função para iniciar o processo. Deve-se determinar a
derivada de f antes de aplicar o algoritmo.

32
EXERCÍCIOS
1) Usando os métodos da Bissecção e de Newton-Raphson, determine as raízes reais das
equações no caso de o número de raízes ser finito.e, no caso de a função possuir infinitas raízes
reais, determine a menor raiz positiva. Utilize tol= 1e-6 e compare os resultados obtidos com os
dois métodos.
a) x 3  x 2  1  0
b) 2e  x  sin( x)  0
ex  x
c)  cos(x)  0
4
d) x ln x  0.8  0

2)

3) O deslocamento horizontal y da estrutura de um prédio é definido pela seguinte equação de


amortecimento y  10e  kt cos(wt ) onde k  0.5 e w  2 . Determine o tempo necessário para que o
deslocamento horizontal chegue a 4.

4) Encontre o menor zero positivo de cada uma das funções utilizando os métodos solicitados e
preencha a tabela que segue. Utilize tol=10-6.
a) y  ln( x)  sin( x)
b) y  e cos x  x 3  3
c) y  sin( x)  xe  x
Bissecção Newton-Raphson
Intervalo que
contém a raiz
Raiz obtida
Número de
iterações
Erro

5) A equação de Kepler, usada para determinar órbitas de satélites, é dada por: M  x  Esen(x) .
Dado que E  0.2 e M  0.5 , obtenha a raiz da equação de Kepler usando o método de Newton-
Raphson.

6) A concentração de bactérias em um lago é dada pela seguinte expressão c  70e 1,5t  25e 0.075 t
onde co é a concentração no instante inicial (t=0). Determine o tempo no qual a concentração c é
igual a 0,7co com uma precisão de 10 3 . Utilize o método de Newton-Raphson.

33
7) O engenheiro recém formado M. J. Hesitant projetou um reservatório de água na forma de
semiesfera de raio 4 m que será utilizado em um prédio e cometeu um erro no cálculo: o volume
de água possível nesse reservatório é bem maior que 50 m3, estabelecido como limite. Dessa
forma, é preciso determinar o nível h máximo que a água pode atingir nesse recipiente para não
ultrapassar o limite de volume estabelecido. Determine o valor de h com precisão de 10-2 .
Obs.: a fórmula que calcula o volume com os dados exibidos na figura dada abaixo:

8)

9)

34
a) Determine a velocidade do impacto v pelo método de Newton Raphson quando os barris
são lançados numa zona de profundidade D=-300. Utilize tolerância de 0,05.

b) Através de experiências mostrou-se que os barris danificam se a velocidade de impacto


com o fundo do oceano for superior a 40. Na situação descrita em (a) haverá risco de
contaminação?

RESPOSTAS
1) a) -0.75488 b) 0.92102 c) -3.60511, -2.08217, 0.76018 d) 1.63243

2) c= 4.22953e+002. Logo, Ts=422,95 k

3) 0.51365 unidades de tempo

4) a)
Bissecção Newton-Raphson
Intervalo quecontém a raiz [2,3] [2,3]
Raiz obtida 2.21910762786865 2.21910715043727

b)
Bissecção Newton-Raphson
Intervalo que contém a raiz [1,2] [1,2]
Raiz obtida 1.14005947113037 1.14006007236089

c)
Bissecção Newton-Raphson
Intervalo que contém a raiz [2,5; 3,5] [2,5; 3,5]
Raiz obtida 2.99073505401611 2.99073522974167

5) 0.61547

6) 0.33855 unidades de tempo

7) h= 2.20821 m

8) h=0,1640625. Então, a profundidade da água no cocho é 0.8359375 pés (1-h)

9) Conferir em aula.

35
SISTEMAS DE EQUAÇÕES LINEARES______capítulo 6
Vários problemas podem ser resolvidos através de sistemas lineares. Entre eles, pode-se citar:
determinação do potencial em redes elétricas, cálculo da tensão na estrutura metálica da
construção civil, cálculo da razão de escoamento num sistema hidráulico com derivações,
previsão da concentração de reagentes sujeitos a reações químicas simultâneas e muitos outras
aplicações. O problema matemático, em todos estes casos, se reduz à resolução de um sistema
de equações simultâneas.

A solução de um conjunto de equações é muito mais difícil quando as equações são não lineares.
Entretanto a maioria das aplicações envolve somente equações lineares, embora, quando o
sistema é de grande porte, deva-se escolher o método numérico adequadamente para preservar
a máxima precisão.

Uma equação é linear se cada termo contém não mais do que uma variável e cada variável
aparece na primeira potência. Assim, a equação x  3 y  5  2 é linear enquanto que a equação
x 2  3z  4 não é linear. Um conjunto de equações lineares forma um sistema linear. Uma solução
para um sistema de equações consiste de valores para as n variáveis, tais que, quando esses
valores são substituídos nas equações, todas elas são satisfeitas simultaneamente. Por exemplo,
o sistema de três equações lineares abaixo tem como solução S={(10,-3,50}:

2 x  6 y  z  7

 x  2 y  z  1
5 x  7 y  4 z  9

Este sistema pode ser escrito na forma matricial Ax  b , sendo A a matriz dos coeficientes, x o
vetor das incógnitas e b o vetor dos termos independentes, tal como segue:

2 6 1   x   7 
1 2  1 . y    1
    
5 7  4  z   9 

De um modo geral, um sistema linear com n equações e n variáveis pode ser representado na
forma Ax  b , ou seja:
a11 x1  a12 x 2  ...  a1n xn
a x  a x  ...  a xn
 21 1 22 2 2n

...
a n1 x1  a n 2 x 2  ...  a nn xn

Dado um sistema linear, não se pode afirmar, sem investigar, que há uma solução ou, se houver,
que seja única. Como pode ser observado a seguir, existem três e apenas três possibilidades de
se classificar um sistema:

36
SISTEMA LINEAR

SPD SPI SI
Possível e determinado Possível e Indeterminado Impossível
Solução única Infinitas soluções Nenhuma solução

Resolução de sistemas lineares por métodos diretos


Métodos diretos são aqueles que, a menos de erros de arredondamento, fornecem a solução
exata do sistema linear, caso ela exista, após um número finito de operações aritméticas.
A Regra de Cramer, o método da Inversão, o método de Eliminação de Gauss e o método da
Eliminação de Gauss-Jordan são exemplos de métodos diretos.

Operações Elementares
Um método para resolver um sistema linear consiste em substituir o sistema inicial por outro que
tenha o mesmo conjunto solução do primeiro, mas que seja muito mais fácil de resolver. O novo
sistema é obtido após a aplicação de uma série de operações que simplificam as equações do
sistema e têm a propriedade especial de não alterar o conjunto solução. Estas operações são
chamadas operações elementares e são as seguintes

I) trocar duas equações,


II) multiplicar uma equação por uma constante não-nula,
III) adicionar um múltiplo de uma equação a uma outra equação

Método da Eliminação de Gauss-Jordan – Método direto


O método de Eliminação de Gauss-Jordan consiste em transformar o sistema linear original num
sistema linear equivalente onde a matriz do sistema é modificada tal como exemplificado abaixo:

1 0 0 3 0
1 0 0 4 1 2 0 0 2 0
    0 1 0 0
A  0 1 0 5  , B  0 0 1 0 1  , C  
0 0 0 0 1
0 0 1 2 0 0 0 1 0  
0 0 0 0 0

ou seja:
- O primeiro elemento não-nulo de cada linha não-nula (chamado o pivô da linha) é igual a 1.
- O pivô da linha i + 1 ocorre à direita do pivô da linha i.
- Se uma coluna contém um pivô, então todo os outros elementos desta coluna são iguais a 0.
- Todas as linhas nulas ocorrem abaixo das linhas não-nulas.

37
Diz-se que a matriz do sistema está na forma reduzida escalonada por linhas, cuja sigla em inglês
é rref. No Matlab, a matriz ampliada A relacionada a um sistema linear, é reduzida a forma
reduzida escalonada por linhas pelo comando rref(A).
x  y  z  3

EXEMPLO 1: Utilize o método de Gauss-Jordan para resolver o sistema 2 x  3 y  z  5 :
 x  y  2 z  5

x  y  z  3

EXEMPLO 2: Faça a interpretação geométrica do sistema 2 x  3 y  z  5 :
 x  y  2 z  5

38
EXERCÍCIOS

1) Resolva e classifique os sistemas abaixo utilizando o método de Gauss-Jordan. Faça a


interpretação geométrica dos sistemas (a), (b) e (c).

2 x  y  3 z  0 x  y  z  2
 
a) 3 x  2 y  z  0 b) 3x  3 y  2 z  16
x  3 y  2z  0 2 x  y  z  9
 

 x  2 y  3 z  4 w  20
3 x  2 y  8 z  4 w  26
2 x  3 y  12 
c)  d) 
 x  y  3 2 x  y  9 z  7 w  10
4 x  2 y  8 z  4 w  2

x  y  z  1
2 x  y  z  2

e) 
4 x  3 y  3 z  4
2 x  y  3 z  5

2) Uma empresa produz três tipos de produto com 3 tipos diferentes de matérias-primas (observe
o quadro abaixo). Se existem disponíveis 30, 20 e 40 unidades respectivamente de A, B e C,
quantas unidades de cada produto a empresa pode produzir?
Produto MP A MP B MP C
1 1 2 4
2 2 0 1
3 4 2 3

3) Uma transportadora possui 5 tipos de caminhões que representaremos por (1), (2), (3), (4), (5),
os quais são equipados para transportar 5 tipos diferentes de máquinas A, B, C, D, E. As
quantidades de máquinas que podem ser transportadas por cada caminhão são mostradas na
tabela abaixo. Supondo que cada caminhão vai com carga plena, calcule quantos caminhões de
cada tipo devem ser enviados para transportar exatamente: 27 máquinas do tipo A, 23 máquinas
do tipo B, 31 máquinas do tipo C, 31 máquinas do tipo D, 22 máquinas do tipo E.

39
RESPOSTAS

 3 18   96 343 342 369 


1) a) S  {(0,0,0)} b) S  {(7,3,2)} c) S   ,  d) S    , , , 
 5 5   25 25 125 125 

e) S  { }

2) S={(6,4,4)}

3) S={(4, 6, 2, 3, 5)}

40
Resolução de sistemas lineares por métodos iterativos
Os métodos iterativos são usados para resolver sistemas lineares Ax  b de alta ordem e
esparsos (com uma grande quantidade de elementos nulos). Esses métodos baseiam-se em
gerar uma seqüência de vetores x (k ) , a partir de uma aproximação inicial x (o ) . Alguns métodos
iterativos são:
- o método de Jacobi;
- o método de Gauss-Seidel;

Os métodos diretos baseados no escalonamento da matriz A se tornam proibitivos, em


termos do tempo do computador e armazenamento, quando a matriz é bastante grande. Por outro
lado, há situações práticas freqüentes, como, por exemplo, na discretização de equações parciais,
onde a matriz A é da ordem de centenas de milhares. Além disso, a maioria dos sistemas grandes
são esparsos, e a esparsividade se perde no processo do escalonamento. Para tais problemas é
altamente recomendável usar um tipo de método iterativo, que não alteram a matriz A e requerem
o armazenamento de apenas alguns vetores de ordem n em cada passo.

A idéia básica dos métodos iterativos consiste em escrever o sistema Ax  b numa forma
equivalente x  Bx  d . Então, começando com uma aproximação inicial x (1) gera-se uma
seqüência de aproximações x (n ) , definidas iterativamente por:

x ( n1)  Bx ( n )  d , n  1, 2, 3,...

e espera-se que x (n ) convirja para a solução quando n   .


Quando há convergência, x ( n1) é uma aproximação da solução melhor do que x (n ) , então
pode-se adotar o seguinte critério de parada, fixada uma tolerância tol:

|| x ( n 1)  x ( n ) || tol


norma do vetor diferença

OBS:Quando x é um número real fala-se em valor absoluto de x , mas no caso de x ser um


vetor, existem várias maneiras de se definir seu comprimento. Entende-se por norma de um vetor
como sendo um número real que define o seu comprimento. Há várias formas de se definir a
norma de um vetor. A norma que será utilizada para o critério de parada, nos métodos descritos a
seguir, é a norma infinito.

norm( x, inf)  max( abs( x))

Método de Jacobi

Parte-se do sistema Ax  b e escreve-se a matriz A como

A  L  D U

em que L  lij  é uma matriz triangular inferior formada pela parte inferior da matriz A, D  d ij  é
uma matriz formada pela diagonal de A e U  uij  é uma matriz triangular superior formada pela
parte superior da matriz A, isto é:
aij , i  j aij , i  j aij , i  j
l ij   , d ij   , u ij  
0, i  j 0, i  j 0, i  j
41
Pode-se transformar o sistema original em:

(L  D  U )x  b
Dx  ( L  U ) x  b
x  D 1 [( L  U ) x  b]
x   D 1 ( L  U ) x  D 1b

Fazendo-se B   D 1 ( L  U ) e d  D 1b tem-se a matriz B , que é chamada de matriz de


iteração.
O processo iterativo do método de Jacobi, então, é definido por:

x ( k 1)   D 1 ( L  U ) x ( k )  D 1b

ou seja

x  Bx  d (*)

Para iniciar o método, deve-se escolher um vetor x ( 0) e aplicá-lo em (*). Um novo vetor x (1) será
calculado e assim, sucessivamente, até que o critério de parada seja satisfeito.

OBS:
 O método de Jacobi não se aplica se a matriz de iteração, B , não for estável. Uma das
formas de verificar a estabilidade de uma matriz é através da análise de seus autovalores.
 Se uma matriz tem todos os seus autovalores (tomados em valor absoluto) menores do
que 1, então ela é estável. No MATLAB, eig (B) determina os autovalores de uma matriz B .
Então, max(abs(eig(B))) < 1, a matriz B é estável.
 No Matlab as seguintes funções são úteis na geração de matrizes diagonais e triangulares:
triu, tril e diag (maiores esclarecimentos podem ser obtidos no help do Matlab).

2 6 1 
Exemplo 1: A partir da matriz A  1 2  1  , construa L, D e U conforme solicita o método de
5 7  4
Jacobi.

42
10 x  2 y  z  7

Exemplo 2: Resolva o sistema  x  5 y  z  8 pelo método de Jacobi. Não esqueça de verificar
2 x  3 y  10 z  6

a estabilidade da matriz B.

x  y  z  2

Exemplo 3: Resolva o sistema 3x  3 y  2 z  16 pelo método de Jacobi.
2 x  y  z  9

ALGORITMO NO MATLAB

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

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

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

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

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

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

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

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

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

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

43
Método de Gauss-Seidel

É uma variante do método de Jacobi construído de forma a melhorar a convergência. Seja o


sistema Ax  b escrito na forma:

(D  L  U ) x  b
( D  L) x  Ux  b
x  ( D  L) 1Ux  ( D  L) 1 b

Fazendo-se B  ( D  L) 1U e d  ( D  L) 1 b , tem-se a matriz de iteração B e sua estabilidade


garante a convergência do método. O método de Gauss-Seidel é obtido fazendo-se:

x ( k 1)  ( D  L) 1Ux ( k )  ( D  L) 1 b

ou seja
x  Bx  d (*)

Para iniciar o método, deve-se escolher um vetor x ( 0) e aplicá-lo em (*). Um novo vetor x (1)
será calculado e assim, sucessivamente, até que o critério de parada seja satisfeito.

10 x  2 y  z  7

Exemplo: Resolva o sistema  x  5 y  z  8 pelo método de Gauss-Seidel. Compare com o a
2 x  3 y  10 z  6

resolução obtida pelo método de Jacobi.

44
ALGORITMO NO MATLAB

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

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

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

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

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

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

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

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

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

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

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

Algumas considerações quanto à convergência

A convergência para a solução, quando usados os métodos de Jacobi e Gauss-Seidel, é


garantida quando a matriz de iteração B é estável, ou seja, possui todos os seus autovalores
(tomados em valor absoluto) menores do que 1.

Outra condição que garante (mas que não é essencial) para a convergência dos métodos de
Jacobi e Gauss-Seidel é o fato de a matriz A (dos coeficientes) ser estritamente diagonal
dominante, ou seja, o módulo de cada elemento da diagonal principal ser maior que a soma dos
módulos dos outros elementos da sua linha.

 x  3 y  z  2

Exemplo: Dado o sistema  6 x  4 y  11z  1 :
5 x  2 y  2 z  9

a) mostre que os métodos de Jacobi e Gauss-Seidel não vão convergir para a solução e analise o
motivo pelo qual esse fato ocorre.
b) troque as linhas do sistema de forma a transformar a matriz A estritamente diagonal dominante.
Resolva o sistema arrumado pelos dois métodos e verifique se há ou não convergência para a
solução.

45
EXERCÍCIOS

1) Dados os sistemas abaixo, pede-se:


- construir a matriz de iteração de Jacobi e Gauss-Seidel, calcular seus autovalores e verificar a
estabilidade das mesmas;
- aplicar os métodos de Jacobi e Gauss-Seidel para calcular a solução com tol=1e-6. Use um
vetor nulo para iniciar as iterações.

 x1  0.5 x 2  0.1x 3  0.1x 4  0.2


0.2 x  x  0.2 x  0.1x  2.6
 1 2 3 4
a) 
 0.1x1  0.2 x 2  x 3  0.2 x 4  1.0
0.1x1  0.3 x 2  0.2 x 3  x 4  2.5

10 x1  x 2  x3  2 x 4  6.5
4 x  20 x  3x  2 x  68.4
 1 2 3 4
b) 
5 x1  3x 2  15 x3  x 4  112 .0
 x1  x 2  2 x3  8 x 4  3.9

6 2 1 1  x  3.632 
2 4 0 1   y   5.401
c)  . 
1 1 4  1  z  6.732 
    
 1 0  1 2   t  1.502 

2) Verifique a possibilidade de utilizar um método iterativo para resolver os sistemas abaixo. Em


caso de impossibilidade, utilize um método direto.

 3 x1  6 x 2  4 x3  7 x 4  30
4 x  7 x  3 x  2 x  22
 1 2 3 4

2 x1  9 x 2  x3  x 4  12
 x1  2 x 2  5 x3  4 x 4  3

3) Nenhum dos métodos iterativos desta seção funciona para os sistemas abaixo. Verifique como
arrumar as equações de modo a garantir a convergência.

 x  4 y  z  3
2 x  6 y  4 
a)  b) 4 x  y  10
5 x  y  6  y  4 z  6

4) Uma barra linear de um metro de comprimento é mantida a 0 graus em um extremo e a 128


graus no outro. Desejamos determinar a temperatura da barra a cada 20 cm. Denominando de
To  0 a temperatura de um extremo, de T5  128 a temperatura no outro extremo e de T1 , T2 , T3
e T4 a temperatura nos pontos interiores e sabendo que a temperatura em cada ponto interior é
igual à média aritmética da temperatura de seus dois pontos vizinhos:
Escreva um sistema linear para a determinação de T1 , T2 , T3 e T4 e resolva-o por Gauss Seidel.

46
5) Na fronteira da placa de metal, abaixo, estão mostradas as
temperaturas constantes. Encontre a temperatura de equilíbrio
em cada um dos pontos interiores indicados, através da
montagem e resolução de um sistema de equações lineares pelo
método de Gauss-Seidel. Para montar as equações do sistema
pode-se aplicar a seguinte propriedade: “A temperatura em cada
ponto P do interior de uma placa é a média das temperaturas de
qualquer círculo dentro da placa, centrado em P”.

6) Usando aço reciclado, uma fábrica produz peças que devem conter 4 kg de cromo, 8 kg de
tungstênio e 7 kg de carbono por tonelada de aço produzido. O fabricante tem três fontes de aço
reciclado:
Fonte 1: cada tonelada contém 2 kg de cromo, 8 kg de tungstênio e 6kg de carbono.
Fonte 2: cada tonelada contém 3 kg de cromo, 9 kg de tungstênio e 6kg de carbono
Fonte 3: cada tonelada contém 12 kg de cromo, 6kg de tungstênio e 12 kg de carbono.
Qual a porcentagem que deve ser utilizada de cada fonte para atender às exigências do produto
final?

7) Resolva o problema que segue pelo método que achar mais conveniente:
Uma refinaria de petróleo processa dois tipos de petróleo: com alto teor de enxofre e com baixo
teor de enxofre. Cada tonelada de petróleo com baixo teor exige 5 minutos na unidade de mistura
e 4 minutos na refinação; cada tonelada de alto teor exige 4 minutos de mistura e 2 minutos de
refinação. Se a unidade de mistura está disponível durante 3 horas, e a refinaria durante 2 horas,
quantas toneladas de cada tipo de óleo deveriam ser processadas para que as duas unidades
sejam completamente utilizadas?

RESPOSTAS
1) a) S={(2,-3,1,-2)}

b) S={( 0.8862 ; 2.6312; -7.1635; 1.0852 )}


c)S={( 0.3733 ; 0.6934 ; 1.8866 ; 1.8809 )}

2) S={(-54/7, -1/7, 17/7, -2/7)}

3) S={(1,25; 0,25)}; S={(3, 2, 2)}

4) Conferir em aula

5) {(25, 25, 75, 75)}

6) 50%, 33,3% e 16,7%

7) 20 toneladas de cada tipo de petróleo

47
INTERPOLAÇÃO________________________capítulo 7
Interpolação é um método que permite construir um novo conjunto de dados a partir de um
conjunto discreto de dados pontuais conhecidos. A interpolação é muito utilizada para casos onde
é difícil calcular o valor da função em um ponto do seu domínio, ou ainda quando a fórmula de
uma função não é conhecida, mas sim um conjunto de valores que, em geral, são obtidos através
de experimentos. A interpolação também é útil para diferenciação e integração.
A função p(x) que interpola uma função f (x) nos pontos conhecidos pode pertencer a uma
das seguintes famílias:
 P, dos polinômios: pn ( x)  ao  a1 x  a2 x 2  ...  an x n
 F, de Fourier: f i ( x)  ai cos(ix)  bi sen (ix)
 E, de exponenciais: y  aebx
 S, de splines: ‘pedaços’ de polinômios
 outras

Interpolação polinomial
A aproximação de funções por polinômios é uma das idéias mais antigas da análise numérica,
e ainda uma das mais usadas. É bastante fácil entender por que razão isso acontece. Os
polinômios são facilmente computáveis, suas derivadas e integrais são novamente polinômios,
suas raízes podem ser encontradas com relativa facilidade, etc.
Os métodos interpolação polinomial são usados como uma aproximação para uma função
f (x) , principalmente, nas seguintes situações:
a) a expressão analítica de f (x) não é conhecida, isto é, sabe-se apenas seu valor em alguns
pontos x 0 , x1 , x 2 , . . ., (esta situação ocorre muito frequentemente na prática, quando se trabalha
com dados experimentais) e é necessário manipular f (x) como, por exemplo, calcular seu valor
num ponto, sua integral num determinado intervalo, etc.
b) f (x) é extremamente complicada e de difícil manejo. Então, às vezes, é interessante sacrificar
a precisão em benefício da simplificação dos cálculos.

Dados os pontos ( x0, f ( x0 )), ( x1, f ( x1 )), ..., ( xn, f ( xn )), portanto, (n + 1) pontos de uma função
f (x) se deseja aproximar f (x) por um polinômio p n de grau menor ou igual a n, tal que:

f ( xk )  p n ( xk ) , k = 0,1,2,...,n ,

isto é, por um polinômio que coincida nos nodos com a função f (x) .

Existência e unicidade do polinômio interpolador


Seja o polinômio pn ( x)  ao  a1 x  a2 x 2  ...  an x n . Obter o polinômio p n (x) significa obter
os coeficientes a0 , a1 ,..., a n . Da condição f ( xk )  p n ( xk ) , k = 0,1,2,...,n, monta-se um sistema de
equações lineares onde f ( xk )  y(k ) :

a n x0 n  ...  a2 x0 2  a1 x0  ao  y (0)

a n x1  ...  a2 x1  a1 x1  a0  y (1)
n 2

 (*)

a x n  ...  a x 2  a x  a  y (n)
 n n 2 n 1 n o

48
que tem (n+1) equações e (n+1) variáveis: a0 , a1 ,..., a n .

A matriz dos coeficientes de (*) é dada por

 xo n ... x0 2 xo 1
 n 2 
 x1 ... x1 x1 1
V
   
 n 2 
 xn ... xn xn 1

e é chamada de matriz de Vandermonde. Para essa matriz, desde que x0 , x1 ,..., xn sejam pontos
distintos tem-se det(V )  0 , e então o sistema linear admite solução única.
Portanto, existe um único polinômio p n , de grau  n , tal que f ( x k )  p n (k ) , k= 0,1,2,...,n ,
desde que xk  x j , k  j .

Utiliza-se a seguinte nomenclatura:


 A interpolação por dois pontos distintos é chamada de interpolação linear
 A interpolação por três pontos distintos é chamada de interpolação quadrática
 A interpolação por quatro pontos distintos é chamada de interpolação cúbica
 A interpolação por n pontos distintos é chamada de interpolação de ordem n – 1

Formas de obter p n (x)


Uma das formas é a resolução do sistema linear obtido anteriormente. Pode-se ainda citar as
formas de Lagrange e Newton. Teoricamente, as três formas conduzem ao mesmo polinômio. A
escolha entre as formas depende de condições como estabilidade do sistema linear, tempo
computacional, etc...

Resolução do sistema cuja matriz dos coeficientes é a matriz de Vandermonde


O sistema (*) pode ser representado na forma da equação matricial Ax  b . Nesse caso tem-se
Vc  b onde V é a matriz dos coeficientes, que corresponde a matriz de Vandermonde, c é o vetor
das incógnitas (coeficientes do polinômio) e b é o vetor dos termos independentes (imagens ou
valores de y).

Como o sistema obtido será SPD, pode-se encontrar o vetor c pelo método da inversão, ou seja,

c  V 1b

Para obter a matriz de Vandermonde, no MATLAB, utiliza-se o comando vander(x), onde


x  x0 x1  xn  .

Observação: Nos pontos tabelados, o valor do polinômio encontrado e o valor da função devem
coincidir.

49
Exemplo 1: Encontrar o polinômio de grau 2 que interpola os pontos da tabela que segue.
Construa o gráfico com os nodos (pontos) e o polinômio interpolador.

x -1 0 2
y 4 1 -1

Exemplo2: A resistência f(x) de um certo fio (de uma certa substância) varia com o diâmetro
desse fio. A partir de uma experiência registraram-se os seguintes valores:

x1 x2 x3 x4
Diâmetro 1,5 2,0 3,0 4,0
f(xi) 4,9 3,3 2,0 1,5

a) Determine um polinômio interpolador para esse conjunto de dados.


b) Construa o gráfico dos pontos e do polinômio interpolador.
c) Estime a resistência de um fio com diâmetro de 2,7.

Exemplo 3: Projete um método para aproximar cos(x) por um polinômio de quarto grau no

intervalo 0  0 
2
b) Compare o valor de cos(0,5) com a aproximação fornecida por seu polinômio. Calcule o erro
absoluto cometido.

c) Gere os gráficos de cos(x) e de seu polinômio, ambos no intervalo 0  0  para verificar como
2
se comportam.

50
EXERCÍCIOS

1) Observe os dados abaixo relacionados ao volume específico de uma substância em função da


temperatura. Calcule o volume específico da substância para a temperatura de 435º C através da
interpolação linear.

T(°C) 450 400


V(m3/kg) 0,06330 0,05781

2) Em uma experiência num túnel de vento, a força sobre um projétil devido à resistência do ar foi
medida para velocidades diferentes:

Velocidades (pés/s): 0 2 4 6 8 10
Força (lb): 0 2,90 14,8 39,6 74,3 119

a) Determine um polinômio interpolador para esse conjunto de dados e obtenha uma estimativa
para a força sobre o projétil quando ele está se deslocando a uma velocidade de 12 pés/s. Utilize
um polinômio de grau 5.
b) Construir um gráfico do polinômio de grau cinco obtido no item anterior e dos pontos utilizados
na interpolação.

3) A velocidade do som na água varia com a temperatura de acordo com a tabela abaixo

x1 x2 x3 x4 x5
Temperatura 86,0 93,3 98,9 104,4 110,0
(ºC)
f(xi) 1552 1548 1544 1538 1532

Pretende-se estimar a velocidade do som na água a uma temperatura 100 ºC, com quatro casas
decimais com arredondamento.

4) Dados os valores:
x 0,10000 0,70000 1,00000 1,50000 1,90000
f(x) -2,20159 0,68633 2,00000 5,28047 9,40085

a) Calcule f(0,5) por interpolação linear.


b) Calcule f(0,85) por interpolação quadrática.
c) Calcule f(1,7) por interpolação cúbica.

5) Sabendo que a intensidade do campo elétrico no ar, de um ponto em relação a uma carga
puntiforme de 650 stat Coulomb, varia com a distância em centímetros de acordo com os dados
abaixo:
d 5 7,5 10 12,5 15
E 26,00 11,56 6,50 4,16 2,88

a) Calcule a intensidade do campo elétrico em um ponto situado a 8,5 cm da carga, utilizando um


polinômio interpolador que passe pelos pontos dados.
b) Construa um gráfico que represente o polinômio obtido, os pontos dados e o ponto (8.5; E) .
c) Repita os itens (a) e (b) utilizando apenas três pontos.
d) Analisando os gráficos construídos, qual dos resultados “parece” mais correto?

51

6) Projete um método para aproximar sen(x) por um polinômio cúbico no intervalo 0  0 
2
b) Compare o valor de sin(0,5) com a aproximação fornecida por seu polinômio.

c) Gere os gráficos de sin(x) e de seu polinômio, ambos no intervalo 0  0  para verificar como
2
se comportam.

7) Os dados abaixo representam a temperatura t (em ºC) e a pressão de vapor do césio, 


(kgf/mm2):

t 244 249,5 272 278,4 315 350 397 670


 0,29 0,31 0,99 1,01 3,18 6,72 15,88 760,00

a) Para avaliar a pressão do vapor em 275ºC, use um polinômio interpolador de grau 3.


b) Utilize o polinômio encontrado no item anterior para calcular a pressão correspondente a uma
temperatura de 360º .
c) Construir um gráfico do polinômio obtido no item e dos pontos utilizados na interpolação.

8) Um veículo de fabricação nacional, após vários testes, apresentou os resultados a seguir


quando analisou-se o consumo de combustível de acordo com a velocidade média imposta ao
veículo. Os testes foram realizados em rodovia em operação normal de tráfego, numa distância
de 72 km.

Velocidade (km/h) 55 70 85 100 115 130


Consumo (Km/L) 14.08 13.56 13.28 12.27 11.30 10.40

Utilize uma interpolação quadrática para estimar o consumo para a velocidade de 90 km/h.
Apresente, num mesmo gráfico, a parábola e os pontos utilizados na interpolação.

RESPOSTAS

1) 0,061653 m3/kg

2) 0.0026042 x5 - 0.070052 x4 + 0.66146 x3 - 1.1948 x2 + 1.7125 x


186.9000 lb

3) 1542,9645

4) a) f(0.5)= -0.2763
b) f(0.85)= 1.2818
c) f(1.7)= 7,1411

5) a) 8.8954
b) 8.4104

6) -0.1139 x3 - 0.0655 x2 + 1.0204x

7) (9/262727)x3 - (115/4058)x2 + (2869/367)x - (29441/41)

8) -0.0016 x2 + 0.2328x + 5.2144


52
Interpolação de Lagrange

Pela interpolação de Lagrange o polinômio p n (x) é obtido de forma mais diretamente e menos
trabalhosa, considerando que:
i) pn ( xk )  f ( xk ) , k = 0,1,2,...,n
ii) p n (x) é polinômio de grau máximo n e que fornecerá o polinômio procurado.

53
EXERCÍCIOS

1) Escreva um script em Matlab para determinar os coeficientes do polinômio interpolador de


Lagrange p 2 ( x ) para o exercício anterior. O script deverá valer para qualquer situação envolvendo
3 nodos, de forma que, encontre os coeficientes de qualquer p 2 ( x ) com a simples troca dos
vetores x e y.

2) Utilize o script anterior para determinar o polinômio interpolador de Lagrange p 2 ( x ) , definido


pelos pontos (-3,-1), (-2,2), (1,-1).

54
AJUSTE DE CURVAS
MÉTODO DOS MÍNIMOS QUADRADOS capítulo 8
O método dos mínimos quadrados é outra forma de aproximação de funções. Ao contrário
do polinômio interpolador, por este método não é necessário que o ajuste passe exatamente por
cima dos pontos (nodos). Encontra-se uma função de um certo tipo pré-estabelecido (ex. reta,
parábola, senoide) que melhor ajusta um conjunto de pontos ou uma função dada. Este método é
recomendado quando é preciso obter um valor aproximado da função em algum ponto fora do
intervalo de tabelamento (extrapolação).

Caso Discreto
Dado um conjunto de pontos x k , y k  , k  0, 1, 2,..., n , pretende-se encontrar uma função
f (x) tal que o desvio em cada ponto k , definido por:

d k  f ( xk )  y k

seja mínimo. A escolha da função f (x) depende do gráfico dos pontos, chamado de diagrama de
dispersão.

15

10

0
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

Há duas possibilidades, ou escolhe-se f de forma que a soma dos desvios absolutos seja
mínima, ou f é tal que a soma dos quadrados dos desvios seja mínima:

S  d1  d 2  ...  d n
2 2 2

A segunda opção é mais tratável matematicamente. Daí a designação: método dos mínimos
quadrados.

Ajustamento linear
Deve-se encontrar uma reta f ( x)  ax  b que melhor se aproxime dos dados. Deseja encontrar
tal reta de forma que:
55
S (a, b)  ax1  b  y1   ax2  b  y 2   ...  axn  b  y n 
2 2 2
(*)

seja mínima. Uma condição para que isso ocorra é que a derivada de (*) seja igual a zero. Dessa
forma, tem-se:

S (a, b)
 2ax1  b  y1 .x1  2ax2  b  y 2 .x 2  ...  2axn  b  y n .x n  0
a
S (a, b)
 2ax1  b  y1 .  2ax2  b  y 2   ...  2axn  b  y n .  0
b

Então, obtém-se um sistema com as equações normais:

( x1 2  ...  x n 2 )a  ( x1  ...  x n )b  x1 y1  ...  x n y n



( x1  ...  x n )a  nb  y1  ...  y n

que, ao ser resolvido, fornece os valores de a e b da reta ajustante.


Há outro procedimento mais fácil para montar as equações normais:

 x1 1  y1 
x  y 
1 a 
K  2 , y   , p   
2

 1   b 
   
 xn 1  yn 

Assim sendo, as equações normais podem ser escritas, matricialmente, da seguinte forma:

K t Kp  K t y

e a solução é dada por:

p  ( K t K ) 1 K t y

Exemplo 1: Ajuste a reta dos mínimos quadrado pelos pontos dados abaixo. Construa o diagrama
de dispersão e a reta do ajustamento.

x 1 2 3 4 5 6 7 8
y 0.5 0.6 0.9 0.8 1.2 1.5 1.7 2.0

56
Exemplo 2: Faça o mesmo que no exercício anterior para os pontos (-1,10), (0,9), (1,7), (2,5),
(3,4), (4,3), (3,0), (6,-1).

Ajustamento parabólico
Para ajustar a parábola dos mínimos quadrados y  ax 2  bx  c procede-se de forma análoga ao
ajustamento linear. Assim sendo, pode-se obter as equações normais fazendo-se:

 x1 2 x1 1  y1 
 2  y  a 
K 2 , y    , p  b 
x x2 1 2
      
 2     c 
 x n xn 1  yn 
e a solução é dada por:

p  ( K t K ) 1 K t y

Exemplo: Ajuste uma parábola aos dados abaixo pelo método dos mínimos quadrados. Construa
o diagrama de dispersão e a parábola ajustante.

x 0 1 2 3 4
y 27 42 60 87 127

Ajustamento polinomial
Procede-se nos casos linear e parabólico para o ajustamento a uma curva polinomial de grau 3, 4,
5, .... Porém, se os dados não tiverem uma distribuição polinomial, o polinômio ajustante pode ter
grandes oscilações, que aumentam com o grau desse polinômio. Por isso, raramente se usam
polinômios de graus maior que 5.

57
EXERCÍCIOS:
1) Usando o método dos mínimos quadrados de maneira conveniente, aproxime os pontos da
tabela abaixo por uma função do tipo y  ax  b . Plote, no mesmo sistema de eixos, o diagrama
de dispersão e a reta do ajustamento.

x 0 1 2 3
y 1 2 4 8

2) Em um experimento foram obtidos os seguintes dados:

x 0 1 2 3 4
y 0.01 1.01 1.40 3.81 4.01

Determinar a reta que melhor se ajusta aos dados da tabela, usando o método dos mínimos
quadrados. Plote, no mesmo sistema de eixos, o diagrama de dispersão e a reta do ajustamento.

3) Considere os dados de um experimento conforme tabela:

xi -9 -6 -4 -2 0 2 4
f ( xi ) 30.1 10.1 8.9 5.9 5.0 3.9 4.01

Usando o método dos mínimos quadrados, ajuste aos dados da tabela utilizando um polinômio:
a) linear.
b) quadrático.
c) cúbico.
d) Plote, no mesmo sistema de eixos, o diagrama de dispersão e as curvas ajustantes e compare
os resultados obtidos.

4) Aplicando o processo dos mínimos quadrados, ache os polinômios quadrático e cúbico que
melhor se ajustem aos pontos da tabela. Em seguida, plote no mesmo sistema de eixos, o
diagrama de dispersão e as curvas ajustantes. Compare os resultados obtidos.

x 0.78 1.56 2.34 3.12 3.81


y 2.50 1.20 1.12 2.25 4.28

5) Um braço de um robô deve passar nos instantes t0, t1, t2, t3, t4 e t5 por posições pré-definidas
θ(t0), θ(t1), θ(t2), θ(t3), θ(t4) e θ(t5), onde θ(t) é o ângulo (em radianos) que o braço do robô faz
com o plano XOY.

a) Ajuste uma reta aos dados pelo método dos mínimos quadrados.

58
b) Construa o gráfico da reta ajustante e o diagrama de dispersão em um mesmo sistema de
eixos.
c) Usando a reta ajustante calcule o instante em que a posição do braço do robô é θ=2.8.
d) Resolva todo o exercício em um script de nome “exercicio1”. Na execução do script deverá
ser anunciado cada saída fornecida pelo mesmo (parâmetros da reta, gráfico e previsão).
Utilize o comando disp para fazer os anúncios. Utilize, no script, o comando pause se achar
conveniente.

6) Placas de orifício com bordas de canto (ou faca) são muito utilizadas na medição da vazão de
fluidos através de tubulações. Suponha uma placa de orifício que tenha os seguintes parâmetros
geométricos:

A = área da seção reta do orifício;


A1 = área da seção reta da tubulação;
A2 = CA seção reta no ponto de maior concentração após o orifício.

O coeficiente C é função da razão A/A1 e valores experimentais deste coeficiente estão listados
na tabela que segue:

A/A1 0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00
C 0.62 0.63 0.64 0.66 0.68 0.71 0.76 0.81 0.89 1.00

a) Fazendo x = A/A1, ajuste a função C ( x)  ao  a1 x  a 2 x 2 aos pontos da Tabela, usando o


método dos mínimos quadrados.
b) Faça um gráfico dos valores fornecidos pelo polinômio e acrescente, a esse gráfico, os valores
dos pontos da tabela. Comprando, visualmente, a curva dos valores fornecidos pelo polinômio e
os valores da tabela, pode-se concluir que a aproximação obtida é adequada é .....

7) Após serem efetuadas medições em um gerador de corrente contínua, foram obtidos os


seguintes valores, indicados por um voltímetro e um amperímetro:

I 1,58 2,15 4,8 4,9 3,12 3,01


Carga (A)
V 210 180 150 120 60 30
Volts (V)

a) Faça um diagrama de dispersão dos dados.


b) Ajuste os dados por um polinômio de grau adequado.
c) Estime o valor a ser obtido no voltímetro quando o amperímetro estiver marcando 3,05 A.

59
RESPOSTAS

1) y  2,3x  0,3

2) y  1,08 x  0,112

3) a) y  1,6782 x  6,1052
b) y  0,2629 x 2  0,3969 x  2,9548
c) y  0,0337 x 3  0,0069 x 2  0,0743 x  5,1621

4) y  1,0023 x 2  4,0143 x  5,0221

5) a) y  0,4714 x  0,4167
c) 5,0558

6) conferir em aula

7) conferir em aula

60
Caso não-linear do método dos mínimos quadrados
Quando se quer realizar um ajustamento que não seja linear, o melhor procedimento consiste em
linearizar o problema através de manipulação algébrica e mudança de variáveis.

Exemplo: O número de bactérias, por unidade de volume, existente em uma cultura após x horas
é apresentado na tabela abaixo.

Nº de horas 0 1 2 3 4 5 6
Nº de bactérias 32 47 65 92 132 190 275

a) Ajuste os dados acima à curva y  beax pelo método dos mínimos quadrados.
b) Quantas horas seriam necessárias para que o número de bactérias por unidade de volume
ultrapasse 2000?

Funções para ajustamento


Quando o ajustamento é não linear, há um conjunto de funções desenvolvidas para ajustar
curvas. O quadro abaixo mostra algumas possibilidades.

Tipo Função Forma linear Mudança de variável e constantes


1 a
y  b
x
2 1
y
ax  b
3 y  beax
4 y  bx a

61
EXERCÍCIOS:

1) Os engenheiros que participaram da construção dos túneis da rodovia dos Imigrantes em


direção ao litoral de São Paulo enfrentaram alguns problemas inéditos no campo da engenharia
civil. O maior problema foi a presença de nascentes de água na rocha que foi perfurada para a
passagem dos túneis. Depois de vários estudos, levantaram experimentalmente a relação entre o
tempo (idade) dos túneis e a taxa de infiltração de água no concreto:

t (anos) 1.0 2.0 3.0 4.0 5.0 6.0 7.0


S 0.050 0.100 0.149 0.199 0.247 0.296 0.343

Os engenheiros levantaram duas hipóteses para a função que relaciona as duas medidas:
S (t )  bt a e S (t )  beat
Qual das duas aproxima melhor os dados? Depois de quantos anos a infiltração atingirá 10%?

1
2) Com base no conjunto de dados abaixo, determine os coeficientes m e b da função y  .
mx  b
Apresente o gráfico da função obtida e dos pontos da tabela.

x -0.2 -0.1 0.2 0.7 1,3


y 5.2 3 0.6 0.4 0.2

3) Apresentados os dados

x 4 4.2 4.5 4.7 5.1 5.5 5.9 6.3 6.8 7.1


y 102.56 113.18 130.11 142.05 167.53 195.14 224.87 256.73 299.50 326.72

a) Construa a aproximação pelos m.q. da forma y  beax .


b) Construa a aproximação pelos m.q. da forma y  bx a
c) “Plote” as funções obtidas no mesmo gráfico e escolha aquela que melhor se ajusta aos
pontos, justificando.

4) Crie um script que resolva o problema 3.

RESPOSTAS

1) y  0,0502 x 0,9903 e y  0,0501e 0,3019 x

1
2) y 
3,1192 x  0,7532

3) a) y  24,2593e 0,3724x
b) y  6,2389 x 2,0195

62
QUADRATURA NUMÉRICA_______________capítulo 9
Sabe-se que a integral definida está ligada ao problema de determinar a área de uma figura plana
qualquer, tal como a região R, abaixo da curva f (x) em um intervalo [a,b].

Para uma grande classe de funções, calcula-se a integral definida utilizando as respectivas
funções primitivas e fazendo uso de fórmulas de integração. No entanto, o uso de primitivas pode
ser um processo muito penoso nos casos em que a função integranda é complexa ou em
situações práticas em que apenas são conhecidos um conjunto de dados tabulados. Nestas
situações utiliza-se a integração numérica também chamada de quadradura numérica.

A integração numérica é uma técnica comumente empregada na determinação de uma integral


definida, cuja função não é disponível, é muito complicada ou não possui uma solução analítica.
Ela consiste na aproximação de uma integral definida do tipo:

b
I   f ( x)dx
a

por uma soma do tipo:

b n
I   f ( x)dx   wi f ( xi ).x ,
a i 1

na qual f ( xi ) são os valores da função f (x) , x  xi 1  xi e wi é um valor numérico de


ponderação que também é conhecido por função peso.

Este estudo restringir-se-á ao caso em que o intervalo x é constante. A determinação dos


diferentes métodos de integração numérica consistem basicamente em avaliar o valor da função
peso wi .

Algumas das fórmulas de quadratura mais comuns são a Regra dos Trapézios e a Regra
de Simpson, que fazem parte uma classe mais geral de fórmulas de quadratura,
designadas Fórmulas de Newton-Cotes.

63
Regra dos Trapézios
Para obter a integral de uma função f (x) num intervalo [a, b] através da regra dos trapézios
básica, interpola-se a função integranda f por um polinômio linear (reta) pelos pontos (a, f (a)) e
(b, f (b)) , tal como mostra a figura.

Desta forma, a área sob a função f (x) , que é equivalente à integral dessa função, é aproximada
pela área do trapézio cuja área é dada por:

(b  a)
b
I   f ( x)dx   f (a)  f (b) 
a
2

com um determinado erro de truncamento.

Considerando-se, agora, a divisão do intervalo [a, b] em subintervalos de mesmo


ba
comprimento h  , determina-se, assim, n  1 nodos igualmente espaçados. Pode-se aplicar
n
em cada um dos subintervalos a regra dos trapézios básica:

64
Tem-se, então, a regra dos trapézios, que é expressa por:

1 1 
I T  h f ( xo )  f ( x1 )  ...  f ( xn 1 )  f ( x n ) 
2 2 

com erro de truncamento total dado por

(b  a ) 2
Et   h f ' ' (c) para algum c  a, b  .
12

e
x
Exemplo 1: Calcular dx , pela regra dos trapézios com quatro intervalos. Calcular o erro
0

absoluto cometido em cada caso a partir do cálculo exato da integral obtido analiticamente.

ALGORITMO

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

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

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

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

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

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

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

65
EXERCÍCIOS

1) Calcule as integrais a seguir pela regra dos Trapézios usando 4 e seis divisões do intervalo
[a,b];
1.2

 e coxdx
x
a)
0
4
b) 1
x dx
14
dx
c) 
2 x

 (4  x
2
2) Tomando para número de trapézios n = 10, 100 e 1000, calcular )dx .Determinar o erro
2
cometido comparando os resultados com o valor exato dessa integral.

3) Calcular o trabalho realizado por um gás sendo aquecido conforme os dados da tabela,
Vf

sabendo que W   PdV onde Vi e V f são os volumes inicial e final, respectivamente.


Vi

V(m3) 1,5 2,0 2,5 3,0 3,5 4,0 4,5


P(kg/m2) 80 72 64 53 44 31 22

2
dx
4) Deseja-se calcular ln 2   através das técnicas de integração numérica. Utilize n = 20, 50 e
1
x
100 intervalos.

5) Sabendo-se que a quantidade de calor necessária para elevar a temperatura de um certo corpo
t1
m de to a t1 é Q  m C ( )d onde C() é o calor específico do corpo à temperatura , calcular a
to

quantidade de calor necessária para elevar 20 kg de água de 0º a 100º. Para a água, temos:

 C()(Kg ºC)
0 999,9
10 999,7
20 998,2
30 995,3
40 992,3
50 998,1
60 983,2
70 977,8
80 971,8
90 965,3
100 958,4

66
6)

7) A resposta de um transdutor a uma onda de choque causada por uma explosão é dada pela
2 e ax
função I ( a )   f ( x, a ) dx com f ( x, a )  .
1 x
a) Calcule I(2) usando a fórmula do trapézio com 50 subintervalos.
b) Determine o erro absoluto cometido com a proximação através da comparação entre os valores
exato e calculado pelo método. Utilize o comando int ( declare syms) para calcular o valor exato
e, em ambos os cálculos, format long.
c) Resolva I(4) manualmente (sem o uso do algoritmo) e considerando 4 subintervalos.

67
RESPOSTAS

1) a) 1,6272 1,6393
b) 4,6551 4,6615
c) 4,7684

2) 10,56 10.6656 10.6667


Valor exato = 32/3

3) 157,5

4) 0.6933
0.6932
0.6932

5) 1972170

6) T=1.0553e+003

7) Conferir em aula

68

Você também pode gostar