Sie sind auf Seite 1von 4

INTRODUCCIÓN A LOS MÉTODOS COMPUTACIONALES (CI171)

CLASE INTEGRADORA N° 2
Ciclo 2019-01

a) PARTE 1: Hallar el polinomio de interpolación

function grado_Callback(hObject, eventdata, handles)

global n;% se define la variable n para usar en todo el código


contenido=get(handles.grado,'string');
a=get(hObject,'value');
tipo=contenido(a);
n=str2num(cell2mat(tipo));

function Graficar_Callback(hObject, eventdata, handles)


X=0:0.1:0.5;
INTRODUCCIÓN A LOS MÉTODOS COMPUTACIONALES (CI171)
CLASE INTEGRADORA N° 2
Ciclo 2019-01

Y=[1 8 4 3.5 5 1];


global n;
global p;
%Capturo los datos de la tabla
%t=str2double(get(handles.tabla,'data'));
%X=t(:,1);
%Y=t(:,2);
% Graficando
p=polyfit(X,Y,n);
ycalc=polyval(p,X);

%gráfica con curvas


m=length(X);
X1=linspace(X(1),X(m),100);
ycalc1=polyval(p,X1);
axes(handles.axes1)
plot(X,Y,'o',X1,ycalc1);
grid minor
%R
nelem=length(Y);
yp=sum(Y)/nelem;
N=sum((ycalc-yp).^2);
D=sum((Y-yp).^2);
r=N/D;
% Mostrar el R-r coeficientes-p
p1=num2str(p);% se transforma para poder visualizer en un editext
set(handles.R,'string',r)
set(handles.ycalcula,'string',p1);

function Calcular_Callback(hObject, eventdata, handles)


global p;
%n=get(handles.grado,'value');
%t=str2double(get(handles.tabla,'data'));
%X=t(:,1);
%Y=t(:,2);
%p=polyfit(X,Y,n);
x=eval(get(handles.xx,'string'));
valor=polyval(p,x);%calcula el valor a evaluar
set(handles.valor,'string',valor)
INTRODUCCIÓN A LOS MÉTODOS COMPUTACIONALES (CI171)
CLASE INTEGRADORA N° 2
Ciclo 2019-01

b) PARTE 2: Calcular el valor de la Integral

function Calcular_Trapecio_Callback(hObject, eventdata, handles)

a=str2num(get(handles.edit2,'string'));
b=str2num(get(handles.edit3,'string'));
n=str2num(get(handles.edit4,'string'));
f=get(handles.edit1,'string');
f=inline(f)

h=(b-a)/n;
s=0;
hold on
for i=1:n
s=s+h*(f(a+(i-1)*h)+f(a+(i)*h))/2;
end
x1=linspace(a,b,n);
x2=linspace(a,b,100);
y1=f(x1);
INTRODUCCIÓN A LOS MÉTODOS COMPUTACIONALES (CI171)
CLASE INTEGRADORA N° 2
Ciclo 2019-01

y2=f(x2);
bar(x1,y1)
xlabel('Eje X')
ylabel('Eje y')
title('trapecio Multiple','color','b')
axes(handles.axes1)
plot(x2,y2,'red','lineWidth',3)
grid on
set(handles.edit5,'string',s)

function btn_Borrar_Callback(hObject, eventdata, handles)

limpiar=''
set(handles.edit1,'string',limpiar)
set(handles.edit2,'string',limpiar)
set(handles.edit3,'string',limpiar)
set(handles.edit4,'string',limpiar)
set(handles.edit5,'string',limpiar)
cla(handles.axes1,'reset',limpiar)

Practicando

Das könnte Ihnen auch gefallen