(Пере) запуск Matlab после ошибки из местоположения ошибки - PullRequest
2 голосов
/ 23 октября 2010

Я отлаживаю скрипт Matlab, который занимает ~ 10 минут.В конце сценария я делаю некоторые операции ввода-вывода и простые вычисления с моими результатами и продолжаю сталкиваться с ошибками.Есть ли способ запустить Matlab из определенного вида спорта в сценарии после его выхода с ошибкой - данные все еще находятся в рабочей области, поэтому я мог бы просто закомментировать весь код до момента ошибки, но мне интересноЕсли кто-нибудь знает лучший способ сделать это без повторного запуска всего сценария (ультра-ленивый / неэффективный способ)?

Спасибо,

Колорадо

Ответы [ 2 ]

4 голосов
/ 23 октября 2010

Да, используйте dbstop. Введите dbstop if error и запустите ваш скрипт. В ту минуту, когда он обнаружит ошибку, он создаст точку останова, и вы окажетесь в рабочей области скрипта - это означает, что вы можете отладить ошибку, сохранить данные; все, что вы хотите! Вот фрагмент из документации для dbstop if error --- есть другие способы сделать dbstop, так что проверьте это:

dbstop if error

Останавливает выполнение, когда любой файл программы MATLAB, который вы впоследствии запускаете, вызывает ошибку во время выполнения, переводя MATLAB в режим отладки, останавливаясь на строке, которая вызвала ошибку. Ошибки, которые останавливают выполнение, не включают ошибки времени выполнения, обнаруженные в блоке try...catch. Вы не можете возобновить выполнение после неперехваченной ошибки во время выполнения. Используйте dbquit для выхода из режима отладки.

3 голосов
/ 23 октября 2010

Двойные знаки процента активируют «режим ячейки», который позволяет вам шаг за шагом запускать небольшие блоки кода. Похоже, что вы ищете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...