Диалоговое окно «Параметры расчета»

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

Для вызова диалогового окна используется кнопка в главном окне проекта (1), либо на главном окне программы (2), либо в главном меню программы Пункт «Расчет/Параметры расчета» (3), см. рисунок:

Рисунок 1. Вызов окна "Параметры расчета"

Окно содержит в себе четыре вкладки:

Закладка Параметры расчета для решателя стандартного расчётного ядра Автоматика (расчетная схема типа Автоматика)

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

Название – название параметра (его краткое описание)

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

Тип данных – тип данных параметра (по сути тип константы или переменной).

Значение – задаваемая пользователем величина или интерпретируемое выражение (строка) для определения значения данного параметра и настройки расчетного ядра.

Рисунок 2. Вкладка "Параметры расчета"

Значения параметров стандартного ядра для решателя Автоматика (расчетная схема типа Автоматика).

Имя (имена) алгоритмов comp_names – текстовое поле, обеспечивающие наименования для подпрограмм, сгенерированных из расчетных схем, для генерации кода.

Текущий компонент debug_comp_name – текстовая строка задающее имя компонента при отладке его в общей модели.

Имя системы alternative_sys_name – текстовая строка для задания имени системы, может использоваться для оформления схемы и при печати документации.

Краткое описание схемы description – текстовая строка для описание схемы, может использоваться для оформления схемы и при печать документации.

Минимальный шаг hmin – минимальный шаг численного интегрирования расчетного задания, для методов с динамически изменяемыми шагами интегрирования, в секундах модельного времени. Этот параметр задает ограничение снизу на шаг интегрирования, и по умолчанию устанавливается равным 0.25. Если значение hmin оказывается недостаточно малым для расчета с заданной точностью, то выдается сообщение «Заданная точность не обеспечивается». В таких случаях следует уменьшить минимальный шаг (задать его 1e-10, 1e-20, 1e-50 ...) либо снизить требования к точности. Задание очень малого значения hmin в большинстве случаев не сказывается заметно на времени счета.

Максимальный шаг hmax – Максимальный шаг численного интегрирования расчетного задания, для методов с динамически изменяемыми шагами интегрирования, в секундах модельного времени. Ограничение сверху на шаг интегрирования, а для метода Эйлера – величина шага (по умолчанию 0.25). Если задать максимальный шаг равным минимальному, то интегрирование будет выполняться с фиксированным шагом. Задание слишком малого значения hmax может привести к неоправданному увеличению времени счета, а задание большого значения hmax в некоторых случаях приводит к уменьшению числа точек, выводимых на график. Рекомендуемое значение максимального шага – endtime/100.

Шаг синхронизации задача synstep – Для пакетного режима, данный шаг задает период обмена данными между расчетными схемами входящими в пакет. Для расчета одного проекта (схемы) определяет приблизительное значение шага вывода результатов в графические окна, при этом реальный шаг вывода всегда будет не меньше шага интегрирования. Точное значение шага вывода будет соблюдаться, если установить табуляцию результатов расчета. Рекомендуется задавать synstep равным максимальному шагу интегрирования, но не менее endtime/1000.

Контроль шага по алгебраическим переменным algstepcontrol - в случае указания в качестве значения Да в явных DIRK методах интегрирования, шаг решения алгебраических уравнений, учитывается в методе. В противном случае на шаг влияют, только динамические переменные модели. Помогает сохранять устойчивость системы при резком изменении некоторых алгебраических параметров модели.

Метод интегрирования intmet – метод численного решения дифференциальных уравнений, заданных в расчетной схеме. Можно выбрать один из 16 методов (Эйлера, Рунге-Кутты классический, Рунге-Кутты модифицированный, Мерсона классический, Мерсона модифицированный, Адаптивный 1, ..., Адаптивный 5, Адаптивный неявный, Диагонально неявный DIRK2, Гира, Эйлера неявный, DIRK3, DIRK4). По умолчанию установлен метод Эйлера. Метод Эйлера может иметь только фиксированный шаг, а все остальные методы могут использоваться как с фиксированным шагом, так и с автоматическим выбором шага. Описания каждого метода приведены в справке в разделе «Приложение А. Методы решения ОДУ и ДАУ».

Конечное время расчета endtime – длительность интервала модельного времени, на котором выполняется моделирование (по умолчанию время не ограничено и задано равным ­1e19).

Способ остановки расчета StopMethod – возможные значения:

Относительная ошибка relerr – относительная ошибка в рассчитываемых величинах, оцениваемая решателем согласно методу интегрирования. В случае превышения данной ошибки:

Абсолютная ошибка abserr – абсолютная ошибка в рассчитываемых величинах, оцениваемая решателем согласно методу интегрирования. Допустимая абсолютная ошибка интегрирования (по умолчанию 1e‑10). Оказывает существенное влияние на выбор величины шага только в тех случаях, когда значения некоторых переменных близки к нулю. В случае превышения данной ошибки:

Метод итерации петель loopmet – метод решения алгебраических уравнений при наличии в системе алгебраических контуров (Простая итерация – по умолчанию, Ньютона-Рафсона, Бройдена (секущих), Без итераций). Выбранный метод используется для расчета начального состояния алгебраических переменных (независимо от метода интегрирования), а также для расчета алгебраических переменных в процессе интегрирования явным методом. В процессе интегрирования неявным методом дифференциальные и алгебраические переменные решаются совместно, поэтому выбор метода итерирования не имеет значения. Наиболее надежным является метод Ньютона-Рафсона, однако в некоторых случаях и другие методы могут иметь преимущество.

Максимальной количество итераций maxloopit - максимальное число итераций при решении алгебраических уравнений в одной точке решения (по умолчанию 10). Этот параметр, как и предыдущий, влияет на решение только в тех случаях, когда в системе есть алгебраические контуры.

Алгоритм расчёта Якобиана jacoby_mode - вычисление определителя матрицы Якоби либо по всем блокам модели, либо только для блокам, зависящим от рассчитываемого значения функции. Вычисление якобиана по зависимостям блоков может существенно повысить скорость расчета сложной модели за счет уменьшения числа вычислений. С другой стороны для относительно простых моделей может быть необходимо вычислять якобиан для всей модели целиком.

Оптимизировать пересчет функции для линейных коэффициентов матрицы Якоби jacoby_linear_optвключение опции позволяет не пересчитывать единожды рассчитанные линейные коэффициенты матрицы Якоби при следующем шаге.

Использовать точную синхронизацию PrecitionSync – включение опции приводит к тому, что все проекты в составе пакета осуществляют чтение сигналов строго в начале шага расчета, а запись – строго в конце. Это позволяет исключить возможность ошибочного использования одним проектом данных из предыдущего такта другого проекта, в случае, если время исполнения внутреннего шага у них отличается.

Блок используется для измерения мгновенного значения потенциала в узле схемы относительно «земли» (точки нулевого потенциала), в цепи c элементами библиотеки «Электрика».

Показать все значения линий showvalues – отображать над каждой линией значение сигнала в ней. Включение опции аналогично нажатию кнопки «Показать значения на линиях связи» на панели проекта.

Подсвечивать линии связи highlight – изменять цвет линии связи при значении сигнала в ней больше Значения перехода подсветки. Если опция выключена, то линия не изменяет своего цвета при любом значении сигнала в ней.

Значение перехода подсветки hvalue – значение сигнала, при превышении которого начинается подсвечивание линии связи. Опция имеет смысл только при включенном подсвечивании линии связи.

Цвет подсвеченной линии hcolor – цвет, приобретаемый линией связи, при превышении сигналом в ней Значения перехода подсветки. Опция имеет смысл только при включенном подсвечивании линии связи.

Цвет неподсвеченной линии lcolor – цвет, приобретаемый линией связи, когда уровень сигнала в ней ниже Значения перехода подсветки. Опция имеет смысл только при включенном подсвечивании линии связи.

Модуль генерации кода generator – библиотека и точка входа используемого модуля генерации кода.

Модуль доступа к данным data_unit – библиотека и точка входа используемого модуля доступа к данным.

Режим отладки remote_debug_modeварианты отладки данного проекта. Режим отладки совпадает с настройками SimInTech, если выбран вариант «Из общих настроек». Также может быть принудительно установлена в:

Транслировать все входы алгоритмов в исполнительную систему и все выходы из нее common_remote_translate – включение опции позволяет передавать данные с выходов модели на входы удаленной исполнительной системы, а также получать данные с выходов удаленной исполнительной системы на входы модели. Опция имеет смысл только если Режим отладки для данного проекта выбран как Удаленный.

Адрес(а) сервера(ов) при удаленной отладке connectstr – адреса серверов, при использовании удаленного Режима отладки. Опция имеет смысл только когда отладка проходит в удаленном режиме либо в режиме получения входов.

Другое имя конфигурации загрузки при удаленной отладке usesignalsort – имя файла конфигурации удаленной исполнительной системы, в случае если отлично от default. Может использоваться при существовании нескольких конфигураций загрузки на базе одной удаленной системы.

Учитывать в сортировке использование сигналов в блоках чтения-записи сигналов usesignalsort – включение опции позволяет ускорять обработку некоторых блоков чтения-записи, путем передачи сигнала сразу на выход, в случае если он не претерпевает изменения между его считыванием и записью.

Учитывать петли для блоков чтения-записи сигналов signalsortlooperror – включение опции позволяет обрабатывать в первую очередь блок чтения, при наличие петель чтения-записи сигнала.

Учитывать в сортировке блоки условного выполнения субмоделей useconditionsortвключение опции позволяет не обрабатывать блоки субмодели, до проверки условия выполнения субмодели.

Использовать переподключение выходов напрямую к источнику для блоков чтения сигналов useoutreplaceпри подключении блока к источнику сигнала, выполняется проверка на наличие других блоков, использующих данный источников. Если такие найдены, то они подключаются к этому источнику на этом же шаге.

Записывать сигналы только на шаге синхронизации в синхронизирующем потоке writeonlyonsync – включение опции приводит к тому, что передача сигналов внутри пакета происходит только на шаге синхронизации.

Записывать значения всех сигналов при инициализации writesignalsoninitstate – записывать начальные значения выходных сигналов в базу при инициализации расчета.

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

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

Использовать автоматическое пересоединение при разрыве связи usereconnect – переподключаться к серверу при разрыве связи в процессе удаленной работы.

Имя файла чтения рестарта базы сигналов dbrestartfileload – имя файла, содержащего рестарт базы сигналов. Указывается в случае, если имя файла рестарта базы отличается от присваиваемого автоматически при записи рестарта проекта.

Имя файла записи рестарта базы сигналов dbrestartfilewrite – имя файла, для записи рестарта базы сигналов. Указывается в случае, если необходимо, чтобы имя файла рестарта базы отличалось от присваиваемого автоматически при записи рестарта проекта.

Отображать числа вместо β, k, τ, T в блоках (где применимо) show_numbers – заменять на иконке блока, там, где возможно, условные обозначения на их фактические значения в блоках. Например при включении опции, отображение блока инерционного звена первого порядка изменится с общего вида:

на частный:

Закладка «Вид»

Рисунок 3. Закладка Вид

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

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

Закладка «Рестарт»

Рисунок 4. Закладка "Рестарты"

Данная закладка обеспечивает настройку сохранения данных состояния модели для последующего запуска.

При установке галочки Сохранять рестарт при завершении расчета все данные будут сохранены в файл с именем указанным в поле Имя файла.

При установки галочки Сохранять с шагом, рестарт записывается в файл указанный выше на каждом шаге времени, размер которого указывается в поле Шаг сохранения рестарта. с. Время указывается в секундах модельного времени.

Кнопка Сохранить сейчас обеспечивает сохранение текущего состояния модели в процессе моделирования.

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

При снятой галочке Изменять модельное время модельное время устанавливается по значению из файла рестарта.

При установленной галочке Изменять модельное время модельное время после загрузки состояния модели из файла рестарта устанавливается равным времени указанном в поле Новое модельное время. с

Кнопка Загрузить сейчас позволяет во время расчета загрузить параметры модели из файла рестарта.

Закладка «Синхронизация»

Рисунок 5. Закладка "Синхронизация"

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

Поле Шаг выдачи результата позволяет задать период вывода значений на графики проекта, при значении равном 0 или значении меньше чем значении Шага синхронизации задачи, вывод осуществляется с шагом синхронизации задачи заданном на закладке Параметры расчета.

Закладка «Настройки»

Рисунок 6. Закладка "Настройки"

Данная вкладка служит для настройки подключения модулей специализированных библиотек, реализованных в виде подключаемых к SimInTech модулей расширения (плагинов, plug-ins).