Диссертация (1025246), страница 9
Текст из файла (страница 9)
Кроме того, наличие трансцендентных функций вподынтегральных выражениях делает получение точного значения интеграловневозможным.3.4.2.Перекрытие поверхностиОпределение взаимного перекрытия поверхностей является классическойзадачей компьютерной графики. Существует множество различных путей еерешения, однако зачастую помимо сложности реализации этих методов,требуется также дополнительная их адаптация к условиям задачи.
Одним из такихметодов является метод бросания лучей (ray casting) [94].Рис. 3.8. Иллюстрация алгоритма определения области наведенной тениПринцип метода состоит в поиске первого пересечения объекта с лучом,проведенным из картинной плоскости. Применительно к рассматриваемой задаче,метод бросания лучей может быть представлен в виде следующего алгоритма(Рис. 3.8):621.
Проецирование узлов каждого элемента дискретизации интересующейповерхностинакартиннуюплоскость,перпендикулярнуюнаправлениюневозмущенного потока.2. Восстановление лучей с основаниями в каждом спроецированном узле инаправлением, коллинеарным направлению вектора невозмущенного потока.3. Нахождение первого (ближайшего) пересечения каждого луча с каждойиз поверхностей, составляющих тело.4. В случае если точка первого пересечения луча совпадает с узлом,проекция которого на картинную плоскость совпадает с основанием луча, тоданный узел является видимым, в противном случае – невидимым. Элементсчитается видимым, если все его узлы видимы, и невидимым – если хотя бы одиниз узлов не является видимым.Проекции узлов сетки на картинную плоскость легко найти при помощизамены системы координат на связанную с направлением невозмущенногопотока:111[0] ∙ [0] ∙ [0] ∙ 0000000 = [1] ∙ [1] ∙ [1] ∙ , = [ ] , = [0] , = × ,0001000[0] ∙ [0] ∙ [0] ∙ [1]11где i, j, k – орты системы координат; , , – компоненты вектора потока.Тогда преобразование из исходного базиса в базис системы координат,связанной с картинной плоскостью, записывается следующим образом:−1= [ ].[ ] (3.16)63Принимая X компоненту в новой системе координат равной нулю и проводяобратное преобразование (3.16), получаем координаты точек проекций накартинную плоскость в исходной системе координат:0= [ ].[ ] Точка пересечения луча с поверхностью является решением следующейсистемы относительно параметра λ, который затем используется для определениякоординат точки пересечения:(, , ) = 0,[ ] = [ ] + [ ],{ ∈ [1 , 2 ],где , , – координаты начала луча; , , – направляющий вектор луча;1 , 2 – границы области решения.3.4.3.АлгоритмОтличительной особенностью предлагаемого подхода является тот факт, чтонаряду с численными методами по мере возможности используются такжеаналитические решения, что позволяет значительно ускорить вычислительныйпроцесс.
В общем случае алгоритм расчета может быть представлен следующимобразом.1. Общая поверхность тела представляется как совокупность более простыхповерхностей (конус, сфера, цилиндр, плоскость). На последующих этапахоперации производятся на составляющих поверхностях.2. В случае если зона видимости поверхности может быть найденааналитически и имеет простую форму, дискретизация поверхности производитсятолько в зоне видимости, в противном случае – производится дискретизация всейрассматриваемой поверхности.643.
Для поверхностей с неизвестной зоной видимости производитсяопределение факта видимости каждого элемента дискретизации сначала покритерию прямой геометрической тени, затем, в положительном случае,дополнительно проверяется отсутствие перекрытия каждого элемента всемиповерхностями, составляющими тело.4. Для всех видимых элементов производится интегрирование уравнений(3.13-3.15) методом Гаусса.5. Искомое решение – сумма всех найденных интегралов.Наиболее эффективная и простая реализация приведенного алгоритмавозможна при использовании объектно-ориентированного подхода. Каждая изсоставляющихповерхностейпредставляетсобойобъект,содержащийинформацию о ее геометрии и дискретизации, и реализующий следующиеметоды: генерация сетки, поиск пересечения луча с поверхностью, визуализацияповерхности.аналитическихПриреализациирешенияхобъектазадачзадействуетсяопределенияинформациягеометрическойобвидимостиповерхности рассматриваемого типа, и пересечения ее с произвольным лучом.Если в замкнутой форме решения затруднены, в методах объекта реализуютсясоответствующие численные процедуры.
Таким образом, управляющая расчетнаяпрограмма взаимодействует со всеми составляющими объектами одинаково, чтозначительно упрощает разработку и тестирование.3.4.4.Тестирование алгоритмаТестированиеалгоритмапроводилосьвдваэтапа.Тестированиеопределения аэродинамических коэффициентов проводилось путем сравнениярезультатов с аналитическими зависимостями, полученными для высоких конусов[25]. Тестирование алгоритма определения области видимости проводилось каквизуально, так и аналитически путем сравнения площади видимой поверхности саналитическими зависимостями площади поверхностей простой формы.653.4.5.Применение алгоритма для высокоскоростного элементаГеометрическая модель ВЭ со складками состоит из трех поверхностей:конической(носовой),цилиндрическойинепосредственноскладчатой(кормовой). Профиль складок в кормовой части определяется следующимипараметрами: количеством складок , амплитудой складок и меридиональнымуглом γ0.
При таком способе задания поверхности складчатая кормовая часть призначении амплитуды равном нулю вырождается в коническую поверхность.Для конической и цилиндрической поверхностей границы областивидимости определяются аналитически, что позволяет провести дискретизациютолько видимых областей. Взаимного перекрытия этих двух поверхностей вмодели ВЭ не происходит.Расчет кормовой части требует особого внимания: во-первых, поверхностьне является выпуклой, и участки поверхности могут загораживать друг друга; вовторых, часть поверхности находится в тени, отбрасываемой впередистоящимиповерхностями.
Поэтому определение зоны наведенной тени требуется толькодля поверхности стабилизатора. Предложенный алгоритм сводится к задачепересечения луча с произвольной поверхностью. Пересечение луча с коническойи цилиндрической поверхностью может быть найдено аналитически.Прямая видимость конической поверхности. В принятой модели носоваячасть представляет собой прямой круговой конус, для которого задачаопределения подсвеченной области может быть решена аналитически.
Уравнениеголовной части: = 2.1В каноническом виде уравнение головной части может быть записаноследующим образом:2(, , ) = 2 + 2 − 2 ( 2) = 0.1(3.17)66При углах атаки, больших некоторого значения, зависящего от величины21,видимая поверхность конуса ограничена двумя прямыми, лежащими наповерхности и проходящими через вершину конуса, при меньших углах атакивидимой является вся поверхность конуса. Для определения ограничивающихпрямыхтребуетсявычислениекоординатдвухточек,расположенныхсимметрично, ввиду кратности решения, относительно плоскости XOY.Вектор нормали в точке, лежащей на поверхности конуса, определяетсяпутем дифференцирования уравнения (3.17):2 22 ( )1 ].(, , ) = [22(3.18)Искомые точки принадлежат окружности, расположенной в плоскостиперпендикулярной оси OX.
Для поиска границы области видимости уместно втаком случае выбрать окружность с радиусом R2. Используя уравнение (3.18),получим систему уравнений для поиска границы области видимости:2 221 ( )1[] ∙ [ ] = 0;22 2 + 2 = 22 .{(3.19)Зная координаты точек, становится возможным построить сетку точно ввидимой области, игнорируя область аэродинамической тени и, таким образом,увеличивая точность и скорость расчета. Расчетную сетку удобно задаватькоординатами z и в цилиндрической системе путем равномерной дискретизациив направлении z от 0 до l1, в направлении от - до + , где угол –координата вычисленных точек.
Топология сетки строится с учетомодинакового направления обхода вершин треугольника, контролируя направлениевнешних нормалей к каждому элементу.67Прямая видимость цилиндрической поверхности. В каноническом видецилиндрическая поверхность может быть представлена в следующем виде:{При=0 2 + 2 = 22 , ∈ [1 , 1 + 2 ).цилиндрическая(3.20)поверхностьневноситвкладаваэродинамические коэффициенты. При ≠ 0 область аэродинамической тениделит поверхность цилиндра на два одинаковых сектора, симметричныхотносительно плоскости XOY.Прямаявидимостьскладчатогостабилизатора.Припомощисоотношений (3.1) и (3.2), уравнение складчатой поверхности может бытьзаписано в следующем виде:(2 +−1 −232( − 2 + cos((atan2(, ) + 0 )))) − 2 − 2 = 0. (3.21)Дифференцирование уравнения поверхности не составляет труда, однакополучившиеся выражения для производных имеют громоздкий вид, поэтому неприводятся.
Принадлежность элемента к области прямой тени определяется путемоценки скалярного произведения вектора нормали в каждой вершине элемента ивектора направления потока.Соотношения (3.17), (3.21) и (3.21) используются также при решении задачипересечения луча с поверхностью ВЭ.Пересечение луча с конической поверхностью. Пересечение луча иконической поверхности является решением следующей системы:2 2 + − ( ) = 0,1[ ] = [ ] + [ ],{ ∈ [0, 1 ),222где , , – координаты начала луча; , , – направляющий вектор луча.68Пересечение луча с цилиндрической поверхностью. Точка пересеченияцилиндрической поверхности и луча определяется аналогично случаю коническойповерхности: 2 + 2 = 22 ,[ ] = [ ] + [ ] ,{ ∈ [1 , 1 + 2 ).Пересечение луча со складчатой поверхностью. Ввиду периодичностиповерхности произвольный луч может пересекать периодическую поверхностьболее чем в двух точках (в зависимости от количества складок), поэтому областиповерхности могут «загораживать» друг друга. Пересечение поверхности с лучомописывается следующей системой уравнений:2 − 1 − 2(2 +( − 2 + cos((atan2(, ) + 0 )))) − 2 − 2 = 0,3[ ] = [ ] + [ ],{ ∈ [1 + 2 , 1 + 2 + 3 ].Поиск решения данной системы проводится в направлении невозмущенногопотока.
Очевидно, что одним из решений для данного луча является узел,проекция которого является основанием луча. Точка находится в областинаведенной тени в том случае, если существует такое решение системы, чторасстояние от найденной точки до картинной плоскости ближе, чем от базовогоузла, для которого был построен луч. Поиск аналитического решения задачипересечения луча с произвольной складчатой поверхностью затруднен, поэтомурешение производится численно. Стоит отметить, что уравнения поверхности и еепроизводной известны. Так как произвольный луч может пересекать складчатуюповерхность в нескольких точках, находящихся в непосредственной близостидруг от друга, задание начальной итерации имеет особую важность.