Olá! É um grande prestígio a sua visita.
Para tirar o máximo de proveito do nosso conteúdo, tenha papel e caneta em mãos. Faça anotações dos principais pontos e, depois, formule pequenos parágrafos sobre o que tiver anotado. Em seguida, revise o texto, dessa vez, formulando perguntas para que você mesmo responda ao final. Por último, ensine o que aprendeu a alguém. Isso tornará seu processo de aprendizagem mais efetivo.
Desejo a você uma excelente aprendizagem!
Nesta publicação, mostrarei a você a essência do método da bisseção, fornecendo um pequeno script do Scilab para que você possa experimentar aplicar o método a diferentes equações.
Métodos Numéricos para Determinar Raízes de Equações
Os métodos numéricos para determinar raízes de equações não lineares se dividem em métodos intervalares e métodos abertos. Os métodos abertos são aplicados a partir de um ponto sem a necessidade de esse ponto pertencer a um intervalo específico. Por seu turno, os métodos intervalares são altamente dependentes de um intervalo, podendo inclusive não convergir para uma raiz se o intervalo for mal definido.
Ambas as categorias apresentam vantagens e dificuldades, sendo a escolha por um ou outro método feita de acordo com as características do problema.
O método da bisseção é um método intervalar. Sua principal vantagem é a garantia de convergência quando há uma raiz no intervalo definido. Por outro lado, sua convergência pode ser mais lenta do que a de outros métodos, a depender de alguns fatores, como o intervalo escolhido.
A implementação do método da bisseção é bastante simples, uma vez que se compreenda seu algoritmo. A ideia por trás do método é também simples, consistindo em dividir um intervalo ao meio, testar o lado que possui a raiz e dividir esse novo intervalo novamente, repetindo o processo até que um critério de parada seja atingido.
Pseudocódigo do Método da Bisseção
O algoritmo requer a definição de um intervalo e da função da qual se deseja calcular as raízes, além do tamanho limite do intervalo como critério de parada. No pseudocódigo abaixo, f(x) representa a função, a e b são os extremos do intervalo, e eps é o tamanho limite do intervalo.
Receba f(x), a, b, eps;
Faça r = (a+b)/2;
Enquanto |a-b| > eps Faça
Se f(a) x f(r) < 0
Então b = r;
Se não a = r;
Fim Se
r = (a+b)/2;
Fim Enquanto
Mostre r;
Script no Scilab
Vejamos um script do Scilab para determinar uma raiz de um polinômio:
function [y] = f(x)
y = x^2 - 3*x + 2 = 0;
endfunction
a = 0;
b = 3;
eps = 0.001;
while abs(a - b) > eps
r = (a+b)/2;
if f(a)*f(r) < 0
b = r;
else
a = r;
end
end
disp(r);
No script acima, o método devolverá a raiz obtida na última iteração que não atendeu ao critério de parada. No entanto, sabemos que há duas raízes no intervalo passado. Então, responda às questões:
- Sabendo que a função f(x) deve ser contínua, o que significa testar o sinal do produto f(a)*f(r)?
- Qual raiz foi determinada pelo método nas condições dadas no script?
- Por que o método não determinou as duas raízes?
- O que poderia ser feito para que o método encontrasse a outra raiz?
Siga-me no Instagram e visite o meu canal no YouTube.
Conheça o idealizador do Letionare.
* Publicação 100% humana (pode ter erros de digitação : ),.
Nenhum comentário:
Postar um comentário
A moderação é para garantir sua segurança.
Farei isso o mais breve possível. Muito obrigado por comentar.