# What does symmetrize mean? (imposing multifreedom constraints to stiffness matrix)

I have a small FEM implementation program. And I want to add imposing multifreedom constraints (MFC) feature to it. The theory of master-slave method is given here (page 10 for general case).

Stiffness matrix (static truss) is given in a rearranged block form:

$\begin{bmatrix} K_{uu} & K_{um} & K_{us} \\ K^{T}_{um} & K_{mm} & K_{ms} \\ K^{T}_{us} & K^{T}_{ms} & K_{ss} \end{bmatrix} \begin{bmatrix} u_{u}\\ u_{m}\\ u_{s} \end{bmatrix} = \begin{bmatrix} f_{u}\\ f_{m}\\ f_{s} \end{bmatrix}$

The form of the general constraints equations is a linear combination of DOFs:

$A_{m}u_{m} + A_{s}u_{s} = g_{A}$

We can find $u_{s}$ from this as follows:

$u_{s} = -A^{-1}_{s}A_{m}u_{m} + A^{-1}_{s}g_{A} = Tu_{m} + g$

Then I should "insert ($u_{s}$) into the partitioned stiffness matrix and symmetrize" to obtain:

$\begin{bmatrix} K_{uu} & K_{um}+K_{us}T \\ symm & K_{mm}+T^{T}K^{T}_{ms}+K_{ms}T+T^{T}K_{ss}T \end{bmatrix} \begin{bmatrix} u_{u}\\ u_{m} \end{bmatrix} = \begin{bmatrix} f_{u}-K_{us}g\\ f_{m}-K_{ms}g \end{bmatrix}$

I wanted to reproduce the last step but couldn't get the result. What is "to symmetrize"?

• Looking at the source, I see a different set of equations in the PDF. – Aron Ahmadia Apr 10 '12 at 21:17
• My mistake. I have an old version of this book and it's a bit different. Now $K_{ss}$ and other $K$'s with $s$ subscript don't disappear which is closer to my results but i still can't reproduce it. I found Wikipedia article on symmetrizing but this is for tensors and I'm not sure how to apply it to my case. – danny_23 Apr 10 '12 at 21:44
• @danny_23 isn't it just $\frac{1}{2}(K^T+K)$? Assuming $K_{\mu\mu}$ are already symmetric I would assume $symm=(K_{um}+K_{us}T)^T$. – Deathbreath Apr 13 '12 at 18:16

It's the old trick... (first seen here as far as I know.)

For brevity I will introduce $Ku = f$ with \begin{align} K &= \begin{bmatrix} K_{uu} & K_{um} & K_{us} \\ K^{T}_{um} & K_{mm} & K_{ms} \\ K^{T}_{us} & K^{T}_{ms} & K_{ss} \end{bmatrix} & u &= \begin{bmatrix} u_{u}\\ u_{m}\\ u_{s} \end{bmatrix} & f = \begin{bmatrix} f_{u}\\ f_{m}\\ f_{s} \end{bmatrix} \end{align}

Let \begin{align} v &= \begin{bmatrix} u_u \\ u_m \end{bmatrix} & B &= \begin{bmatrix} I & 0 \\ 0 & I \\ 0 & T \\ \end{bmatrix} & b &= \begin{bmatrix} 0 \\ 0 \\ g \end{bmatrix} \end{align} so that \begin{equation} u = Bv + b \end{equation}

Now

1. first insert $u_s$ (which by this notation is substituting $u$ from the equation above) \begin{equation} K(Bv+b) = f \end{equation}
2. then symmetrize by premultiplication by $B^T$ \begin{equation} B^T K(Bv+b) = B^T f \end{equation}

leading to \begin{equation} B^T K B \:v = B^T (f - Kb) \end{equation} which, with a few substitutions, is the result you are looking for.

• Let me comment my own answer: although $KB$ is not symmetric, I would not call premultiplication by $B^T$ a symmetrization: the point here is that KB is not square, so you have to reduce the number of equations in a way that is constant with the FEM formulation: $\delta u^T K u = \delta u^Tf, \forall \delta u$ becomes $\delta v^T B^T K B v = \delta v^T (\dots), \forall \delta v$: this is the real reason for premultiplying by $B^T$. – Stefano M Jul 10 '12 at 21:31

Just as an addendum to Stefano's answer, this is known in the recent structural mechanics literature as kinematic condensation. By adding the constraint K becomes linearly dependent. You remove one equation by expresing your vector of dependent degrees of freedom $u$ as vector of independent degrees of freedom $\nu$ using stefano's matrix $\; B$ (sometimes called $A$ in the literature: $\; A^T K A \nu = A^T f \;$).