miércoles, 2 de mayo de 2012

Metodo De Newton-Rapshon Con Interfaz De Usario en Matlab


Acontinuacion Mostramos el codigo Usado en Cada uno de los botones
 
%Edit Text entrada
  function entrada_Callback(hObject, eventdata, handles)
  funcion=inline(get(handles.entrada,'string'));

%Edit Text Derivada
  function derivada_Callback(hObject, eventdata, handles)
  Derivada=inline(get(handles.derivada,'string'));

%Edit Text Xo
  function Xo_Callback(hObject, eventdata, handles)
  xo=str2double(get(handles.Xo,'string'));

%Edit Text error
  function error_Callback(hObject, eventdata, handles)
  Error=str2double(get(handles.error,'string'));

%Codigo del Push Button calcular
  function calcular_Callback(hObject, eventdata, handles)
funcion=inline(get(handles.entrada,'string'));
Derivada=inline(get(handles.derivada,'string'));
xo=str2double(get(handles.Xo,'string'));
Error=str2double(get(handles.error,'string'));
if isnan (xo)
    msgbox({'Valor no Numerico o fuera de Rango',...
        'En Xo favor de introducir un Dato  Valido'},'Upss','error');
elseif isnan(Error)
    errordlg({'Valor no Numerico o Fuera de Rango',...
        'En Error Favor de Introducir un Dato Valido'},'Upss');
else
 X1=(xo-funcion(xo))/Derivada(xo);
while abs(X1-xo)>Error
    xo=X1;
    X1=(xo-funcion(xo))/Derivada(xo);
end
set(handles.salida,'string',X1);

end

%Codigo del Push Button Graficar
function graficar_Callback(hObject, eventdata, handles)
funcion=inline(get(handles.entrada,'string'));
Derivada=inline(get(handles.derivada,'string'));
grid on
hold on
fx=ezplot(Derivada);
set(fx,'color','m');

dfx=ezplot(funcion);
set(dfx,'color','b');
legend('F(X)','dF(X)');

1 comentario:

  1. Hola que tal no tendrás el de falsa pocicion o interpolacion lineal, si lo tienes te lo agradecería mucho este es mi correo


    abrahamlirax@gmail.com

    ResponderEliminar