Научная статья на тему 'Выбор режима продолжения траектории динамической системы при пересечении двух поверхностей разрыва'

Выбор режима продолжения траектории динамической системы при пересечении двух поверхностей разрыва Текст научной статьи по специальности «Математика»

CC BY
136
27
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ДИНАМИЧЕСКАЯ СИСТЕМА / ВЫЧИСЛИТЕЛЬНЫЙ АЛГОРИТМ / DYNAMICAL SYSTEM / COMPUTATIONAL ALGORITHM

Аннотация научной статьи по математике, автор научной работы — Коробицын Виктор Викторович, Фролова Юлия Владимировна

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Коробицын Виктор Викторович, Фролова Юлия Владимировна

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Choosing the mode for extension of dynamical system trajectory after intersection of two surfaces of discontinuity

The solution to the problem of computing the intersection point of dynamical system trajectory with two surfaces of discontinuity is considered. The algorithms for computing the intersection point and selection of a mode for extension of trajectory after intersection are given. The cases of intersection and sliding along one and two surfaces are described.

Текст научной работы на тему «Выбор режима продолжения траектории динамической системы при пересечении двух поверхностей разрыва»

УДК 519.622

ВЫБОР РЕЖИМА ПРОДОЛЖЕНИЯ ТРАЕКТОРИИ ДИНАМИЧЕСКОЙ СИСТЕМЫ ПРИ ПЕРЕСЕЧЕНИИ ДВУХ ПОВЕРХНОСТЕЙ РАЗРЫВА

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

Введение

Динамические системы с клеточной структурой, описываемые с использованием двух поверхностей разрыва, могут иметь особый режим — скольжение вдоль их пересечения. При численном решении таких систем необходимо выполнить четыре этапа: 1) найти точку пересечения траектории решения с пересечением поверхностей; 2) определить режим продолжения решения; 3) обеспечить вычисления скользящей траектории; 4) найти точку схода со скольжения. В данной статье рассмотрены этапы 1 и 2.

1. Динамическая система с двумя поверхностями разрыва

Рассмотрим динамическую систему в пространстве Ка с двумя поверхностями разрыва вх = {х € Яп : д\{х) = 0}, = {х е Яп : #20е) = 0}, д\(х))д2(х) —

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

где fiti(t,x), f-iti(t,x), fi_i(t,x), f-i-i(t,x) — непрерывные функции. В этой системе может реализовываться режим скольжения вдоль двух поверхностей

Copyright ©2011 В.В. Коробицын, Ю.В. Фролова

Омский государственный университет им. Ф.М. Достоевского E-mail: [email protected]

В.В. Коробицын, Ю.В. Фролова

dx

dtt

при дг(х) < 0, д2(х) < О, f-hi(t,x) при дг(х) > 0, д2{х) < О,

fi-i(t,x) при gi(x) < 0, д2{х) > О,

f-i-i(t,x) при gi(x) > 0, д2(х) > О,

(1)

разрыва одновременно. Точнее, скольжение вдоль кривой 7 = {^ Є В.п : ді(х) = = 92(х) = 0} пересечения двух поверхностей разрыва. Это выполняется, если верна система неравенств:

■^/ід — /-1,1 (91) (^0 ^ 0,

^/1,-1 — /-1,-1 І91) (^0 ^ /о4)

¿Лд-Л.^ЫИ < о,

^/-і,і-/-і,-і(^2)И < о.

Если траектория не проходит вблизи кривой 7, то можно использовать алгоритм из [12]. Однако если траектория пересекает кривую или проходит в непосредственной близости от нее, то характер поведения алгоритма качественно меняется. Необходимо рассмотреть два принципиально разных случая (рис. 1): а) траектория из области непрерывности попадает на кривую пересечения поверхностей; б) траектория скользила по одной из поверхностей и попала на пересечение с другой.

Рис. 1. Траектория решения попадает на пересечение поверхностей разрыва: а) из непрерывного режима; б) из скольжения по одной из поверхностей

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

Алгоритм А. Вычисляются точки пересечения траектории с кривой 7 и определяется режим продолжения вычисления решения.

1. Вычислить шаги Л-ьЛ-г до поверхностей 5,1,5'2. Взять Л, = гшп

2. Выполнить шаг Н методом Рунге—Кутты и построить интерполяционный полином Ньютона по полученным опорным точкам.

3. Продолжить ПОЛИНОМ ВПЛОТЬ ДО пересечения С поверхностями б1! и 52. Найти точки А\, В\ и А2, В2, приближающие точки пересечения полинома с поверхностями (рис. 2-а). (Однако если при нахождении точек итерационный метод не дал приемлемого результата для второй поверхности, то из точек Аг, £>1 необходимо шагнуть обычным способом, а затем, если определится пересечение, повторить процедуру. Если же все 4 точки найдены с удовлетворительной погрешностью, то следует продолжить решение из точек А2, В2.)

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

Рис. 2. Точки пересечения кривой решения с двумя поверхностями разрыва: а) в непрерывном

режиме; б) в скользящем режиме

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

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

Алгоритм Б. Вычисляются точки пересечения двух скользящих траекторий вдоль я?! с поверхностью в2.

1. Вычислить шаги Н\ и И2 до пересечения траекторий с поверхностью Я2. (Траекторий две, поскольку в скользящем режиме мы используем две по разные стороны от поверхности.) Выбрать Н = шт!^, Н2}.

2. Сделать шаг И вдоль ^ и построить два полинома N1(9) и М2(9) для обеих траекторий.

3. С помощью итерационной процедуры найти точки пересечения кривых х = N1(9) и х = Щ(9) с поверхностью Б2. Получим точки С\, Бх и С2, И2

ч

(рис. 2-6).

4. Используя значения функций правой части в точках С\, Их, С2, Дз, определяем дальнейшее поведение траектории.

Для определения поведения траектории после достижения кривой 7 введём следующие векторы:

рг*/(^1) + рг&/(с,1) + рг&/(£>1)

Р1 =--------------2-----------’ Р2 = ^------------2“^---------’

Р^ДА) + рг51/(£>2) РГ^ДАг) + рг5,/(С'2)

Рз =--------------------------, Р4 = —-----------------=------•

Согласно полученным векторам р1,р2,рг,р4 заполним кодовое слово \¥, состоящее из 4 бит, по следующему правилу. Каждый г-ый бит равен 0, если р* направлен в сторону кривой 7, и 1 в противном случае.

Рис. 3. Расположение точек С\, Со, Во

Кодовое слово \У может принимать 16 различных значений. Получаем 16

различных вариантов выбора режима продолжения решения.

0000 все векторы направлены к поверхностям ^ и 52. Тогда переходим в режим скольжения ВДОЛЬ обеих поверхностей б1! и 52.

0001 0010 0100 1000 один из векторов направлен от кривой пересечения. Тогда переходим в скользящий режим вдоль соответствующей поверхности. Например, в случае 0001 переходим в режим скольжения вдоль поверхности б1! из точек С\, С2.

0011 0110 1100 1001 два смежных вектора направлены от кривой 7. Тогда продолжаем в непрерывном режиме из соответствующей клетки. Например, в случае 0011 продолжаем из точки С\.

0101 1010 два противоположных вектора направлены от кривой 7. Тогда траектория продолжается в скользящем режиме по соответствующей поверхности, причём в направлении вектора с большей длиной. Например, в случае 0101 траектория будет скользить вдоль поверхности ¿ь Причём если \р\\ > |р3|, то в направлении вектора р\ из точек С\,С2. Если \р1\ < |р3|, то в направлении вектора рз из точек Бь-02. А если \р1\ = |р3|, то неустойчивое скольжение вдоль кривой 7.

0111 1011 1101 1110 только один из векторов направлен к кривой 7. Тогда сравниваем длины смежных с ним векторов и продолжаем в непрерывном режиме в соответствующей клетке. Например, в случае 0111 сравниваем вектора pi и р3. Если \pi\ > |р3|, то продолжаем в непрерывном режиме из точки С\. Если \pi\ < |р3|, то продолжаем в непрерывном режиме из точки D\. Если \pi\ = |р3|, то продолжаем в неустойчивом скользящем режиме ВДОЛЬ поверхности S2 ИЗ точек C\,D 1.

1111 все вектора направлены от кривой 7 (неустойчивое состояние). Тогда продолжаем в непрерывном режиме из соответствующей точки или в неустойчивом скользящем режиме.

Необходимо сделать уточнение по первому случаю - траектория пересекает две поверхности вблизи их точки пересечения.

Если при определении пересечений с S\ и S2 получилось так, что Ai и А2 находятся по одну сторону от ^ и S2, Si и В2 по другую сторону, то это соответствует описанному выше случаю. Необходимо рассматривать только две точки.

Рис. 4. Пересечение траекторией одновременно двух поверхностей

Рис. 5. Определение вспомогательных точек Р и С

В точке А вектор функций правой части направлен к ^ и 52, необходимо изучить вектор функций правой части для точки В.

1. Если к ^ и Я2 в точке В, то точку пересечения можно считать стационарной и завершить вычисления в средней точке.

2. Если от ¿1 и ¿2 в точке В, то продолжить решение в непрерывном режиме из точки В.

3. Если от и к в2 в точке В. Необходимо найти точку Р, лежащую по другую сторону от В относительно ¿2 и от А относительно б'ь Если вектор функций правой части в точке Р направлен к Б2, то определяем среднее значение проекций в точках В и Р на Б2. Если этот вектор направлен к ¿>1, то найдена стационарная точка, иначе переходим в скользящий режим по поверхности 5*2 из точек В и Р. Если в точке Р вектор направлен от ¿>2, то продолжаем решение в непрерывном режиме из точки Р (когда от 5,1?). Однако если вектор в точке Р направлен от в2 и к , то определяем среднее значение проекций вектор функций правой части в точках А и Р на ¿>1. Если она направлена к то найдена стационарная точка, а если ОТ ¿>2, ТО переходим В СКОЛЬЗЯЩИЙ режим ПО поверхности ¿>1 из точек А и

4. Если к и от в2 в точке В. Необходимо найти точку С, лежащую по другую сторону от В относительно и от А относительно в2. Если вектор функций правой части в точке С направлен к то определяем среднее значение проекций в точках Б и С на б'ь Если этот вектор направлен к ¿>2, то найдена стационарная точка, иначе переходим в скользящий режим по поверхности ¿>1 из точек В и С. Если в точке С вектор направлен от б'ь то продолжаем решение в непрерывном режиме из точки С (когда от ¿>2?). Однако если вектор в точке С направлен от ^ и к в2, то определяем среднее значение проекций вектор функций правой части в точках А и С на в2. Если она направлена к то найдена стационарная точка, а если от ¿>1, то переходим в скользящий режим по поверхности 5*2 из точек А и С.

Заключение

Предложенные алгоритмы позволяют осуществлять следующие операции: 1) поиск точки пересечения траектории из непрерывного режима с пересечением двух поверхностей разрыва (алгоритм А); 2) поиск точки пересечения скользящей вдоль одной поверхности траектории со второй поверхностью разрыва (алгоритм Б); 3) выбрать режим продолжения решения после достижения пересечения.

Литература

1. Филиппов А.Ф Дифференциальные уравнения с разрывной правой частью. М. : Наука, 1985. 224 с.

2. Уткин В.И. Скользящие режимы в задачах оптимизации и управления. М. : Наука, 1981. 368 с.

3. Dieci L., Lopez L. Sliding Motion in Filippov Differential Systems: Theoretical Results and A Computational Approach. URL: http://www.math.gatech.edu/~dieci/ preps/DL-Fili .pdf (дата обращения 01.03.2009).

4. Enright W.H., Jackson K.R., Norsett S.P., Thomsen P.G Effective solution of discontinuous IVPs using a Runge-Kutta formula pair with interpolants // Numerical Analysis Rep. 113. Univer of Manchester, Jan. 1986.

5. Gear C.W., Osterby O. Solving ordinary differential equations with discontinuities // ACM Trans. Math. Software. 1984. Vol. 10. P. 23-44,

6. Park Т., Barton P.I. State event location in differential-algebraic models // ACM Transactions on Modeling and Computer Simulation. 1996. Vol. 6, N 2. P. 137-165.

7. Piiroinen P.T., Kuznetsov Yu.A. An event-driven method to simulate Filippov systems with accurate computing of sliding motions // ACM Trans. Math. Software. 2008. V. 34, N 13. C. 1-24.

8. Shampine L.F., Thompson S. Event location for ordinary differential equations // Computer and Mathematics with Application. 2000. Vol. 39. P. 43-54.

9. Коробицын В.В., Фролова Ю.В. Алгоритм численного решения дифференциальных уравнений с разрывной правой частью // Математические структуры и моделирование. 2005. Вып. 15. С. 46-54.

10. Коробицын В.В., Маренич В.Б., Фролова Ю.В. Исследование поведения явных методов Рунге-Кутты при решении систем обыкновенных дифференциальных уравнений с разрывной правой частью // Математические структуры и моделирование. 2007. Вып. 17. С. 19-25.

11. Коробицын В.В., Фролова Ю.В., Маренич В.Б. Алгоритм численного решения кусочно-сшитых систем // Вычисл. технологии. 2008. Т. 13, N 2. С. 70-81.

12. Коробицын В.В., Фролова Ю.В. Алгоритм вычисления скользящего режима для системы с гладкой границей разрыва // Вычисл. технологии. 2010. Т. 15, N 2. С. 56-72.

i Надоели баннеры? Вы всегда можете отключить рекламу.