lasterror
Воспроизведите последнюю ошибку
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.
lasterror()
lasterror()
воспроизводит последнюю ошибку, которая произошла на текущем сеансе MuPAD®.
Как правило, lasterror
используется, чтобы воспроизвести ошибки, которые были зафиксированы traperror
. См. пример 2.
Мы производим ошибку:
x := 0: y := 1/x
Error: Division by zero. [_invert]
Эта ошибка может быть воспроизведена lasterror
:
lasterror()
Error: Division by zero. [_invert]
Производится дальнейшая ошибка:
error("my error")
Error: my error
lasterror()
Error: my error
delete x, y:
Следующая процедура myln
вычисляет ln функцию его аргумента. В случае ошибки, произведенной системной функцией ln
, это распечатывает информацию об аргументе и воспроизводит ошибку:
myln := proc(x) local result; begin if traperror((result := ln(x))) = 0 then return(result) else print(Unquoted, "the following error occurred " . "when calling ln(".expr2text(x)."):"); lasterror() end_if: end:
Действительно, ln имеет сингулярность в 0 и производит:
myln(0)
the following error occurred when calling ln(0):
Error: Singularity. [ln] Evaluating: myln
delete myln: