Matlab system error

It is a good programming practice to include error checking in your programs to ensure reliable operation under all conditions.

Overview

No matter how carefully you plan and test the programs you write, they may not
always run as smoothly as expected when executed under different conditions. It is
always a good idea to include error checking in programs to ensure reliable
operation under all conditions.

In the MATLAB® software, you can decide how your programs respond to different types
of errors. You may want to prompt the user for more input, display extended error or
warning information, or perhaps repeat a calculation using default values. The
error-handling capabilities in MATLAB help your programs check for particular error conditions and execute
the appropriate code depending on the situation.

When MATLAB detects a severe fault in the command or program it is running, it
collects information about what was happening at the time of the error, displays a
message to help the user understand what went wrong, and terminates the command or
program. This is called throwing an exception. You can get an
exception while entering commands at the MATLAB command prompt or while executing your program code.

Getting an Exception at the Command Line

If you get an exception at the MATLAB prompt, you have several options on how to deal with it as described
below.

Determine the Fault from the Error Message

Evaluate the error message MATLAB has displayed. Most error messages attempt to explain at least the
immediate cause of the program failure. There is often sufficient information to
determine the cause and what you need to do to remedy the situation.

Review the Failing Code

If the function in which the error occurred is implemented as a MATLAB program file, the error message should include a line that looks
something like this:

surf

Error using surf (line 49)
Not enough input arguments.

The text includes the name of the function that threw the error
(surf, in this case) and shows the failing line number
within that function’s program file. Click the line number; MATLAB opens the file and positions the cursor at the location in the
file where the error originated. You may be able to determine the cause of the
error by examining this line and the code that precedes it.

Step Through the Code in the Debugger

You can use the MATLAB Debugger to step through the failing code. Click the underlined
error text to open the file in the MATLAB Editor at or near the point of the error. Next, click the hyphen
at the beginning of that line to set a breakpoint at that location. When you
rerun your program, MATLAB pauses execution at the breakpoint and enables you to step through
the program code. The command dbstop on error is also helpful
in finding the point of error.

See the documentation on Debug MATLAB Code Files
for more information.

Getting an Exception in Your Program Code

When you are writing your own program in a program file, you can
catch exceptions and attempt to handle or resolve them
instead of allowing your program to terminate. When you catch an exception, you
interrupt the normal termination process and enter a block of code that deals with
the faulty situation. This block of code is called a catch
block
.

Some of the things you might want to do in the catch block are:

  • Examine information that has been captured about the error.

  • Gather further information to report to the user.

  • Try to accomplish the task at hand in some other way.

  • Clean up any unwanted side effects of the error.

When you reach the end of the catch block, you can either continue executing the
program, if possible, or terminate it.

Use an MException object to access
information about the exception in your program. For more information, see Respond to an Exception.

Generating a New Exception

When your program code detects a condition that will either make the program fail
or yield unacceptable results, it should throw an exception. This procedure

  • Saves information about what went wrong and what code was executing at the
    time of the error.

  • Gathers any other pertinent information about the error.

  • Instructs MATLAB to throw the exception.

Use an MException object to capture information about the
error. For more information, see Throw an Exception.

I tried to run «experiments/script_faster_rcnn_demo.m» as specified in the instruction, and my matlab crashed with the following crash report

I ran the code in Ubuntu 14.04. I hope someone can shed some light on what is going on.


          abort() detected at Sat Oct 17 10:04:52 2015

Configuration:
Crash Decoding : Disabled
Current Visual : 0x20 (class 4, depth 24)
Default Encoding : UTF-8
GNU C Library : 2.19 stable
MATLAB Architecture: glnxa64
MATLAB Root : /data/mat14a
MATLAB Version : 8.3.0.532 (R2014a)
Operating System : Linux 3.13.0-65-generic #105-Ubuntu SMP Mon Sep 21 18:50:58 UTC 2015 x86_64
Processor ID : x86 Family 6 Model 63 Stepping 2, GenuineIntel
Window System : The X.Org Foundation (11701000), display localhost:11.0

Fault Count: 1

Abnormal termination:
abort()

Register State (from fault):
RAX = 0000000000000000 RBX = 00007f4c0c79b620
RCX = ffffffffffffffff RDX = 0000000000000006
RSP = 00007f4c4bf89458 RBP = 00007f4c4bf89590
RSI = 00000000000030aa RDI = 0000000000003085

R8 = 000000000000ff08 R9 = ffffffffffff1150
R10 = 0000000000000008 R11 = 0000000000000202
R12 = 0000000000000001 R13 = 00007f4c4bf897d0
R14 = 00007f4c4bf8a040 R15 = 0000000000000001

RIP = 00007f4c5e110cc9 EFL = 0000000000000202

CS = 0033 FS = 0000 GS = 0000

Stack Trace (from fault):
[ 0] 0x00007f4c5e110cc9 /lib/x86_64-linux-gnu/libc.so.6+00224457 gsignal+00000057
[ 1] 0x00007f4c5e1140d8 /lib/x86_64-linux-gnu/libc.so.6+00237784 abort+00000328
[ 2] 0x00007f4c0c575d81 /usr/lib/x86_64-linux-gnu/libglog.so.0+00068993 _ZN6google22InstallFailureFunctionEPFvvE+00000000
[ 3] 0x00007f4c0c575daa /usr/lib/x86_64-linux-gnu/libglog.so.0+00069034 ZN6google10LogMessage10SendToSinkEv+00000000
[ 4] 0x00007f4c0c575ce4 /usr/lib/x86_64-linux-gnu/libglog.so.0+00068836 ZN6google10LogMessage9SendToLogEv+00001224
[ 5] 0x00007f4c0c5756e6 /usr/lib/x86_64-linux-gnu/libglog.so.0+00067302 ZN6google10LogMessage5FlushEv+00000414
[ 6] 0x00007f4c0c578687 /usr/lib/x86_64-linux-gnu/libglog.so.0+00079495 ZN6google15LogMessageFatalD1Ev+00000025
[ 7] 0x00007f4c1657421e /home/umteht/faster_rcnn/experiments/external/caffe/matlab/+caffe/private/caffe
.mexa64+01430046
[ 8] 0x00007f4c165bf823 /home/umteht/faster_rcnn/experiments/external/caffe/matlab/+caffe/private/caffe
.mexa64+01738787
[ 9] 0x00007f4c16454702 /home/umteht/faster_rcnn/experiments/external/caffe/matlab/+caffe/private/caffe
.mexa64+00251650
[ 10] 0x00007f4c164551c7 /home/umteht/faster_rcnn/experiments/external/caffe/matlab/+caffe/private/caffe
.mexa64+00254407 mexFunction+00000154
[ 11] 0x00007f4c5603b72a /data/mat14a/bin/glnxa64/libmex.so+00120618 mexRunMexFile+00000090
[ 12] 0x00007f4c56037a94 /data/mat14a/bin/glnxa64/libmex.so+00105108
[ 13] 0x00007f4c56038fb4 /data/mat14a/bin/glnxa64/libmex.so+00110516
[ 14] 0x00007f4c55432ad9 /data/mat14a/bin/glnxa64/libmwm_dispatcher.so+00670425 ZN8Mfh_file11dispatch_fhEiPP11mxArray_tagiS2+00000697
[ 15] 0x00007f4c5450920e /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02601486
[ 16] 0x00007f4c544c41d0 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02318800
[ 17] 0x00007f4c544c61ea /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02327018
[ 18] 0x00007f4c544c9167 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02339175
[ 19] 0x00007f4c544c726f /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02331247
[ 20] 0x00007f4c544c7ec4 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02334404
[ 21] 0x00007f4c5452530b /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02716427
[ 22] 0x00007f4c55432ad9 /data/mat14a/bin/glnxa64/libmwm_dispatcher.so+00670425 ZN8Mfh_file11dispatch_fhEiPP11mxArray_tagiS2+00000697
[ 23] 0x00007f4c5506a6e8 /data/mat14a/bin/glnxa64/libmwmcos.so+01566440
[ 24] 0x00007f4c55014482 /data/mat14a/bin/glnxa64/libmwmcos.so+01213570
[ 25] 0x00007f4c55016465 /data/mat14a/bin/glnxa64/libmwmcos.so+01221733
[ 26] 0x00007f4c55018e50 /data/mat14a/bin/glnxa64/libmwmcos.so+01232464
[ 27] 0x00007f4c5501673d /data/mat14a/bin/glnxa64/libmwmcos.so+01222461
[ 28] 0x00007f4c5506d126 /data/mat14a/bin/glnxa64/libmwmcos.so+01577254
[ 29] 0x00007f4c550d955b /data/mat14a/bin/glnxa64/libmwmcos.so+02020699
[ 30] 0x00007f4c553e1874 /data/mat14a/bin/glnxa64/libmwm_dispatcher.so+00338036 ZN13Mfh_MATLAB_fn11dispatch_fhEiPP11mxArray_tagiS2+00000244
[ 31] 0x00007f4c550d9031 /data/mat14a/bin/glnxa64/libmwmcos.so+02019377
[ 32] 0x00007f4c5450920e /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02601486
[ 33] 0x00007f4c544c41d0 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02318800
[ 34] 0x00007f4c544c61ea /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02327018
[ 35] 0x00007f4c544c9167 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02339175
[ 36] 0x00007f4c544c726f /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02331247
[ 37] 0x00007f4c544c7ec4 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02334404
[ 38] 0x00007f4c5452530b /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02716427
[ 39] 0x00007f4c55432ad9 /data/mat14a/bin/glnxa64/libmwm_dispatcher.so+00670425 ZN8Mfh_file11dispatch_fhEiPP11mxArray_tagiS2+00000697
[ 40] 0x00007f4c5506a6e8 /data/mat14a/bin/glnxa64/libmwmcos.so+01566440
[ 41] 0x00007f4c5506a995 /data/mat14a/bin/glnxa64/libmwmcos.so+01567125
[ 42] 0x00007f4c55014236 /data/mat14a/bin/glnxa64/libmwmcos.so+01212982
[ 43] 0x00007f4c5501498c /data/mat14a/bin/glnxa64/libmwmcos.so+01214860
[ 44] 0x00007f4c5501638e /data/mat14a/bin/glnxa64/libmwmcos.so+01221518
[ 45] 0x00007f4c55018e50 /data/mat14a/bin/glnxa64/libmwmcos.so+01232464
[ 46] 0x00007f4c55016a9c /data/mat14a/bin/glnxa64/libmwmcos.so+01223324
[ 47] 0x00007f4c55016be9 /data/mat14a/bin/glnxa64/libmwmcos.so+01223657
[ 48] 0x00007f4c55016dcf /data/mat14a/bin/glnxa64/libmwmcos.so+01224143
[ 49] 0x00007f4c55016ff1 /data/mat14a/bin/glnxa64/libmwmcos.so+01224689
[ 50] 0x00007f4c55072717 /data/mat14a/bin/glnxa64/libmwmcos.so+01599255
[ 51] 0x00007f4c550d91f8 /data/mat14a/bin/glnxa64/libmwmcos.so+02019832
[ 52] 0x00007f4c553e1874 /data/mat14a/bin/glnxa64/libmwm_dispatcher.so+00338036 ZN13Mfh_MATLAB_fn11dispatch_fhEiPP11mxArray_tagiS2+00000244
[ 53] 0x00007f4c550d9031 /data/mat14a/bin/glnxa64/libmwmcos.so+02019377
[ 54] 0x00007f4c5450920e /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02601486
[ 55] 0x00007f4c544c41d0 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02318800
[ 56] 0x00007f4c544c61ea /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02327018
[ 57] 0x00007f4c544c9167 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02339175
[ 58] 0x00007f4c544c726f /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02331247
[ 59] 0x00007f4c544c7ec4 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02334404
[ 60] 0x00007f4c5452530b /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02716427
[ 61] 0x00007f4c55432ad9 /data/mat14a/bin/glnxa64/libmwm_dispatcher.so+00670425 ZN8Mfh_file11dispatch_fhEiPP11mxArray_tagiS2+00000697
[ 62] 0x00007f4c5450920e /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02601486
[ 63] 0x00007f4c544c41d0 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02318800
[ 64] 0x00007f4c544c62b0 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02327216
[ 65] 0x00007f4c544c9167 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02339175
[ 66] 0x00007f4c544c726f /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02331247
[ 67] 0x00007f4c544c8245 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02335301
[ 68] 0x00007f4c544b9a4f /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02275919
[ 69] 0x00007f4c544becb9 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02297017
[ 70] 0x00007f4c544bc979 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02287993
[ 71] 0x00007f4c544bced6 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02289366
[ 72] 0x00007f4c544b7f08 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02268936
[ 73] 0x00007f4c544b829a /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02269850
[ 74] 0x00007f4c553f4de3 /data/mat14a/bin/glnxa64/libmwm_dispatcher.so+00417251
[ 75] 0x00007f4c553e1874 /data/mat14a/bin/glnxa64/libmwm_dispatcher.so+00338036 ZN13Mfh_MATLAB_fn11dispatch_fhEiPP11mxArray_tagiS2+00000244
[ 76] 0x00007f4c5450920e /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02601486
[ 77] 0x00007f4c544c41d0 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02318800
[ 78] 0x00007f4c544c61ea /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02327018
[ 79] 0x00007f4c544c9167 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02339175
[ 80] 0x00007f4c544c726f /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02331247
[ 81] 0x00007f4c544c7ec4 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02334404
[ 82] 0x00007f4c5452530b /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02716427
[ 83] 0x00007f4c55432ad9 /data/mat14a/bin/glnxa64/libmwm_dispatcher.so+00670425 ZN8Mfh_file11dispatch_fhEiPP11mxArray_tagiS2+00000697
[ 84] 0x00007f4c5450920e /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02601486
[ 85] 0x00007f4c544c41d0 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02318800
[ 86] 0x00007f4c544c61ea /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02327018
[ 87] 0x00007f4c544c9167 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02339175
[ 88] 0x00007f4c544c726f /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02331247
[ 89] 0x00007f4c544c7ec4 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02334404
[ 90] 0x00007f4c5452530b /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02716427
[ 91] 0x00007f4c55432c5f /data/mat14a/bin/glnxa64/libmwm_dispatcher.so+00670815 ZN8Mfh_file11dispatch_fhEiPP11mxArray_tagiS2+00001087
[ 92] 0x00007f4c544f8135 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02531637
[ 93] 0x00007f4c544bf0d9 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02298073
[ 94] 0x00007f4c544bbdc7 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02284999
[ 95] 0x00007f4c544bc193 /data/mat14a/bin/glnxa64/libmwm_interpreter.so+02285971
[ 96] 0x00007f4c56265afc /data/mat14a/bin/glnxa64/libmwbridge.so+00142076
[ 97] 0x00007f4c56266791 /data/mat14a/bin/glnxa64/libmwbridge.so+00145297 _Z8mnParserv+00000721
[ 98] 0x00007f4c5f51c92f /data/mat14a/bin/glnxa64/libmwmcr.so+00489775 _ZN11mcrInstance30mnParser_on_interpreter_threadEv+00000031
[ 99] 0x00007f4c5f4fdb6d /data/mat14a/bin/glnxa64/libmwmcr.so+00363373
[100] 0x00007f4c5f4fdbe9 /data/mat14a/bin/glnxa64/libmwmcr.so+00363497
[101] 0x00007f4c53bf1d46 /data/mat14a/bin/glnxa64/libmwuix.so+00343366
[102] 0x00007f4c53bd4382 /data/mat14a/bin/glnxa64/libmwuix.so+00222082
[103] 0x00007f4c5fc7250f /data/mat14a/bin/glnxa64/libmwservices.so+02323727
[104] 0x00007f4c5fc7267c /data/mat14a/bin/glnxa64/libmwservices.so+02324092
[105] 0x00007f4c5fc6e57f /data/mat14a/bin/glnxa64/libmwservices.so+02307455
[106] 0x00007f4c5fc739b5 /data/mat14a/bin/glnxa64/libmwservices.so+02329013
[107] 0x00007f4c5fc73de7 /data/mat14a/bin/glnxa64/libmwservices.so+02330087
[108] 0x00007f4c5fc744c0 /data/mat14a/bin/glnxa64/libmwservices.so+02331840 _Z25svWS_ProcessPendingEventsiib+00000080
[109] 0x00007f4c5f4fe098 /data/mat14a/bin/glnxa64/libmwmcr.so+00364696
[110] 0x00007f4c5f4fe3bf /data/mat14a/bin/glnxa64/libmwmcr.so+00365503
[111] 0x00007f4c5f4f928f /data/mat14a/bin/glnxa64/libmwmcr.so+00344719
[112] 0x00007f4c5e4a7182 /lib/x86_64-linux-gnu/libpthread.so.0+00033154
[113] 0x00007f4c5e1d447d /lib/x86_64-linux-gnu/libc.so.6+01025149 clone+00000109

This error was detected while a MEX-file was running. If the MEX-file
is not an official MathWorks function, please examine its source code
for errors. Please consult the External Interfaces Guide for information
on debugging MEX-files.

If this problem is reproducible, please submit a Service Request via:
http://www.mathworks.com/support/contact_us/

A technical support engineer might contact you with further information.

Thank you for your help.

error

Выдать ошибку и отобразить сообщение

Синтаксис

Описание

пример

error(msg) выдает ошибку и отображает сообщение об ошибке.

error(msg,A1,...,An) отображает сообщение об ошибке, которое содержит символы преобразования форматирования, такие как используемые с MATLAB®
sprintf функция. Каждый символ преобразования в msg преобразован в одно из значений A1,...,An.

error(errID,___) включает ошибочный идентификатор на исключении. Идентификатор позволяет вам отличить ошибки и управлять тем, что происходит, когда MATLAB сталкивается с ошибками. Можно включать любой из входных параметров в предыдущих синтаксисах.

пример

error(errorStruct) выдает ошибку поля в скалярной структуре.

пример

error(correction,___) обеспечивает предложенное исправление для исключения. Можно включать любой из входных параметров в предыдущих синтаксисах.

Примеры

свернуть все

Бросок ошибки

msg = 'Error occurred.';
error(msg)

Бросок ошибки с форматированным сообщением

Выдайте отформатированное сообщение об ошибке с разрывом строки. Необходимо задать больше чем один входной параметр с error если вы хотите, чтобы MATLAB преобразовал специальные символы (такие как n) в сообщении об ошибке. Включайте информацию о классе переменной n в сообщении об ошибке.

n = 7;
if ~ischar(n)
   error('Error. nInput must be a char, not a %s.',class(n))
end
Error.
Input must be a char, not a double.

Если вы только используете один входной параметр с error, затем MATLAB не преобразует n к разрыву строки.

if ~ischar(n)
   error('Error. nInput must be a char.')
end
Error. nInput must be a char.

Выдайте ошибку с идентификатором.

if ~ischar(n)
   error('MyComponent:incorrectType',...
       'Error. nInput must be a char, not a %s.',class(n))
end
Error.
Input must be a char, not a double.

Используйте MException.last просмотреть последнее неперехваченное исключение.

exception = MException.last
exception = 

  MException with properties:

    identifier: 'MyComponent:incorrectType'
       message: 'Error. 
Input must be a char, not a double.'
         cause: {0x1 cell}
         stack: [0x1 struct]

Бросок структуры ошибки

Создайте структуру с полями идентификатора и сообщением. Чтобы сохранить пример простым, не используйте поле стека.

errorStruct.message = 'Data file not found.';
errorStruct.identifier = 'MyFunction:fileNotFound';
errorStruct = 

       message: 'Data file not found.'
    identifier: 'MyFunction:fileNotFound'

Выдайте ошибку.

Выдайте ошибку с предложенным исправлением

Создайте функциональный hello это требует одного входного параметра. Добавьте предложенный входной параметр "world" к сообщению об ошибке.

function hello(audience)
if nargin < 1
    aac = matlab.lang.correction.AppendArgumentsCorrection('"world"');
    error(aac, 'MATLAB:notEnoughInputs', 'Not enough input arguments.')   
end
fprintf("Hello, %s!n", audience)
end

Вызовите функцию без аргумента.

Error using hello (line 4)
Not enough input arguments.

Did you mean:
>> hello("world")

Входные параметры

свернуть все

msgИнформация об ошибке
вектор символов | строковый скаляр

Информация об ошибке в виде вектора символов или строкового скаляра. Это индикаторы сообщения как сообщение об ошибке. Чтобы отформатировать сообщение, используйте escape-последовательности, такие как t или n. Также можно использовать любые спецификаторы формата, поддержанные sprintf функция, такая как %s или %d. Задайте значения для спецификаторов преобразования через A1,...,An входные параметры. Для получения дополнительной информации см. Форматирующий текст.

Примечание

Необходимо задать больше чем один входной параметр с error если вы хотите, чтобы MATLAB преобразовал специальные символы (такие как tNS, и %d) в сообщении об ошибке.

Пример: 'File not found.'

errIDИдентификатор для ошибки
вектор символов | строковый скаляр

Идентификатор для ошибки в виде вектора символов или строкового скаляра. Используйте ошибочный идентификатор, чтобы помочь идентифицировать источник ошибки или управлять выбранным подмножеством ошибок в вашей программе.

Ошибочный идентификатор включает одно или несколько полей компонента и мнемоническое поле. Поля должны быть разделены двоеточием. Например, ошибочный идентификатор с полем component компонента и мнемоническое поле mnemonic задан как 'component:mnemonic'. И мнемонические поля компонента должны каждый начаться с буквы. Оставшиеся символы могут быть буквенно-цифровым индикатором (A–Z, a–z, 0–9) и символы нижнего подчеркивания. Никакие пробельные символы не могут появиться нигде в errID. Для получения дополнительной информации смотрите MException.

Пример: 'MATLAB:singularMatrix'

Пример: 'MATLAB:narginchk:notEnoughInputs'

A1,...,An Значения
вектор символов | строковый скаляр | числовой скаляр

Значения, которые заменяют спецификаторы преобразования в msgВ виде вектора символов, строкового скаляра или числового скаляра.

errorStructИнформация о сообщении об ошибке
скалярная структура

Информация о сообщении об ошибке в виде скалярной структуры. Структура должна содержать по крайней мере одно из этих полей.

message

Сообщение об ошибке. Для получения дополнительной информации смотрите msg.

identifier

Ошибочный идентификатор. Для получения дополнительной информации смотрите errID.

stack

Поле стека для ошибки. Когда errorStruct включает stack поле , error использование это, чтобы установить поле стека ошибки. Когда вы задаете stack, используйте абсолютное имя файла и целую последовательность функций, которая вкладывает функцию в стековом фрейме. Этот вектор символов совпадает с тем, возвращенным dbstack('-completenames').

correctionПредложенное исправление для этого исключения
matlab.lang.correction.AppendArgumentsCorrection возразите | matlab.lang.correction.ConvertToFunctionNotationCorrection возразите | matlab.lang.correction.ReplaceIdentifierCorrection объект

Советы

  • Когда вы выдаете ошибку, MATLAB получает информацию об этом и хранит ее в структуре данных, которая является объектом MException класс. Можно получить доступ к информации в объекте исключения при помощи try/catch. Или, если ваша программа завершает работу из-за исключения и возвращает управление в Командную строку, можно использовать MException.last.

  • MATLAB не прекращает осуществление программы, если ошибка происходит в try блок. В этом случае MATLAB передает управление к catch блок.

  • Если все входные параметры к error пусты, MATLAB не выдает ошибку.

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Указания и ограничения по применению:

Не оказывает влияния в автономном коде, даже когда обнаружение ошибки времени выполнения включено. Смотрите Генерируют Автономный Код C/C++, Который Обнаруживает и Ошибки времени выполнения Отчетов (MATLAB Coder).

Основанная на потоке среда
Запустите код в фоновом режиме с помощью MATLAB® backgroundPool или ускорьте код с Parallel Computing Toolbox™ ThreadPool.

Эта функция полностью поддерживает основанные на потоке среды. Для получения дополнительной информации смотрите функции MATLAB Запуска в Основанной на потоке Среде.

Массивы графического процессора
Ускорьте код путем работы графического процессора (GPU) с помощью Parallel Computing Toolbox™.

Указания и ограничения по применению:

  • Эта функция принимает массивы графического процессора, но не работает на графическом процессоре.

Для получения дополнительной информации смотрите функции MATLAB Запуска на графическом процессоре (Parallel Computing Toolbox).

Представлено до R2006a

Понравилась статья? Поделить с друзьями:
  • Matlab error while evaluating uicontrol callback
  • Master of orion 3 как изменить разрешение
  • Matlab error using open line 146
  • Master model error перевод
  • Matlab error using open at 163