Инициализация в Dymola под влиянием оценки флага аннотации

Как уже упоминалось в заголовке, на инициализацию моей (многотельной) модели влияет аннотация (оценка).

С новым параметром par реализовано в модели, инициализация всегда завершается неудачей, если я использую

parameter par annotation(evaluate=false) 

но если я использую

evaluate=true, 

оно работает.

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

Что именно происходит со структурой модели, когда один из параметров установлен в evaluate=false? Что я должен проверить, кроме начальных условий?

1 ответ

Решение

Каково значение параметра?

Существует ряд различных сценариев, в которых это может произойти:

  • Булевы / целочисленные значения, которые определяют размер массивов и т. Д. Если они имеют Evaluate=false, у вас будут проблемы даже с переводом вашей модели.

  • Нулевые значения, например, для массы, которая влияет на снижение индекса; в этом случае вы должны регистрировать уменьшение индекса в дополнение к начальным условиям.

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

Другие вопросы по тегам