Стоит задача решить уравнение (остро,блин стоит-- диплом таки)
В симметричной области, ограниченной двумя окружностями (т.е. в кольце).
Оператор уравнения и ГУ выглядят так:
, если
(внешняя граница)
, если
(внутри)
Решаю на треугольной сетке согласно Зинкевичу, минимизируя невязку по области и на границе
где
- базисные, они же пробные функции, а
- невязки по области и по границе соотвественно.
Тогда элементы матрицы левой части СЛАУ и ветор правой части, я вычисляю следующим образом
где M и r таковы, что на границе
Перед тем, как интегрировать, интеграл по области, записанный в выражении для элементов матрицы левой части, взял по частям, для того, чтобы избавиться от вторых производных (посколько базисные функции должны в таком случае принадлежать не
, а
.
Интегрирование по треугольникам производится пока методом Гаусса по семи точкам. По поводу этого алгоритма могу сказать, что, скорее всего, он верен. Советовали аналитически интеграл вычислять, но пока боюсь. Вроде бы хоть и маленькая, но уверенность в правильной работе алгоритма интегрирования есть.
Далее, базисные функции - квадратичные. Внешний вид прилагаю. Вроде бы тоже верны.
Сетка тоже вроде хорошая. При ее сгущении качественно ничего не меняется. СЛАУ решается LU-алгоритмом. (также еще и QR пробовалось. Вроде тоже верно, с MathCad сходится)
Много вопросов возникает при виде получающегося решения.
Может быть кто-нибудь сталкивался с таким поведением. Из-за чего это может происходить?
Буду очень признателен за любую помощь.
Базисные функции
Сетка
Решение