Instituto Superior Técnico Departamento de Matemática Secção de Matemática Aplicada e Análise Numérica Matemática Computacional - o ano LEMat e MEQ Exame/Teste - 1 de Janeiro de 1 - Parte I (1h3m) 1. Considere os números reais a =.4747, b = 4.35 e c = 83.11. Calcule, em ponto utuante com 3 dígitos na mantissa e arredondamento simétrico, (a + b) + c e a + (b + c). O que pode concluir sobre a associatividade da adição em ponto utuante? [.] Resolução: Tem-se fl(a) = fl(.4747 1 ) =.47 1 fl(b) = fl(.435 1 1 ) =.44 1 1 fl(c) = fl(.8311 1 ) =.831 1 Em ponto utuante com 3 dígitos na mantissa e arredondamento simétrico, (a + b) + c é calculado do seguinte modo fl(fl(fl(a) + fl(b)) + fl(c)) = fl(fl(.47 1 +.44 1 1 ) +.831 1 ) = = fl(fl(.47 1 1 +.44 1 1 ) +.831 1 ) = fl(fl(.4487 1 1 ) +.831 1 ) = = fl(.449 1 1 +.831 1 ) = fl(.449 1 +.831 1 ) = fl(.8759 1 ) =.876 1 Para a + (b + c) obtém-se fl(fl(a) + fl(fl(b) + fl(c))) = fl(.47 1 + fl(.44 1 1 +.831 1 )) = = fl(.47 1 + fl(.44 1 +.831 1 )) = fl(.47 1 + fl(.8734 1 )) = = fl(.47 1 +.873 1 ) = fl(.47 1 +.873 1 ) = fl(.87547 1 ) =.875 1 Com base nestes resultados, podemos concluir que a adição em ponto utuante não é associativa.. Considere a equação não linear x + ln(x) = a qual tem uma e uma só raíz z no intervalo [.4,.7]. (a) Mostre que o método da secante com iteradas iniciais em [.4,.7] converge para z. [1.] Resolução: A equação x + ln(x) = é da forma f(x) =, com f(x) := x + ln(x). A função f é de classe C no intervalo [.4,.7], sendo Tem-se f (x) = 1 + 1 x, f (x) = 1 x. i. f(.4)f(.7) <, pois f(.4) =.51691 e f(.6) =.34335; ii. f > em [.4,.7]; iii. f < em [.4,.7] (logo f não muda de sinal em [.4,.7]); iv. =.14751 <.3 e f(.7) =.141369 <.3. f(.4) f (.4) f (.7) Portanto, o método da secante, com iteradas iniciais em [.4,.7], converge para z.
(b) Calcule um valor aproximado de z efectuando duas iterações do método da secante, tomando para iteradas iniciais.5 e.6, e calcule um majorante do erro do valor obtido. [1.5] Resolução: De x n+1 = x n f(x n)(x n x n 1 ) (n =, 1,,...) f(x n ) f(x n 1 ) com f(x) = x + ln(x), x 1 =.5 e x =.6, obtém-se Quanto à majoração do erro, tem-se com x 1 =.568414, x =.5671. z x K z x 1 z x K = max x I f (x) min x I f (x). onde I é um intervalo que contém z, x e x 1. Atendendo a que f(x 1 ) > e f(x ) <, tem-se z [x, x 1 ] e portanto, I = [x,.6], e Então K = f (.5671) f (.6) z x x x, z x 1 x 1 x. =.58977 z x.4838. Em alternativa, podemos majorar o erro de x do seguinte modo z x f(x ) min x [.5,.6] f (x) = f(.5671) f =.4134. (.6) (c) Considere a sucessão (x n ) n N denida pela fórmula de recorrência x n+1 = exp( x n ) (n =, 1,,...) i. Mostre que, se x pertence ao intervalo [.4,.7], a sucessão (x n ) n N converge linearmente para z. Resolução: A sucessão [1.5] x n+1 = exp( x n ) (n =, 1,,...) é da forma x n+1 = g(x n ) com g(x) := exp( x). Note-se que z [.4,.7] é solução de x + ln(x) = se e só se z é ponto xo de g, pois z + ln(z) = ln(z) = z z = exp( z) z = g(z). Como g (x) = exp( x) tem-se L := max x [.4,.7] g (x) = g (.4) =.673 < 1, pois g (x) = exp( x) é decrescente em [.4,.7]. Além disso, como g <, g é decrescente em [.4,.7] e tem-se.496585 = g(.7) g(x) g(.4) =.673, x [.4,.7], pelo que g([.4,.7]) [.4,.7]. Pelo Teorema do ponto xo, a sucessão (x n ) converge para z, único ponto xo de g em [.4,.7], qualquer que seja x [.4,.7]. Uma vez que g (z) = exp( z), a convergência é linear.
ii. Mostre que z x n z < x n x n 1, para qualquer n N e qualquer x [.4,.7]. [1.5] Resolução: Como g < em [.4,.7] a sucessão (x n ) tem convergência alternada para z. Então z x n x n x n 1, para qualquer n N e qualquer x [.4,.7]. Como z [.5,.6] tem-se 1/ z < e portanto z x n z < x n x n 1. 3. Considere o sistema linear Ax = b onde A = 1 1 1 6 (a) Sabendo que A 1 1 = 8, obtenha uma relação entre o erro relativo δ x 1 da solução do sistema A x = b e o erro relativo δ b 1 de b. Classique o sistema quanto ao condicionamento. [1.] Resolução: O erro relativo de x e o erro relativo de b estão relacionados através de δ x 1 cond 1 (A) δ b 1 onde cond 1 (A) = A 1 A 1 1 é o número de condição da matriz A na norma 1. Neste caso, A 1 = max{1 + 1, 1 + +, + 6} = 8 e como A 1 1 = 8, tem-se cond 1 (A) = 64 e δ x 1 64 δ b 1. Como cond 1 (A) 1, o sistema é mal condicionado, ou seja, um pequeno erro relativo em b pode dar orgem a um grande erro relativo em x. (b) Efectue a factorização de Cholesky de A e explique como usaria essa factorização para calcular a solução de Ax = b. Resolução: A factorização de Cholesky consiste em obter a matriz triangular inferior L tal que A = LL T. A partir de 1 1 1 6 = l 11 l 1 l l 31 l 3 l 33 l 11 l 1 l 31 l l 3 l 33 [1.5] obtém-se sucessivamente: primeira coluna de L l11 = 1 l 11 > l 11 = 1 l 1 l 11 = 1 l 1 = 1 l 31 l 11 = l 31 = segunda coluna de L l1 + l = l > 1 + l = l > l = 1 l 31 l 1 + l 3 l = l 3 = terceira coluna de L l31 + l3 + l33 = 6 l 33 > 4 + l33 = 6 l 33 > l 33 =
Então 1 L = 1 1. Tendo obtido a factorização de Cholesky, resolve-se primeiro o sistema Ly = b e depois resolve-se L T x = y para obter x. Exame/Teste - 1 de Janeiro de 1 - Parte II (1h3m) 1. Considere o sistema linear 1 1 1 6 x 1 x x 3 = 1 5 (a) Mostre que o método de Gauss-Seidel converge para a solução do sistema qualquer que seja a iterada inicial. Resolução Atendendo a que A é simétrica; [ ] 1 1 A é denida positiva: 1 > ; det = 1 > e deta = >, 1 o método de Gauss-Seidel converge para a solução do sistema qualquer que seja a iterada inicial. (b) Partindo do vector nulo, efectue duas iterações do método de Gauss-Seidel para aproximar a solução do sistema. [1.] [1.] Resolução: O sistema dado é equivalente a x 1 = x x = 1 1 x 1 + x 3 x 3 = 5 6 + 1 3 x O método de Gauss-Seidel aplicado a este sistema dá x (k+1) 1 = x (k) x (k+1) = 1 1 x(k+1) 1 + x (k) 3 Com x () = (,, ) obtém-se x (k+1) 3 = 5 6 + 1 3 x(k+1) (k =, 1,...). x (1) = x () = (, 1, ), 3 ( 5, 1 1, 9 ). 36. Na resolução, pelo método de Newton, do sistema não linear x 1 x 1 x 3 = α x + x x 3 = β 3x 1 + x 3 = γ
ao tomar para aproximação inicial x () = (,, 1) obteve-se, depois de uma iteração, x (1) = (1,, 3). Determine as constantes α, β e γ. Resolução: O sistema dado escreve-se na forma f(x) = com f : R 3 R 3 f(x 1, x, x 3 ) = (x 1 x 1 x 3 α, x + x x 3 β, 3x 1 + x 3 γ). [1.5] A matriz Jacobiana de f é dada por J f (x 1, x, x 3 ) = x 3 x 1 1 + x 3 x 3 x 3. A primeira iterada do método de Newton é x (1) = x () + x (), onde x () é a solução do sistema linear J f (x () ) x () = f(x () ). Para x () = (,, 1) tem-se f(x () ) = f(,, 1) = ( α, 6 β, 1 γ) e Como tem-se 1 3 4 3 1 1 = J f (x () ) = J f (,, 1) = 1 3 4 3 1 x () = x (1) x () = (1,, ) α β 6 γ 1 α β 6 γ 1 = 1 8 5. α β γ = 1 14 6 3. Considere a seguinte tabela de valores da função erro erf(x) := x exp( t )dt: π x i.5 1. 1.5..5 erf(x i ).55.8471.96615.9953.999593 (a) Obtenha, por interpolação linear, um valor aproximado de erf(.75). Calcule um majorante do respectivo erro absoluto. Resolução: Como.75 [.5, 1.], consideramos o polinómio p de grau 1 interpolador de erf nos pontos x =.5 e x 1 = 1.. Recorrendo à fórmula de Lagrange, tem-se [1.5] com ou seja, p(x) = erf(x )l (x) + erf(x 1 )l 1 (x) =.55l (x) +.8471l 1 (x) l (x) = x x 1 = x 1. = (x 1.), x x 1.5 1. l 1 (x) = x x = x.5 = (x.5), x 1 x 1..5 p(x) = 1.6854(x.5) 1.41(x 1.). O valor aproximado de erf(.75) é p(.75) =.68161, sendo o erro erf(.75).68161 majorado do seguinte modo: erf(.75) p(.75) max x [.5,1.] erf (x) (.75.5)(.75 1.) =.315 max x [.5,1.] erf (x).
Resta então calcular max x [.5,1.] erf (x). Ora erf (x) = π exp( x ), erf (x) = 4 π x exp( x ) = erf (x) = 4 π x exp( x ), [ 4 π x exp( x )] = π 4 exp( x )(1 x ) Como e 4 exp( x )(1 x ) = x [.5,.6] x = 1 π 4 exp( x )(1 x 1 ) > se x [.5, ], π 4 exp( x )(1 x ) < se x [ 1,.6], π tem-se Portanto, max x [.5,1.] erf (x) = erf ( 1 ) =.967883. erf(.75).68161.3463. (b) Usando os valores tabelados, determine a função da forma g(x) = c x + c 1 x 3 que melhor se ajusta à função erro no sentido dos mínimos quadrados. [1.5] Resolução: As funções de base são dadas por: φ (x) = x, φ 1 (x) = x 3 e os parâmetros c e c 1 obtêm-se resolvendo o sistema de equações normais [ ] [ ] [ ] (φ, φ ) (φ, φ 1 ) c (φ, erf) =, (φ 1, φ ) (φ 1, φ 1 ) c 1 (φ 1, erf) onde Resolvendo o sistema (φ, φ ) = x i = 13.75 i= (φ, φ 1 ) = (φ 1, φ ) = (φ 1, φ 1 ) = (φ, erf) = (φ 1, erf) = x 4 i = 61.1875 i= x 6 i = 3.547 i= x i erf(x i ) = 7.4174 i= x 3 i erf(x i) = 7.7496 i= [ 13.75 61.1875 61.1875 3.547 ] [ ] c = c 1 [ 7.4174 7.7496 ], (cuja matriz é denida positiva) obtém-se g(x) =.84783x.74348x 3.
(c) Calcule um valor aproximado de erf(.75) com erro absoluto inferior a.1 usando a regra dos trapézios. [.] Resolução: Pretende-se um valor aproximado erf(.75) de erf(.75) tal que erf(.75) erf(.75) <.1. Pondo f(t) := exp( t ), erf(.75) será dado por onde erf(.75) = π T n (f) = h.75 com h =.75/n e t i = hi, i =,..., n. Note-se que exp( t )dt = T n (f) π ( ) n 1 f(t ) + f(t n ) + f(t i ) erf(.75) erf(.75) <.1.75 f(t)dt T n (f) π <.1 i=1.75 f(t)dt T n (f) <.5 π. Começamos por determinar o número n de subintervalos do intervalo [,.75] que iremos usar na regra dos trapézios T n (f). Para tal recorremos à fórmula de majoração do erro da regra dos trapézios Tem-se E n (f) :=.75 f(t)dt T n (f) (.75)3 1n f (t) = t exp( t ) f (t) = (t 1) exp( t ) max f (t) =.351563 t [,.75] n f (t) = 4t(3 t ) exp( t ) e como f (t) > para todo t [,.75], a função f é crescente em [,.75]. Então max f (t) = max{ f (), f (.75) } =, t [,.75] max f (t). t [,.75] donde Agora determinamos n N tal que E n (f).7315 n..7315 n <.5 π, o que dá n >.7315.5 π =.81673. Tomamos então n = 3, e com este valor obtém-se h =.5, t =, t 1 =.5, t =.5, t 3 =.75 e.75 ( exp( t exp( t )dt.5 ) + exp( t ) 3) + exp( t 1) + exp( t ) =.65184. Obtém-se então erf(.75) = π.65184 =.75445.
4. Considere o problema de valor inicial y (t) t = cos y() = 1. ( y(t) t ), t [, 3], Obtenha um valor aproximado de y(.) aplicando o método do ponto médio com h =.1. [1.5] Resolução: O problema de valor inicial é equivalente a ( ) y(t) y (t) = t cos, t [, 3], y() = 1. Neste caso, consideramos a função denida por ( y ) f(t, y) = t cos t e para h =.1, obtemos os pontos t t i = +.1i, i =, 1,,... Assim, y(.) = y(t ) y, sendo y obtido pelo método do ponto médio { y = 1 y i+1 = y i +.5f(t i +.5, y i +.5f(t i, y i )), i =, 1,,... Obtém-se então y 1 = 1.4341, y = 1.83781.