Для вычисления метрических параметров в треугольнике с номером k применяются формулы, которые после введения обозначений:
(3.7)
,,
имеют вид:
(3.8)
,,
Для них тождественно выполнен разностный аналог формулы (1.4):
(3.9)
Кроме того, имеют место равенства:
(3.10)
, ,где
- угол, образованный отрезками сетки в вершине с номером k ячейки L (см. рис.3б).Величины
определяются такими же формулами с использованием координат узлов сетки на предыдущем шаге по времени, а затем подвергаются корректировке, например, по формулам (2.16).Для функционала (1.8)-(1.9) без якобиана разностные уравнения (3.3) в узле 1 шаблона могут быть записаны в виде:
(3.11)
,
где коэффициенты
вычисляются по следующим формулам:(3.12)
(3.13)
Обратим внимание, что в этих формулах отсутствуют величины с индексом (3,L), отвечающие треугольнику с номером k=3. Это не случайно, поскольку «вклад» этого треугольника в сумму (3.1) не будет изменяться при вариации узла
. Поэтому расчет треугольника с номером k=3 можно не производить.Отметим далее, что в случае
присутствие в формулах (3.12)-(3.13) отрицательных коэффициентов является обычным явлением. Следовательно, для получаемой системы линейных уравнений принцип максимума не выполняется. Это еще одна из причин тщательного подхода к конструированию системы разностных уравнений на основе положительно определенной квадратичной формы в случае работы с функционалом без якобиана.При получении коэффициентов
для нормировки используются величины . В силу формулы (3.10) они прямо зависят от значений величин для углов, образуемых отрезками сетки предыдущего шага по времени во всех ее узлах. Следовательно, конструируемая система уравнений «реагирует» на малые значения любого из этих углов или на их приближение к значению , т.е. должна препятствовать вырождению соответствующих ячеек. Это существенный аргумент в пользу усложнения алгоритма, связанного с разрезанием ячейки на треугольники. Если этого не делать, в формулах (3.12)-(3.13) будут участвовать лишь некоторые «усредненные» значения и площадь всей ячейки сетки, «смазывая» эффект ее вырождения.Заслуживает специально быть отмеченным случай
. Тогда , и система (3.11) превращается в более простую:(3.14)
,Более того, из (3.11) будем иметь
(3.15)
.Следовательно, такая система будет удовлетворять принципу максимума.
При этом в формулах (1.6)
, .Следовательно, разрезание ячеек на треугольники становится ненужным.
Поэтому так привлекательны для построения сеток в областях с фиксированными границами алгоритмы конструирования «квазиортогональных» сеток. К сожалению, в случае нестационарной задачи назначение
противоречит изложенной в § 2 идеологии, допускающей только вариации коэффициентов . Поэтому оно обсуждаться не будет, хотя и не закрывает возможности использования таких алгоритмов для расчета стационарных сеток.Обратимся теперь к функционалу (1.1)-(1.2) с якобианом в знаменателе. Соответствующая ему система сеточных уравнений (3.3) будет нелинейной из-за наличия знаменателя в формуле (3.4) и имеет существенно более громоздкий вид. Она описана в работе [4] вместе с итерационным процессом. Соответствующие расчетные формулы будут представлены в следующем параграфе.
§ 4. Итерационные процессы.
Начнем с обсуждения метода решения системы разностных уравнений (3.11) для функционала без якобиана. Заметим, что имеется хорошее начальное приближение
для искомого решения, определяемое формулой (2.3), и, в силу (2.4) и (2.8), отличающееся от искомого решения на величины . Это обстоятельство и сама структура уравнений (3.11) вызывают естественное желание воспользоваться простейшим итерационным процессом:(4.1)
В этих формулах коэффициенты
на итерациях не меняются.(4.2)
Управляющий параметр
может меняться от итерации к итерации. Вопрос о его назначении будет рассмотрен ниже. Для обеспечения численной устойчивости итерационного процесса 0<w0<1.Для функционала (1.1)-(1.2) с якобианом, в соответствии с изложенным в конце § 3, расчетные формулы итерационного процесса имеют вид:
(4.3)
В этих формулах
представляют соответствующие первые и вторые производные разностного функционала для центральной точки шаблона, описанного ранее в § 3, вычисленного на сетке, полученной на предыдущей итерации. Он использует так же значения матрицы коэффициентов , вычисленные с помощью сетки предыдущего шага по времени и с учетом корректировки (2.16), которые остаются неизменными на всех итерациях. Каждая из величин представляет сумму 12 слагаемых, отвечающих в каждой из четырех ячеек с номерами трем треугольникам с номерами k=1,2,4. Получение расчетных формул для этих величин представляет кропотливое, но несложное упражнение по дифференцированию, и мы их приводить не будем. Тем более, что эти формулы будут различными для треугольников k=1,2,4 из-за различной роли в них узла (x1,y1).С точки зрения практической организации вычислений возможны два варианта. Первый состоит в том, что отбираются все величины, входящие в шаблон отдельного внутреннего узла сетки, и вычисления проводятся полностью до получения результата (x1,y1)(i+1). Второй вариант предусматривает специальный массив для накапливания величин
посредством последовательной обработки всех ячеек сетки, как это описывалось в работах [11] и [4]. С точки зрения объема вычислительной работы второй вариант предпочтительнее. Однако с точки зрения многопроцессорных вычислительных систем это далеко не очевидно и требует проверки в численном эксперименте.