Иерархическое проектирование. Особенности многоуровневого моделирования. Библиотечный метод моделирования.



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

Сложные системы имеют, как правило, иерархическую структуру. Естественные возможности человека позволяют оперативно обрабатывать не более 7 ± 2 единиц информации одновременно. В процессе проектирования исследователю удобно сосредотачиваться сначала на поведении отдельных компонентов системы, а затем на их взаимодействии. При необходимости модели компонентов могут детализироваться или, наоборот, укрупняться. Такой подход, известный как иерархическое проектирование, является типовым при разработке сложных технических объектов и заключается в разбиении исходной задачи на подзадачи.

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

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

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

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

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

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

Такой возможностью обладают, в частности, пакет LabVIEW, пакет Simulink и основанные на нем пакеты SimMechanics и SimPower.

Структурное и мультидоменное физическое моделирование. Варианты Data flow и Control flow управления процессом структурного моделирования.

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

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

мультидоменное моделирование .

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

 

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

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

Структурное моделирование может предусматривать два варианта управления процессом моделирования: 1)поток команд (Control Flow); 2)поток данных (Data Flow).

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

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

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

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


 

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

Классификация методов численного интегрирования:

1)явные и не явные;2)одношаговые и многошаговые; 3)методы 1-го,2-го n-го порядков; 4)Методы с постоянным шагом и автоматическим выбором шага.

Порядок метода.

Существуют два источника погрешности при выполнении шага интегрирования:1) ошибка дискретизации, возникающая в результате замены дифференциального уравнения (3.1) разностной аппроксимацией (3.2);

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

Введем величину называемую глобальной ошибкой дискретизации, где x i и x(t i ) –расчетное и точное значение переменной x в момент t i , соответственно. Отметим, что E(h) зависит от величины шага, поскольку предполагается, что значения x i вычисляются при определенном h.

Воспользуемся также стандартным обозначением O(h) для величины, стремящейся к нулю при h 0 с той же скоростью, что и h . В общем случае будем говорить, что функция g(h) равна O(h p ) , если при h 0 величина

g(h) / h p ограничена.Проведя анализ, можно показать что для метода Эйлера E(h) = O(h) . Это обычно выражают утверждением, что метод Эйлера

имеет первый порядок. E(h) = O(h2) – 2 порядок.

Методы явные и неявные.

Процесс формирования математической модели для численного интегрирования основан на использовании одного из методов численного интегрирования.Если задано дифференциальное уравнение и начальные условия x0 = x(t0) , то очередное значение x1 = x(t1) может быть получено интегрированием (3.1): Определенный интеграл в (3.2) численно равен площади под кривой f (x,t) на интервале (ti-1,ti ) (рис. 3.2). Приближенно эта площадь может быть вычислена как площадь прямоугольника, высота которого равна значению функции f (xi-1,ti-1) на левой границе интервала или значению f (xi ,ti ) на правой границе интервала. Очевидно, площади обоих прямоугольников, ограниченных сверху отрезками 1 и 2 на рис. 3.3, будут тем ближе к точному значению интеграла, чем меньше шаг интегрирования hi . Подставив в (3.2) приближенные значения интеграла, можно получить две формулы: Выражение (3.3) представляет собой формулу явного метода Эйлера. Называется метод явным потому, что неизвестное значение xi может быть непосредственно вычислено по известному значению xi-1 в предыдущей точке.

Формула (3.4) соответствует неявному методу Эйлера. Здесь в правой части выражения используется неизвестное значение xi , поэтому вычислить его непосредственно по этой формуле нельзя.

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

Общая идея численного интегрирования ОДУ заключается в том, что производится дискретизация независимой переменной – времени t на интервале  – и замена ее рядом значений  (принцип Δt ). Расстояние между двумя соседними значениями hi = ti - ti-1 называется шагом интегрирования. В частном случае он может быть постоянным на всем заданном интервале изменения

переменной t . В результате системе дифференциальных уравнений тем

или иным способом ставится в соответствие система конечноразностных уравнений  ,где G – некоторая вектор-функция, определяемая способом построения метода; p – количество предыдущих точек, которые используются в методе интегрирования.

Основными требованиями, предъявляемыми к численным методам,

являются достаточная точность и устойчивость. Дополнительными –

универсальность, алгоритмическая надежность, умеренные затраты машинного времени и оперативной памяти ЭВМ. При этом следует учитывать, что практически все эти характеристики имеют смысл только применительно к конкретному объекту моделирования.

Ошибка интегрирования на i -ом шаге включает следующие составляющие:

● ошибка дискретизации, обусловленная заменой производных

конечными разностями;

● ошибка вычислений, связанная с округлением чисел при вычислениях;

● ошибка накопления, возникающая вследствие ошибок на предыдущих шагах интегрирования.

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

Один и тот же метод может быть достаточно эффективен при решении

одной задачи и неприемлем для другой.

Необходимо рассмотреть влияние ошибок округления, возникающих при реализации методов численного интегрирования на ЭВМ, ограничившись следующим интуитивным рассуждением [23]. Ошибка дискретизации любого устойчивого метода зависит от величины шага интегрирования h и стремится к нулю при  . Следовательно, за счет уменьшения шага мы можем сделать ее сколь угодно малой. Однако чем меньше шаг, тем больше потребуется шагов для решения конкретной задачи, тем больше скажутся на полученном решении ошибки округления. На практике, за счет ограниченной разрядности машинных
 слов, всегда существует величина шага h0 , меньше которой вклад ошибок округления начинает доминировать в суммарной ошибке.

Подготовка уравнений

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

Рассмотрим пример, связанный с подготовкой модели для численного решения нелинейного дифференциального уравнения второго порядка:

 

Первым шагом является сведение данного уравнения к задаче Коши, т. е. к системе уравнений первого порядка за счет введения новой переменной z :

Явные формулы метода Эйлера имеют вид

Неявные формулы запишутся следующим образом:

 Для перехода к матричной записи выполним ряд преобразований:


Дата добавления: 2019-07-17; просмотров: 685; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!