Останов по условию.
При проведении экспериментов с моделью часто возникает необходимость останавливаться в некоторых характерных точках фазовой траектории (например, мы меняли величину g «в конце первого периода колебаний». Точно определить этот момент «на глазок», например, наблюдая графики, достаточно сложно. Поэтому в пакете предусмотрена возможность останова по условию. Этим условием может быть истинность некоторого логического выражения (предиката), срабатывание определенного или любого перехода, а также вход в определенный узел карты состояний. В данном случае нам понадобится останов по предикату.
С помощью кнопки или команды «Сервис/Условия останова» откроем диалог «Условия останова», выберем страничку «По предикату», щелкнем на ней правой клавишей мыши и, выполнив команду «Добавить» всплывающего меню, перейдем в диалог редактирования логического предиката (Рис. 5.33Рис. 5.17).
Рис. 5.3317
Новый предикат добавится в список «ждущих» предикатов (Рис. 5.35Рис. 5.18). Галочка около предиката показывает, что он активен, т.е. по нему может произойти останов модели. Предикат можно пассивизировать и снова активизировать с помощью мыши.
Рис. 5.3518
Останов по ждущему предикату происходит в момент, когда его значение меняется с FALSE на TRUE. Сработавший предикат выделяется красным цветом. В нашем случае первый останов произойдет в начальный момент. Нажмем кнопку «Продолжить» и дождемся второго останова – это и будет начало второго периода колебаний. Момент останова (как и любого другого переключения в гибридной одели) определяется с точностью до временной погрешности, заданной в установках численных методов (по умолчанию 1e-6).
|