Reconocimiento ecuaciones en GUI
Publicado por juanjo (3 intervenciones) el 03/01/2012 18:56:41
Buenas, estoy haciendo una GUI en Matlab que me calcule al derivada, integral y transformada de fourier de una ecuación cualquiera que introduzca y me gustaría que alguien me pudiera ayudar. Os dejo el callback donde introduzco la ecuación y el pushbutton donde lo calculo. Un saludo
function varargout = SupercalDINFOU_OutputFcn(hObject, eventdata, handles)
ecuacion=str2num(get(handles.insert_ecuac,'String'))
function pushbutton_calcula_Callback(hObject, eventdata, handles)
global ecuacion
ecuacion=str2num(get(handles.insert_ecuac,'String'))
%Obtengo el control de la derivada/integral/furier(busco controles con el Tag):
para_derivada=findobj(gcbf,'Tag','result_derv');
para_integral=findobj(gcbf,'Tag','resul_integral');
para_furier=findobj(gcbf,'Tag','result_fourier');
%hago calculos derivadas mediante la funcion diff
derivada1=diff(ecuacion)
%convierto a caracter
derivada2=char(derivada1);
%hago integral mediante la funcion int
integral1=int(sym(ecuacion))
%convierto a caracter
integral2=char(integral1);
%hago furier mediente la funcion fourier
furier1=fourier(sym(ecuacion),'x');
%convierto
furier2=char(furier1);
%Presento resultados:
set(para_derivada,'String',derivada2);
set(para_integral,'String',integral2);
set(para_furier,'String',furier2);
¿Alguien sabe como hacer que me reconozca las ecuaciones que introduzca? Gracias de antemano
function varargout = SupercalDINFOU_OutputFcn(hObject, eventdata, handles)
ecuacion=str2num(get(handles.insert_ecuac,'String'))
function pushbutton_calcula_Callback(hObject, eventdata, handles)
global ecuacion
ecuacion=str2num(get(handles.insert_ecuac,'String'))
%Obtengo el control de la derivada/integral/furier(busco controles con el Tag):
para_derivada=findobj(gcbf,'Tag','result_derv');
para_integral=findobj(gcbf,'Tag','resul_integral');
para_furier=findobj(gcbf,'Tag','result_fourier');
%hago calculos derivadas mediante la funcion diff
derivada1=diff(ecuacion)
%convierto a caracter
derivada2=char(derivada1);
%hago integral mediante la funcion int
integral1=int(sym(ecuacion))
%convierto a caracter
integral2=char(integral1);
%hago furier mediente la funcion fourier
furier1=fourier(sym(ecuacion),'x');
%convierto
furier2=char(furier1);
%Presento resultados:
set(para_derivada,'String',derivada2);
set(para_integral,'String',integral2);
set(para_furier,'String',furier2);
¿Alguien sabe como hacer que me reconozca las ecuaciones que introduzca? Gracias de antemano
Valora esta pregunta


0