Главная страница  Векторные методы процессов 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 [ 118 ] 119 120 121

ние новой точки определяется по формулам . x = Хг + [д* -Ха! cos a + [i/> -у] sin а;

= й-[J --г! sin а + -у1 cos а.

(6.77)

В полученной точке вновь вычисляется функционал О lx, уЧ и проверяется знак разности G Ы, уЧ - I.

Если соблюдается условие G 1 - / = О, то точка (дс*, уЧ находится точно на границе искомой области.

Если имеет место случай 1, то нахождение следукмцен точки выполняется по формулам (6.76) в соответствии со знаком разности G Ы*), уЩ - I.

Эта процедура продолжается до тех пор, пока случай 1 не перейдет в случай 2 или наоборот.

Переход сопровождается переменой знака разности

Угол ао делится на два или на три, и процесс продолжается до тех пор, пока угол щ не станет равным наперед заданному малому значению. При практических расчетах величина 1 Г отражает достаточную точность. Найденная таким образом точка границы принимается за новое значение [jCg, у], причем в качестве точки [х, у] берется прежняя точка [jCg. у\ и процесс повторяется.

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

Объем вычислительной работы существенно уменьшается, при иcпoльзoвaни малых и фиксированных углов поворота. Приближенно можно считать sin а а; cos а л; 1 - а*/2. При а 5° ошибка составляет менее 10-*.

Если точка находится внутри области, поворот по часовой стрелке с учетом параллельного переноса в точку [х, у\ осуществляется по формулам

A; = Xa + (x-Xa)(l-aV2) + (f/ ~</a)a; . , 1/1 f/a-(x -Хо)а-f (i/ -</а) (1-aV2).

Если точка находится вне области, поворот против часовой стрелки с учетом параллельного переноса в точку [х, yj выполняется по формулам

........... xi-Xa + (x -Xa)(l-aV2)-(i/>-f/,)a;

/y=i;a+(x--) + (f/ ~№){i- y2). :



Вычисления в значительной степени упрощаются, если повороты делать всегда на один и тот же угол. В этом случае для конкретной задачи величины sin а и cos а вычисляются только один раз и входят постоянными коэффициентами в формулы. Например, если взять а = 0,1 рад (5°4346 ), то имеем sin а = = 0,09983; cos а - 0,99500. .... г

- Для данного угла имеем формулы:

а) при повороте по часовой стрелке (G < /, точка внутри (Области)

х = х + 0,99500 (Л - ха) + 0,09983 (у - у); У = Уг- 0,09983 {х> - х) + 0,99500 (у - у);

б) при повороте против часовой стрелки (G > /, точка вне области)

x = x + 0,99500 (х9 - лг) - 0.09983 (if - у\ уу- 0,09983 (х - х) + 0,99500 (tf - у}.

Точность нахождения .границы увеличивается при использовании малых углов.

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

aoh < 8,

где Л - шаг; 6-заданная точность.

Если заданы точность и шаг, то угол определяется по формуле ао е/Л.

Движение вдоль участков границы со сложной конфигурацией может осуществляться с переменным шагом. При введении переменного шага в формулы вносятся изменения. Пусть длина шага при переходе из точки Ixy, уу] в точку [х, у\ равна 1, а из точки [xg, у в точку [х, \ равна t.

Тогда q = IJl - число, показывающее, во сколько раз следующий шаг меньше предыдущего.

Координаты новой точки находятся по формулам х\ = = (q + 1) JCa - qxy, у = (<? + 1) i/a - ЯУг-

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



могут изменеться шаг, углы, выбираться различная точность. Как в режиме поиска, так и в режиме уточнения может быть использовано несколько этапов.

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

Изложенные методы использовались для построения областей устойчивости и подобластей с заданным расположением собственных чисел исходной матрицы А системы х = Ах -Ь -f- F (f), а также применялись для автоматизации отслеживания линий равного уровня. Программа слежения по контуру без адаптации содержит 337 операторов, с, адаптацией - 425 операторов.

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

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




1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 [ 118 ] 119 120 121

© 2000 - 2018 ULTRASONEX-AMFODENT.RU.
Копирование материалов разрешено исключительно при условии цититирования.