Mobile QR Code QR CODE

Journal of the Korea Concrete Institute

J Korea Inst. Struct. Maint. Insp.
  • Indexed by
  • Korea Citation Index (KCI)

  1. ()
  2. ()



ꡬ쑰해석, λŒ€μš©λŸ‰ ν–‰λ ¬λΆ„ν•΄, 블둝화기법, κ°•μ„±ν–‰λ ¬, μ•Œκ³ λ¦¬μ¦˜, ꡬ쑰해석 ν”„λ‘œκ·Έλž¨
Structural analysis, Massive matrix decomposition, Blocking method, Stiffness matrix, Algorithm, Structural analysis program

1. μ„œ λ‘ 

졜근 μƒμš© ꡬ쑰해석 ν”„λ‘œκ·Έλž¨μ—μ„œ μ œκ³΅ν•˜κ³  μžˆλŠ” κ·Έλž˜ν”½ μΈν„°νŽ˜μ΄μŠ€ (Graphic Interface)κ°€ νŽΈλ¦¬ν•΄μ§μ— 따라 ꡬ쑰해석 λͺ¨ν˜•μ„ μž‘μ„±ν•˜λŠ” λ°©μ‹μ—μ„œ λ§Žμ€ λ³€ν™”κ°€ μΌμ–΄λ‚˜κ³  μžˆλ‹€. 특히, κ³Όκ±°μ—λŠ” ꡬ쑰물의 거동을 잘 λ‚˜νƒ€λ‚Ό 수 μžˆμœΌλ©΄μ„œ λ‹¨μˆœν™” 된 해석λͺ¨ν˜•μ„ μ΄μš©ν•˜μ—¬ ꡬ쑰해석을 μˆ˜ν–‰ν•˜μ˜€μœΌλ‚˜, μ΅œκ·Όμ— λ“€μ–΄ μ„œλŠ” ꡬ쑰물을 μ΅œλŒ€ν•œ μ„Έλ°€ν•˜κ²Œ λͺ¨ν˜•ν™”ν•˜μ—¬ 해석을 μˆ˜ν–‰ν•˜ λŠ” λ°©ν–₯으둜 ꡬ쑰해석 동ν–₯이 λ³€ν™”ν•˜κ³  μžˆλ‹€.

μ΄λŸ¬ν•œ κ²½ν–₯은, ꡬ쑰해석 μ‹œ κ³ λ €ν•΄μ•Ό ν•  절점 수 및 λΆ€μž¬ 수λ₯Ό κΈ°ν•˜κΈ‰μˆ˜μ μœΌλ‘œ μ¦κ°€μ‹œν‚€κ²Œ λ˜μ–΄, 결과적으둜 μƒμš© ꡬ 쑰해석 ν”„λ‘œκ·Έλž¨μ˜ μ•ˆμ •μ μΈ μ—°μ‚° μˆ˜ν–‰μ„ μœ„ν•΄μ„œλŠ” μΌμ‹œμ— λ§Žμ€ μ–‘μ˜ λ©”λͺ¨λ¦¬ (Memory)λ₯Ό ν•„μš”λ‘œ ν•˜λŠ” λ¬Έμ œμ μ„ 일으 ν‚€κ²Œ λ˜μ—ˆλ‹€.

μΌλΆ€μ—μ„œλŠ” 개인용 컴퓨터 (Personal Computer)의 λ©”λͺ¨λ¦¬ μš©λŸ‰μ΄ λΉ„μ•½μ μœΌλ‘œ μ¦κ°€ν•˜κ³  μžˆμœΌλ―€λ‘œ μ΄λŸ¬ν•œ λ¬Έμ œλŠ” ν•΄μ†Œ 될 수 μžˆλŠ” 문제둜 보고 μžˆλ‹€. μ΄λŸ¬ν•œ νŒλ‹¨μ— 따라 이듀은 ν–₯ν›„ κ΅¬μ‘°μ‹€λ¬΄μžλ“€μ΄ λ”μš± μƒμ„Έν•œ ꡬ쑰해석 λͺ¨ν˜•μ„ μž‘μ„±ν•  수 μžˆμ„ 것이며, λ˜ν•œ μ΄λŸ¬ν•œ ꡬ쑰물을 ν•΄μ„ν•˜λŠ”λ° μžˆμ–΄μ„œ μ•„λ¬΄λŸ° μ œμ•½μ„ 받지 μ•Šμ„ κ²ƒμœΌλ‘œ νŒλ‹¨ν•˜κ³  μžˆλ‹€.

κ·ΈλŸ¬λ‚˜ 사싀적인 ꡬ쑰해석 λͺ¨ν˜•ν™” κ²½ν–₯의 μ‹¬ν™”λŠ” κ°€μš©ν•  수 μžˆλŠ” λ©”λͺ¨λ¦¬μ˜ λ”μš± λ§Žμ€ 뢀뢄을 μ „β‹…ν›„μ²˜λ¦¬λ₯Ό μœ„ν•œ κ·Έ λž˜ν”½ μΈν„°νŽ˜μ΄μŠ€μ— ν• λ‹Ήν•˜λ„λ‘ μš”κ΅¬ν•˜κ²Œ 될 것이닀. λ˜ν•œ λ‹€ μ–‘ν•œ ν”„λ‘œκ·Έλž¨λ“€μ„ ν†΅ν•˜μ—¬ μ—¬λŸ¬ 가지 μž‘μ—…μ΄ λ™μ‹œμ— μˆ˜ν–‰λ˜ μ–΄μ•Όν•˜λŠ” ν–₯ν›„μ˜ μ—…λ¬΄ν™˜κ²½μ€ μƒμš© ꡬ쑰해석 ν”„λ‘œκ·Έλž¨μ΄ κ°€ μš©ν•  수 μžˆλŠ” λ©”λͺ¨λ¦¬μ˜ 크기λ₯Ό μ•”λ¬΅μ μœΌλ‘œ μ œν•œν•  μˆ˜λ°–μ— μ—† 을 것이닀.

μ΄λŸ¬ν•œ 이유둜 인해 개인용 컴퓨터λ₯Ό μ΄μš©ν•œ ꡬ쑰해석은 μ œν•œμ μΈ λ©”λͺ¨λ¦¬λ₯Ό μ‚¬μš©ν•˜μ—¬ μ΄λ£¨μ–΄μ§ˆ μˆ˜λ°–μ— μ—†μœΌλ©°, λΆ€μ‘± ν•œ λ©”λͺ¨λ¦¬ κ³΅κ°„μƒμ—μ„œ λŒ€μš©λŸ‰ ν–‰λ ¬μ—°μ‚° μˆ˜ν–‰μ„ μœ„ν•œ 졜적의 방법둠을 μ°ΎλŠ” 것은 μ—¬μ „νžˆ ν•΄κ²°λ˜μ–΄μ•Ό ν•  문제점으둜 인식 되고 μžˆλ‹€.

μ „μˆ λœ λ¬Έμ œμ λ“€μ„ ν•΄κ²°ν•˜κΈ° μœ„ν•œ λ°©λ²•λ“€λ‘œλŠ” 뢀뢄ꡬ쑰법 (Substructuring method) (Przemieniecki, 1963), 병렬연산 (Parallel computing) (Patterson and John, 1998), 블둝화기법 (Blocking method) (Bathe, 1996) λ“± μ—¬λŸ¬ 가지 방법듀이 있으며, 이듀 에 λŒ€ν•΄μ„œλŠ” 여전이 μ—¬λŸ¬ λΆ„μ•Όμ—μ„œ ν™œλ°œνžˆ μ—°κ΅¬λ˜κ³  μžˆλ‹€.

λ³Έ μ—°κ΅¬μ—μ„œλŠ”, μ „μˆ λœ 제 방법듀 쀑 강성행렬을 κ°€μš© κ°€λŠ₯ ν•œ λ©”λͺ¨λ¦¬ λ²”μœ„ λ‚΄μ—μ„œ λͺ‡ 개의 블둝 (Block)으둜 λ‚˜λˆ„κ³ , 개 별 λΈ”λ‘μœΌλ‘œ λ‚˜λˆ„μ–΄μ§„ 강성행렬을 순차적으둜 λ©”λͺ¨λ¦¬μ— μ €μž₯ ν•˜μ—¬ 연산을 μˆ˜ν–‰ν•¨μœΌλ‘œμ¨ 전체 ꡬ쑰물에 λŒ€ν•œ ꡬ쑰해석을 μ›ν™œν•˜κ²Œ μˆ˜ν–‰ν•˜λŠ” 방법에 λŒ€ν•˜μ—¬ μ—°κ΅¬ν•˜κ³  μžˆλ‹€. λ˜ν•œ μ œμ‹œλœ 방법둠을 λ°”νƒ•μœΌλ‘œ μœ ν•œμš”μ†Œν•΄μ„ (Finite Element Analysis) ν”„λ‘œκ·Έλž¨μ„ κ΅¬ν˜„ν•˜μ˜€μœΌλ©°, 예제 검증을 ν†΅ν•˜μ—¬ μ œμ•ˆλœ 방법 둠의 νš¨μœ¨μ„±μ„ κ²€μ¦ν•˜κ³  μžˆλ‹€.

2. 블둝화기법 μ•Œκ³ λ¦¬μ¦˜

컴퓨터 ν”„λ‘œκ·Έλž¨μ„ μ΄μš©ν•œ κ΅¬μ‘°ν•΄μ„μ—μ„œ ν’€μ–΄μ•Όν•  ν‰ν˜•λ°© μ •μ‹μ˜ κ°€μž₯ κ°„λ‹¨ν•œ ν˜•νƒœλŠ” 식 (1)κ³Ό κ°™λ‹€.

(1)
KU = R

μ—¬κΈ°μ„œ, K = κ°•μ„±ν–‰λ ¬ (Stiffness Matrix)

U = λ³€μœ„λ²‘ν„° (Displacement Vector)

R = ν•˜μ€‘λ²‘ν„° (Load Vector)

식 (1)κ³Ό 같은 방정식을 ν’€κΈ° μœ„ν•œ μ»΄ν“¨ν„°ν”„λ‘œκ·Έλž¨μ„ μž‘μ„± ν•  λ•Œ, κ°€μž₯ λ¨Όμ € μˆ˜ν–‰ν•˜μ—¬μ•Ό ν•  μž‘μ—…μ€ 컴퓨터 λ©”λͺ¨λ¦¬μ— K ν–‰λ ¬κ³Ό R 벑터λ₯Ό 올릴 수 μžˆλŠλƒμ˜ 문제λ₯Ό νŒλ‹¨ν•˜λŠ” 것이라 λ³Ό 수 μžˆλ‹€. μ΄λ•Œ 컴퓨터 λ©”λͺ¨λ¦¬κ°€ μΆ©λΆ„ν•˜μ§€ λͺ»ν•˜μ—¬ 이듀 ν–‰ λ ¬κ³Ό 벑터λ₯Ό ν•œ λ²ˆμ— 올릴 수 μ—†λ‹€λ©΄, 이λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•œ 방법을 μ°Ύμ•„μ•Ό ν•˜λŠ” λ¬Έμ œκ°€ λ°œμƒν•œλ‹€. μ΄λŸ¬ν•œ 문제λ₯Ό ν•΄κ²°ν•˜ κΈ° μœ„ν•œ 방법듀은 μ—¬λŸ¬ 가지가 μžˆμ„ 수 μžˆλŠ”λ°, λ³Έ μ—°κ΅¬μ—μ„œ λŠ” 블둝화기법 (Blocking Method)을 μ΄μš©ν•˜μ—¬ 문제λ₯Ό ν•΄κ²° ν•˜κΈ° μœ„ν•œ 방법에 λŒ€ν•΄ μ—°κ΅¬ν•˜κ³  μžˆλ‹€.

블둝화기법을 μ΄μš©ν•˜μ—¬ λŒ€μš©λŸ‰μ˜ λ©”λͺ¨λ¦¬κ°€ μš”κ΅¬λ˜λŠ” 문제 λ₯Ό ν’€κΈ° μœ„ν•œ 과정을 크게 λ‚˜λˆ„μ–΄ 보면 Table 1κ³Ό 같이 정리 될 수 μžˆλ‹€. Table 1μ—μ„œμ˜ 첫 번째 과정은 컴퓨터 ν”„λ‘œκ·Έλž¨ μž‘μ„± μ‹œ μ‚¬μš©λœ ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄ (Programming Language) 와 관련이 μžˆλ‹€. 즉, ꡬ쑰해석 ν”„λ‘œκ·Έλž¨μ΄ μ‹€ν–‰ (Run)λ˜λŠ” μ‹œμ μ—μ„œ μ–Όλ§ˆλ‚˜ 큰 λ©”λͺ¨λ¦¬λ₯Ό μ‚¬μš©ν•  수 μžˆλŠ”μ§€λ₯Ό μ•Œμ•„λ‚΄κΈ° μœ„ν•œ 방법은 ν”„λ‘œκ·Έλž˜λ° μ»΄νŒŒμΌλŸ¬μ— 따라 쑰끔씩 λ‹€λ₯΄λ―€λ‘œ 각자의 ν˜•νŽΈμ— 맞게 μ²˜λ¦¬ν•˜λ©΄ λœλ‹€. λ³Έ μ—°κ΅¬μ—μ„œ μ‚¬μš©ν•œ 인 ν…”ν¬νŠΈλž€ (Intel Fortran)의 κ²½μš°μ—λŠ” 포인터 (Pointer)와 λ©” λͺ¨λ¦¬ ν• λ‹Ή (Allocate) λ¬Έμž₯을 μ΄μš©ν•˜λ©΄, 컴퓨터 ν”„λ‘œκ·Έλž¨μ΄ μ‹€ ν–‰λ˜λŠ” μ‹œμ μ—μ„œ μ‚¬μš©κ°€λŠ₯ν•œ λ©”λͺ¨λ¦¬μ˜ 크기λ₯Ό μ •ν•  수 μžˆλ‹€.

λ”°λΌμ„œ, λ³Έ μ—°κ΅¬μ—μ„œλŠ” Table 1에 λ‚˜νƒ€λ‚œ κ³Όμ • 쀑 두 번째 및 μ„Έ 번째 방법에 λŒ€ν•΄μ„œ μ—°κ΅¬ν•˜κ³  μžˆλ‹€.

Table 1.

Process of Blocking Method

Step Contents
1 calculation of memory capacity
2 calculation of number of blocks and storage of information about coupling blocks
3 matrix decomposition per block and solution of simultaneous equations

2.1. ν–‰λ ¬λΆ„ν•΄λ²•μ˜ 뢄석

λ³Έ μ—°κ΅¬μ—μ„œλŠ”, ν–‰λ ¬λΆ„ν•΄ (Matrix Decomposition)λ₯Ό μœ„ν•œ 제 기법 쀑 κ°€μš°μŠ€ μ†Œκ±°λ²• (Gauss Elimination Method) (Bathe, 1996)을 μ‘μš©ν•œ LDLT법에 λŒ€ν•˜μ—¬ μ—°κ΅¬ν•˜κ³  μžˆλ‹€.

LDLT법을 μ΄μš©ν•˜μ—¬ ν‰ν˜•λ°©μ •μ‹μ˜ ν•΄λ₯Ό κ΅¬ν•˜λŠ” 과정은 식 (2a)~식 (2d)와 κ°™λ‹€.

(2a)
KU = LDL T U = R
(2b)
LV = R
(2c)
DL T U = V
(2d)
L T U = D - 1 V

μ—¬κΈ°μ„œ, L = ν•˜λΆ€μ‚Όκ°ν–‰λ ¬ (Lower Triangle Matrix)

LT = 상뢀삼각행렬 (Upper Triangle Matrix)

D = λŒ€κ°ν–‰λ ¬ (Diagonal Matrix)

LDLT법을 μ΄μš©ν•œ ꡬ쑰해석 ν”„λ‘œκ·Έλž¨λ“€μ€ 일반적으둜 λŒ€κ° ν–‰λ ¬ D와 상뢀삼각행렬 LTλ₯Ό κ΅¬ν•œ λ‹€μŒ, 이λ₯Ό μ΄μš©ν•˜μ—¬ 평 ν˜•λ°©μ •μ‹μ˜ ν•΄λ₯Ό κ΅¬ν•˜λŠ” 방식을 μ±„νƒν•˜κ³  μžˆλ‹€.

μ—΄μ†Œκ±°λ²• (Active Column Solver) (Farhat and Wilson, 1988) 을 μ΄μš©ν•  경우, 강성행렬은 Fig. 1κ³Ό 같이 λ©”λͺ¨λ¦¬μ— μ €μž₯된 λ‹€. 이와 같이 μ €μž₯된 강성행렬에 λŒ€ν•˜μ—¬ LDLT법을 μ΄μš©ν•œ ν–‰λ ¬λΆ„ν•΄λ₯Ό μˆ˜ν–‰ν•˜λ©΄, Fig. 2와 같아진닀. Fig. 2에 λ‚˜νƒ€λ‚œ lij, djjλ₯Ό κ΅¬ν•˜κΈ° μœ„ν•œ μ•Œκ³ λ¦¬μ¦˜μ„ μ •λ¦¬ν•˜λ©΄, Table 2와 κ°™λ‹€. μ—¬κΈ°μ„œ μ£Όλͺ©ν•΄μ•Ό ν•  점은, 식 (4a)μ—μ„œ λ³Ό 수 μžˆλŠ” 바와 κ°™ 이 j-μžμœ λ„μ—μ„œ lij κ΅¬ν•˜κΈ° μœ„ν•΄μ„œλŠ” μ€‘κ°„λ³€μˆ˜ gijκ°€ ν•„μš” ν•œλ°, 이 λ•Œ 이전 λ‹¨κ³„μ—μ„œ κ³„μ‚°λœ lriκ°€ ν•„μš”ν•˜λ‹€λŠ” 점이닀. μ΄λŸ¬ν•œ μ‚¬μ‹€μ˜ 의미λ₯Ό λͺ…ν™•νžˆ νŒŒμ•…ν•΄λ³΄κΈ° μœ„ν•΄μ„œλŠ”, Fig. 1 κ³Ό 같이 μ €μž₯된 강성행렬을 LDLT법을 μ΄μš©ν•˜μ—¬ λΆ„ν•΄ν•˜κΈ° μœ„ ν•œ 과정을 뢄석해볼 ν•„μš”κ°€ μžˆλ‹€.

Fig 1.

Storage of Stiffness Matrix

JKSMI-18-30_F1.jpg
Fig 2.

Stiffness Matrix Decomposition by LDLT Method

JKSMI-18-30_F2.jpg
Table 2.

Algorithm for the Calculation of the Elements lij, dij in the j-th Column

Step Calculation
1 β€’calculation of 1st column(j=1)
d11 = k11
2 β€’ after 2nd column(j=2, 3, 4, …, n)
1) calculation of intermediate quantity gij
(3a)*
g m j , j = k m j , j
(3b)*
g ij = k ij - βˆ‘ r = m m i - 1 l ri g rj , i = mj + 1,...,j - 1
2) calculation of lij and djj
(4a)
l ij = g ij d ij , i = m j,...,j - 1
(4b)
d jj = k jj βˆ’ βˆ‘ r = m j j βˆ’ 1 l rj g rj

* mj = row number of the first nonzero element in column j

mm= max{mi, mj}

mi = skyline of i-th d.o.f

λ¨Όμ € Fig. 1κ³Ό 같이 μ €μž₯된 강성행렬에 λŒ€ν•œ 슀카이라인 (Skyline)을 ꡬ해보면, m1=1, m2=1, m3=3, m4=1, m5=5, m6=4, …, mn=n-4+1이 λœλ‹€.

μ—¬κΈ°μ„œ μžμœ λ„ 2 (2μ—΄)에 λŒ€ν•œ l12λ₯Ό κ΅¬ν•˜κΈ° μœ„ν•΄μ„œλŠ” 식 (4a)μ—μ„œμ™€ 같이 g12κ°€ ν•„μš”ν•œλ°, 이 값은 식 (3a) λ˜λŠ” 식 (3b)λ₯Ό μ΄μš©ν•˜μ—¬ ꡬ할 수 μžˆλ‹€. 이 경우 m1=1, m2=1μ΄λ―€λ‘œ mm = max (m1, m2)= 1κ°€ λœλ‹€. λ”°λΌμ„œ g12λŠ” 식 (3a)λ‘œλΆ€ν„° λ°”λ‘œ ꡬ할 수 있으며, 식 (3b)λŠ” 계산할 ν•„μš”κ°€ μ—†λ‹€. 이와 같이 g12λ₯Ό κ΅¬ν•œ ν›„, 식 (4a)와 식 (4b)λ₯Ό μ΄μš©ν•˜μ—¬ l12λ₯Ό ꡬ ν•˜λ©΄ λœλ‹€. μžμœ λ„ 3 (3μ—΄)의 경우,l13κ³Ό l23에 ν•΄λ‹Ήν•˜λŠ” κ°• μ„±ν–‰λ ¬μ˜ 항듀이 슀카이라인 밖에 μ‘΄μž¬ν•˜λ―€λ‘œ 이듀을 계산 ν•  ν•„μš”κ°€ μ—†λ‹€. λ”°λΌμ„œ 식 (4b)λ‘œλΆ€ν„° d33 = k33 을 λ°”λ‘œ ꡬ ν•  수 μžˆλ‹€.

μžμœ λ„ 4 (4μ—΄)의 κ²½μš°μ—λŠ” m4=1μ΄λ―€λ‘œ l14~l34 κ΅¬ν•˜μ—¬ μ•Ό 식 (4b)λ‘œλΆ€ν„° d44λ₯Ό ꡬ할 수 μžˆλ‹€. l14 l34 κ΅¬ν•˜κΈ° μœ„ν•œ 과정을 정리해보면 Table 3κ³Ό κ°™λ‹€.

Table 3.

Calculation of the Elements l14, l24, l34

Step Calculation
1
β€’ calculation of l14
m1 = 1, m4 =1 ->mm = max(m1,m4) = 1
g 14 = k 14 , = g 14 d 11
2 β€’ calculation of l24
m2 = 1, m4 =1 ->mm = max(m2,m4) = 1
g 14 = k 14 >, g 24 = k 24 - l 12 g 14
l 24 = g 24 d 22
3 β€’ calculation of l34
m3 = 1, m4 =1 ->mm = max(m3,m4) = 3
g 34 = k 34
l 34 = g 34 d 33
4 β€’ calculation of d44
d 44 = k 44 - βˆ‘ r = 1 3 l r4 g r4 = k 44 - l 14 g 14 + l 24 g 24 + l 34 g 34

Table 3μœΌλ‘œλΆ€ν„° μ•Œ 수 μžˆλŠ” 바와 같이 g24 κ³„μ‚°ν•˜λŠ” κ³Ό μ •μ—μ„œ l12κ°€ ν•„μš”ν•œλ°, 이 값은 μžμœ λ„ 2 (2μ—΄)λ₯Ό μ†Œκ±°ν•˜λŠ” κ³Όμ • 쀑에 κ³„μ‚°λ˜λŠ” 값이닀. 이와 같이 g24 계산할 λ•Œ l12 κ°€ ν•„μš”ν•˜κ²Œ 된 μ΄μœ λŠ” μžμœ λ„ 2와 μžμœ λ„ 4λŠ” μ„œλ‘œ μ—°κ΄€μ„± (Coupled Simultaneous Equation)을 가지고 있기 λ•Œλ¬Έμ΄λ‹€. 컴퓨터 ν”„λ‘œκ·Έλž¨μ—μ„œλŠ” 일반적으둜 Fig. 1κ³Ό 같은 행렬을 일차원배열 (One Dimensional Array)에 μ €μž₯ν•œ ν›„ μ†Œκ±°λ₯Ό ν•œλ‹€. 이와 같이 μ €μž₯ν•  경우, Fig. 1κ³Ό 같은 강성행렬은 Fig. 3κ³Ό 같이 μΌμ°¨μ›λ°°μ—΄λ‘œ μ €μž₯될 것이닀.

Fig 3.

Array Storing elements of K

JKSMI-18-30_F3.jpg

ꡬ쑰해석 ν”„λ‘œκ·Έλž¨μ΄ μ‹€ν–‰λ˜λŠ” μ‹œμ μ—μ„œ, Table 1의 절차 에 따라 μ‚¬μš©κ°€λŠ₯ν•œ λ©”λͺ¨λ¦¬λ₯Ό κ³„μ‚°ν•˜μ—¬ λ³΄μ•˜λ”λ‹ˆ 일차원배 열을 4개 밖에 μ‚¬μš©ν•  수 μ—†λŠ” 상황을 κ°€μ •ν•΄ 보자. 이 경우 μ—λŠ” (k11, k22, k12, k33), (k44, k34, k24, k14), (k55, k66, k56, k46) λ“±κ³Ό 같이 블둝 (Block)으둜 λ‚˜λˆ„μ–΄ 이듀 값을 파일 (File) 등에 써놓은 λ‹€μŒ, ν•„μš”ν•œ μ‹œμ μ—μ„œ 각 λΈ”λ‘μ˜ 값을 νŒŒμΌλ‘œλΆ€ν„° 읽은 ν›„ 이듀 값을 A(1)~A(4)에 μ €μž₯ν•œ λ‹€μŒ μ—΄ μ†Œκ±°λ₯Ό μˆ˜ν–‰ν•˜μ—¬μ•Ό ν•œλ‹€. 이와 같이 λΈ”λ‘λ‹¨μœ„λ‘œ μ—΄μ†Œκ±°λ₯Ό 진 ν–‰ν•  경우, 두 번째 블둝은 첫 번째 블둝과 연관이 μžˆμœΌλ―€λ‘œ 첫 번째 λΈ”λ‘μ—μ„œ μ‚°μ •λœ lijκ°€ ν•„μš”ν•˜λ©°, 이에 λŒ€ν•œ 정보λ₯Ό 사전에 μ•Œκ³  μžˆμ–΄μ•Ό ν•œλ‹€. 즉, μ΄λŠ” νŠΉμ • 블둝에 λŒ€ν•œ μ—΄μ†Œκ±° λ₯Ό μ‹œμž‘ν•˜κΈ° 전에 이 블둝이 μ–΄λŠ 블둝과 μ—°κ΄€λ˜μ–΄ μžˆλŠ”μ§€ 사전에 μ•Œκ³  μžˆμ–΄μ•Ό ν•œλ‹€λŠ” 사싀을 말해주고 μžˆλ‹€.

μ „μˆ λœ 사항듀을 μ’…ν•©μ μœΌλ‘œ λΆ„μ„ν•˜μ—¬ μ •λ¦¬ν•˜λ©΄, 행렬을 λΈ”λ‘μœΌλ‘œ λ‚˜λˆˆ λ‹€μŒ 여기에 LDLT법을 μ μš©ν•˜μ—¬ 행렬을 λΆ„ν•΄ ν•˜κΈ° μœ„ν•΄μ„œλŠ” λ‹€μŒκ³Ό 같은 사항듀을 ν•΅μ‹¬μ μœΌλ‘œ μ²˜λ¦¬ν•΄μ•Ό 함을 μ•Œ 수 μžˆλ‹€. λ¨Όμ € μ‚¬μš©κ°€λŠ₯ν•œ λ©”λͺ¨λ¦¬λ₯Ό κ³„μ‚°ν•œ ν›„, 이λ₯Ό 근거둜 행렬을 λΈ”λ‘μœΌλ‘œ λ‚˜λˆˆλ‹€. λ‘˜μ§Έ, νŠΉμ • 블둝과 μ—°κ΄€μ„± 을 가지고 μžˆλŠ” 첫 번째 블둝을 μ•Œμ•„λ‚Έλ‹€. λ§ˆμ§€λ§‰μœΌλ‘œ 각각 의 블둝에 λŒ€ν•΄ 순차적으둜 λΆ„ν•΄λ₯Ό μ§„ν–‰ν•œλ‹€.

2.2. 블둝화 및 ν–‰λ ¬μ˜ λΆ„ν•΄

ν–‰λ ¬λΆ„ν•΄ μ‹œ μš”κ΅¬λ˜λŠ” 항듀은 λŒ€κ°ν•­κ³Ό 상뢀삼각행렬에 μœ„μΉ˜ν•œ 유효 값듀이닀. 컴퓨터 ν”„λ‘œκ·Έλž¨μ—μ„œλŠ” 이 값듀을 λ©” λͺ¨λ¦¬μ— μ €μž₯ν•œ ν›„ μ›ν•˜λŠ” 계산을 μˆ˜ν–‰ν•˜λŠ” 것이 μΌλ°˜μ μ΄λ‹€. 만일 μ‚¬μš© κ°€λŠ₯ν•œ λ©”λͺ¨λ¦¬κ°€ λΆ€μ‘±ν•˜μ—¬ ν•„μš”ν•œ 데이터λ₯Ό ν•œ 번 에 λ©”λͺ¨λ¦¬μ— μ €μž₯ν•˜μ§€ λͺ»ν•˜λŠ” κ²½μš°κ°€ λ°œμƒν•œλ‹€λ©΄, 이λ₯Ό ν•΄κ²° ν•  수 μžˆλŠ” λ°©μ•ˆμ„ 생각해보아야 ν•œλ‹€.

μ—΄μ†Œκ±°λ²• (Active Column Solver)을 μ΄μš©ν•˜μ—¬ μ„ ν˜•μ‹œμŠ€ν…œ 의 ν•΄λ₯Ό κ΅¬ν•˜λŠ” λ¬Έμ œμ—μ„œλŠ”, νŠΉμ • 블둝에 λͺ‡ 개의 열을 λ°°λ‹Ή ν•˜μ—¬μ•Ό μ‚¬μš©κ°€λŠ₯ν•œ 배열을 μ΄μš©ν•  수 μžˆλŠ”κ°€μ˜ 문제일 것이 λ‹€. 이 λ¬Έμ œλŠ” 행렬을 λͺ‡ 개의 λΈ”λ‘μœΌλ‘œ λΆ„ν• ν•˜μ—¬μ•Ό ν•˜λŠ”κ°€ 의 λ¬Έμ œμ™€ κ°™λ‹€. 행렬을 μΌμ°¨μ›λ°°μ—΄λ‘œ μ €μž₯ν•  λ•Œ λŒ€κ°ν•­μ΄ μ €μž₯λ˜λŠ” μœ„μΉ˜μ— λŒ€ν•œ 정보가 μžˆλ‹€λ©΄, 이 λ¬Έμ œλŠ” μ‰½κ²Œ ν•΄κ²° 될 수 μžˆλŠ”λ°, κ·Έ λ‚΄μš©μ€ Table 4와 κ°™λ‹€.

Table 4.

Algorithm for the Calculation of the Number of Blocks

Step Calculation

1 β€’ execution of Step 2 ~ 3 from d.o.f 2 to d.o.f ndof

2 β€’ calculation of number of elements stored
n stor 1 = narr - ipdia + n stor 0 + 1

3 β€’ if n stor 1 > 0, go to Step 1
β€’ if n stor 1 < 0, calculate the number of columns and rows in
present block

* n dof = number of d.o.f

n 1 stor = number of elements stored in random block

n arr = number of useable array

ip dia = array number of diagonal element in i-th d.o.f

n 0 stor = number of elements stored up to former block

Table 4의 λ‚΄μš©μ„ Fig. 1, Fig. 3을 μ€‘μ‹¬μœΌλ‘œ 생각해 보면 λ‹€μŒκ³Ό κ°™λ‹€. λ¨Όμ € μ‚¬μš©κ°€λŠ₯ν•œ λ°°μ—΄μ˜ 개수λ₯Ό narr = 4 라 κ°€ μ •ν•˜λ©΄, μžμœ λ„ 3μ—μ„œλŠ” n1stor = 0 κ°€ λ˜λ―€λ‘œ, μžμœ λ„ 1~자유 도 3κΉŒμ§€λ₯Ό ν•˜λ‚˜μ˜ λΈ”λ‘μœΌλ‘œ μ§€μ •ν•˜μ—¬ μ €μž₯ν•  수 μžˆλ‹€λŠ” 의 λ―Έκ°€ λœλ‹€. μžμœ λ„ 4μ—μ„œλŠ” n1stor = -4 κ°€ λ˜λ―€λ‘œ, μ΄λŠ” 자유 도 1~μžμœ λ„ 3κΉŒμ§€λ₯Ό ν•˜λ‚˜μ˜ λΈ”λ‘μœΌλ‘œ 지정해 놓고 μžμœ λ„ 4λΆ€ν„° μƒˆλ‘œμš΄ λΈ”λ‘μœΌλ‘œ μ§€μ •ν•˜μ—¬μ•Ό 함을 μ˜λ―Έν•˜κ²Œ λœλ‹€. μ „ μˆ ν•œ 바와 같이 계산을 μˆ˜ν–‰ν•˜λ©΄ μ‚¬μš©κ°€λŠ₯ν•œ λ°°μ—΄μ˜ 수λ₯Ό κ³  λ €ν•˜μ—¬ 행렬을 λΈ”λ‘μœΌλ‘œ λΆ„ν• ν•  수 μžˆλ‹€.

행렬을 λΈ”λ‘μœΌλ‘œ λΆ„ν• ν•œ μ΄ν›„μ—λŠ” νŠΉμ • 블둝과 μ—°κ²°λœ (Coupling) 첫 번째 블둝을 μ°Ύμ•„μ•Ό ν•˜λŠ”λ°, 이λ₯Ό μ°ΎκΈ° μœ„ν•œ 방법을 λ…Όμ˜ ν•˜κΈ°μ— μ•žμ„œ Table 2μ—μ„œ μ œμ‹œλœ 식 (3a)~식 (3b)λ₯Ό 뢄석해 보면 λ‹€μŒκ³Ό κ°™λ‹€. λ¨Όμ € 식 (3a)의 μ˜λ―ΈλŠ”, μžμœ λ„ jμ—μ„œ 처음 으둜 0이 μ•„λ‹Œ 값을 κ°€μ Έλ‹€κ°€ gmj,j 에 λŒ€μž…ν•˜λ©΄ λ˜λ―€λ‘œ 이 κ°’ 을 κ³„μ‚°ν•˜λŠ”λ° 이전 μžμœ λ„λŠ” 상관이 μ—†λ‹€λŠ” 것을 λœ»ν•œλ‹€.

식 (3b)λ₯Ό λΆ„μ„ν•˜μ—¬ 보면, gij 계산할 λ•Œ μžμœ λ„ j와 μ—°κ²° 된 첫 번째 μžμœ λ„λŠ” j-mj-2 와 관련이 μžˆμŒμ„ μ˜λ―Έν•œλ‹€. μ΄λ‘œλΆ€ν„° μžμœ λ„ j와 μ—°κ²°λœ 첫 번째 μžμœ λ„λŠ” 식 (5)와 같이 계산될 수 μžˆλ‹€.

(5)
i c = j - m j - 2 > 0

μ—¬κΈ°μ„œ, j = j-μžμœ λ„

mj = j-μžμœ λ„μ˜ 슀카이라인 (Skyline)

μ „μˆ ν•œ 바와 같은 κ°œλ…μ„ μ‚¬μš©ν•˜λ©΄ λΈ”λ‘μœΌλ‘œ λΆ„ν• λœ ν–‰λ ¬ μ—μ„œ 블둝 μ‚¬μ΄μ˜ μ—°κ²° 관계λ₯Ό 계산할 수 μžˆλŠ”λ°, 이λ₯Ό μˆ˜ν–‰ ν•˜κΈ° μœ„ν•œ μ•Œκ³ λ¦¬μ¦˜μ„ μž‘μ„±ν•˜λ©΄ Table 5와 κ°™λ‹€.

Table 5.

Algorithm for the Calculation of the Coupling Blocks

Step Calculation

1 β€’ execution of Step 2 ~ 3 from block 2 to block nb

2 β€’ calculation of maximum ic in specific block
ic,max = max (ni+1 - ni - i - 1), i=1, 2, …., nc

3 β€’ if ic,max ≀ 0, go to Step 1
β€’ if ic,max > 0, evaluate the first coupled block up to ic,max ≀ 0
ic = nib -1; ic,max = ic,max - nic; ic nib - 1

* n b = number of blocks

n i = array number of diagonal element in column I

nic = number of columns in present block

nib = present block number

μ•žμ—μ„œ μ „μˆ ν•œ 바와 같은 방법듀을 μ΄μš©ν•˜μ—¬ 강성행렬을 ν•„μš”ν•œ 만큼 λΈ”λ‘μœΌλ‘œ λ‚˜λˆ„κ³ , 각각의 블둝과 μ—°κ²°λœ 첫 번 μ§Έ 블둝에 λŒ€ν•œ 정보λ₯Ό μ•Œμ•„λƒˆλ‹€λ©΄, μ΄λŸ¬ν•œ 정보λ₯Ό μ΄μš©ν•˜μ—¬ 강성행렬을 λΆ„ν•΄ν•˜κΈ° μœ„ν•΄μ„œλŠ” 파일 (File)을 μ΄μš©ν•˜μ—¬μ•Ό ν•œ λ‹€. 즉, 강성행렬을 λΈ”λ‘μœΌλ‘œ λΆ„ν• ν•΄μ•Όν•  ν•„μš”μ„±μ€ μ‚¬μš©κ°€λŠ₯ ν•œ λ©”λͺ¨λ¦¬κ°€ μž‘μ•„μ‘Œμ„ λ•Œ λ°œμƒν•˜λŠ” κ²ƒμ΄λ―€λ‘œ, 강성행렬을 λΆ„ ν•΄ν•˜λŠ” κ³Όμ •μ—μ„œ 파일이 μ‚¬μš©λ˜μ–΄μ•Ό ν•œλ‹€.

νŒŒμΌλ‘œλΆ€ν„° 블둝 λ‹¨μœ„λ‘œ 강성행렬을 읽은 ν›„, 이λ₯Ό LDLT 법을 μ΄μš©ν•˜μ—¬ λΆ„ν•΄ν•˜κΈ° μœ„ν•œ 과정은 일반적인 행렬뢄해법 κ³Ό κ°™λ‹€.

3. 해석 예

2μž₯μ—μ„œ μ „μˆ ν•œ ν–‰λ ¬μ˜ 블둝화기법 및 ν–‰λ ¬λΆ„ν•΄λ²•μ˜ μ •ν•©μ„± 을 평가해보기 μœ„ν•˜μ—¬, λ³Έ μ—°κ΅¬μ—μ„œλŠ” 컴퓨터 ν”„λ‘œκ·Έλž¨ (sNs) 을 μž‘μ„±ν•˜κ³  이λ₯Ό λ‹€μ–‘ν•œ μ˜ˆμ œμ— μ μš©ν•˜μ—¬ ꡬ쑰해석을 μˆ˜ν–‰ ν•˜μ˜€λ‹€.

3.1. 해석 정확도 평가

ꡬ쑰물 섀계 μ‹œ κ°€μž₯ 일반적으둜 μ‚¬μš©λ˜λŠ” 트러슀 (Truss), 골쑰 (Frame) ꡬ쑰물에 λŒ€ν•˜μ—¬ μ œμ‹œλœ 블둝화기법 μ•Œκ³ λ¦¬μ¦˜ 이 적용된 μ„ ν˜•μ •μ ν•΄μ„μ„ μˆ˜ν–‰ν•˜κ³  이λ₯Ό μˆ˜κ³„μ‚° (Manual) κ³Ό λΉ„κ΅ν•˜μ˜€λ‹€. 이 λ•Œ, κ°€μš© κ°€λŠ₯ν•œ λ©”λͺ¨λ¦¬μ˜ 크기λ₯Ό 각 해석 μ˜ˆμ œλ§ˆλ‹€ μž„μ˜λ‘œ μ„€μ •ν•˜μ—¬ λ‹€μ–‘ν•œ λΈ”λ‘μˆ˜ μƒμ—μ„œ 해석이 수 행될 수 μžˆλ„λ‘ ν•˜μ˜€λ‹€.

3.1.1. 트러슀 ꡬ쑰물

μ‚¬μš©κ°€λŠ₯ν•œ λ°°μ—΄μ˜ μˆ˜κ°€ 맀우 μž‘μ€ 경우λ₯Ό κ°€μ •ν•˜μ—¬ Fig. 4와 같은 νŠΈλŸ¬μŠ€κ΅¬μ‘°μ— λŒ€ν•œ 해석을 μˆ˜ν–‰ν•˜μ˜€λ‹€. 이 κ²½μš°μ— λŠ” μ‚¬μš©κ°€λŠ₯ν•œ λ°°μ—΄μ˜ 수λ₯Ό 3으둜 κ°€μ •ν•˜μ˜€μœΌλ©°, λΈ”λ‘μ˜ 수 λŠ” 1이 λ˜λ„λ‘ μ‘°μ •ν•˜μ˜€λ‹€.

Fig 4.

Truss Structure

JKSMI-18-30_F4.jpg

해석 μ‹œ κ°€μ •λœ 재료 및 λ‹¨λ©΄νŠΉμ„±μ€ Table 6κ³Ό κ°™μœΌλ©°, 수 계산 및 κ°œλ°œν”„λ‘œκ·Έλž¨μ„ μ΄μš©ν•œ ν•΄μ„κ²°κ³ΌλŠ” Table 7κ³Ό κ°™λ‹€.

Table 6.

Material and Section Properties

Modulus of Elasticity Area Support Condition
100.0 1.0 node 1, 2, 3 Hinged
Table 7.

Analysis Results

Displacement Array Size Number of Blocks
Ξ΄X4 Ξ΄Y4
Manual 28.284 –11.761 – –
sNs 28.284 -11.761 3 1

3.1.2. 2차원골쑰 ꡬ쑰물

Fig. 5μ—μ„œ λ³΄λŠ” 바와 같이, λ‹€μ΄μ•„ν”„λž¨ (Diaphragm) ꡬ속 쑰건을 κ°–λŠ” 2차원골쑰 (2D Frame)ꡬ쑰에 λŒ€ν•œ 해석을 μˆ˜ν–‰ ν•˜μ˜€λ‹€. 이 κ²½μš°μ—λŠ” μ‚¬μš©κ°€λŠ₯ν•œ λ°°μ—΄μ˜ 수λ₯Ό 6으둜 κ°€μ •ν•˜ μ˜€μœΌλ©°, λΈ”λ‘μ˜ μˆ˜λŠ” 3이 λ˜λ„λ‘ μ‘°μ •ν•˜μ˜€λ‹€.

Fig 5.

2D Frame Structure

JKSMI-18-30_F5.jpg

해석 μ‹œ κ°€μ •λœ 재료 및 λ‹¨λ©΄νŠΉμ„±μ€ Table 8κ³Ό κ°™μœΌλ©°, 수 계산 및 κ°œλ°œν”„λ‘œκ·Έλž¨μ„ μ΄μš©ν•œ ν•΄μ„κ²°κ³ΌλŠ” Table 9와 κ°™λ‹€.

Table 8.

Material and Section

Modulus of Elasticity Area Moment of Inertia Supprot Condition
96,000.0 1,000.0 12,000.0 node 1, 2 Fixed
Table 9.

Analysis Results

Displacement Array Size Number of Blocks
Ξ΄ X3 ΞΈ Y3 Ξ΄ X4 ΞΈ Y4
Manual 4.209 4.795 4.209 -4.793 - -
sNs 4.209 4.795 4.209 -4.793 6 3

3.1.3. 3차원 ν”„λ ˆμž„ ꡬ쑰물

λ³Έ μ—°κ΅¬μ—μ„œ μ œμ‹œλœ λΈ”λ‘ν™”κΈ°λ²•μ˜ μ•ˆμ •μ„± 평가λ₯Ό μœ„ν•˜μ—¬, Fig. 6κ³Ό 같이 μΌμ •ν•œ κ°•μ„±ν–‰λ ¬ 크기λ₯Ό κ°–λŠ” 3차원 ν”„λ ˆμž„κ΅¬ μ‘°λ₯Ό λŒ€μƒμœΌλ‘œ μ‚¬μš©κ°€λŠ₯ν•œ λ°°μ—΄μ˜ 수λ₯Ό λ³€ν™”μ‹œν‚€λ©΄μ„œ 해석 을 μˆ˜ν–‰ν•˜μ˜€λ‹€.

Fig 6.

3D Frame Structure

JKSMI-18-30_F6.jpg

해석 μ‹œ κ°€μ •λœ 재료 및 λ‹¨λ©΄νŠΉμ„±μ€ Table 10κ³Ό κ°™μœΌλ©°, μˆ˜κ³„μ‚° 및 κ°œλ°œν”„λ‘œκ·Έλž¨μ„ μ΄μš©ν•œ ν•΄μ„κ²°κ³ΌλŠ” Table 11κ³Ό κ°™λ‹€.

Table 10.

Material and Section

Modulus of Elasticity Area Moment of Inertia Supprot Condition
960.0 1.0 1.2 node 1~4 Fixed
Table 11.

Analysis Results

Displacement Array Size Number of Blocks
Ξ΄ X6 Ξ΄ Y6 Ξ΄ Z6
Manual 0.06323 –0.02285 –0.00251 – –
sNs 0.06323 –0.02285 –0.00251 93 1
0.06323 –0.02285 –0.00251 35 3
0.06323 –0.02285 –0.00251 19 6
0.06323 –0.02285 –0.00251 17 7

3.2. 해석 속도 평가

λ³Έ μ—°κ΅¬μ—μ„œ μ œμ‹œν•œ 블둝화기법을 μ‚¬μš©ν•  경우, 강성행렬을 λΆ„ν•΄ν•˜κΈ° μœ„ν•΄μ„œλŠ” 강성행렬이 λΆ„ν• λ˜λŠ” 블둝 μˆ˜μ— 따라 κ°• 성행렬을 파일둜 μ €μž₯ν•˜κ³  읽어야 ν•˜λŠ” 뢀뢄이 μΆ”κ°€λ˜μ–΄μ•Ό ν•œλ‹€. 일반적으둜 컴퓨터 ν”„λ‘œκ·Έλž¨μ˜ μ‹€ν–‰μ‹œκ°„ (Run Time)을 μ§€λ°°ν•˜λŠ” μ£Όμš”μΈμž 쀑 ν•˜λ‚˜λŠ” νŒŒμΌμ„ μ΄μš©ν•œ μž…μΆœλ ₯ μ‹œκ°„μ΄ 라고 λ³Ό 수 μžˆλ‹€. 이와 같은 이유둜 μΈν•˜μ—¬ λŒ€μš©λŸ‰ λ©”λͺ¨λ¦¬κ°€ μš”κ΅¬λ˜λŠ” 강성행렬에 λŒ€ν•œ 블둝화기법 적용 μ‹œ ν•΄μ„μ†λ„μ˜ 차이가 λ°œμƒν•  수 μžˆμœΌλ―€λ‘œ 이에 λŒ€ν•œ νš¨μœ¨μ„±μ„ κ²€ν† ν•΄ λ³Ό ν•„μš”κ°€ μžˆλ‹€.

μ „μˆ λœ 바와 같은 ν•„μš”μ„±μ— 따라, λ³Έ μ—°κ΅¬μ—μ„œλŠ” Fig. 7κ³Ό 같은 μΊ”ν‹Έλ ˆλ²„ (Cantilever)보λ₯Ό λŒ€μƒμœΌλ‘œ μš”μ†ŒλΆ„ν• μ„ ν†΅ν•œ ꡬ쑰해석을 μˆ˜ν–‰ν•˜μ˜€λ‹€. μš”μ†ŒλΆ„ν• μ€ Table 12μ—μ„œ λ³΄λŠ” 바와 같이 λΆ„ν• λ˜λŠ” μš”μ†Œμ˜ 크기λ₯Ό 두 가지 ν˜•νƒœλ‘œ μ„€μ •ν•˜μ—¬ κ°•μ„± ν–‰λ ¬ 크기의 변화에 λ”°λ₯Έ 해석속도 차이λ₯Ό λΉ„κ΅βˆ™λΆ„μ„ν•΄ 보 고자 ν•˜μ˜€λ‹€.

Fig 7.

Cantilever Beam

JKSMI-18-30_F7.jpg
Table 12.

Patterns of Analysis Modelling

JKSMI-18-30_T12.jpg

ν•΄μ„μ†λ„λŠ” ν”„λ‘œκ·Έλž¨μ˜ μ‹€ν–‰ ν›„ ν•˜μ€‘μ— μ˜ν•œ μ ˆμ λ³€μœ„μ˜ μ‚°μ •κΉŒμ§€ μ†Œμš”λ˜λŠ” μ‹œκ°„μ„ κΈ°μ€€μœΌλ‘œ μΈ‘μ •ν•˜μ˜€μœΌλ©°, μ‚¬μš©κ°€λŠ₯ ν•œ λ°°μ—΄μˆ˜μ— 따라 각각 10νšŒμ”© 해석을 μˆ˜ν–‰ν•œ κ²°κ³Όμ—μ„œ μ΅œλŒ€ κ°’κ³Ό μ΅œμ†Œκ°’μ„ λΊ€ 평균값을 μ μš©ν•˜μ˜€λ‹€.

해석 μ‹œ κ°€μ •λœ 재료 및 λ‹¨λ©΄νŠΉμ„±μ€ Table 13κ³Ό κ°™μœΌλ©°, κ°œλ°œν”„λ‘œκ·Έλž¨μ„ μ΄μš©ν•œ 해석속도 κ²°κ³ΌλŠ” Table 14와 κ°™λ‹€.

Table 13.

Material and Section

Modulus of Elasticity Poisson's Ratio Thickness
30,000 0.25 2.0
Table 14.

Analysis Speed Results

Analysis Speed (sec) Array Size Number of Blocks Ratio
Pattern 1 0.559 5,686 1 1.0
0.405 4,258 2 0.7245
0.234 1,758 4 0.4186
0.203 1,005 6 0.3631
Pattern 2 6.549 17,422 3 1.0
2.253 7,419 6 0.3440
1.196 2,401 18 0.1826
0.956 1,127 39 0.1460

4. κ²° λ‘ 

효율적인 ν–‰λ ¬λΆ„ν•΄λ₯Ό μœ„ν•œ 전산학적 λ°©λ²•λ‘ μ˜ μ—°κ΅¬λŠ” λ‹€ μ–‘ν•œ μ—°κ΅¬μžλ“€μ— μ˜ν•΄ μˆ˜ν–‰λ˜μ–΄ μ™”μœΌλ‚˜, 개인용 컴퓨터λ₯Ό 이 μš©ν•˜μ—¬ ν–‰λ ¬λΆ„ν•΄λ₯Ό μˆ˜ν–‰ν•  경우 λ°œμƒν•˜λŠ” λ©”λͺ¨λ¦¬ 곡간 λΆ€μ‘± λ¬Έμ œλŠ” μ—¬μ „νžˆ ν•΄κ²°ν•΄μ•Ό ν•  문제점으둜 μΈμ‹λ˜κ³  μžˆλ‹€. λ³Έ μ—°κ΅¬μ—μ„œλŠ” 이λ₯Ό 효율적으둜 ν•΄κ²° ν•  수 μžˆλŠ” 방법둠 쀑 ν•˜ λ‚˜μΈ λΈ”λ‘ν™”κΈ°λ²•μ˜ 이둠적 배경을 λΆ„μ„ν•˜μ˜€μœΌλ©°, 이λ₯Ό μ‹€μ œ ν”„λ‘œκ·Έλž¨μœΌλ‘œ κ΅¬ν˜„ν•  수 μžˆλŠ” ν”„λ‘œμ„ΈμŠ€ (Process) 및 ν”„λ‘œκ·Έ 래밍 κ³Όμ •μ—μ„œ λ°œμƒν•˜λŠ” 데이터 처리 λ¬Έμ œμ— λŒ€ν•œ ν•΄κ²° λ°©μ•ˆ 을 μ œμ‹œν•˜μ˜€λ‹€.

λ˜ν•œ, λ‹€μ–‘ν•œ μ˜ˆμ œμ— λŒ€ν•œ 해석을 ν†΅ν•˜μ—¬ μ œμ‹œλœ 방법둠 및 이λ₯Ό λ°”νƒ•μœΌλ‘œ μž‘μ„±λœ ν”„λ‘œκ·Έλž¨ (sNs)의 정합성을 κ²€μ¦ν•˜ μ˜€μœΌλ©°, 이에 λŒ€ν•œ λ‚΄μš©μ€ λ‹€μŒκ³Ό κ°™λ‹€.

  1. μž„μ˜μ˜ λΈ”λ‘μˆ˜λ‘œ λ‚˜λˆ„μ–΄μ Έ μˆ˜ν–‰λ˜μ–΄μ§„ μ„ ν˜•μ •μ ν•΄μ„ 의 결과듀은 λͺ¨λ‘ μˆ˜κ³„μ‚°μ— μ˜ν•œ 정해와 μΌμΉ˜ν•˜κ³  있 λ‹€. 이λ₯Ό ν†΅ν•˜μ—¬ μ œμ‹œλœ 블둝화기법은 전체적인 ν–‰λ ¬ λΆ„ν•΄ μ•Œκ³ λ¦¬μ¦˜μ˜ 정확도에 영ν–₯을 λ―ΈμΉ˜μ§€ μ•ŠμœΌλ©΄μ„œ ꡬ 쑰물에 λŒ€ν•œ ν‰ν˜•λ°©μ •μ‹μ˜ ν•΄λ₯Ό 효율적으둜 κ΅¬ν•˜κ³  있 μŒμ„ μ•Œ 수 μžˆλ‹€.

  2. 3차원 ν”„λ ˆμž„ ꡬ쑰물의 해석 μ‹œ, μ—¬λŸ¬ 경우의 λΈ”λ‘μˆ˜ 둜 μˆ˜ν–‰λ˜μ–΄μ§„ 해석 κ²°κ³Όκ°€ λ™μΌν•œ 값을 보이고 있으 λ©°, μˆ˜κ³„μ‚°μ„ ν†΅ν•œ 정해와도 μΌμΉ˜ν•˜κ³  μžˆμŒμ„ μ•Œ 수 있 λ‹€. μ΄λŠ” 개인 컴퓨터λ₯Ό ν†΅ν•œ 업무 μˆ˜ν–‰ μ‹œ 빈번히 발 생할 수 μžˆλŠ” κ°€μš© κ°€λŠ₯ λ©”λͺ¨λ¦¬ 크기의 변화에도 뢈ꡬ ν•˜κ³  μ œμ‹œλœ 블둝화기법 μ•Œκ³ λ¦¬μ¦˜μ΄ μ•ˆμ •μ μœΌλ‘œ ν•΄λ₯Ό ꡬ할 수 μžˆμŒμ„ 보여주고 μžˆλ‹€. λ˜ν•œ μž‘μ€ μ–‘μ˜ λ©”λͺ¨λ¦¬ λ₯Ό κ°€μ§€λŠ” 개인 μ»΄ν“¨ν„°μ—μ„œλ„ μ‹ λ’°ν•  수 μžˆλŠ” κ²°κ³Όλ₯Ό 얻을 수 μžˆμŒμ„ μ•Œ 수 μžˆλ‹€.

  3. Fig. 7의 μΊ”ν‹Έλ ˆλ²„ 보 예제의 경우, μœ ν˜•λ³„ λΈ”λ‘μˆ˜μ— λ”°λ₯Έ 해석 μ†λ„λŠ” λΈ”λ‘μˆ˜κ°€ λŠ˜μ–΄λ‚ μˆ˜λ‘ λΉ¨λΌμ§€λŠ” κ²½ν–₯ 을 보이고 μžˆλ‹€. λ‹€μ‹œ 말해, ν–‰λ ¬λΆ„ν•΄ μ—°μ‚°μ˜ λ°˜λ³΅μˆ˜ν–‰ 및 파일 μž…μΆœλ ₯ 횟수의 증가에도 λΆˆκ΅¬ν•˜κ³  μ‹€μ œμ μΈ 해석 μ‹œκ°„μ€ μ€„μ–΄λ“œλŠ” κ²½ν–₯을 보이고 μžˆλ‹€. 이것은 유 ν•œν•œ λ©”λͺ¨λ¦¬ ν¬κΈ°μ—μ„œ ν•œ λ²ˆμ— λ§Žμ€ μ–‘μ˜ 데이터λ₯Ό μ—° μ‚°ν•˜κ³  파일둜 μž…μΆœλ ₯ν•  λ•Œ λ°œμƒν•˜λŠ” μ»΄ν“¨ν„°μ˜ λΆ€ν•˜μ¦ κ°€κ°€ 블둝화 μ•Œκ³ λ¦¬μ¦˜μ— μ˜ν•œ μž…μΆœλ ₯κ³Όμ •μ˜ 증가보닀 해석속도에 크게 영ν–₯을 λ―ΈμΉ  수 μžˆμŒμ„ λ³΄μ—¬μ£ΌλŠ” κ²° 과둜 νŒλ‹¨λœλ‹€. λ”°λΌμ„œ μ μ ˆν•œ λΈ”λ‘μˆ˜λ‘œ λ‚˜λˆ„μ–΄ ν–‰λ ¬ λΆ„ν•΄λ₯Ό μˆ˜ν–‰ν•˜λŠ” 것이 전체 ꡬ쑰물에 λŒ€ν•œ 해석 속도 λ₯Ό ν–₯μƒμ‹œν‚¬ 수 μžˆλŠ” ν•˜λ‚˜μ˜ λ°©λ²•μž„μ„ μ•Œ 수 μžˆλ‹€.

  4. λ‹€λ§Œ, ν…μŠ€νŠΈ μž…μΆœλ ₯ 방식을 μ·¨ν•˜κ³  μžˆλŠ” 개발 ν”„λ‘œκ·Έ 램의 ν•œκ³„λ‘œ μΈν•˜μ—¬ 보닀 큰 규λͺ¨μ˜ ꡬ쑰물에 λŒ€ν•œ ν•΄ 석이 μˆ˜ν–‰λ˜μ§€ λͺ»ν•˜μ˜€λ‹€. 이둜 μΈν•˜μ—¬ 블둝 μˆ˜μ— λ”°λ₯Έ 해석속도 λΉ„κ΅βˆ™λΆ„μ„κ³Όμ •μ— λ―ΈλΉ„ν•œ 점이 μ‘΄μž¬ν•  κ²ƒμœΌλ‘œ λΆ„μ„λ˜λ©°, 이에 λŒ€ν•œ 보완이 ν•„μš”ν•  κ²ƒμœΌλ‘œ νŒλ‹¨λœλ‹€.

  5. λ³Έ μ—°κ΅¬μ—μ„œ 개발된 블둝화기법 μ•Œκ³ λ¦¬μ¦˜μ€ λŒ€ν‘œμ μΈ ν–‰λ ¬λΆ„ν•΄ 연산기법인 슀카이라인 솔버 (Skyline Solver) 에 μ΅œμ ν™”λœ μ•Œκ³ λ¦¬μ¦˜μœΌλ‘œμ„œ, λ‹€λ₯Έ μƒμš©ν”„λ‘œκ·Έλž¨μ—μ„œ μ œμ‹œλ˜κ³  μžˆλŠ” λ©€ν‹°-ν”„λ‘ νƒˆ 솔버 (Multi-Frontal Solver) 에 λŒ€ν•œ μ μš©μ„ μœ„ν•΄μ„œλŠ” 좔가적인 연ꡬλ₯Ό ν†΅ν•œ μ•Œκ³  리즘의 μˆ˜μ •βˆ™λ³΄μ™„μ΄ ν•„μš”ν•  κ²ƒμœΌλ‘œ νŒλ‹¨λœλ‹€.

λ³Έ 연ꡬλ₯Ό ν†΅ν•˜μ—¬ μ œμ‹œλœ 블둝화기법은 개인 μ»΄ν“¨ν„°μ˜ 사 μš©κ°€λŠ₯ν•œ λ©”λͺ¨λ¦¬ 크기가 μΆ©λΆ„ν•˜μ§€ μ•Šμ€ κ²½μš°μ—λ„ μ •ν™•ν•˜κ³  μ•ˆμ •μ μΈ ꡬ쑰해석을 μˆ˜ν–‰ν•  수 μžˆλŠ” κ²ƒμœΌλ‘œ λΆ„μ„λœλ‹€. ν–₯ν›„, μžμœ λ„ 수 만개의 ꡬ쑰물 해석을 μœ„ν•œ κ·Έλž˜ν”½ μΈν„°νŽ˜μ΄μŠ€ (Graphic Interface) μ „βˆ™ν›„μ²˜λ¦¬κΈ° 개발과 이λ₯Ό λ°”νƒ•μœΌλ‘œ ν•œ 블둝화 μ•Œκ³ λ¦¬μ¦˜ μ΅œμ ν™”μ— λŒ€ν•œ 지속적인 연ꡬλ₯Ό ν†΅ν•˜μ—¬ μ „ 체적인 해석속도 ν–₯상을 도λͺ¨ν•  수 μžˆμ„ κ²ƒμœΌλ‘œ νŒλ‹¨λœλ‹€.

κ°μ‚¬μ˜ κΈ€

λ³Έ μ—°κ΅¬λŠ” μ •λΆ€ (κ΅μœ‘κ³Όν•™κΈ°μˆ λΆ€)의 μž¬μ›μœΌλ‘œ ν•œκ΅­μ—°κ΅¬μž¬ λ‹¨μ˜ 지원을 λ°›μ•„ μˆ˜ν–‰λœ μ—°κ΅¬μž„. [NRF-2010-0024 517]

REFERENCES

1 
, ADINA - System verification manual REPORT AE, 83-5.
2 
(1989), Highly Parallel Computing
3 
(1996), Finite Element Procedures
4 
(2003), ETABS-Software Verification Exmaples, Ver. 8Google Search
5 
(1998), SAP2000-ANALYSIS REFERENCE, Ver. 7.0Google Search
6 
(1988), A parallel active column equation solver, Computers & Structures, 28(2), 289-304.
7 
(1998), Dynamic Analysis of Vehicle- Bridge System by the Dynamic Condensation Method, The Journal of the Korea Institute for Structural Maintenance and Inspection, 2(2), 177-184.
8 
(2004), Structural Dynamics
9 
(1998), Computer Organization and Design
10 
(1963), Matrix Structrual Analysis of Substructures, AIAA Journal, 1(1), 138-147.
11 
(2005), The Finite Element Method - Its Basis & Fundamentals