Смекни!
smekni.com

А. В. Воронин (стр. 24 из 29)

Точность – количественная характеристика применимости математического обеспечения к решению конкретных задач. Точность определяется по степени совпадения расчетных и истинных результатов, обычно, с использованием одной из стандартных норм (см. раздел 1.6). Расчет точности может быть не простой и не однозначной задачей, если выходной сигнал векторный. Обычно в таких случаях точность рассчитывается как взвешенная сумма точностей по составляющим этого сигнала.

Затраты машинного времени обычно выступают как главный ограничивающий фактор при попытках повысить сложность моделируемых объектов и тщательность их исследования. Поэтому требование экономичности по затратам машинного времени традиционно является одним из основных к математическому обеспечению САМ.

4.5. Методы построения моделирующих программ

Современные пакеты визуального компонентного моделирования используют один из двух методов представления информации об исследуемой системе – структурное (блочное) моделирование и физическое мультидоменное моделирование [13]. При этом за каждым из двух методов могут стоять определенные особенности математического ядра.

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

Структурное моделирование используется, например, в пакете Simulink (рис. 4.2.).

Рис. 4.2. Схема, для исследования экстремальной системы в пакете Simulink

Физическим мультидоменным моделированием (иногда просто мультидоменным моделированием [13]) называется техника моделирования, основанная на использовании библиотеки моделей элементов физических устройств, из которых можно составлять схемы физические принципиальные. Поскольку в энергетических цепях поток энергии может менять направление, то для элементов физических схем входы и выходы не определены. Частным случаем данной техники моделирования является использование графов связей.

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

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

Рис. 4.3. Схема моделирования электрической цепи в пакете SimPowerSystems.

4.5.1. Структурное моделирование

Структурное моделирование может предусматривать два варианта управления процессом моделирования [14]:

· поток команд (Control Flow),

· поток данных (Data Flow).

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

Жесткие формы языков программирования, на основе которых формируется моделирующая программа при использовании принцип Control Flow, плохо сочетаются с возрастающим уровнем абстракции графических языков. При любой форме задания графической информации ее необходимо преобразовать выполняемые инструкции, т.е. последовательность команд для процессора, так как код графического языка не может выполняться "строка за строкой". Кроме того, большинство типовых программ, реализующих численные методы, рассчитаны на стандартные формы записи уравнений, которые не всегда возможно соблюдать при графическом задании информации. Это ведет к необходимости автоматически преобразовывать введенные пользователем или построенные графическим интерфейсом уравнения к формам, с которыми могут работать библиотеки программных реализаций численных методов.

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

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

На поточной модели управления процессом моделирования основана значительная часть программ математического структурного моделирования динамических систем. Поточная модель управления – основополагающее понятие для таких программ, как VisSim, MBTY, Simulink, Easy5, LabVIEW.

Рассмотрим пример статического информационного потока, приведенный на рис. 4.4. Блок-схема описывает набор действий, два варианта которого представлены в таблице 4.1.

Рис. 4.1. Статический информационный поток в пакете Simulink

Таблица 4.1

Неупорядоченный
информационный поток

Упорядоченный программой
информационный поток

a)

b)

c)

d)
1)

2)

3)

4)

Неупорядоченный информационный поток не может быть выполнен ЭВМ. Упорядоченный – легко выполняется. Обычно упорядочивание информационного потока выполняется одновременно с расчетом модели. Интерпретирующий транслятор последовательно выполняет узлы программы, для которых имеются все необходимые исходные данные. Если реализуется процедура численного интегрирования, то такой расчет повторяется на каждом шаге.

4.5.2. Решатели для структурного и физического мультидоменного моделирования

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

С физическим мультидоменным моделированием обычно связывают итерационный решатель. Итерационный решатель реализует неявный метод моделирования, при котором на каждом шаге сначала формируется полная нелинейная система алгебраических уравнений, которая далее решается итерационным методом. В разделе 3.2.1 показано, что для этого может использоваться линеаризованная система алгебраических уравнений, а итерационный процесс сводиться к одному шагу. Важной особенностью неявных методов (кроме всего прочего) является то, что не требуется искусственно разрывать систему, чтобы организовать поток вычислений.

Вообще говоря, явные и неявные методы интегрирования не привязаны жестко к структурному и физическому мультидоменному моделированию.

В рамках структурного моделирования можно использовать как явные, так и неявные методы. В частности, в системе РЕМОС, которая использует неявные методы интегрирования [6], можно моделировать во временной области как объекты, заданные структурными схемами, т. е. с использованием направленных звеньев, так и объекты представленные в виде физических принципиальных схем.

И, наоборот, при задании исходной информации в виде принципиальной схемы можно включить в математическое ядро процедуру преобразования мультидоменной информации к форме направленной структуры и затем использовать те же самые методы явного численного интегрирования, что и в обычном структурном моделировании. Похоже, именно так сделано в пакетах SimMechanics и SimPower, которые являются подсистемами Simulink. В результате, получен некоторый промежуточный вариант, основным достоинством которого является форма задания исходной информации. При этом сам переход к структуре в общем случае неоднозначен. В простых случаях машина может выполнять его самостоятельно, без обращения к пользователю. В более сложных, пользователь должен помочь программе сформировать наиболее рациональную, с точки зрения затрат на интегрирование, структуру. Например, возникает задача размыкания петель, которая отсутствует при использовании неявных методов.