warnings and erros in matlab

1 visualizzazione (ultimi 30 giorni)
Tomas Iesmantas
Tomas Iesmantas il 18 Lug 2011
Hi, Is there any way to write all warnings and errors ocurred in simulation\calculation to some text file?
I generate simulink model automatically and the simulating it through COM. I need to have all errors and warnings occured during simulation in one file.
Thanks in advance,
Tomas

Risposte (2)

Jan
Jan il 18 Lug 2011
I use a dedicated function for logging warnings and errors: The functions is used instead of WARNING and ERROR and writes all messages in a file, which is opened once at the beginning. Unexpected errors have to be caught by TRY/CATCH then.
function myLog(Command, Caller, Msg)
persistent FID
switch Command
case 'open'
FID = fopen(Caller, 'w');
case 'close'
fclose(FID);
FID = -1;
case 'warning'
fprintf(FID, 'warning: %s: ', Caller);
if iscellstr(Msg)
Msg = sprintf(FID, '%s\n', Msg{:});
Msg(end) = [];
end
fprintf(FID, '%s\n', Msg);
% Perhapse: warning([Caller, ': ', Msg])
% or: fprintf(2, '%s\n', Msg);
case 'error'
fprintf(FID, 'error: %s: ', Caller);
if iscellstr(Msg)
Msg = sprintf('%s\n', Msg{:});
Msg(end) = []; % Remove trailing line break
end
fprintf(FID, '%s\n', Msg);
% Perhaps: error([Caller, ': ', Msg])
% or: fprintf(2, '%s\n', Msg);
end
Now this creates the messages:
myLog('open', fullfile(tempdir, 'logfile.txt'));
myLog('warning', 'Project 1', 'totally nonsense');
myLog('error', 'Project 1', {'Completely', 'wrong'});
myLog('close');

Friedrich
Friedrich il 18 Lug 2011
Hi,
I think the diary command can help you here:
  1 Commento
Tomas Iesmantas
Tomas Iesmantas il 18 Lug 2011
But it creates file with whole commands used in matlab window. But I need to have just errors\warnings and whithout other commands.

Accedi per commentare.

Prodotti

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by