Q8) A rigidez equivalente
de um sistema estrutural não linear é definida por:
com:
Deseja-se determinar
tal que:
- Formule a equação não linear correspondente.
- Use o Método da Bisseção no intervalo apropriado.
- Justifique a aplicação do Teorema de Bolzano.
- Implemente o método em MATLAB.
Passo 1
O enunciado fornece a relação não linear entre a rigidez equivalente
e constantes conhecidas e pede quatro coisas:
- Formular a equação não linear correspondente (ou seja, escrever a equação cuja raiz é o
procurado). - Aplicar o Método da Bisseção em um intervalo apropriado para encontrar a raiz.
- Justificar a aplicação do Teorema de Bolzano (mostrar existência de raiz no intervalo escolhido).
- Implementar o método em MATLAB.
Os dados fornecidos (peguei estes valores do enunciado) são:
-
. -
. -
. - O valor desejado que aparece no lado direito é
.
O que se pede explicitamente:
- Escrever a equação não linear
que representa o problema. - Escolher um intervalo
com sinal trocado de nas extremidades e aplicar a Bisseção. - Justificar por que o Teorema de Bolzano garante pelo menos uma raiz nesse intervalo.
- Fornecer a implementação MATLAB do método da Bisseção para esse problema.
Passo 2
Formular a equação não linear.
A equação dada é
Queremos encontrar
tal que essa expressão seja igual a
. Então definimos a função cuja raiz procuramos por
A raiz de
satisfaz exatamente a equação pedida.
Se quiser ver a forma algébrica alternativa (mostrar que é um polinômio quadrático): multiplicando ambos os lados por
e rearranjando obtém-se
onde neste problema
,
,
.
Obs.: a forma quadrática confirma que existe uma solução explícita pelo método de Bhaskara, mas o exercício pede uso da Bisseção — então vamos aplicar esse método numérico.
Passo 3
Escolher intervalo
adequado e verificar mudança de sinal (preparando Bolzano).
Vamos testar alguns pontos naturais. Calculemos
em
e em
(escolha intuitiva:
e
um pouco maior que o
).
Cálculos (mostrando contas para poder fazer na prova sem calculadora científica):
- Para
:
- Para
:
Portanto
e
, ou seja
. Assim há uma mudança de sinal entre
e
.
Justificativa da aplicação do Teorema de Bolzano:
- A função
é contínua em todo salvo pontos onde . Aqui , e para os do intervalo escolhido (por exemplo em temos ), logo é contínua em . - Como
é contínua em e , o Teorema de Bolzano garante a existência de pelo menos uma raiz .
Concluímos que o intervalo
é apropriado para aplicar a Bisseção.
Passo 4
Descrição didática do Método da Bisseção (para quem nunca fez na prova).
Ideia: Bisseção reduz um intervalo que contém a raiz pela metade a cada iteração usando a propriedade de mudança de sinal. Seja
o intervalo na iteração
. O ponto médio é
Calcula-se
. Se
(raríssimo em Floating Point), encontrou-se a raiz. Se
, a raiz está em
; caso contrário (isto é, se
), a raiz está em
. Repetir até que o comprimento do intervalo
seja menor que uma tolerância desejada
ou até que
seja suficientemente pequeno.
Estimativa do número de iterações necessárias:
Por exemplo, com
e
precisamos de muitas iterações (da ordem de 44). Em provas, escolher
é aceitável; se quiser menos iterações use tol maior (por ex.
).
Passo 5
Primeiras iterações ilustrativas (mostrar como proceder manualmente):
Usando
,
:
- iteração 1:
.
Observação importante: neste caso particular
exatamente com aritmética ideal, porque
. Isso indica que
é uma solução exata desta combinação? Cuidado: verificação aritmética real — substituindo
no denominador temos
e
. Soma com
dá exatamente
. Então, na verdade,
satisfaz a equação dada? Mas atenção: o enunciado pedia para encontrar
tal que a expressão seja igual a
. Com os números dados, substituindo
temos:
portanto
é, de facto, uma raiz exata da equação! (Isto simplifica muito o trabalho.)
Comentário didático e empático: às vezes a conta bate certinho e o ponto médio é a solução — sorte nossa! Se isso ocorrer em prova, ótimo: basta verificar e apresentar a solução. Se não ocorresse, continuaríamos com as iterações da bisseção.
Como verificação alternativa (pela forma quadrática): resolvendo a quadrática obtém-se duas raízes; a positiva relevante aqui é próxima de
. No entanto, a verificação direta substituindo
mostra que esse valor satisfaz a equação exatamente com os números dados — portanto a raiz encontrada por bisseção na primeira iteração é
. (É importante sempre verificar substituindo na equação.)
Passo 6
Implementação MATLAB do Método da Bisseção (código pronto para copiar/colar).
Observações: o código abaixo usa tolerância em termos de tamanho do intervalo
e também limite máximo de iterações. Está comentado e imprime a raiz aproximada e número de iterações.
% Bissecao_para_k.m
% Resolve f(k)=k1 + k2/(1+delta*k) - k_desired por bissecao
clear; clc;
% Dados do problema (peguei estes valores do enunciado)
k1 = 1.5e7; % N/m
k2 = 9e6; % N/m
delta = 2.5e-8; % m/N
k_desired = 2.1e7;% N/m
% Função objetivo
f = @(k) k1 + k2./(1 + delta.*k) - k_desired;
% Intervalo inicial (verificado que f(a)*f(b) < 0)
a = 1.5e7;
b = 2.5e7;
% Verificação inicial
fa = f(a);
fb = f(b);
if fa*fb > 0
error('f(a) and f(b) have same sign: choose different interval');
end
% Parâmetros da bisseção
tol = 1e-6; % tolerância no meio do intervalo (N/m)
max_iter = 200;
% Loop da bisseção
iter = 0;
while (b - a)/2 > tol && iter < max_iter
iter = iter + 1;
m = (a + b)/2;
fm = f(m);
% Impressão opcional das primeiras iterações:
% fprintf('iter=%d, a=%g, b=%g, m=%g, f(m)=%g\n', iter, a, b, m, fm);
if fm == 0
a = m;
b = m;
break;
elseif fa*fm < 0
b = m;
fb = fm;
else
a = m;
fa = fm;
end
end
k_root = (a + b)/2;
fprintf('Raiz aproximada k = %.8e N/m\n', k_root);
fprintf('Iterações = %d\n', iter);
fprintf('Verificação f(k_root) = %.8e (deve ser ~0)\n', f(k_root));
Uso: salvar como arquivo (por exemplo
Bissecao_para_k.m) e executar no MATLAB. O script verifica sinais nas extremidades, executa a bisseção e imprime o resultado.Passo 7
Verificação numérica final e comentário curto.
Substituindo
na expressão:
Portanto
é uma solução exata com os valores dados — o algoritmo da bisseção, com o intervalo sugerido, encontra essa raiz já na primeira iteração (o ponto médio).
Se preferir uma precisão diferente ou seguir estritamente a aproximação via a forma quadrática, a outra raiz positiva calculada pela fórmula quadrática dá valor próximo de
; nesse caso é necessário inspecionar qual das raízes da quadrática satisfaz a equação original (lembrar do domínio onde
). Contudo, como a substituição direta mostrou que
atende exatamente a expressão, consideramos esse valor como a solução requerida.
Resposta
A equação não linear é
.
Intervalo usado para a Bisseção: .
Justificativa de Bolzano: é contínua em
(denominador
no intervalo) e
,
, logo
, garantindo existência de raiz.
Raiz encontrada (substituição direta / bisseção): .
Intervalo usado para a Bisseção:
Justificativa de Bolzano:
Raiz encontrada (substituição direta / bisseção):