Матрица жёсткости 2D

Теперь вычислим матрицу жёсткости для двумерного случая. В двумерном пространстве градиент имеет вид ∇υ\nabla \upsilon​=(∂υ∂x,∂υ∂y){} = \left( \frac{\displaystyle \partial \upsilon}{\displaystyle \partial x}, \frac{\displaystyle \partial \upsilon}{\displaystyle \partial y} \right), а скалярное произведение градиента с самим собой равно ∇υ⋅∇υ\nabla \upsilon \cdot \nabla \upsilon​=(∂υ∂x)2{} = \left( \frac{\displaystyle \partial \upsilon}{\displaystyle \partial x} \right)^2​+(∂υ∂y)2{} + \left( \frac{\displaystyle \partial \upsilon}{\displaystyle \partial y} \right)^2. Учитывая, что двумерная расчётная область MM разбита на симплексы-треугольники, исследуемую часть функционала для одного треугольника с вершинами (xi,yi),(xi+1,yi+1),(xi+2,yi+2)(x_i, y_i), (x_{i+1}, y_{i+1}), (x_{i+2}, y_{i+2}) можно записать как

∫△[(∂υ∂x)2+(∂υ∂y)2] dS.\int_{\triangle} \left[ \left( \frac{\displaystyle \partial \upsilon}{\displaystyle \partial x} \right)^2 + \left( \frac{\displaystyle \partial \upsilon}{\displaystyle \partial y} \right)^2 \right] \,dS.
(6.6)

Функция υ(x,y)\upsilon(x, y)​=∑i=1Nυi(x,y){} = \sum_{i=1}^N \upsilon_i(x, y). Пробная функция на треугольнике имеет вид υ(i)(i+2)(x,y)\upsilon_{(i)(i+2)}(x, y)​=qi⋅ϕi(x,y){} = q_i \cdot \phi_i(x, y)​+qi+1⋅ϕi+1(x,y){} + q_{i+1} \cdot \phi_{i+1}(x, y)​+qi+2⋅ϕi+2(x,y){} + q_{i+2} \cdot \phi_{i+2}(x, y). Примем во внимание (5.9) и (5.10) из раздела о функциях «крышек» и запишем соотношения для функций «крышек»

ϕi(x,y)\displaystyle \phi_i(x, y) =ai\displaystyle {} = a_i​+bi⋅x\displaystyle {} + b_i \cdot x​+ci⋅y\displaystyle {} + c_i \cdot yϕi+1(x,y)\displaystyle \phi_{i+1}(x, y) =ai+1\displaystyle {} = a_{i+1}​+bi+1⋅x\displaystyle {} + b_{i+1} \cdot x​+ci+1⋅y\displaystyle {} + c_{i+1} \cdot yϕi+2(x,y)\displaystyle \phi_{i+2}(x, y) =ai+2\displaystyle {} = a_{i+2}​+bi+2⋅x\displaystyle {} + b_{i+2} \cdot x​+ci+2⋅y\displaystyle {} + c_{i+2} \cdot y
(6.7)

Вычислим частные производные пробной функции

∂υ(i)(i+2)(x,y)∂x\displaystyle \frac{\displaystyle \partial \upsilon_{(i)(i+2)}(x, y)}{\displaystyle \partial x} =qi⋅bi\displaystyle {} = q_i \cdot b_i​+qi+1⋅bi+1\displaystyle {} + q_{i+1} \cdot b_{i+1}​+qi+2⋅bi+2\displaystyle {} + q_{i+2} \cdot b_{i+2}∂υ(i)(i+2)(x,y)∂y\displaystyle \frac{\displaystyle \partial \upsilon_{(i)(i+2)}(x, y)}{\displaystyle \partial y} =qi⋅ci\displaystyle {} = q_i \cdot c_i​+qi+1⋅ci+1\displaystyle {} + q_{i+1} \cdot c_{i+1}​+qi+2⋅ci+2\displaystyle {} + q_{i+2} \cdot c_{i+2}
(6.8)

Заметим, что производные не зависят от xx и yy и являются константами на треугольнике. Подставим (6.8) в (6.6)

∫△[(∂υ(i)(i+2)∂x)2\displaystyle \int_{\triangle} \biggl[ \left( \frac{\displaystyle \partial \upsilon_{(i)(i+2)}}{\displaystyle \partial x} \right)^2​+(∂υ(i)(i+2)∂y)2] dS\displaystyle {} + \left( \frac{\displaystyle \partial \upsilon_{(i)(i+2)}}{\displaystyle \partial y} \right)^2 \biggr] \,dS​=S△⋅[(qi⋅bi+qi+1⋅bi+1+qi+2⋅bi+2)2\displaystyle {} = \quad S_{\triangle} \cdot \bigl[ (q_i \cdot b_i + q_{i+1} \cdot b_{i+1} + q_{i+2} \cdot b_{i+2})^2​+(qi⋅ci+qi+1⋅ci+1+qi+2⋅ci+2)2],\displaystyle {} + (q_i \cdot c_i + q_{i+1} \cdot c_{i+1} + q_{i+2} \cdot c_{i+2})^2 \bigr] ,

где S△S_{\triangle} — площадь треугольника, которая вычисляется по формуле

S△\displaystyle S_{\triangle} =∣d∣2,\displaystyle {} = \frac{\displaystyle |d|}{\displaystyle 2},
(6.9)

где dd​=xi⋅yi+1{} = x_i \cdot y_{i+1}​−xi⋅yi+2{} - x_i \cdot y_{i+2}​−xi+1⋅yi{} - x_{i+1} \cdot y_i​+xi+1⋅yi+2{} + x_{i+1} \cdot y_{i+2}​+xi+2⋅yi{} + x_{i+2} \cdot y_i​−xi+2⋅yi+1{} - x_{i+2} \cdot y_{i+1} — определитель из (5.10).

Раскроем квадраты и перегруппируем члены

∫△(∇υ(i)(i+2))2 dS\displaystyle \int_{\triangle} (\nabla \upsilon_{(i)(i+2)})^2 \,dS =S△\displaystyle {} = S_{\triangle}​⋅[qi2⋅[bi2+ci2]+qi+12⋅[bi+12+ci+12]+qi+22⋅[bi+22+ci+22]+2⋅qi⋅qi+1⋅(bi⋅bi+1+ci⋅ci+1)+2⋅qi⋅qi+2⋅(bi⋅bi+2+ci⋅ci+2)+2⋅qi+1⋅qi+2⋅(bi+1⋅bi+2+ci+1⋅ci+2)]\displaystyle {} \cdot \Big[ q_i^2 \cdot [b_i^2 + c_i^2] + q_{i+1}^2 \cdot [b_{i+1}^2 + c_{i+1}^2] + q_{i+2}^2 \cdot [b_{i+2}^2 + c_{i+2}^2] + 2 \cdot q_i \cdot q_{i+1} \cdot (b_i \cdot b_{i+1} + c_i \cdot c_{i+1}) + 2 \cdot q_i \cdot q_{i+2} \cdot (b_i \cdot b_{i+2} + c_i \cdot c_{i+2}) + 2 \cdot q_{i+1} \cdot q_{i+2} \cdot (b_{i+1} \cdot b_{i+2} + c_{i+1} \cdot c_{i+2}) \Big]

Примем во внимание формулы из (5.10) для коэффициентов bb и cc и введём обозначения для элементов локальной матрицы жёсткости треугольника

k(i)(i)\displaystyle k_{(i)(i)} =S△⋅[bi2+ci2]\displaystyle {} = S_{\triangle} \cdot [b_i^2 + c_i^2]​=12⋅∣d∣\displaystyle {} = \frac{\displaystyle 1}{\displaystyle 2 \cdot |d|}​⋅[(yi+1−yi+2)2+(−xi+1+xi+2)2]\displaystyle {} \cdot [(y_{i+1} - y_{i+2})^2 + (-x_{i+1} + x_{i+2})^2]k(i+1)(i+1)\displaystyle k_{(i+1)(i+1)} =S△⋅[bi+12+ci+12]\displaystyle {} = S_{\triangle} \cdot [b_{i+1}^2 + c_{i+1}^2]​=12⋅∣d∣\displaystyle {} = \frac{\displaystyle 1}{\displaystyle 2 \cdot |d|}​⋅[(−yi+yi+2)2+(xi−xi+2)2]\displaystyle {} \cdot [(-y_i + y_{i+2})^2 + (x_i - x_{i+2})^2]k(i+2)(i+2)\displaystyle k_{(i+2)(i+2)} =S△⋅[bi+22+ci+22]\displaystyle {} = S_{\triangle} \cdot [b_{i+2}^2 + c_{i+2}^2]​=12⋅∣d∣\displaystyle {} = \frac{\displaystyle 1}{\displaystyle 2 \cdot |d|}​⋅[(yi−yi+1)2+(−xi+xi+1)2]\displaystyle {} \cdot [(y_i - y_{i+1})^2 + (-x_i + x_{i+1})^2]k(i)(i+1)\displaystyle k_{(i)(i+1)} =k(i+1)(i)\displaystyle {} = k_{(i+1)(i)}​=S△⋅(bi⋅bi+1+ci⋅ci+1)\displaystyle {} = S_{\triangle} \cdot (b_i \cdot b_{i+1} + c_i \cdot c_{i+1})=12⋅∣d∣\displaystyle {} = \frac{\displaystyle 1}{\displaystyle 2 \cdot |d|}​⋅[(yi+1−yi+2)⋅(−yi+yi+2)+(−xi+1+xi+2)⋅(xi−xi+2)]\displaystyle {} \cdot [(y_{i+1} - y_{i+2}) \cdot (-y_i + y_{i+2}) + (-x_{i+1} + x_{i+2}) \cdot (x_i - x_{i+2})]k(i)(i+2)\displaystyle k_{(i)(i+2)} =k(i+2)(i)\displaystyle {} = k_{(i+2)(i)}​=S△⋅(bi⋅bi+2+ci⋅ci+2)\displaystyle {} = S_{\triangle} \cdot (b_i \cdot b_{i+2} + c_i \cdot c_{i+2})=12⋅∣d∣\displaystyle {} = \frac{\displaystyle 1}{\displaystyle 2 \cdot |d|}​⋅[(yi+1−yi+2)⋅(yi−yi+1)+(−xi+1+xi+2)⋅(−xi+xi+1)]\displaystyle {} \cdot [(y_{i+1} - y_{i+2}) \cdot (y_i - y_{i+1}) + (-x_{i+1} + x_{i+2}) \cdot (-x_i + x_{i+1})]k(i+1)(i+2)\displaystyle k_{(i+1)(i+2)} =k(i+2)(i+1)\displaystyle {} = k_{(i+2)(i+1)}​=S△\displaystyle {} = S_{\triangle}​⋅(bi+1⋅bi+2+ci+1⋅ci+2)\displaystyle {} \cdot (b_{i+1} \cdot b_{i+2} + c_{i+1} \cdot c_{i+2})=12⋅∣d∣\displaystyle {} = \frac{\displaystyle 1}{\displaystyle 2 \cdot |d|}​⋅[(−yi+yi+2)⋅(yi−yi+1)+(xi−xi+2)⋅(−xi+xi+1)]\displaystyle {} \cdot [(-y_i + y_{i+2}) \cdot (y_i - y_{i+1}) + (x_i - x_{i+2}) \cdot (-x_i + x_{i+1})]
(6.10)

Таким образом, локальная матрица жёсткости для треугольного элемента имеет вид

K△\displaystyle \mathbf{K}_{\triangle} =[k(i)(i)k(i)(i+1)k(i)(i+2)k(i+1)(i)k(i+1)(i+1)k(i+1)(i+2)k(i+2)(i)k(i+2)(i+1)k(i+2)(i+2)]\displaystyle {} = \begin{bmatrix} k_{(i)(i)} & k_{(i)(i+1)} & k_{(i)(i+2)}\\ k_{(i+1)(i)} & k_{(i+1)(i+1)} & k_{(i+1)(i+2)}\\ k_{(i+2)(i)} & k_{(i+2)(i+1)} & k_{(i+2)(i+2)} \end{bmatrix}​=S△\displaystyle {} = S_{\triangle}​[bi2+ci2bi⋅bi+1+ci⋅ci+1bi⋅bi+2+ci⋅ci+2bi+1⋅bi+ci+1⋅cibi+12+ci+12bi+1⋅bi+2+ci+1⋅ci+2bi+2⋅bi+ci+2⋅cibi+2⋅bi+1+ci+2⋅ci+1bi+22+ci+22].\displaystyle \begin{bmatrix} b_i^2 + c_i^2 & b_i \cdot b_{i+1} + c_i \cdot c_{i+1} & b_i \cdot b_{i+2} + c_i \cdot c_{i+2}\\ b_{i+1} \cdot b_i + c_{i+1} \cdot c_i & b_{i+1}^2 + c_{i+1}^2 & b_{i+1} \cdot b_{i+2} + c_{i+1} \cdot c_{i+2}\\ b_{i+2} \cdot b_i + c_{i+2} \cdot c_i & b_{i+2} \cdot b_{i+1} + c_{i+2} \cdot c_{i+1} & b_{i+2}^2 + c_{i+2}^2 \end{bmatrix}.
(6.11)

Глобальная матрица жёсткости K\mathbf{K} получается путём суммирования вкладов от всех треугольных элементов сетки методом сборки: элементы локальных матриц добавляются к соответствующим элементам глобальной матрицы согласно глобальной нумерации узлов. Размерность глобальной матрицы жёсткости равна N×NN \times N, где NN — общее количество узлов сетки.