# Analysis and Algorithm Manual
# Part 7 Contact Analysis
# Chapter 1. Static Contac Analysis
# Chapter 1. Static Contact Analysis
# 1-1 개요
접촉해석(contact analysis)은 공간상의 두 물체가 서로 맞닿을 수는 있으나, 관통할 수 없다는 가정에 따라 해석을 수행하는 것이다. 접촉의 종류에는 일반접촉(general contact) 혹은 접합접촉(weld contact) 해석 등 다양한 종류가 있을 수있으며, 이를 해석적으로 고려하기 위해서는 비선형해석을 수행하여야 한다.
공간상에서 물체 A와 B가 서로 접촉할 가능성이 있는 경우, 물체 A를 주물체(master body), 물체 B를 종속물체(slave body)로 정의한다. 알고리즘 상에서는주물체/종속물체의 개념은 서로 뒤바뀌어도 상관없다. 그러나 수치해석에서는 주물체와 종속물체를 선택할 때에 강체, 상대적으로 밀도나 강성이 큰 물체, 또는 상대적으로 요소가 조밀하지 않는 물체를 주물체로 설정하면 더 나은 결과를 얻을수 있다. 접촉해석에서는 주물체에 접촉하는 절점을 종속절점(slave node), 주물체의 접촉면을 주접촉면(master surface)으로 지정하는 알고리즘을 주로 사용한다midas FEA에서는 접촉에 의한 비선형해석을 위하여 벌칙방법(penalty method)을사용한다. 이 기법은 접촉면과 그 면을 관통하는 절점 사이에 관통을 방지하기 위한 벌칙 스프링(penalty spring)을 사용하는 방법이다. 이 방법은 구현하기가 쉬우며, 동해석의 경우에 시간 증분에 영향을 받지 않는 장점이 있다.
# 1-2 접촉 검색(Contact search)
접촉해석의 과정에서 접촉이 발생할 위치를 미리 알 수 없기 때문에 접촉검색을실행하여야 한다. midas FEA는 접촉검색(contact search)을 위하여, 다음과 같은세 단계의 검색을 수행한다.
(1) 전역검색(global search): 종속절점에 가장 가까운 주절점을 검색하는 단계이며, 해석의 효율을 위하여 버켓분류(bucket sort) 알고리즘을 사용한다.
(2) 국부검색(local search): 주절점에 연결되어 있는 접촉면(contact surface) 중에서 종속절점과 가장 가까운 접촉면을 검색한다.
(3) 접촉점 검색(contact search): 주접촉면 위에서 종속절점에 가장 가까운 접촉점(contact point)을 계산한다.
# 1-2-1. 전역검색
전역검색을 위해서는 접촉의 가능성이 있는 N 개의 절점들을 대상으로 가장 가까운 절점을 찾기 위하여, 다음 식과 같은 계산을 N −1번 실행하여야 한다.
$$
l ^ {2} = \left(x _ {i} - x _ {j}\right) ^ {2} + \left(y _ {i} - y _ {j}\right) ^ {2} + \left(z _ {i} - z _ {j}\right) ^ {2} \tag {1.2.1}
$$
따라서 N N( ) −1 번 계산을 수행해야 하기 때문에 검색이 실제 해석 시간의 대부분을 차지할 수도 있다. 따라서 midas FEA에서는 효율적인 검색을 위해 버켓분류알고리즘을 사용한다.
버켓분류 알고리즘은 절점들을 몇 개의 그룹(bucket)으로 분류하고, 가장 가까운그룹들끼리만 거리를 계산하는 방법이다. 예를 들면 1차원 해석일 경우에는 검색하여야 하는 그룹의 개수가 자신과 좌우에 인접한 그룹을 포함해서 총 3개이다. 이와 유사한 방법으로 2차원 해석의 경우 9개의 그룹, 3차원 해석의 경우 27개의 그룹을 검색하여야 한다. 그러므로 요구되는 계산량은 각각 다음과 같다.
$$
N \left(\frac {3 N}{N B _ {x}} - 1\right), \quad N \left(\frac {9 N}{N B _ {x} \cdot N B _ {y}} - 1\right), \quad N \left(\frac {2 7 N}{N B _ {x} \cdot N B _ {y} \cdot N B _ {z}} - 1\right) \tag {1.2.2}
$$
여기서,
$N B _ { x } , N B _ { y } , N B _ { z } \quad \mathrm { ~ : ~ x , ~ y ~ , ~ z ~ } \stackrel { \forall \dag } { \sim } \stackrel { \triangledown } { \cong } \ 7 \sharp \widehat { \mp }$
# 1-2-2. 국부검색
3차원해석에서 3차원 요소가 종속절점과 만나게 되는 접촉면은 2차원의 평면이 되며, 이 면이 주접촉면(master surface)으로 정의된다. 국부검색은 종속절점으로부터 가장 가까운 곳에 위치하는 주접촉면을 찾는 과정이다.

text_image
c_{i+1}
x_{sr}
n_s
S
c_i
x_m
Z
Y
X
그림 1.2.1 국부 검색
국부검색을 위하여 그림 1.2.1에서와 같이 종속절점 sn 의 절점벡터 sx 와 주접촉면의 절점벡터 $\mathbf { X } _ { m }$ 는 다음과 같이 나타낼 수 있다.
$$
\mathbf {x} _ {s} = \left\{x _ {s} \quad y _ {s} \quad z _ {s} \right\} ^ {T} \tag {1.2.3}
$$
$$
\mathbf {x} _ {m i} = \left\{x _ {m i} \quad y _ {m i} \quad z _ {m i} \right\} ^ {T} \tag {1.2.4}
$$
여기서, i ( ) =1,2,3,4 는 절점번호를 의미한다. 또한 주접촉면에 포함되어 있는 주절점 $n _ { { \scriptscriptstyle m } }$ 의 절점벡터는 다음과 같이 나타낼 수 있다.
$$
\mathbf {x} _ {m} = \left\{x _ {m} \quad y _ {m} \quad z _ {m} \right\} ^ {T} \tag {1.2.5}
$$
그리고 주절점 $n _ { m }$ 에서부터 종속절점 ns 까지의 벡터 $\mathbf { X } _ { s m }$ 는 다음과 같이 계산된다.
$$
\mathbf {X} _ {s m} = \mathbf {X} _ {s} - \mathbf {X} _ {m} \tag {1.2.6}
$$
주절점과 종속절점을 연결하는 벡터 $\mathbf { x } _ { \scriptscriptstyle s m }$ 을 주접촉면 위에 투영시킨 벡터 s 는 다음 과 산정할 수 있다.
$$
\mathbf {s} = \mathbf {x} _ {s m} - \left(\mathbf {x} _ {s m} \cdot \mathbf {m}\right) \mathbf {m} \tag {1.2.7}
$$
여기서,
$\begin{array}{c} \begin{array}{c} \mathbf { c } _ { i } , \mathbf { c } _ { i + 1 } \quad \quad : \ \overset { \triangledown } \end{ \cong } \ \begin{array} { l } { \underline { { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b } } } } } } } } } } } } } } } } } } } } } } \end{array} \ \begin{array} { l } \underline { { { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b } } } } } } } } } } } } } } } } } } } \end{array} \ \begin{array} { l } { \underline { { { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b } } } } } } } } } } } } } } } } } \end{array} \begin{array} { l } { \underline { { { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b } } } } } } } } } } } } } } } \end{array} \begin{array} { l } { \underline { { { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b } } } } } } } } } } } } } } \end{array} \begin{array} { l } { \underline { { { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b { \ b } } } } } } } } } } } } } \end{array} } } \end{array} } } \end{array}$
$\begin{array} { r } { \textbf { m } \qquad : \mathbf { c } _ { i } , \mathbf { c } _ { i + 1 } \ 0 \nparallel \nleftrightarrow \pm \frac { \mathbf { \ell } _ { \mathbf { \hat { \mathbf { \phi } } } } | \bar { \mathbf { \phi } } _ { \mathbf { \phi } } \ y | } { \mathbf { c } _ { i } \times \mathbf { c } _ { i + 1 } } \ \frac { \mathbf { c } _ { i } \times \mathbf { c } _ { i + 1 } } { \left| \mathbf { c } _ { i } \times \mathbf { c } _ { i + 1 } \right| } } \end{array}$
따라서 다음 식 (1.2.8)을 이용해서 주절점 $n _ { { } _ { m } }$ 주위의 주접촉면 중에서 가장 가까운주접촉면 is 를 찾을 수 있다.
$$
\begin{array}{l} \left(\mathbf {c} _ {i} \times \mathbf {s}\right) \cdot \left(\mathbf {c} _ {i} \times \mathbf {c} _ {i + 1}\right) > 0 \\ \left(\mathbf {c} _ {i} \times \mathbf {s}\right) \cdot \left(\mathbf {s} \times \mathbf {c} _ {i + 1}\right) > 0 \tag {1.2.8} \\ \end{array}
$$
# 1-2-3. 접촉점 검색
midas FEA 에서는 주접촉면이 4절점으로 이루어진 등매개변수로 표현되는 것으로 가정하고, 접촉점 검색을 수행한다.

text_image
n_s
4
η
∂r/∂η
1
∂r/∂ξ
3
x_m
Y
ξ
Z
2
X
그림 1.2.2 접촉 점의 위치
종속절점 $n _ { s }$ 의 절점변위 및 주접촉면 요소의 절점변위는 다음과 같이 나타낼 수있다.
$$
\mathbf {u} _ {s} = \left\{u _ {s} \quad v _ {s} \quad w _ {s} \right\} ^ {T} \tag {1.2.9}
$$
$$
\mathbf {u} _ {m i} = \left\{u _ {m i} \quad v _ {m i} \quad w _ {m i} \right\} ^ {T} \tag {1.2.10}
$$
또한 주접촉면 요소 상의 임의의 점 $n _ { m }$ 에서 절점좌표는 형상함수 ( ) 1, 2,3, 4 N i i =를 이용하여 다음과 같이 나타낼 수 있다.
$$
x _ {m} = \sum_ {i = 1} ^ {4} N _ {i} x _ {m i}, y _ {m} = \sum_ {i = 1} ^ {4} N _ {i} y _ {m i}, z _ {m} = \sum_ {i = 1} ^ {4} N _ {i} z _ {m i} \tag {1.2.11}
$$
또한 주접촉면 요소 상의 임의의 점 $n _ { { } _ { m } }$ 에서 절점좌표는 형상함수 ( ) 1, 2,3, 4 N i i =를 이용하여 다음과 같이 나타낼 수 있다.
$$
\mathbf {X} = \left( \begin{array}{c c c c c} \mathbf {X} _ {s} & \mathbf {X} _ {m 1} & \mathbf {X} _ {m 2} & \mathbf {X} _ {m 3} & \mathbf {X} _ {m 4} \end{array} \right) \tag {1.2.12}
$$
$$
\mathbf {p} = \left( \begin{array}{c c c c c} \mathbf {u} _ {s} & \mathbf {u} _ {m 1} & \mathbf {u} _ {m 2} & \mathbf {u} _ {m 3} & \mathbf {u} _ {m 4} \end{array} \right)
$$
절점변위를 고려한 현재상태에서 벡터 $\mathbf { X } _ { m }$ 와 $\mathbf { X } _ { s m }$ 에 대한 변분은 다음과 같다.
$$
\delta \mathbf {x} _ {m} = \mathbf {x} _ {m, \xi} \delta \xi + \mathbf {x} _ {m, \eta} \delta \eta + \sum_ {i = 1} ^ {4} N _ {i} \mathbf {I} \delta \mathbf {u} _ {m i} \tag {1.2.13}
$$
$$
\delta \mathbf {x} _ {s m} = \delta \mathbf {x} _ {s} - \delta \mathbf {x} _ {m} = \delta \mathbf {u} _ {s} - \left(\mathbf {x} _ {m, \xi} \delta \xi + \mathbf {x} _ {m, \eta} \delta \eta + \sum N _ {i} \mathbf {I} \delta \mathbf {u} _ {i}\right) \tag {1.2.14}
$$
여기서,
$$
\mathbf {x} _ {m, \xi} \quad : \quad \sum_ {i = 1} ^ {4} N _ {i, \xi} \mathbf {x} _ {m i}
$$
$$
\mathbf {x} _ {m, \eta} \quad : \quad \sum_ {i = 1} ^ {4} N _ {i, \eta} \mathbf {x} _ {m i}
$$
따라서 통합벡터를 이용하면 다음과 같이 나타낼 수 있다.
$$
\delta \mathbf {x} _ {m} = \mathbf {x} _ {m, \xi} \delta \xi + \mathbf {x} _ {m, \eta} \delta \eta + \mathbf {C} \delta \mathbf {p} \tag {1.2.15}
$$
$$
\delta \mathbf {x} _ {s m} = \mathbf {F} \delta \mathbf {p} - \left(\mathbf {x} _ {m, \xi} \delta \xi + \mathbf {x} _ {m, \eta} \delta \eta\right) \tag {1.2.16}
$$
여기서,
$$
\mathbf {C} \quad : \left[ \begin{array}{c c c c c} \mathbf {0} & N _ {1} \mathbf {I} & N _ {2} \mathbf {I} & N _ {3} \mathbf {I} & N _ {4} \mathbf {I} \end{array} \right]
$$
$$
\mathbf {F} \quad : \left[ \begin{array}{c c c c c} \mathbf {I} & - N _ {1} \mathbf {I} & - N _ {2} \mathbf {I} & - N _ {3} \mathbf {I} & - N _ {4} \mathbf {I} \end{array} \right]
$$
또한 $\delta \mathbf { x } _ { m }$ 의 ξ , η 에 대한 미분은 다음과 같다.
$$
\delta \mathbf {x} _ {m, \xi} = \mathbf {x} _ {m, \xi \eta} \delta \eta + \mathbf {C} _ {, \xi} \delta \mathbf {p} \tag {1.2.17}
$$
$$
\delta \mathbf {x} _ {m, \eta} = \mathbf {x} _ {m, \xi \eta} \delta \xi + \mathbf {C} _ {, \eta} \delta \mathbf {p} \tag {1.2.18}
$$
종속절점 $n _ { s }$ 로부터 최단거리에 위치하는 주접촉면의 점인 주절점 $n _ { m }$ 의 좌표 $\mathbf { X } _ { m }$
을 알고 있다면, smx 은 m,ξ x 및 m,η x 에 각각 수직이 된다. 따라서 이는 다음과 같이 나타낼 수 있다.
$$
a = \mathbf {x} _ {m, \xi} ^ {T} \mathbf {x} _ {s m} = 0 \tag {1.2.19}
$$
$$
b = \mathbf {x} _ {m, \eta} ^ {T} \mathbf {x} _ {s m} = 0 \tag {1.2.20}
$$
접촉점을 찾기 위해서는 뉴턴 랩슨(Newton-Raphson)법에 따른 반복법을 사용할수 있다. 이를 위하여 변분을 구한다.
$$
\delta a = \mathbf {x} _ {m, \xi} ^ {T} \left[ \mathbf {F} \delta \mathbf {p} - \mathbf {x} _ {m, \xi} \delta \xi - \mathbf {x} _ {m, \eta} \delta \eta \right] + \mathbf {x} _ {s m} ^ {T} \left(\mathbf {x} _ {m, \xi \eta} \delta \eta + \mathbf {C} _ {, \xi} \delta \mathbf {p}\right) \tag {1.2.21}
$$
$$
\delta b = \mathbf {x} _ {m, \eta} ^ {T} \left[ \mathbf {F} \delta \mathbf {p} - \mathbf {x} _ {m, \xi} \delta \xi - \mathbf {x} _ {m, \eta} \delta \eta \right] + \mathbf {x} _ {s m} ^ {T} \left(\mathbf {x} _ {m, \xi \eta} \delta \xi + \mathbf {C} _ {, \eta} \delta \mathbf {p}\right) \tag {1.2.22}
$$
반복계산에 의해서 새로운 좌표 (ξ,η) 를 찾기 위하여 δp 0 = 으로 가정하면, 변분의 결과는 다음과 같다.
$$
\delta a = \mathbf {x} _ {m, \xi} ^ {T} \left[ - \mathbf {x} _ {m, \xi} \delta \xi - \mathbf {x} _ {m, \eta} \delta \eta \right] + \mathbf {x} _ {s m} ^ {T} \left(\mathbf {x} _ {m, \xi \eta} \delta \eta\right) \tag {1.2.23}
$$
$$
\delta b = \mathbf {x} _ {m, \eta} ^ {T} \left[ - \mathbf {x} _ {m, \xi} \delta \xi - \mathbf {x} _ {m, \eta} \delta \eta \right] + \mathbf {x} _ {s m} ^ {T} \left(\mathbf {x} _ {m, \xi \eta} \delta \xi\right) \tag {1.2.24}
$$
따라서 이를 벡터로 나타내면 다음과 같다.
$$
\delta \mathbf {a} = \mathbf {D} \delta \boldsymbol {\xi} \tag {1.2.25}
$$
여기서,
$$
\begin{array}{l} \delta \mathbf {a} \quad : \left\{\delta a \quad \delta b \right\} ^ {T} \\ \mathbf {D} \quad : \left\{- \mathbf {A} ^ {T} \mathbf {A} + \mathbf {x} _ {s m} ^ {T} \mathbf {x} _ {m, \xi \eta} \left[ \begin{array}{c c} 0 & 1 \\ 1 & 0 \end{array} \right] \right\} \\ d \xi \quad : \left\{d \xi d \eta \right\} ^ {T} \\ \mathbf {A} \quad : \left[ \begin{array}{c c} \mathbf {x} _ {m, \xi} & \mathbf {x} _ {m, \eta} \end{array} \right] \\ \end{array}
$$
Truncated Taylor series 를 이용하여 ∆ξ 를 계산하고 (ξ,η) 를 갱신할 수 있다.
$$
\mathbf {a} _ {i + 1} = \mathbf {a} _ {i} + \mathbf {D} \Delta \boldsymbol {\xi} _ {i} = \mathbf {0} \tag {1.2.26}
$$
여기서,
$$
\mathbf {a} _ {i} \qquad \qquad : \quad \left\{\mathbf {X} _ {m, \xi} ^ {T} \mathbf {X} _ {s m} \quad \mathbf {X} _ {m, \eta} ^ {T} \mathbf {X} _ {s m} \right\} _ {i}
$$
종속절점이 주접촉면을 관통하는가를 판별하고, 관통이 발생하는 경우에는 접촉점에 접촉력(contact force)를 작용하게 한다. 이 때 적용되는 힘은 관통한 정도에비례한다. 다음 식에서 $g _ { N }$ 은 종속절점이 주접촉면을 관통하는 거리를 나타낸다.
$$
\mathbf {g} _ {N} = \mathbf {n} ^ {T} \mathbf {x} _ {s m} \tag {1.2.27}
$$
여기서,
$$
\mathbf {n} = \frac {\mathbf {X} _ {s m}}{\left| \mathbf {X} _ {s m} \right|} \quad : g _ {N} \text { 의 방향벡터 }
$$
만약 종속절점 $n _ { s }$ 가 주접촉면 ${ \cal { S } } _ { i } \equiv \equivq$ 관통했다면, 다음 식과 같은 힘을 종속절점과주접촉면 $s _ { i }$ 에 더해준다.
$$
\mathbf {f} _ {s} = - g _ {N} k _ {i} \mathbf {n} _ {i} \tag {1.2.28}
$$
여기서,
$$
k _ {i} = f _ {s i} \frac {K _ {i} A _ {i} ^ {2}}{V _ {i}} \quad : \text { 주접촉면 } s _ {i} \text { 의 강성 벡터 }
$$
$$
K _ {i} \quad : \text { 벌크 계수(bulk modulus) }
$$
$$
A _ {i} \quad : \text { 주접촉면 } s _ {i} \text { 의 면적 }
$$
$$
V _ {i} \quad : \text { 부피 }
$$
$$
f _ {s i} \quad : \text { 비례 계수(기본값은 } 0. 1 \text { 이다.) }
$$