2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Учет главных ГУ в МКЭ
Сообщение22.05.2007, 10:24 
У меня, возможно, довольно глупый вопрос, но в Зенкевиче я не узрел ответа на него (может быть плохо искал). Надеюсь на вашу помощь.
Итак, главные граничные условия я, как понял, учитываются следующим образом. При формировании элемента матрицы СЛАУ
K_{i,j}
в случае, если точка i попадает на границу, то все строчку матрицы насильственно зануляем, кроме диагонального элемента, который становится следующим
K_{i,i}=1
При этом вектор правой части Слау
f_i=p,
где p - значение функции на границе области.
А как тогда поступать в случае, когда на элемент i мы натыкаемся в остальных случаях, иными словами, когда формируем элементы
K_{n,i}?

 
 
 
 
Сообщение22.05.2007, 11:12 
Если просто занулить всю i-строку, то матрица будет не симметричной:)
Нужно также обнулить i-столбец, для чего просто переносим Kn,i*pi в правую часть со знаком минус. Делать это можно в процессе составления глобальной матрицы, а можно и после того, как она была полностью получена.

Учет ГУ 1-рода (Дирихле) трудностей не вызывает, сложнее дело обстоит с ГУ 2-3 рода. Тут нужно вычислять интеграл-добавку по границам с ГУ 2-3 рода.

 
 
 
 
Сообщение22.05.2007, 11:28 
А возможно использовать комбинированный подход, когда ГУ первого рода мы учитываем согласно подходу описанному выше, а ГУ второго рода, используя минимизацию невязки по области и по границе
\int\limits_{\Omega} N_i L N_j d\Omega + \int\limits_{\Gamma} N_i M N_j d\Gamma=0,
где L- оператор уравнения, M - оператор ГУ, а N_k - базисные функции (в постановке Галеркина)
Границы на которых поставлены ГУ 1 и 2- рода не пересекаются

 
 
 
 
Сообщение22.05.2007, 12:34 
Здесь я как-то писал в двух словах про учет ГУ.
В-общем, учет всех ГУ лучше делать на этапе составления матрицы. Одним проходом по всем КЭ:
- просто добавляем локальные матрицы, если нет ГУ;
- если есть ГУ 1 рода - вычитаем элементы локальной матрицы*Значение_ГУ из правой части;
- ГУ 2 и 3 рода - добавляем локальные матрицы + вычисляем добавки (интегралы функций формы по границам).

Таким образом, для каждого КЭ - если узлы принадлежат границам с ГУ 1 рода - модифицируем матрицу жесткости и правых частей.
ГУ 2 рода - модифицируем только матрицу правых частей.
ГУ 3 рода - здесь опять-таки и матрицу жескости, и правую часть.

 
 
 
 
Сообщение28.05.2007, 13:08 
Тогда возникает еще один вопрос (см. также http://dxdy.ru/viewtopic.php?t=7826)
Если есть уже система
(\kappa+1)\frac{\partial ^2 u}{\partial x^2}+\frac{\partial^2 u}{\partial y^2}+\kappa\frac{\partial^2 v}{\partial x\partial y}=-\chi(\sqrt{x^2+y^2},t)\frac{x}{\sqrt{x^2+y^2}}
(\kappa+1)\frac{\partial ^2 v}{\partial y^2}+\frac{\partial^2 v}{\partial x^2}+\kappa\frac{\partial^2 u}{\partial x\partial y}=-\chi(\sqrt{x^2+y^2},t)\frac{y}{\sqrt{x^2+y^2}}
С ГУ
на внутренней границе
u=0,v=0
на внешней границе
\left((\kappa+1)\frac{\partial u}{\partial x}+(\kappa-1)\frac{\partial v}{\partial y}\right)n_x+\left((\kappa+1)\frac{\partial v}{\partial y}+(\kappa-1)\frac{\partial u}{\partial x}\right)n_y=q(t)
Тогда матрица СЛАУ будет состоять из блоков 2x2, где каждый блок будет иметь вид
K_{i,j}=\int\limits_{\Omega} N_i L(N_j) d\Omega
где N - матрица базисных функций, а L -
\begin{pmatrix} 
(\kappa+1)\frac{\partial ^2 }{\partial y^2}+\frac{\partial^2 }{\partial x^2} & \kappa\frac{\partial^2 }{\partial x\partial y} \\ 
\kappa\frac{\partial^2 }{\partial x\partial y} & (\kappa+1)\frac{\partial ^2 }{\partial y^2}+\frac{\partial^2 }{\partial x^2} 
\end{pmatrix}
После применения формулы Грина получим
\begin{pmatrix} 
\int\limits_{\Gamma}N_j(\kappa+1)N_i\frac{\partial }{\partial y}n_x+N_j\frac{\partial}{\partial y}n_y d \Gamma- 
\int\limits_{\Omega} \frac{\partial(N_j(\kappa+1)}{\partial x}\frac{\partial}{\partial x}+
\frac{\partial(N_j(\kappa+1)}{\partial y}\frac{\partial}{\partial y}d\Omega & ... \\ 
...& ... 
\end{pmatrix}
Так вот, каким же образом тут учитывать граничное условие на внешней границе, если оно связывет обе составляющие скорости (u,v), а в матрице эти составляющие разделены?

 
 
 
 
Сообщение28.05.2007, 14:15 
Аватара пользователя
Если у Вас упругое Тело, то внешнее давление q(t) даст добавки в Глобальный вектор сил на сторону 1-2

$F=\frac {q(t)l_{12}} 2
$F_{x1}=F_{x2}=-F \frac {y_2-y_1} {l_{12}}
$F_{y1}=F_{y2}=F \frac {x_2-x_1} {l_{12}}
Проверте знак действия q.

 
 
 
 
Сообщение28.05.2007, 14:19 
Тело не обязательно упругое.

 
 
 [ Сообщений: 7 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group