How to get a one function result?
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Akash Pal
el 6 de Mayo de 2022
Comentada: Walter Roberson
el 9 de Mayo de 2022
I have a main function called mainfun
function [out1,out2]=mainfun(input)
[out1]=fun1(input);
[out2]=fun2(input);
end
so my question is ,may be i am calling my mainfun,and I want to display the individual result from different sub function,but how to display if there is any error in one subfunction ?
like an example ,
if in my fun1 there is eroor then also i want to get the fun2 result .
0 comentarios
Respuesta aceptada
Walter Roberson
el 9 de Mayo de 2022
You can create a helper function
function varargout = safe(fcn, varargin)
try
[varargout{}] = fcn(varargin{:}) ;
catch ME:
varargout(:) = {nan};
end
With that you can
[out1] = safe(@fun1,input);
[out2] = safe(@fun2,input);
4 comentarios
Walter Roberson
el 9 de Mayo de 2022
function varargout = safe(fcn, varargin)
try
[varargout{1:nargout}] = fcn(varargin{:}) ;
catch ME:
varargout(1:nargout) = {nan};
end
Más respuestas (1)
David Hill
el 6 de Mayo de 2022
function [out1,out2]=mainfun(input)
out1=nan;out2=nan;
try [out1]=fun1(input);
end
try [out2]=fun2(input);
end
2 comentarios
Walter Roberson
el 9 de Mayo de 2022
You should initialize any output variable that might otherwise not be assigned to because of errors.
Ver también
Categorías
Más información sobre Environment and Settings 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!