Você está na página 1de 36

EXERCÍCIOS DE ANÁLISE NUMÉRICA

COM APLICAÇÕES EM MATLAB (v2)

Manuel Bravo de Faria Cruz


I. S. E. P. Setembro de 2005
2
Conteúdo

1 Introdução 5

2 Teoria de erros 9

3 Interpolação 15

4 Regressão 19

5 Resolução de Equações Não Lineares 23

6 Sistemas de Equações Lineares 27

7 Derivação Numérica 31

8 Integração Numérica 33

9 Equações Diferenciais Ordinárias 35

3
4 CONTEÚDO
Capítulo 1

Introdução
√ √
1. Determine o valor de 2, π, 6 35, e1 , e3.45 , cos(1.27), sin(1.14),tg(3.1415), cotg(3.1415)
com
(a) 4 casas decimais
(b) 6 algarismos significativos.
 
0 6 1 6
 0 8 1 1 
2. Sejam x=[1,2,3,4] , y=[5, 10, 15, 20]T , Z = 
 3

9 1 1 
7 4 4 4
(a) Sem efectuar os cálculos verifique se é possível efectuar as seguintes
operações: xy,xZ,yx,yZ,Zx,Zy, xyZ,yxZ,xZy,yZx,Zxy,Zyx.
(b) Confirme as suas respostas na alínea anterior usando o MatLab.
(c) Suponha que queria calcular o valor de cada um dos elementos de x ao
quadrado. Como faria? E com y? E com Z?
(d) Qual a diferença entre o último comando executado na alínea anterior
e o comando,Z∧ 2?
3. Crie uma tabela {x, cos(x)}, com x=1,1.5,2,...,10.
4. Represente graficamente os pontos dados em 3.
5. Sobreponha ao gráfico anterior uma linha a vermelho que una os pontos da
tabela. Esse gráfico é uma aproximação de quê?
6. Use a função isprime do MatLab para verificar quais os números primos
entre 2 e 1000.
7. Seja fn a sucessão de Fibonacci, i.e, a sucessão definida pela relação de

recorrência:
 f0 = 1
f1 = 1

fn = fn−1 + fn−2 , n ≥ 2

5
6 CAPÍTULO 1. INTRODUÇÃO

(a) Escreva uma rotina que dado n, determine o valor de fn .


(b) Qual o maior termo que se pode representar exactamente em MatLab?
(c) Qual o maior termo que é possível obter usando o MatLab sem este
entrar em overflow?

8. Construa uma rotina de nome y=arredondar(x,d) que, dados um vector x de


números reais e um número inteiro d, devolva em y os elementos do vector
x arredondados a d casas decimais.

9. * Construa uma rotina que, dados dois números inteiros x e y (entre 1 e


10000) retorne quais os divisores de x, os divisores de y e o máximo divisor
comum dos dois números. Caso este último valor seja 1 o programa deve
retornar a mensagem ’x e y são primos entre si’.
µ ¶ µ ¶
1 1 1 0
10. Sejam A= e X= . Execute o comando X=A*X repetida-
1 0 0 1
mente. Consegue reconhecer os números que lhe vão aparecendo? Compare
esta forma de os calcular (em termos de tempo - use os comandos tic e toc)
com uma rotina já construída por si. Que conclusões tira?

11. A série harmónica, Sn = 1 + 21 + 13 + ... + 1n é divergente. Calcule a sucessão


no seu computador e explique o sucedido.

12. Embora a série harmónica seja divergente, a série Sn = 1 + 21 + 13 + ... + 1n −


ln(n) é convergente. O seu limite designado habitualmente por constante de
Euler1 tem o valor aproximado de 0.5772156649... . Tente determiná-lo com
a máxima precisão possível usando o MatLab. O que conclui?

13. * Calcule a soma


n
1
Sn = ∑ k2 + k ,
k=1

, para os seguintes valores de n:

(a) n=99999
(b) n=999999
(c) n=9999999
(d) Calcule agora as alíneas anteriores efectuando o somatório por ordem
inversa, i.e, com k=n,n-1,...,1. O que pode concluir?

14. Por definição µ ¶


1 n
e ≡ lim 1 +
n→∞ n
1 Para mais informações ver, por exemplo,

http://mathworld.wolfram.com/Euler-MascheroniConstant.html
7

. Verifique qual a aproximação máxima que consegue obter usando esta


definição no MatLab, e compare-a com um valor mais exacto (por exemplo
vpa(exp(1), 40) )

15. Tente obter o valor de µ ¶


100n
lim
n→∞ n!
tomando valores de n sucessivamente maiores. O que conclui?

16. Use o MatLab para determinar aproximações (com 5 algarismos significa-


tivos) do máximo e mínimo das funções seguintes nos intervalos dados:

(a) x2 − 3x − 2 ln(x), x ∈ [0.5, 2]


(b) x3 + x − 5, x ∈ [1, 3]
(c) 0.13x2 − sin(x), x ∈ [−4, 4]
(d) x − (0.814)x , x ∈ [−1, 1]
(e) ex − 3x, x ∈ [0, 2]
(f) x3 − 0.001, x ∈ [−0.1, 0.1]
(g) tan(πx) − 6, x ∈ [−1, 1]
(h) 230x4 + 18x3 + 9x2 − 221x − 9, x ∈ [−1, 2]

Soluções de alguns exercícios


(1a) 1.4142; 3.1415; 1.8086; 2.7183; 31.5004; 0.2963; 0.9086;
-0.0001; -10792.8899
(1b) 1.41421; 3.14159; 1.80861; 2.71828; 31.5004; 0.296281; 0.908633;
-9.26536e-005; -1.07929e+004
(7b) f72
(7c) f1475
(13a) 0.99999000000001
(13b) 0.99999900000005
(13c) 0.99999989999981
(13d) 0.99999000000000; 0.99999900000000; 0.99999990000000
(16a)M ≈ 0.13629 m ≈ −3.3863
(16b)M ≈ 7.0000 m ≈ −3.0000
(16c)M ≈ 2.8368 m ≈ −0.7459
(16d)M ≈ 0.18600 m ≈ −2.2285
(16e)M ≈ 1.3891 m ≈ −0.29584
(16f)M ≈ 2.1684 × 10−19 m ≈ −0.0020000
(16g)M ≈ 6359.6(!!!!!) m ≈ −6371.6
(16h)M ≈ 3409.0 m ≈ −104.69
8 CAPÍTULO 1. INTRODUÇÃO
Capítulo 2

Teoria de erros

1. Seja T3 (x, 1) o polinómio de Taylor de 3o grau desenvolvido em torno de


1,da função f (x) = (x − 1)ln(x).

(a) Use T3 (0.5, 1) para aproximar o valor de f (0.5).


(b) Calcule um majorante do erro usando a formula do resto.
(c) Compare o valor anterior com | f (0.5) − T3 (0.5, 1)|.
R2
(d) Calcule uma aproximação de 1 f (x)dx usando o polinómio de Taylor
calculado em 1a.
R2
(e) Calcule um majorante do erro cometido na alínea anterior usando 1 |R3 (x, 1)|dx.
R2 R2
(f) Compare o resultado da alínea anterior com o valor de | 1 f (x)− 1 T3 (x, 1)|dx.

2. Qual o desenvolvimento em série de Taylor da função f (x) = x cos(x) em


torno de a=0? Verifique, usando o MatLab, qual a vantagem de calcular o
desenvolvimento em torno de 2π, usando uma aproximação de grau 2, para
calcular f(5.2) em vez de usar uma aproximação de grau 7 centrada em 0.
R 0.25 x2
3. Considere o integral, 0 e dx

(a) Tente usar o comando int do MatLab para calcular o valor do integral.
(b) Qual o tipo de erro que está inerente à aproximação,
R 0.25 x2 R 4 6
0 e dx ≈ 00.25 (1 + x2 + x2 + x6 )dx
(c) Use a alínea anterior para calcular uma aproximação do integral.
(d) Calcule o majorante do erro de truncatura cometido
(e) Calcule uma aproximação do erro efectivo sabendo que uma boa aprox-
imação1 do valor do integral é, 0.2553074606. Compare o resultado
com o da alínea anterior.
1 Esta aproximação está correcta até à 9a casa decimal.

9
10 CAPÍTULO 2. TEORIA DE ERROS

4. Qual o grau mínimo necessário de uma expansão em série de Taylor, em


torno de π4 , para ter a certeza que se calcula uma aproximação de cos(42o )
com erro inferior a 10−6 .

5. * Considere o desenvolvimento em série de Maclaurin da função exponen-


cial,
∞ k
x2 x3 x
ex = 1 + x + + + ... = ∑
2! 3! k=0 k!

(a) Calcule através deste desenvolvimento e−12 , usando o maior número


de termos possível.
(b) Calcule uma nova aproximação de e−12 através do desenvolvimento em
série de Taylor, mas usando o facto de que e−12 = e112
(c) Compare os resultados das alíneas anteriores e explique o sucedido.

6. Execute na janela de comando do MatLab as instruções:


x=4000:10:12000;
y=(log(exp(x.^4)).^1/4)
Explique o sucedido?

7. * Calcule u = |( 4.0
3 − 1) ∗ 3 − 1|. Explique detalhadamente o porquê do re-
sultado.
(Sugestão: Trabalhe em binário, para ser mais fácil entender o que acontece!)
2x
8. Calcule X = 1+3x2
para x ≈ 2.718.

9. Dadas as expressões equivalentes



(a) 1/(2 + 3)4

(b) 97 − 56 3

calcule os seus valores, considerando 3 ≈ 1.732

10. As expressões

(a) ( 2 − 1)6

(b) 1/( 2 + 1)6

(c) (3 − 2 2)3

(d) 1/(3 + 2 2)3

(e) 99 − 70 2

(f) 1/(99 + 70 2)

são todas equivalentes. Em qual das expressões deve substituir 2 por 1.4
de forma a obter um valor o mais aproximado possível do valor exacto?
11

11. Sendo a ≈ 29.63243, b ≈ 81.977 e c ≈ 123.45 valores obtidos por arredonda-


mento, calcule

(a) a + b
(b) c − b
(c) a × c

(d) c
(e) a/c
(f) c/a

12. Dada a função f (x, y) = ln(tan(x)) + ey , com x expresso em radianos, calcule


f (x, y) e o erro absoluto máximo, sendo x = .4945 ± 10−5 e y = 1.07 ± 6 ×
10−3

13. A intensidade da corrente, I, num circuito eléctrico, é dada, no instante t,


pela função
I(t) = Ae−t sen(wt + α)

Sendo A ≈ 1.41, w = .13 ± 10−2 e α = .785 ± .5 × 10−4 estime I(t) para


t = 2.
√ √ √
14. Sendo dados 39 ≈ 6.2450, 38 ≈ 6.1644 e 10 ≈ 3.162278, calcule
√ √
39 × 38

10

15. 2Qual o número


√ √de casas
√ decimais com que é necessário saber as aproxi-
mações de 10, 38 e 39 para ser possível calcular o valor da expressão
do exercício 14 com erro inferior a:

(a) 10−3
(b) 10−7
(c) 10−10
(d) 10−15
x2 +3 sin(x)
16. Calcule f (x, y) = y para:

(a) x = 1 ± 0.1 e y = 3.14159 ± 0.00001


(b) x = 1 ± 0.1 e y = 3.141 ± 0.0006
(c) x = 1.00000 ± 0.00001 e y = 3.1 ± 0.05
(d) x ≈ 1 e y ≈ 3.14159
2 Problema inverso de teoria de erros. Apenas dado em alguns cursos
12 CAPÍTULO 2. TEORIA DE ERROS

17. (Exames prático)

(a) Calcule o polinómio de Taylor de grau 5 desenvolvido em torno de 0


da função f (x) = sen(2x).
(b) Use o resultado da alínea anterior para estimar sen(0.8) e calcule um
majorante do erro cometido.

18. (Exame prático)

(a) Estime o valor de f (x) = cos(x2 ), sendo usando o polinómio de Taylor


de grau 4 centrado em π
(b) Calcule um majorante do erro cometido na alínea anterior.
x 2
19. (Exame prático) Considere a função f (x) = x sin( 1.41 ) − e−x

(a) Estime o valor de f (π) , sabendo que π ≈ 3.14 e que e = 2.5 ± 0.4
(b) Calcule o valor de f (π), usando um polinómio de Taylor de grau 8,
centrado em 3.

Soluções de alguns exercícios


(1)T3 (x, 1)=(x-1)^2-1/2*(x-1)^3
(1a) 0.3125
(1b) 0.3
(1d) 0.20833(3)
(1e) 1
(3c) 0.2552083(3)
(3d)2e-004
(3e)1e-004
(4) Grau 3.
(8) 0.23469 ± 4e − 005
(9) 0.005155 ± 3e − 006 e 0.01 ± 0.03
(10) Em (f).
(11a) 111.6094 ± 6e − 004
(11b) 41.473 ± 6e − 003
(11c) 3658.1 ± 0.2
(11d) 11.1108 ± 3e − 004
(11e) 0.24004 ± 1e − 005
(11f) 4.1660 ± 2e − 004
(12) 2.30 ± 0.02
(13) 0.165 ± 0.003
(14) 12.1737 ± 2e − 004
(15a)∆x ≤ 1.7e − 004 → 4 casas decimais
∆y ≤ 1.8e − 004 → 4 casas decimais
13

∆z ≤ 8.7e − 005 → 4 casas decimais


(15b) x, y, z → 8 casas decimais
(15c) x, y, z → 11 casas decimais
(15d) x, y, z → 16 casas decimais (!!!!)
(16a) 1.1 ± 0.2
(16b) 1.1 ± 0.2
(16c) 1.12 ± 0.02
(16d) 1.1 ± 0.6
14 CAPÍTULO 2. TEORIA DE ERROS
Capítulo 3

Interpolação

Nota: A interpolação por Splines é apenas leccionada em alguns cursos.


Como tal alguns dos exercícios poderão não ter suporte teórico para a sua res-
olução. Por favor consulte a ficha da disciplina no site correspondente.

1. Calcule o polinómio interpolador de Lagrange que passa nos pontos (−1, −1),(0, 0)
e (1, 2). Qual o grau do polinómio?

2. Repita a alínea anterior com os pontos (−1, −1),(0, 0) e (1, 1). Comente os
resultados.
√ √
3. Estime 13 utilizando o polinómio interpolador de x nas abcissas x =
4, 9, 16, 25

4. Usando a rotina arredondar construída no exercício 8 do capítulo 1, crie uma


tabela {x, ex }, x = 0 : 0.1 : 2, arredondada a 4 casas decimais.

(a) Estime e1.32 por interpolação parabólica.


(b) Calcule um majorante do erro cometido na alínea anterior.
(c) Tendo em conta as aproximações da tabela acima qual o grau do polinómio
mais conveniente para calcular uma aproximação de e0.52 .
(d) * Estime com base na tabela acima, ln(2.7756), por interpolação parabólica
inversa.

5. O ficheiro melbourne.mat1 disponível em anexo, contém algumas informações


de telemetria captadas pela box, durante uma volta de um piloto de fórmula
1 a um circuito do campeonato mundial. Depois de observar com atenção
os dados e as labels, construa para cada uma das velocidades de caixa en-
grenadas (1a , 2a , 3a , 4a , 5a e 6a ) uma relação entre a rotação do motor e a
velocidade atingida pelo veículo.
1 ficheiro disponível na página da disciplina

15
16 CAPÍTULO 3. INTERPOLAÇÃO

(a) Usando interpolação de Lagrange com todos os pontos disponíveis es-


time (para cada uma das velocidades) a velocidade do veículo às 15500
R.P.M. .
(b) Usando o Spline cúbico interpolador, repita a alínea anterior.
(c) Utilize o comando subplot para comparar graficamente os resultados
das duas alíneas anteriores.
(d) Repita as alíneas a) e b) para estimar a velocidade do veículo às 10500
R.P.M. O que conclui?

6. (Perigo da extrapolação) Considere os dados do ficheiro census.m fazendo


na janela de comando,
>>load census

(a) Calcule o polinómio interpolador de grau 9 com os dados da população


dos E.U.A. nos anos de 1900 a 1990 e represente-o graficamente.
(b) Qual a previsão para o ano actual.
(c) O que pode concluir acerca do resultado da alínea anterior.
(d) Fundamente a sua resposta em c) representando graficamente a função
∏(x) , para x = 1900 : 2005.
(e) Estime o valor da população dos E.U.A. no ano em que nasceu, usando:
i. Interpolação de Lagrange com todos os pontos disponíveis.
ii. O Spline cúbico interpolador .

7. * Construa uma rotina que implemente o método de Newton em diferenças


divididas para o cálculo do polinómio interpolador.

8. * Construa uma rotina que implemente o cálculo do polinómio interpolador


de Hermite.
1
9. (Problema de Runge) Seja f (x) = 1+25x2
uma função definida no intervalo
[-1,1].

(a) Discretize o intervalo em 3,5,9,11,15 e 17 pontos igualmente espaça-


dos.
(b) Para cada um dos casos calcule o polinómio interpolador da função
nesses pontos.
(c) Comente a qualidade das aproximações à medida que se aumenta o
grau do polinómio. Quais as partes do intervalo [-1,1] em que o polinómio
interpolador aproxima bem a função?
(d) Use agora como abcissas de interpolação os pontos (também chama-
2n π) k = 1, 2, ..., n.Use
dos nós de Chebyshev ) de abcissas xk = cos( 2k−1
n=3,5,9,11,15 e 17. Compare os resultados com a interpolação anterior.
17

(e) Usando 17 pontos igualmente espaçados calcule o Spline cúbico natu-


ral interpolador da função. De todas as interpolações, qual lhe parece
a mais conveniente tendo em vista a aproximação da função f (x) no
intervalo [-1,1].

10. Usando o polinómio interpolador de Lagrange, com 7 pontos igualmente es-


paçados, no intervalo [1,3] obtenha estimativas de f (1.875), f 0 (1.875), f 00 (1.875)
das seguintes funções e compare-as com os resultados exactos.

(a) f (x) = x3 − 5.87501x2 + 10.50004x − 5.62503


(b) f (x) = xln(x2 − sen(x))
(c) f (x) = sen(x2 − ln(x))
(x−2.5)
(d) x2 −0.9999

11. (Exame prático) Na tabela seguinte representam-se os valores de uma função

x 1.0 1.1 1.2 1.3 1.4 1.5 1.6


y -1.61 -1.46 -1.05 -0.43 0.38 0.46 1.28

(a) Estime f (1.32) utilizando interpolação cúbica.


(b) Faria sentido usar o polinómio calculado em a. para estimar o valor de
f (0.99)? Justifique a sua resposta.

12. (Exame prático) Construa uma tabela da função f (x) = cos(ex ) para x = 10 :
0.1 : 11

(a) Estime o valor de f (10.35) usando interpolação cúbica e calcule um


majorante do erro.
(b) Estime o valor de f (10.35) usando interpolação por splines.
(c) Faria sentido usar algum dos polinómios calculados em a) ou em b)
para estimar o valor de f (10.99)? Justifique a sua resposta.
x 2
13. (Exame prático) Considere a função f (x) = x sin( 1.41 ) − e−x

(a) Tabele a função f usando os dois conjuntos de valores:


i. x1=1:0.02:1.1
ii. x2=1.1:0.01:1.4
(b) Use a alínea anterior para estimar o valor de f (1.357) por interpolação
cúbica. Calcule um majorante do erro cometido.
(c) Use a alínea a) para estimar o valor de f (1.057) usando um spline
cúbico.
18 CAPÍTULO 3. INTERPOLAÇÃO

Soluções de alguns exercícios


(1) 0.5*x^2+1.5*x
(2) N.a.
(3) 3.6 ± 0.4
(4a) 3.743544
(4b) 2e-004
(4c) Grau dois.
(4d) 1.0 209
(10a) f (1.875) ≈ 9.843749992910489e−006, f 0 (1.875) ≈ −0.98437250000001, f 00 (1.875) ≈
−0.50001999999994
(10b) f (1.875) ≈ 1.76242577413304, f 0 (1.875) ≈ 3.91144123813787,
f 00 (1.875) ≈ 0.72077130389465
(10c) f (1.875) ≈ 0.25156454430997, f 0 (1.875) ≈ −3.12153822176396,
f 00 (1.875) ≈ −4.72064665626533
(10d) f (1.875) ≈ −87.66715104109608, f 0 (1.875) ≈ 4.979745089197531e+002,
f 00 (1.875) ≈ 5.701554648729041e + 003
Capítulo 4

Regressão

Nota: Este capítulo é apenas leccionado em alguns cursos.Por favor consulte


a ficha da disciplina no site correspondente.

1. Resolva o exercício 1 e o exercício 2 do capítulo 3 usando regressão linear.


Compare os resultados com os obtidos no capítulo 3 e explique as diferenças.

2. Para as tabelas seguintes calcule os polinómios de grau 1,2 e 3 que melhor as


ajusta no sentido dos mínimos quadrados. Para cada um dos casos represente
graficamente os dados e os polinómios calculados.

x 2.0 2.2 2.6 3 3.8 4.2


y 3.68 3.92 4.42 4.90 4.88 6.36

x 4.0 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

3. Considere a seguinte tabela


x 1.0 1.5 2.0 2.5 3.0 3.5 4.0
y 1.5381 0.8322 0.5274 0.3636 0.2658 0.2038 0.1610

(a) Determine a recta que melhor se ajusta à tabela no sentido do método


dos mínimos quadrados e represente graficamente os resultados obti-
dos.
(b) Determine o grau de associação linear dos dados através do seu coefi-
ciente de correlação.
(c) Estime o valor da função em x=2.25 usando a recta calculada em a).
a
(d) Determine agora a curva do tipo y = x(b−x) , que melhor se ajusta à
tabela acima e estime f(2.6).
(e) Compare graficamente os resultados obtidos.

19
20 CAPÍTULO 4. REGRESSÃO

4. Repita o exercício anterior para as tabelas seguintes:

x 1 3 4.5 6 7.2 8 9.3


(a)
y 3.55 20.77 90.21 403.67 1339.60 2981.15 10938.56
querendo estimar a função no ponto x=3.5 e sabendo que a relação en-
tre os pontos é do tipo y=eax+b .
x 100 120 130 140 150 160 170 180
(b)
y 4.94 4.99 4.96 5.53 5.51 6.00 6.03 6.00
querendo estimar a função no ponto x=145 e não sabendo qual o tipo
de relação existente entre os pontos.

5. Considere a tabela seguinte:


x 0.23 0.32 0.35 0.44 0.56 0.92 1.01 1.12
y 0.95 0.90 0.49 0.90 0.82 0.56 0.50 0.39

(a) Estime o valor da função no ponto x=0.78, sabendo que a relação entre
os pontos pode ser do tipo y=cos(ax+b).
(b) Compare com outros ajustes que lhe pareçam convenientes.
(c) Existe um elemento da tabela para o qual, durante as medições, o
equipamento se descalibrou. Identifique-o e refaça os cálculos reti-
rando esse elemento.

6. Considere o ficheiro EspVida.mat que contém os dados correspondentes ao


número de pessoas sobreviventes no inicio de cada ano de vida (por cada
10000 pessoas nascidas vivas) consoante a idade e o sexo. (Dados referentes
aos E.U.A. em 1990).

(a) Ajuste polinómios de grau 1,2 e 3 aos vários grupos (totais, homens e
mulheres)
(b) Verifique se os resultados parecem indiciar (para a população em questão)
uma diferença significativa entre homens e mulheres respeitante à es-
perança de vida.

7. Considere o ficheiro monaco.mat que contém os dados referentes a uma volta


efectuada no circuito do Monaco, por um piloto de Formula 1. Depois de
observar e compreender os dados existentes, verifique:

(a) A relação entre a rotação do motor e a velocidade atingida pelo veículo,


quando este se encontra em aceleração(i.e., quando a "longitudinal ac-
celeration" é positiva):
i. Em primeira velocidade
ii. Em segunda velocidade
iii. Em terceira velocidade
iv. Em quarta velocidade
21

v. Em quinta velocidade
vi. Em sexta velocidade
(b) Repita as alíneas anteriores para o caso de o veículo se encontrar em
travagem.
(c) Verifique a qualidade dos ajustes para os vários casos.

Soluções de alguns exercícios


22 CAPÍTULO 4. REGRESSÃO
Capítulo 5

Resolução de Equações Não


Lineares

1. Escreva uma rotina que implemente o método das bissecções sucessivas para
a resolução de equações não lineares.

2. * Escreva uma rotina que implemente o método de Newton para a resolução


de equações não lineares.

3. * Escreva uma rotina que implemente o método de Whittaker para a res-


olução de equações não lineares.

4. * Escreva uma rotina que implemente o método da secante para a resolução


de equações não lineares.

5. * Escreva uma rotina que implemente o método da falsa posição para a res-
olução de equações não lineares.

6. Separe as raízes das equações seguintes nos intervalos dados:

(a) x2 − 3x = 2 ln(x), x ∈ R
(b) x3 + x − 5 = 0, x ∈ R
(c) xex = 1, x ∈ R
(d) x2 − sin(x) = 1, x ∈ R
(e) x = (0.814)x , x ∈ R
(f) ex − 3x = 0, x ∈ R
(g) x3 = 0.001, x ∈ [−1, 1]
(h) tan(πx) = 6, x ∈ [−1, 1]
(i) 230x4 + 18x3 + 9x2 = 221x + 9, x ∈ [−2, 2]
(j) atan(x) = π3 , x ∈ [0, 5]
(k) 33x+1 = 7 × 52x , x ∈ R

23
24 CAPÍTULO 5. RESOLUÇÃO DE EQUAÇÕES NÃO LINEARES

(l) tan(x) = 1.13x , x ∈ [−6, 6]


(m) sin(x) = x ln(x), x ∈ [1, 2]

(n) x x = e−x , x ∈ R
(o) 600x4 − 550x3 + 200x2 = 20x + 1, x ∈ [0.1, 1]
p
(p) sign(x − 2) |x − 2| = 0, x ∈ [1, 4]
(q) ln(1 + x2 ) = e−x , x ∈ [0, 1]

7. Calcule cada uma das raízes separadas no exercício anterior, a menos de


10−9 , usando: (guarde o número de iterações e o tempo1 utilizado pelo Mat-
Lab na resolução do problema)

(a) O método das bissecções sucessivas.


(b) O método de Newton.
(c) O método de Whittaker.
(d) O método da secante.
(e) O método da falsa posição.

8. Compare os resultados obtidos em 7

9. A equação x4 − (13 + ε)x3 + (57 + 8ε)x2 − (95 + 17ε)x + 50 + 10ε = 0 , tem


raízes 1, 2, 5, 5+ε. Determine todas as raízes deste polinómio para ε = 0.1,
0.01, e 0.001 . O que acontece se diminuirmos ε. Use precisão 10−5 .

10. Uma droga é administrada a um paciente e a sua concentração na corrente


sanguínea t horas após terem sido administradas A unidades dessa droga, é
−t
dada pela equação c(t) = Ate 3 mg/ml. A concentração máxima de droga
admissível é de 1 mg/ml.

(a) Qual a quantidade A que deve ser administrada inicialmente de forma


a obter-se essa concentração máxima de droga, e quando é que essa
concentração ocorre?
(b) Quando a concentração decresce até aos 0.25 mg/ml uma nova dose de
droga é administrada. Determine, com precisão de minuto, quando é
que a segunda dose deve ser dada.

11. A função f (x) = ln(x2 + 1) − e0.4x cos(πx) tem um número infinito de raízes.

(a) Calcule as 5 menores raízes com erro inferior a 10−7 .


(b) Determine uma aproximação inicial razoável, para calcular pelo método
de Newton a n-ésima raiz da função.
(c) Use o resultado da alínea anterior para calcular o 39o zero da função.
1 Pode utilizar os comandos time e etime
25

12. (Exame prático) Considere a equação x2 = (0.814)x

(a) Determine a menor solução da equação com tolerância de 10−11 us-


ando o método das bissecções sucessivas.
(b) Verifique as condições suficientes de convergência do método de New-
ton para o cálculo daquela raiz.
(c) Se possível, repita o cálculo da alínea a), utilizando o método de New-
ton. Compare os resultados, quanto ao número de iterações.

13. (Exame prático) Considere a função f (x) = x sin( 1.41x 2


) − e−x . Calcule a
menor raiz positiva da equação f (x) = 0, com erro inferior a 10−10 . Verifique
as condições suficientes de convergência.

Soluções de alguns exercícios


(6a)x1 ∈ [0.1, 1]; x2 ∈ [3, 4]
(6b) x1 ∈ [1, 2]
(6c) x1 ∈ [0, 1]
(6d) x1 ∈ [−1, 0]; x2 ∈ [1, 2]
(6e) x1 ∈ [0, 1]
(6f) x1 ∈ [0, 1]; x2 ∈ [1, 2]
(6g) x1 ∈ [0, 1]
(6h) x1 ∈ [0, 0.5]
(6i) x1 ∈ [−1, 0]; x2 ∈ [0, 1]
(6j) x1 ∈ [1, 2]
(6k) x1 ∈ [11, 12]
(6l) x1 ∈ [−6, −5]; x2 ∈ [−3, −2]; x3 ∈ [0, 1]; x4 ∈ [4, 4.5]
(6m) x1 ∈ [1.5, 2]
(6n) x1 ∈ [0, 1]
(6o) x1 ∈ [0, 0.5]
(6p) x1 ∈ [1.5, 2.5]
(6q) x1 ∈ [0.5, 1]
(10a) t = 3, A = 3e
(10b) ≈ 665min
26 CAPÍTULO 5. RESOLUÇÃO DE EQUAÇÕES NÃO LINEARES
Capítulo 6

Sistemas de Equações Lineares

Métodos Directos
Nota: Esta secção é apenas leccionada em alguns cursos.Por favor consulte a
ficha da disciplina no site correspondente.

1. Calcule a decomposição LU das matrizes seguintes, e resolva os sistemas


Ax=b , onde:

(a) A=magic(n) e b=[1, 2, 3, ..., n]T , para n=3, n=5 e n=10.


(b) A=hilb(n) e b=[1, 12 , 13 , ..., 1n ]T , para n=3, n=5 e n=10.
 √ 
− 2 2
√ 0
(c) A= 1 − 2 1  e b=[1, 1, 1]T

0 2 − 2
 √ √ 
π e 2 −5 3
 π2 −e −7e2 3  √ √
(d) A= √
 5 6 6
√ √7  e b=[ 11, 0, π, 2]T
1
√ − 2 
π 3 e2 − 7 1
9

2. Considere
 n o sistema de equações
  lineares,
  
2 1 ··· 1 1 x1 2n
 1 2n · · · 1 1   x2   2n−1 
    
 .. .. . . .. ..   ..  =  .. 
 . . . . .  . 
   . 
   
 1 1 · · · 2n 1   xn−1   22 
1 1 · · · 1 2n xn 21
(a) Construa uma rotina para resolver o sistema por decomposição LU,
para diferentes valores de n. A rotina deve retornar além da solução, o
resíduo e o tempo de execução.
(b) Compare os parâmetros de saída para n=2:200. Quais as suas con-
clusões?

27
28 CAPÍTULO 6. SISTEMAS DE EQUAÇÕES LINEARES

3. Repita
 o exercício anterior para o sistema, 
1 1 1
··· 1 1 
2×2 2×31 2×32 2×3n−2 2×3n−1 x1
 1 1 1
··· 1 1  
 2×4 2×3 2×42 2×4n−2 2×4n−1  x2 
 1 1 1
··· 1 1  
 2×5 2×52 2×4 2×5n−2 2×6n−1  x3 
 .. .. .. .. ..  .. =
 .  
 . . . .  . 
 1 1 1 1 1  
 2×(n+1) 2×(n+1)2 2×(n+1)3 · · · 2×n 2×(n+1)n−1  xn−1
1 1 1 1 1
2×(n+2) 2×(n+2) 2 2×(n+2) 3 · · · 2×(n+2)n−1 2×(n+1)
xn
 1 
2
 1 
 22 
 1 
 23 
= .. 
 . 
 
 1 
2n−1
1
2n
Sugestão: Verifique que a matriz segue três relações distintas: uma para a
parte triangular superior, outra para a diagonal e outra para a parte trian-
gular inferior.

Soluções de alguns exercícios

Métodos Iterativos
1. * Construa uma rotina em MatLab que implemente o método de Jacobi,
tendo como parâmetros de entrada a matriz A, o vector b o resíduo máx-
imo e o número máximo de iterações admissíveis. A rotina deve devolver o
vector solução x, o resíduo correspondente, o número de iterações utilizadas
e o tempo gasto na execução do programa.

2. * Repita a alínea anterior para o método de Gauss-Seidel.

3. Teste as rotinas criadas em 1 e em 2, resolvendo os problemas, 1d, 2 e 3 da


secção 6. Use como critério de paragem 10000 iterações e resíduo máximo
da ordem de 10−5 , 10−8 , 10−10 .
    
2.2 0.1 1 1 0 x1 1
 0.1 4 −1 1 −1   x2   2 
    
4. Considere o sistema,  1 −1 60 0 −2   x3  =  3 
   
 1 1 0 8 4   x4   4 
0 −1 −2 4 700 x5 5
(a) Resolva-o por um método directo.
(b) Resolva-o pelo método de Jacobi, com tolerância 0.01.
(c) Repita a alínea anterior com o método de Gauss-Seidel.
29

5. (Exame prático) Construa uma rotina que dada uma matriz A , um vector x0
de dimensão compatível, e um valor m ∈ R+0 , calcule os termos da sucessão
xn+1 = Axn , enquanto |xn − xn−1 | < m .

Soluções de alguns exercícios


30 CAPÍTULO 6. SISTEMAS DE EQUAÇÕES LINEARES
Capítulo 7

Derivação Numérica

1. * Escreva uma rotina em MatLab que implemente as regras de derivação


dadas.

2. Use as tabelas criadas no exercício 10 do capítulo 3 para testar as suas


funções. Compare os resultados obtidos com as respostas dadas nesse ex-
ercício.

3. Use os dados do exercício 5 do capítulo 3 para estimar a aceleração máxima


(em m/s2 ) do formula 1 em cada uma das velocidades.

4. (Exame prático)Considere a tabela:

x 1.0 1.1 1.2 1.3 1.4 1.5 1.6


y -1.61 -1.46 -1.05 -0.43 0.38 0.46 1.28
dy
Determine uma aproximação de dx em cada um dos pontos da tabela, com o
menor erro possível.

5. (Exame prático) Calcule uma estimativa do valor de ddxf |x=0.1 onde


1
f (x) = 1+x 2 , usando um método e um passo à sua escolha.

6. (Exame prático) Considere uma tabela x, f (x) , com valores de x igualmente


espaçados. Construa uma rotina que acrescente à tabela uma linha que con-
tenha o valor da derivada numérica com o menor erro possível. Teste a sua
rotina com a tabela criada no exercício 12 do capítulo 3

Soluções de alguns exercícios

31
32 CAPÍTULO 7. DERIVAÇÃO NUMÉRICA
Capítulo 8

Integração Numérica

1. * Escreva uma rotina em MatLab que implemente o método de Simpson(1/3).

2. Considere os seguintes integrais:


R3
(a) 0 xln(x + 1)dx
R π/4
(b) 0 x cos(x)dx
R5 √
sin x )dx
(c) 1 cos(x + 3
R 1.6 x
(d) 1 x2 −4 dx

Calcule-os usando a regra dos trapézios e a regra de Simpson com 10, 30, 50
e 100 subintervalos. Calcule também um majorante do erro cometido pelo
método.

3. Use
R2 x
os dados do exercício 4 do capítulo 3 para calcular uma aproximação de
0 e dx. Calcule um majorante do erro cometido pelo método.

4. Com que aproximação devem serR dados os valores de y0 , y1 , ..., yn de modo a


2
que se possa calcular o valor de 00.6 e−x dx pela regra de Simpson, para que
o erro total (erro do método + erro nos cálculos do MatLab) não ultrapasse
10−6 .
R 2
5. Verifique se o MatLab tem precisão suficiente para calcular 03 e−x dx com
erro inferior a 10−5 , 10−10 , 10−15 , 10−16 , pela regra dos trapézios e pela
regra de Simpson.
R
6. Sabendo que, −1 1 2
1+x2
dx = π tente calcular o integral com erro inferior a
10−5 , 10−10 , 10−15 , 10−16 usando a regra dos trapézios e a regra de Simpson.
Verifique qual o numero de pontos necessário, qual o majorante do erro, e
qual o erro efectivo.

7. Com base em alguma da informação dada no ficheiro melbournetotal.mat


qual a sua estimativa do comprimento do circuito? (Atenção às unidades!).

33
34 CAPÍTULO 8. INTEGRAÇÃO NUMÉRICA

8. Repita o exercício anterior com os dados do exercício 7 do capítulo 4.


x 2
9. (Exame prático) Considere a função f (x) = x sin( 1.41 ) − e−x

(a) Tabele a função f usando os dois conjuntos de valores:


i. x1=1:0.02:1.1
ii. x2=1.1:0.01:1.4
(b) UseR a alínea anterior para calcular a melhor estimativa possível do valor
de 11.38 f (x)dx . Calcule um majorante do erro cometido.

10. (Exame prático)


1 R 1
(a) Considere o integral −1 1+x2
dx . Qual o número de pontos necessários
para o calcular com erro inferior a 10-7, usando a regra de Simpson? E
usando a regra dos trapézios?
(b) Baseando-se no resultado da alínea anterior, calcule uma estimativa
do valor do integral com erro inferior a 10−10 usando o método que
implique menor esforço computacional. Justifique a escolha.

11. (Exame prático) Considere os dados existentes no ficheiro melbournetotal.

(a) Qual o maior espaço percorrido (em metros) pelo F1: Na primeiro terço
do tempo (0 seg → 31.638 seg) ou na segundo terço (31.638 seg →
63.276 seg).
(b) Use a tabela da alínea anterior, para calcular uma estimativa da aceler-
ação do F1 no instante (0.9141 seg), usando o método das diferenças
centrais. Segundo a estimativa calculada o piloto ia em aceleração ou
em travagem?

Soluções de alguns exercícios


Capítulo 9

Equações Diferenciais Ordinárias

1. * Escreva 3 rotinas em MatLab que implementem, respectivamente, o método


de Euler e os métodos de Runge-Kutta de 2a e 4a ordem.

2. Calcule a solução da Equação Diferencial Ordinária (EDO) dy dt = 1 +t sin(yt)


, no intervalo 0 a π com 100 subintervalos. Calcule pelos vários métodos, us-
ando as seguintes condições iniciais: a)y(0)=0 ; b) y(0)=0.25; c) y(0)=0.50;
...... y(0)=2;

3. Um modelo possível para a população de uma espécie é dado pela equação,


dP r
dt = aP − bP onde a,b, e r(>1) são parâmetros inerentes à população P.
Suponha a=6,b=2, P(0)=1 e r=1.5 (2,3 e 4). Determine previsão para o
número de elementos da população passados 5 anos, usando n=20, 40, 80,
100. Use o método de Euler. Quais os valores de r que lhe parecem aceitáveis?

4. Use o método Euler para resolver o Problema de Valor Inicial (PVI): dP


dt =
10P(1 − P) , com P(0)=0.1 . Usando h=0.01, calcule a solução no inter-
valo [0,10]. Aumente agora o passo h (0.05,0.1,0.18,0.20,0.25,0.30,0.5) e
comente o sucedido.

5. Considere o PVI dy y 1
dt = t + y(− t − y), 1 ≤ t ≤ 2 com y(1) = −1 , que tem
como solução exacta y(t) = −1
t .

(a) Resolva o PVI usando o método de Euler com h=0.1 e compare o re-
sultado com a solução exacta.
(b) Fazendo uso de alguns dos valores calculados em a) construa um polinómio
interpolador de 2o grau para estimar o valor da solução no intervalo
[1,2].
(c) Resolva o PVI usando o método de Euler com h=0.01 e compare o
resultado com a solução exacta.
(d) Resolva o PVI usando o método de Runge-Kutta de 4a ordem com
h=0.1 e compare o resultado com a solução exacta.

35
36 CAPÍTULO 9. EQUAÇÕES DIFERENCIAIS ORDINÁRIAS

(e) Fazendo uso de alguns dos valores calculados em ( 5d ) construa um


polinómio interpolador de 2o grau para estimar o valor da solução no
intervalo [1,2].
(f) Resolva o PVI usando o método de Runge-Kutta de 4a ordem com
h=0.01 e compare o resultado com a solução exacta.
(g) Faça um gráfico com as diferentes soluções obtidas nas alíneas anteri-
ores.

6. Considere o PVI dy dt = −20y + 20 sin(t) + cos(t), 0 ≤ t ≤ 2 com y(0) = 2,
que tem como solução exacta y(t) = sin(t) + e−20t . Usando um passo h=0.1,
calcule a solução no intervalo dado, usando o método de Euler e o método
de Runge-Kutta de 4a ordem. Compare os resultados com a solução exacta.
Verifique se existe alguma rotina em MatLab que melhore os resultados obti-
dos.

7. Considere os PVI seguintes:

(a) dy
dt = cos(t), 0 ≤ t ≤ π2 , y(0) = 0
p
(b) dy
dt = 1 − y2 , 0 ≤ t ≤ π2 , y(0) = 0

Sabendo que são equivalentes (i.e. a solução exacta,y(t) = sin(t) , é a mesma


para os dois problemas no intervalo dado) , verifique qual dos problemas é
mais tratável em termos numéricos. E se mudarmos o intervalo para 0 ≤ t ≤
π?

8. (Exame prático) Dado o PVI, y0 = cos(x ∗y), y(0) = 1 calcule uma estimativa
de y(0.5), com h=0.25 usando o método de Euler.

9. (Exame prático) Considere o PVI ,y0 = −20y + 20sen(x) + cos(x), x ∈ [0, 2]


,y(0) = 2 , que tem como solução exacta y = sin(x) + 2e−20x .

(a) Resolva o PVI no intervalo [0, 2] usando os métodos de Euler e Runge-


Kutta de ordem 2, usando h=0.1 .
(b) Represente no mesmo gráfico e a cores diferentes as aproximações
obtidas e a solução exacta. Comente os resultados obtidos em termos
da precisão dos métodos usados.

Soluções de alguns exercícios

Você também pode gostar