Você está na página 1de 2

Algoritmo para calcular as raízes pelo método do ponto fixo

Nome: Lorraine Marques Alves

% Calculando a raiz de uma função pelo método do ponto fixo


% a função escolhida foi f(x)=cos(x³+1)-x
%a função g(x) de iteração é g(x)=cos(x³+1)
>> global maxiteracoes tolerancia
>> tolerancia=1e-2;
>> maxiteracoes=100;
>> x=-10:0.5:10;
>> y=func(x);
>> plot(x,x,x,y)
>> grid on
>> [raizfunc, parametro]=raizf('func',0.4);
>> switch parametro
case -1
disp('Raiz da função não encontrada. ')
otherwise
disp(['A raiz é : ', num2str(raizfunc) , ' encontrada em ', num2str(parametro) , '
iterações!'])
end
A raiz é : 0.46023 encontrada em 4 iterações!
>>

Gráficos de y=x e g(x):


Zoom no intervalo [0,1] mostrando o valor aproximado da raiz de f(x) (que é o ponto de
interseção) e o nº de iterações:

Funções:

% a função func.m determina a função de iteração


function [g]=func(x)
g = cos(x.^3+1);

% a função raizf.m faz as iterações, procurando as raízes

function[raiz,parametro]=raizf(g,xinicial)
global tolerancia maxiteracoes
parametro=0;
iteracoes=0;
prox=feval(g,xinicial);
while(iteracoes<maxiteracoes)& abs(prox-xinicial)>tolerancia
iteracoes=iteracoes+1;
xinicial=prox;
prox=feval(g,xinicial);
end
if iteracoes==maxiteracoes
parametro=-1;
raiz=NaN;
else
parametro=iteracoes;
raiz=prox;
end