Главная > Математика > Геометрическое моделирование
<< Предыдущий параграф
Следующий параграф >>
<< Предыдущий параграф Следующий параграф >>
Макеты страниц

7.12. Формирование и решение системы уравнений связей

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

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

Рис. 7.12.1. Типы вариационных связей

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

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

Пусть задан набор вариационных связей, приводящий к системе m уравнений

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

(7.12.2)

Поиск минимума функции (7.12.2) при условии выполнения связей (7.12.1) приводит к задаче нахождения минимума функции

(7.12.3)

Для выполнения необходимого условия минимума указанной функции требуется наряду с (7.12.1) выполнение уравнений

(7.12.4)

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

Если на какие-либо из параметров наложены фиксирующие связи (7.2.1), то их можно исключить из функции (7.12.2) и при решении общей системы уравнений считать константами.

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

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

Аналитический подход используется для двухмерных вариационных связей, когда искомое положение двухмерных геометрических объектов можно найти с помощью «линейки и компаса». В некоторых простых случаях аналитический подход применим и для трехмерных объектов.

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

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

При использовании численного подхода желательно, чтобы ненулевые приращения параметров были одного порядка. Например, если одна часть варьируемых параметров является угловыми величинами, другая часть компонентами векторов, а третья часть параметров — координатами точек, то желательно, чтобы их значения лежали в одних и тех же пределах. Для достижения этого используется нормирование варьируемых параметров.

Численное решение системы уравнений связей может производиться несколько иначе. Используемый критерий поведения геометрических объектов стремится сохранить параметры геометрических объектов ближе к их исходному состоянию. Воспользуемся этим свойством для уменьшения размерности системы уравнений. Попытаемся решить систему уравнений, зафиксировав еще некоторые из варьируемых параметров, кроме тех, которые зафиксированы уравнениями связей. Если нам это удастся, то мы будем придерживаться правила, которое заключается в сохранении объектов как модно ближе к их исходному состоянию, и уменьшим число неизвестных и уравнений в (7.12.4). Остается выяснить, какие из параметров можно дополнительно зафиксировать. Некоторые из уравнений связей могут быть удовлетворены при исходных значениях параметров. Определим эти уравнения и составим список варьируемых параметров, участвующих в них. Попробуем решить полную систему уравнений, считая параметры этого списка фиксированными. Если это удается, попробуем расширить этот список, если нет, то будем сужать этот список до тех пор, пока не удастся решить полную систему уравнений. Таким образом, нам, возможно, удастся найти новые значения параметров, сохранив некоторым из них исходные значения. Если даже при отсутствии дополнительной фиксации параметров систему уравнений (7.12.1) и (7.12.4) решить не удастся, то следует вернуться к исходному равновесному состоянию геометрических объектов и констант уравнений, при которых уравнения связей удовлетворяются.

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

<< Предыдущий параграф Следующий параграф >>
Оглавление