Runge kutta, derivacion, integracion, metodos numericos

Solo disponible en BuenasTareas
  • Páginas : 3 (742 palabras )
  • Descarga(s) : 0
  • Publicado : 27 de marzo de 2011
Leer documento completo
Vista previa del texto
Integrales por Simpson

%Simpson Integrales
function simpson_Callback(hObject, eventdata, handles)
global ecuacion x;
syms x;
funcion=ecuacion;b=str2num(get(handles.limSup,'String'));
a=str2num(get(handles.limInf,'String'));
n= str2num(get(handles.iteracion,'String'));
h=(b-a)/n;
x=a; f=eval(funcion);
x=b; f=f+eval(funcion);i=1;
%cuantas i5teraciones??
x=a+(i*h);
while (x<b) & (i<=n-1)
x=a+(i*h);
fprintf('-->%f en %f \n',x,i);
%par
if mod(i,2)==0f=f+ 2*(eval(funcion)); % multiplicando por 2 para impares
else %impares
f=f+ 4*(eval(funcion));% multiplicando por 4 para pares
end
i=i+1;
endf=(h/3)*f; % resultado
set(handles.resultado, 'String',num2str(f));

Derivada por dif progresivas

function progresivas_Callback(hObject, eventdata, handles)
global ecuacion x;
symsx;
funcion=ecuacion;

grado=str2num(get(handles.orden,'String'));
x=str2num(get(handles.evaluacion,'String'));
h=str2num(get(handles.espacio,'String'));

%gradocorrecto
grado=grado+1;
f=0;
A=pascal(grado);
disp(A);
a=x;
y=grado+1;
cont=0;
for i=1:1:grado
y=y-1;
for j=y:-1:0x=a+(((grado-1)-cont)*h);
f=f + ((-1)^cont)*A(i,j)*eval(funcion);
break;
end
cont=cont+1;
end
set(handles.resultado,'String',num2str(f/(h^(grado-1))));

Derivada por Valor medio

% --- Executes on button press in medio.
function medio_Callback(hObject, eventdata, handles)

global ecuacion x;
syms x;
funcion=ecuacion;grado=str2num(get(handles.orden,'String'));
x=str2num(get(handles.evaluacion,'String'));
h=str2num(get(handles.espacio,'String'));


%grado correcto
grado=grado+1;...
tracking img