У меня проблема с NDSolve в системе Mathematica, которую я запускал несколько раз с разными значениями параметров. Для некоторых из этих значений решение приводит к сингулярностям, и NDSolve предупреждает с помощью NDSolve :: ndsz или других связанных предупреждений.
Я просто хотел бы перехватывать эти предупреждения, подавлять их отображение и просто отслеживать факт возникновения проблемы для этих конкретных значений параметров. Я подумал о следующих вариантах (ни один из которых не помогает):
Проверка
. Однако это все равно будет отображать предупреждение. Если я выключу его с помощью Off
, Check
также не сможет сообщить о предупреждении. EventLocator
, поэтому я может проверить очень большие значения функции или ее производных и в этом случае остановить вычисление. Однако на практике это все равно время от времени выдает предупреждения, предположительно потому, что размер шага иногда может быть настолько большим, что предупреждение NDSolve срабатывает до того, как произошло мое Событие
. Есть ли другие предложения?