Матрица демпфирования 1D

Теперь вычислим матрицу демпфирования для одномерного случая. Матрица демпфирования связана с интегралом квадрата пробной функции. Рассмотрим интеграл для одного отрезка с вершинами xi,xi+1x_i, x_{i+1}

xixi+1υ2dx.\int_{x_i}^{x_{i+1}} \upsilon^2 \,dx.
(6.20)

Пробная функция на отрезке имеет вид υ(i)(i+1)(x)\upsilon_{(i)(i+1)}(x) =qiϕi(x)= q_i \cdot \phi_i(x) +qi+1ϕi+1(x)+ q_{i+1} \cdot \phi_{i+1}(x). Примем во внимание (5.7) и (5.8) из раздела о функциях «крышек» и запишем соотношения для функций «крышек»

ϕi(x)\displaystyle \phi_i(x) =ai\displaystyle = a_i +bix\displaystyle + b_i \cdot xϕi+1(x)\displaystyle \phi_{i+1}(x) =ai+1\displaystyle = a_{i+1} +bi+1x\displaystyle + b_{i+1} \cdot x
(6.21)

Подставим пробную функцию в (6.20)

xixi+1υ(i)(i+1)2dx\displaystyle \int_{x_i}^{x_{i+1}} \upsilon_{(i)(i+1)}^2 \,dx =xixi+1[qi(ai+bix)+qi+1(ai+1+bi+1x)]2dx.\displaystyle = \int_{x_i}^{x_{i+1}} \left[ q_i \cdot (a_i + b_i \cdot x) + q_{i+1} \cdot (a_{i+1} + b_{i+1} \cdot x) \right]^2 \,dx.

Учитывая (5.8), можно записать

xixi+1υ(i)(i+1)2dx\displaystyle \int_{x_i}^{x_{i+1}} \upsilon_{(i)(i+1)}^2 \,dx =1(xixi+1)2xixi+1[(qixi+1+qi+1xi)+(qiqi+1)x]2dx.\displaystyle = \frac{\displaystyle 1}{\displaystyle (x_i - x_{i+1})^2} \cdot \int_{x_i}^{x_{i+1}} \left[(-q_i \cdot x_{i+1} + q_{i+1} \cdot x_i) + (q_i - q_{i+1}) \cdot x \right]^2 \,dx.

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

xixi+1υ(i)(i+1)2dx\displaystyle \int_{x_i}^{x_{i+1}} \upsilon_{(i)(i+1)}^2 \,dx =1(xixi+1)2[xixi+1(qixi+1+qi+1xi)2dx+2xixi+1(qixi+1+qi+1xi)(qiqi+1)xdx+xixi+1(qiqi+1)2x2dx]\displaystyle = \frac{\displaystyle 1}{\displaystyle (x_i - x_{i+1})^2} \cdot \Big[ \int_{x_i}^{x_{i+1}} (-q_i \cdot x_{i+1} + q_{i+1} \cdot x_i)^2 \,dx + 2 \cdot \int_{x_i}^{x_{i+1}} (-q_i \cdot x_{i+1} + q_{i+1} \cdot x_i) \cdot (q_i - q_{i+1}) \cdot x \,dx + \int_{x_i}^{x_{i+1}} (q_i - q_{i+1})^2 \cdot x^2 \,dx \Big]

Вычислим каждый из трёх интегралов

xixi+1υ(i)(i+1)2dx\displaystyle \int_{x_i}^{x_{i+1}} \upsilon_{(i)(i+1)}^2 \,dx =(qixi+1+qi+1xi)2x(xixi+1)2xixi+1\displaystyle = \frac{\displaystyle (-q_i \cdot x_{i+1} + q_{i+1} \cdot x_i)^2 \cdot x}{\displaystyle (x_i - x_{i+1})^2} \bigg|_{x_i}^{x_{i+1}} +(qixi+1+qi+1xi)(qiqi+1)x2(xixi+1)2xixi+1\displaystyle + \frac{\displaystyle (-q_i \cdot x_{i+1} + q_{i+1} \cdot x_i) \cdot (q_i - q_{i+1}) \cdot x^2}{\displaystyle (x_i - x_{i+1})^2} \bigg|_{x_i}^{x_{i+1}} +(qiqi+1)2x33(xixi+1)2xixi+1.\displaystyle + \frac{\displaystyle (q_i - q_{i+1})^2 \cdot x^3}{\displaystyle 3 \cdot (x_i - x_{i+1})^2} \bigg|_{x_i}^{x_{i+1}}.

После упрощения получаем

xixi+1υ(i)(i+1)2dx\displaystyle \int_{x_i}^{x_{i+1}} \upsilon_{(i)(i+1)}^2 \,dx =(qi2+qiqi+1+qi+12)(xixi+1)23(xixi+1)\displaystyle = - \frac{\displaystyle (q_i^2 + q_i \cdot q_{i+1} + q_{i+1}^2) \cdot (x_i - x_{i+1})^2}{\displaystyle 3 \cdot (x_i - x_{i+1})} =xi+1xi3(qi2+qiqi+1+qi+12).\displaystyle = \frac{\displaystyle x_{i+1} - x_i}{\displaystyle 3} \cdot (q_i^2 + q_i \cdot q_{i+1} + q_{i+1}^2).

Введём обозначение длины отрезка

xixi+1υ(i)(i+1)2dx\displaystyle \int_{x_i}^{x_{i+1}} \upsilon_{(i)(i+1)}^2 \,dx =l(i)(i+1)3[qi2+qiqi+1+qi+12],\displaystyle = \frac{l_{(i)(i+1)}}{3} \cdot \left[ q_i^2 + q_i \cdot q_{i+1} + q_{i+1}^2 \right],

где l(i)(i+1)l_{(i)(i+1)} =xi+1= x_{i+1} xi- x_i — длина отрезка.

Введём обозначения для элементов локальной матрицы демпфирования отрезка

c(i)(i)=l(i)(i+1)3c(i+1)(i+1)=l(i)(i+1)3c(i)(i+1)=c(i+1)(i)=l(i)(i+1)6\begin{split} &c_{(i)(i)} = \frac{\displaystyle l_{(i)(i+1)}}{\displaystyle 3}\\ &c_{(i+1)(i+1)} = \frac{\displaystyle l_{(i)(i+1)}}{\displaystyle 3}\\ &c_{(i)(i+1)} = c_{(i+1)(i)} = \frac{\displaystyle l_{(i)(i+1)}}{\displaystyle 6} \end{split}
(6.22)

Таким образом, локальная матрица демпфирования для одномерного элемента имеет вид

C=[c(i)(i)c(i)(i+1)c(i+1)(i)c(i+1)(i+1)]=l(i)(i+1)6[2112].\begin{aligned}\mathbf{C} = \begin{bmatrix} c_{(i)(i)} & c_{(i)(i+1)}\\ c_{(i+1)(i)} & c_{(i+1)(i+1)} \end{bmatrix} = \frac{\displaystyle l_{(i)(i+1)}}{\displaystyle 6} \begin{bmatrix} 2 & 1\\ 1 & 2 \end{bmatrix}.\end{aligned}
(6.23)

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

Например, рассмотрим сетку с узлами 0,1,,i,i0, 1, \ldots, i, i +1,,N+1, \ldots, N. При сборке каждый отрезок (j)(j+1)(j)(j+1) добавляет на диагональ вклад l(j)(j+1)3\frac{\displaystyle l_{(j)(j+1)}}{\displaystyle 3}, а на смежные внедиагональные элементы — l(j)(j+1)6\frac{\displaystyle l_{(j)(j+1)}}{\displaystyle 6}; внутренний узел ii получает диагональный вклад сразу от двух смежных отрезков — (i1)(i)(i-1)(i) и (i)(i+1)(i)(i+1), — поэтому на главной диагонали стоит сумма l(i1)(i)3\frac{\displaystyle l_{(i-1)(i)}}{\displaystyle 3} +l(i)(i+1)3+ \frac{\displaystyle l_{(i)(i+1)}}{\displaystyle 3}. Поскольку длина l(j)(j+1)l_{(j)(j+1)} зависит от номера отрезка, её нельзя вынести как общий множитель — каждый элемент глобальной матрицы хранит длину своего отрезка. В результате матрица получается трёхдиагональной

C\displaystyle \mathbf{C} =[l(0)(1)3l(0)(1)600l(0)(1)6l(0)(1)3+l(1)(2)3l(1)(2)60l(1)(2)6l(i1)(i)3+l(i)(i+1)3l(i)(i+1)6l(i)(i+1)6l(i)(i+1)3+l(i+1)(i+2)3l(N1)(N)60l(N1)(N)6l(N1)(N)3].\displaystyle = \begin{bmatrix} \frac{\displaystyle l_{(0)(1)}}{\displaystyle 3} & \frac{\displaystyle l_{(0)(1)}}{\displaystyle 6} & 0 & \cdots & & & 0\\ \frac{\displaystyle l_{(0)(1)}}{\displaystyle 6} & \frac{\displaystyle l_{(0)(1)}}{\displaystyle 3} + \frac{\displaystyle l_{(1)(2)}}{\displaystyle 3} & \frac{\displaystyle l_{(1)(2)}}{\displaystyle 6} & & & & \\ 0 & \frac{\displaystyle l_{(1)(2)}}{\displaystyle 6} & \ddots & \ddots & & & \\ \vdots & & \ddots & \frac{\displaystyle l_{(i-1)(i)}}{\displaystyle 3} + \frac{\displaystyle l_{(i)(i+1)}}{\displaystyle 3} & \frac{\displaystyle l_{(i)(i+1)}}{\displaystyle 6} & & \vdots\\ & & & \frac{\displaystyle l_{(i)(i+1)}}{\displaystyle 6} & \frac{\displaystyle l_{(i)(i+1)}}{\displaystyle 3} + \frac{\displaystyle l_{(i+1)(i+2)}}{\displaystyle 3} & \ddots & \\ & & & & \ddots & \ddots & \frac{\displaystyle l_{(N-1)(N)}}{\displaystyle 6}\\ 0 & & & \cdots & & \frac{\displaystyle l_{(N-1)(N)}}{\displaystyle 6} & \frac{\displaystyle l_{(N-1)(N)}}{\displaystyle 3} \end{bmatrix}.