Main Content

Specify physical connections between components of `mechss`

model

specifies physical couplings between components `sysCon`

= interface(`sys`

,c1,nodes1,c2,nodes2)`c1`

and
`c2`

in the second-order sparse model `sys`

.
`nodes1`

and `nodes2`

contain the indices of shared
nodes relative to the nodes of `c1`

and `c2`

. The physical
interface is assumed rigid and satisfies the standard consistency and equilibrium
conditions. `sysCon`

is the resultant model with the specified physical
connections. Use `showStateInfo`

to get the list of all available components of `sys`

.

**Dual Assembly**

`interface`

uses
the concept of *dual assembly* to physically connect the nodes of the model
components. For `n`

substructures in the physical domain, the sparse matrices
in block diagonal form are:

$$\begin{array}{l}M\text{}\triangleq \text{}diag\left({M}_{1},\mathrm{...},{M}_{n}\right)=\left[\begin{array}{ccc}{M}_{1}& 0& 0\\ 0& \ddots & 0\\ 0& 0& {M}_{n}\end{array}\right]\\ C\text{}\triangleq \text{}diag\left({C}_{1},\mathrm{...},{C}_{n}\right)\\ \\ K\text{}\triangleq \text{}diag\left({K}_{1},\mathrm{...},{K}_{n}\right)\\ q\text{}\triangleq \text{}\left[\begin{array}{c}{q}_{1}\\ \vdots \\ {q}_{n}\end{array}\right],\text{B}\triangleq \text{}\left[\begin{array}{c}{B}_{1}\\ \vdots \\ {B}_{n}\end{array}\right]\text{,F}\triangleq \text{}\left[\begin{array}{ccc}{F}_{1}& \cdots & {F}_{n}\end{array}\right],\text{G}\triangleq \text{}\left[\begin{array}{ccc}{G}_{1}& \cdots & {G}_{n}\end{array}\right]\end{array}$$

where, *f* is the force vector dependent on time and
*g* is the vector of internal forces at the interface.

Two interfaced components share a set of nodes in the global finite element mesh
*q*: the subset *N _{1}* of nodes from
the first component coincides with the subset

The displacements

*q*at the shared nodes are the same for both components.$$q\left({N}_{1}\right)=q\left({N}_{2}\right)$$

The forces

*g*one component exerts on the other are opposite (by the action/reaction principle).

This relation can be summarized as:

$$M\text{}\ddot{q}+C\text{}\dot{q}+K\text{}q=B\text{}u+g,\text{}H\text{}q=0,\text{}g=-{H}^{T}\lambda $$

where, *H* is a localisation matrix with entries 0, 1, or
-1. The equation *Hq = 0* is equivalent to
*q(N _{1}) = q(N_{2})*, and the
equation

$$\begin{array}{l}\left[\begin{array}{cc}M& 0\\ 0& 0\end{array}\right]\left[\begin{array}{c}\ddot{q}\\ \ddot{\lambda}\end{array}\right]+\left[\begin{array}{cc}C& 0\\ 0& 0\end{array}\right]\left[\begin{array}{c}\dot{q}\\ \dot{\lambda}\end{array}\right]+\left[\begin{array}{cc}K& {H}^{T}\\ H& 0\end{array}\right]\left[\begin{array}{c}q\\ \lambda \end{array}\right]=\left[\begin{array}{c}B\\ 0\end{array}\right]u\\ y=\left[\begin{array}{cc}F& 0\end{array}\right]\left[\begin{array}{c}q\\ \lambda \end{array}\right]+\left[\begin{array}{cc}G& 0\end{array}\right]\left[\begin{array}{c}\dot{q}\\ \dot{\lambda}\end{array}\right]+Du\end{array}$$

This DAE model is called the *dual assembly* model of
the overall structure. While the principle was explained for two components, this model can
accommodate multiple interfaces, including interfaces involving more than two
components.

**Nonrigid interface**

In non-rigid interfaces, the displacements
*q _{1}(N_{1})* and

$$\lambda \text{}=\text{}{K}_{i}\delta +{C}_{i}\dot{\delta},\delta \triangleq Hq={q}_{1}\left({N}_{1}\right)-{q}_{2}\left({N}_{2}\right)$$

This models spring-damper-like connections between nodes
*N _{1}* in the first component and nodes

$$M\text{}\ddot{q}+\left(C+{H}^{T}{C}_{i}H\right)\dot{q}+\left(K+{H}^{T}{K}_{i}H\right)q=0,\text{}y=Fq+G\dot{q}+Du$$

This is the set of the *primal-assembly* equations for non-rigid
coupling form that remains symmetric when the uncoupled model is symmetric. A drawback of this
form is that the coupling terms $${H}^{T}{C}_{i}H$$ and $${H}^{T}{K}_{i}H$$ may cause fill-in. To avoid this, `interface`

instead
constructs the dual-assembly form:

$$\left[\begin{array}{ccc}M& 0& 0\\ 0& 0& 0\\ 0& 0& 0\end{array}\right]\left[\begin{array}{c}\ddot{q}\\ \ddot{\delta}\\ \ddot{\lambda}\end{array}\right]+\left[\begin{array}{ccc}C& 0& 0\\ 0& {C}_{i}& 0\\ 0& 0& 0\end{array}\right]\left[\begin{array}{c}\dot{q}\\ \dot{\delta}\\ \dot{\lambda}\end{array}\right]+\left[\begin{array}{ccc}K& 0& {H}^{T}\\ 0& {K}_{i}& -I\\ H& -I& 0\end{array}\right]\left[\begin{array}{c}q\\ \delta \\ \lambda \end{array}\right]=\left[\begin{array}{c}B\\ 0\\ 0\end{array}\right]u$$