·

Geologia ·

Cálculo Numérico para Geologia

· 2023/1

Envie sua pergunta para a IA e receba a resposta na hora

Fazer Pergunta

Texto de pré-visualização

MÉTODO DO PONTO FIXO Dada uma função f(x) contínua no intervalo [a,b] onde existe uma raiz única , f(x)=0 , é possível transformar tal equação em uma equação equivalente, x = g(x), e, a partir de uma aproximação inicial x₀ , gerar uma sequência {xₖ} de aproximações para ξ pela relação xₖ₊₁ = g(xₖ), uma vez que g(x) é tal que f(ξ) = 0 se e somente se g(ξ)=ξ. [Problema de determinação de um zero de f(x) Função de Iteração Problema de determinação de um ponto fixo de g(x)] Mas , o que é ponto fixo de uma função? - A função f(x) = x²-x-2 pode ser reescrita como f(x) = x²-2-x, então, f(x) = x²-2-x = g(x) - x , onde g(x) = x²-2 - Essa função tem como ponto fixo o valor x = 2 , pois g(2) = 2²-2 = 2, , o valor da função g(x) é o próprio x → g(x) = x - E esse valor é exatamente o valor da raiz de f(x) , pois f(2) = 2²-2-2 = 0 - Então, a raiz de f(x) será o ponto fixo de g(x), ou seja, o valor que ao ser substituído em g(x) retorna o próprio valor de x. Análise Gráfica Determinar os pontos fixos de uma função g(x) é determinar os pontos de interseção entre as curvas , ou seja, x=g(x) tem como raiz a abcissa do ponto de interseção da reta r(x)=x e da curva g(x). Exemplo 1 Seja a equação x^2 + x - 6 = 0. Possíveis funções de iteração g(x): g1(x) = 6 - x^2 , g2(x) = ±√6 - x , g3(x) = 6/x - 1 , g4(x) = 6/x + 1 Dada uma equação do tipo f(x) = 0, há para tal equação mais de uma função de iteração g(x), tal que f(x) = 0 ⟷ x = g(x) Aqui x^2 + x - 6 = 0 é apenas para exemplificar mas podemos obter suas raízes facilmente sem usar um método numérico, onde ę1 = -3 e ę2 = 2 Seja a raiz ę2 = 2. e g1(x) = 6 - x^2, por exemplo, considerando x0 = 1,5 e g(x) = g1(x), temos: x1 = g(x0) = 6 - 1,5^2 = 3,75 não é x1 x2 = g(x1) = 6 - 3,75^2 = -8,0625 x3 = g(x2) = 6 - (-8,0625)^2 = -59,003906 x4 = g(x3) = 6 - (-59,003906)^2 = -3475,4609 ... Conclui-se que {xk} não convergirá para ę2 = 2. Agora, tomando ę2 = 2, g2(x) = √6 - x e x0 = 1,5 x1 = g(x0) = √6 - 1,5 = 2,121320343 x2 = g(x1) = √6 - 2,121320343 = 1,969463680 x3 = g(x2) = √6 - 1,969463680 = 2,007626364 x4 = g(x3) = √6 - 2,007626364 = 1,998092499 x5 = g(x4) = √6 - 1,998092499 = 2,000476818 Conclui-se que a sequência {xk} tende a convergir para ę2 = 2. TEOREMA DA CONVERGÊNCIA O teorema a seguir nos fornece condições suficientes para que o processo seja convergente, ou seja, através dele podemos saber de antemão se irá convergir ou não. Teorema: Sendo ę uma raiz de f(x) = 0, isolada em um intervalo I = [a,b] centrado em ę e g(x) uma função de iteração para f(x) = 0. Se 1) g(x) e g'(x) são contínuas em I, 2) |g'(x)| < 1 ∀x ∈ I = [a,b], e 3) x0 ∈ I, então a sequência {xk} gerada pelo processo iterativo x(k+1) = g(xk) convergirá para ę. TODAS as condições devem ser satisfeitas para convergir, se uma delas não for satisfeita, então não converge. • Voltando no exemplo x^2 + x - 6 = 0, onde vimos que {xk} não converge para f2 = 2 quando g(x) = g1(x) = 6 - x^2 e {xk} converge para f2 = 2 quando g(x) = g2(x) = √(6 - x) • Isso pode ser verificado aplicando o Teorema. • Para g1 = 6 - x^2 temos que: ➡ g1(x) = 6 - x^2 e g1'(x) = -2x ➡ contínuas em I ➡ Condição 1 ok ➡ |g1'(x)| < 1 ⟺ |1 - 2x| < 1 ➡ x0 = 1,5 ⟺ |g1'(x0)| = |g1'(1,5)| = |1 - 3| > 1 ➡ ⮞ Não existe um intervalo I centrado em f2 = 2, tal que |g1'(x)| < 1 ∀x ∈ I ➡ g1(x) não satisfaz a condição 2 do teorema com relação a f2 = 2. Condicão 2 falha Não converge • Para g2(x) = √(6 - x) temos: ➡ g2(x) é contínua em todo domínio S = {x ∈ R / x < 6} ➡ g2'(x) = -1/(2√(6 - x)) é contínua em S' = {x ∈ R / x < 6} Domínio de g2(x) Domínio de g2'(x) ➡ |g2'(x)| < 1 ⟺ |1/(2√(6 - x))| < 1 ⟺ x ≤ 5,75 Para x0 = 1,5 ⟺ |g2'(x0)| = |g2'(1,5)| = |1/(2√(6 - 1,5))| = |1 - 0,2357| < 1, ou seja, a condição 2 é satisfeita para x0 e os pontos seguintes. ⮞ É possível obter um intervalo I centrado em f2 = 2, tal que todas as condições do Teorema sejam satisfeitas. Logo converge Critérios de Parada • Se os valores fossem exatos: ➡ f(x_{k+1}) = 0 ➡ |x_{k+1} - x_k| = 0 • Como o valor é não exato e sim uma aproximação: ➡ |f(x_{k+1})| ≤ tolerância ➡ tolerância é dada ➡ |x_{k+1} - x_k| ≤ tolerância ➡ (conhecida)