Escolar Documentos
Profissional Documentos
Cultura Documentos
NUMÉRICO
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
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:
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
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.
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
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
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
5
EXERCÍCIOS
1) Crie um vetor linha v contendo os seguintes elementos: 3, 5, 7, 12.
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 0 0
-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
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:
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')
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:
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
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.
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
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
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
f) Crie uma função que calcule a área total e o volume de um paralelepípedo de dimensões a, b e
c.
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 41 ... . 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
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
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.
(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.
15
EXEMPLO 2: Converter (101001)2 para a base 10.
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!
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 __
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
(.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 ]
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?
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
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 .
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
x -5 -4 -3 -2 -1 0 1 2 3 4 5
f (x)
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.
20
-20
-40
-60
-80
-4 -3 -2 -1 0 1 2 3 4
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.
| 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 xn1 | tol
2º Preenchimento da tabela:
n an bn xn | xn xn1 |
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] .
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.
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).
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 )
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.
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)
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.
RESPOSTAS
1) a) -0.75488 b) 0.92102 c) -3.60511, -2.08217, 0.76018 d) 1.63243
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
7) h= 2.20821 m
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
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
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
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
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;
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 ( n1) Bx ( n ) d , n 1, 2, 3,...
Método de Jacobi
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
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
(D L U ) x b
( D L) x Ux b
x ( D L) 1Ux ( D L) 1 b
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
.............................................................................
.............................................................................
.............................................................................
.............................................................................
.............................................................................
.............................................................................
.............................................................................
.............................................................................
.............................................................................
.............................................................................
.............................................................................
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
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
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
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)}
4) Conferir em aula
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) .
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 .
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 .
Como o sistema obtido será SPD, pode-se encontrar o vetor c pelo método da inversão, ou seja,
c V 1b
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
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
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
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
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.
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
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
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
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)
2ax1 b y1 .x1 2ax2 b y 2 .x 2 ... 2axn b y n .x n 0
a
S (a, b)
2ax1 b y1 . 2ax2 b y 2 ... 2axn b y n . 0
b
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
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
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.
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.
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:
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
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
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?
61
EXERCÍCIOS:
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.
3) Apresentados os dados
RESPOSTAS
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.
b
I f ( x)dx
a
b n
I f ( x)dx wi f ( xi ).x ,
a i 1
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
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
(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
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
3) 157,5
4) 0.6933
0.6932
0.6932
5) 1972170
6) T=1.0553e+003
7) Conferir em aula
68