A continuación tendrán que seguir los siguientes comandos usados en cada caso.
function btnCalcular_Callback(hObject, eventdata, handles)
f=inline(get(handles.txtFuncion,'string'));
g=inline(get(handles.txtFuncionD,'string'));
Xo=str2double(get(handles.txtValorInicial,'string'));
Tol=str2double(get(handles.txtTolerancia,'string'));
Iter=10;
Yn=f(Xo);
Error=Tol+1;
Cont=0;
Z=[Cont,Xo,Yn,Error];
set(handles.uitable1,'Data',[]);
while Yn~=0 && Error>Tol && Cont<Iter
Xn=g(Xo);
Yn=f(Xn);
Error=abs((Xn-Xo)/Xn);
Cont=Cont+1;
Z(Cont,1)=Cont;
Z(Cont,2)=Xn;
Z(Cont,3)=Yn;
Z(Cont,4)=Error;
Xo=Xn;
newRow ={Cont,Xn,Yn,Error};
oldData = get(handles.uitable1,'Data');
newData=[oldData; newRow];
set(handles.uitable1,'Data',newData)
end
if Yn==0
fprintf('\n\nSOLUCION:\n')
fprintf('%g es raiz\n\n',Xo);
else
if Error<Tol
fprintf('\n\nSOLUCION:\n')
fprintf('%g es una aproximacion con un tolerancia de %g\n\n',Xo,Tol);
end
end
function btnGraficar_Callback(hObject, eventdata, handles)
axes(handles.axes1)
f=inline(get(handles.txtFuncion,'string'));
ezplot(f);
Metodo del Punto Fijo
0 comments:
Publicar un comentario