Matlab - bucle funcion mathlab

 
Vista:

bucle funcion mathlab

Publicado por vaya (1 intervención) el 02/05/2011 13:27:09
hola,

necesito saber como montar un bucle con funciones en MATHLAB en el que cada pasada se tome cada una de las funciones, lo he intentado con table metiendo cada una de las funciones como m1 m2 m3 ...y como si fueran una lista de elementos {} pero no lo he conseguido. La funcion m(x_) se usa despues mas abajo.

m(x_)= ...
m(x_)=...

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

bucle funcion mathlab

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 02/05/2011 22:17:16
Hola Vaya
Si no me equivoco, lo que quieres hacer, me parece es leer una cantidad de funciones por el teclado y numerarlo como por ejemplo f1.m, f2.m,.....fn.m y luego mas adelante en el programa utilizarlo, ya sea para evaluar funciones o graficar etc segun tu necesidad. Si es asi, este pequeño programa hace loque estas preguntando. Ademas supongo q conoces matlab, porque lo q estas preguntando no es matlab basico. Al ejecutar se crear automaticamente una de archivos tipo funcion en matlab, segun el nombre que le introductos por teclado. Para introducir una cantidad d de funciones por el teclado en una sola fila, utilizo celdas es por esa razon que entran dentro de llaves.

%===========================================
clear,
apos='''';
fprintf('PROBAR CON: [{%ssin(x)%s,%scos(x)%s,%sexp(x)%s}]\n\n',...
apos,apos,apos,apos,apos,apos);
fun=input('Ingrese fun=');
nombre=input('Ingrese el nombre de la funcion(sin extension):','s');
[nfunciones,col]=size(fun);
for i=1:col
fid=fopen([nombre,int2str(i),'.m'],'w');
fprintf(fid,'function y=%s%d(x)\n',nombre,i);
fprintf(fid,'\t\t y=%s;',fun{i});
fid(close);
end
%=============================================

%EJECUCION EN LA VENTANA DE COMANDOS.

>> funcionenbucle
PROBAR CON: [{'sin(x)','cos(x)','exp(x)'}]

Ingrese fun=[{'sin(x)','cos(x)','exp(x)'}]
Ingrese el nombre de la funcion(sin extension):f


Saludos.
JOSE JEREMIAS CABALLERO
ASESOR DE PROYECTOS CON MATLAB
PROFESOR DE METODOS NUMERICOS CON MATLAB
PROGRAMADOR EN MATLAB
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar