passing strings to a function to call commands
    2 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
I'd like to create a function to automate the passing variable names to statement. I tried to create a function to achieve it using is varargin and foo loop. The challenge is to pass unknown number for string names to a function call.
Manual method is as follow.
      Vdc(1,:) = logsout.get('Vdc').Values.Data(:,1) ;
      Vc(1,:) =logsout.get('Vc').Values.Data(:,1) ;
      I_L(1,:) =logsout.get('I_L').Values.Data(:,1) ;
The function I created with errors
function logger(varargin)
% input is in the format logger(Vdc,Vin,Iload)
% where "logsout" is the name of the object stored Vdc,Vin,Iload,IL,,,,
% I want to automatically extract selected variables and store them with 
% the original name
nsize=nargin;
 for k=1:size
 tag=spprintf(varagin(k));
 data(:,1) = logsout.get('Vdc').Values.Data(:,1) ;  % where tag='Vdc'
assignin('base',tag,data);
  end
Any suggestions appreciated.
1 comentario
Respuestas (1)
  Rashmil Dahanayake
      
 el 22 de Mayo de 2014
        
      Editada: Rashmil Dahanayake
      
 el 22 de Mayo de 2014
  
      
      0 comentarios
Ver también
Categorías
				Más información sobre Loops and Conditional Statements en Help Center y File Exchange.
			
	Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

