Программное сохранение и восстановление состояния модели

Сохранение / восстановление состояния модели из экспериментов Simulation, Оптимизация, Калибровка, Варьирование параметров, анализ чувствительности, Монте-карло, Сравнение "прогонов"

Вы можете сохранять и восстанавливать состояние модели программно с помощью функций программного интерфейса (API), каждой из этих функций в качестве аргумента нужно передать имя файла состояния модели:

Обе эти функции возвращают управление модели мгновенно (их операции выполняются в отдельном потоке). То, что функция вернула управление, еще не означает, что она закончила выполнение всех своих операций – они все еще могут выполняться. Отслеживать события действительного восстановления/сохранения состояния модели (и выполнять при этом какие-то действия) можно реализовав функции обработчиков этих событий (см. функции addSnapshotEventListener и removeSnapshotEventListener класса Presentation).

Программное сохранение и восстановление состояния модели из нестандартного эксперимента

Сохранить и восстановить состояния модели из нестандартного эксперимента можно с помощью следующих функций исполняющего модуля:

Примеры:

После создания, нестандартный эксперимент содержит код, сгенерированный по умолчанию (см. секцию Код свойств нестандартного эксперимента) со следующей строчкой: Engine engine = createEngine();

Этот код создает исполняющий модуль и хранит его в локальной переменной engine. Используйте его, чтобы вызывать вышеописанные функции. Напишите следующий код для вызова функции:

engine.saveRootObjectSnapshot("C:\Model\Model.als");

Main root = (Main)engine.loadRootObjectSnapshot("C:\Model\Model.als");

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