Profecional

Páginas: 2 (263 palabras) Publicado: 1 de octubre de 2012
f=get(handles.funcion,'string');
xi=get(handles.xini,'string');
Es=get(handles.tolerancia,'string');
syms x
dx=diff(f)
ddx=diff(f,2)
%formula=inline(f);derivada=inline(dx);
derivadados=inline(ddx);
formula=inline(f);
Ea(1)= 100;
i=1;
switch get(handles.seleccionar,'Value')
case 2
while (Ea>Es)fxi=feval(formula,xi);
fdxi=feval(derivada,xi);
xi1= xi -(fxi/fdxi);
Ea=abs(((xi1-xi)/xi1)*100);
i=i+1;
end
r=num2str(xi);set(handles.raiz,'string',r);
fplot(handles.grafica,f,[-xi xi]);
case 3 %usuario selecciono la opcion Newton-Raphson mejorado;
while (Ea>Es)
fxi=feval(formula,xi);fdxi=feval(derivada,xi);
f2dxi=feval(derivadados,xi);
xi1= xi - (fxi*fdxi)/(fdxi^2-fxi*f2dxi);
Ea=abs(((xi1-xi)/xi1)*100);
i=i+1;
endr=num2str(xi);
set (handles.raiz,'string',r);
fplot(handles.grafica,f,[-xi xi]);
end















Editor



fx=get(handles.funcion,'string');n=fx;
syms x
y=eval(fx)
dfx=diff(y)
ddfx=diff(dfx)
xi=get(handles.xini,'string');
t=get(handles.tolerancia,'string');
fx=vpa(y);
fx=subs(fx);xi=str2num(xi);
f=subs(fx);
d=subs(dfx);
tol=str2num(t);
Ea(1)= 100;
i=1;
%val=get(handles.seleccionar,'Value');
%str=get(handles.seleccionar,'String');
%switch str(val)%case 'Newton-Raphson'
switch get(handles.seleccionar,'Value');
case 1
while (Ea>tol)
fx=subs(f,xi);
dfx=subs(d,xi);
xi1= xi-(fx/dfx);
Ea=abs(((xi1-xi)/xi1)*100);
xi=xi1;
i=i+1;
end
fplot(handles.grafica,n,[(xi-2) (xi+2)])
r=num2str(xi);
set(handles.raiz,'string',r);;
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Profecional
  • profecional
  • Profecional
  • Profecional
  • Profecional
  • profecional
  • profecional
  • Profecional

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS