Для программной идентификации типа усеченной ячейки каждой
ячейке присваивается номер в троичной системе счисления по следу-
ющим правилам: полностью твердая грань обозначается нулем, полно-
стью жидкая — единицей, “твердо-жидкая” грань — двойкой, причем
номер формируется начиная с восточной грани против часовой стрел-
ки. Таким образом, тип каждой ячейки кодируется четырехзначным
троичным числом.
Построение функции уровня в общем случае.
Пусть граница
профиля
K
задана набором точек
{
K
1
, . . . ,
K
N
}
,
K
i
= (
x
K
i
,
y
K
i
)
,
i
= 1
,
N
.
Поскольку на практике координаты точек могут быть за-
даны с некоторой погрешностью, аппроксимировать границу профиля
интерполяцией нецелесообразно.
При выборе вида аппроксимирующей кривой
P
K
(
x
)
нужно учи-
тывать две особенности задачи. Во-первых, гладкость
P
K
(
x
)
должна
быть “управляемой”, т. е. следует предусмотреть возможность мо-
делирования как гладкого сопряжения участков границы профиля,
так и изгибов, в т. ч. и острых кромок (например, на крыловом
профиле). Во-вторых, для построения функции уровня нужно опре-
делять расстояние от произвольной точки
(
x
0
,
y
0
)
2
Ω
до
P
K
(
x
)
.
Для того чтобы вычислить это расстояние, необходимо найти на
P
K
(
x
)
точку
(
˜
x,
˜
y
)
,
˜
y
=
P
K
(
˜
x
)
,
такую что при
x
= ˜
x
функция
ρ
(
x
)
=
p
(
x
0
x
)
2
+ (
y
0
P
K
(
x
))
2
имеет минимум. Записав необ-
ходимое условие экстремума, получаем, что при условии сходимости
производных (т. е. при условии, что
dP
K
(
x
)
/
dx
аппроксимирует про-
изводную исходной функции)
˜
x
является корнем уравнения
(
x
0
x
)
+ (
P
K
(
x
)
y
0
)
dP
K
(
x
)
dx
= 0
,
(4)
которое может быть решено численно, например, методом деления
отрезка пополам. Отметим, что не всякая равномерная аппроксима-
ция функции обеспечивает равномерную аппроксимацию ее произ-
водной [4].
Наиболее удачна для поставленной задачи аппроксимация грани-
цы профиля
K
кривой Безье — параметрической кривой, задаваемой
многочленом в форме Бернштейна (линейной комбинацией базисных
полиномов Бернштейна [4]):
P
K
(
t
)
=
N
1
X
i
=0
y
K
i
+1
C
N
i
t
i
(1
t
)
N
i
,
t
2
[0
,
1]
,
t
=
t
(
x
)
=
x
a
b
a
,
x
2
[
a, b
]
,
C
N
i
=
N
!
i
!(
N
i
)!
биномиальный коэф-
фициент.
166
ISSN 1812-3368. Вестник МГТУ им. Н.Э. Баумана. Сер. “Естественные науки”. 2012