1. 서 론
구조 및 유동해석을 아우르는 공학 시뮬레이션 분야에서는 내연적(implicit) 해석 방법이 널리 활용되고 있으며, 외연적(explicit) 해석에서와 같은 조건부 안정성(conditional stability)의 제약을 받지 않아 비교적 큰 시간 간격을 갖는 장점이 있다(Hughes, 2000). 이러한 내연적 방법의 경우 대상 지배방정식을 구성하는 대규모 연립방정식의 해법이 핵심적인 역할을 담당하며, 내연적 시간적분 및 비선형 정적해석의 경우 해석 과정 스텝 별 대규모 선형시스템을 반복적으로 풀어야 하므로 효율적인 행렬 솔버의 개발 및 활용이 필수적이다.
일반적으로 구조해석에서 도출되는 강성행렬은 대칭 양정치(symmetric positive definite) 특성(Saad, 2003)을 갖는다. 그러나 내연적 시간적분 과정에서 시스템 행렬의 조합, 재료 및 기하 비선형 정적해석에 수반되는 강성 행렬 계산 등에서 비대칭 행렬이 발생할 수 있다(Bathe, 2014; Belytschko et al., 2014). 또한 접촉 문제나 유체-구조 연성 해석에서도 비대칭성이 발생할 수 있다(Wriggers, 2006). 유동해석의 경우 Navier- Stokes 방정식의 대류항(convection term)이 가진 비선형성과 공간적 방향성에 의해 본질적으로 비대칭 행렬이 생성된다. 특히 Reynolds 수가 높은 경우 확산항에 비해 대류항이 더욱 지배적이게 되어 비대칭성이 크게 증가하며 수치적 해법에 어려움을 초래한다(Ferziger and Perić, 2002).
한편 격자 기반 해석에서 이웃 격자 간의 상호작용을 반영함으로써 자연스럽게 자유도(degree of freedom) 크기에 달하는 희소행렬이 형성된다. 특히 고신뢰도 모델링이나 난류 유동과 같이 매우 높은 공간 해상도를 요구하는 문제에서는 초대형 희소행렬(~1010 × 1010)이 필요한 경우가 있다(Kim et al., 2023; Merzari et al., 2023). 정렬 격자의 경우 규칙적인 연결 구조로 인해 행렬을 고정된 스텐실 포맷으로 저장하고, 각 차원 방향으로 분할하는 전략을 적용한다(Pan et al., 2022). 반면 비정렬 격자는 격자 간 연결 관계가 불규칙하여 CSR(compressed sparse row) 포맷(Saad, 2003)을 이용한 저장이 일반적이며, 이 경우 효율적인 분할 전략의 적용이 어렵고 전체 희소행렬을 직접 계산해야 한다(Fischer, 1997).
본 연구에서는 이러한 구조 및 유체 분야의 내연적 접근 방법에 수반되는 선형 시스템의 해 계산에 활용할 수 있는 자체 행렬 솔버 패키지를 개발하였고, 향후 병렬처리 환경에서의 확장성과 메모리 효율성을 고려하여 반복법(iterative method) (Cho and Cho, 2017, 2019; Dongarra et al., 1998; Saad, 2003; Van der Vorst, 2003) 기반의 행렬 솔버를 구성하였다. 더불어 자체 코드 개발은 다음과 같은 의미가 있다. 먼저, 개발된 솔버는 라이센스 제약이 없는 자체 솔버로서 보안이 중요한 분야(원자력, 국방 등)의 내부 솔버 코드의 수정 및 개선, 디버깅이 용이하며 이를 최적 병렬화 연구 등에 활용할 수 있다. 특히 상용 솔버는 내부 작동 원리가 비공개되어 접근이 제한되며, 자체 솔버를 통해 특정 문제에 최적화된 알고리즘 개발이 가능하다. 마지막으로 기존 대표적인 반복법들의 여러 알고리즘을 하나의 통합된 수치 라이브러리로 정리하여, 유지 관리가 용이하고 해석 대상 및 행렬 특성에 따른 최적 솔버 적용 및 향후 확장 개발에 유리하다. 이를 위해 솔버 코드에는 기본적 반복법(Jacobi, Gauss-Seidel, successive over-relaxation(SOR))과 크릴로프 부공간(Krylov subspace) 기반의 conjugate gradient (CG), biconjugate gradient(BCG), biconjugate gradient stabilized (BCGS) 방법(Barrett et al., 1994; Saad, 2003; Van der Vorst, 1992)을 구현하였고, 수렴성 향상을 위한 전처리기(preconditioner)로 대각성분(diagonal) 전처리기와 Incomplete LU(ILU) 분해 방법을 도입하였다. 해당 행렬 연산은 CSR 기반으로 수행되며, 이를 통해 메모리 사용량을 최소화하고 희소 행렬 계산의 효율성을 향상시켰다.
개발된 자체 코드의 적용 및 검증을 위해 선형/비선형 구조해석 문제에서 발생하는 시스템 강성행렬을 도출하였고, 이를 통해 행렬의 대칭성, 크기에 따른 개별 솔버의 정확성, 수렴성, 계산 효율을 비교 분석하였다. 대상 강성행렬 정보는 선행 연구를 통해 검증된 Voronoi-cell lattice model(VCLM)을 활용한 보의 처짐 문제를 통해 도출하였고, 비대칭 행렬 구성의 경우 기하비선형 이론에 따른 대변형 모델을 활용하였다(Hwang et al., 2020). 일반적으로 강성행렬의 경우 조건수(condition number)가 크기 때문에 기본적 반복법으로는 실질적 수렴이 제한되는 경우가 많다. 따라서 크릴로프 부공간 계열의 솔버를 통해 강성행렬로 구성된 선형 연립시스템의 근사해를 도출하였고, 대칭 행렬에 대해서 CG, 비대칭 행렬에 대해서 BCG, BCGS 및 전처리기 연계를 통해 개별 솔버를 평가하였다.
2. 선형 시스템 솔버
일반적으로 선형 연립방정식 시스템을 구성하는 행렬식은 아래와 같다.
여기서, 는 계수(coefficient) 행렬, 는 우변 벡터, 는 솔루션 벡터이다. 구조시스템을 통해서 시스템 강성행렬 K(=A)이 계수 행렬로 도출되며, 해석 도메인의 각 절점의 자유도(degree of freedom)에 따른 평형방정식 구성으로 미지수와 평형방정식 수가 같은 인 정방행렬을 형성한다. 일반적으로 강성행렬은 양정치(positive definite) 특성을 갖으며, 강성행렬을 구성하는 개별항 은 대칭 조건()을 만족한다. 하지만, 서론에서 언급한 바와 같이 재료 및 기하비선형, 접촉 등이 수반되는 문제에서 비대칭 조건()이 발생할 수 있다. 한편 시스템 강성행렬은 그 개별항의 대부분이 0으로 구성된 희소성(sparsity)을 갖는다. 행렬의 크기가 증가할수록 이러한 희소성이 증가하며, 효율적 저장 공간 활용을 통한 연산 비용과 시간 절감이 필요하다(Golub and Van Loan, 2013; Saad, 2003). 고신뢰도 모델일수록 대상 시스템의 자유도가 증가하며 관련 행렬의 크기가 증가하는데, 직접법 대비 반복법의 효율성이 크게 증가한다(Barrett et al., 1994; Saad, 2003; Van der Vorst, 2003). 본 연구에서는 향후 이러한 대용량 희소 행렬 풀이를 고려하여, 반복법 중심의 알고리즘을 구현하였다. 해당 프로그램 코드에 구현된 솔버 목록은 Fig. 1과 같다. 개발된 솔버 라이브러리에는 기본적 반복법(Jacobi, Gauss-Seidel, SOR)을 포함하였지만, 이러한 방법은 실제 구조 및 유동해석에서 발생하는 선형 시스템 해의 수렴성이 제한되는 경우가 많다(Barrett et al., 1994; Ferziger and Perić, 2002; Saad, 2003). 이를 위해 크릴로프 부공간 기반의 반복법(CG, BCG, BCGS) 및 전처리기(Diagonal, ILU) 알고리즘을 구현하였다. 해당 방법에서 m차원의 부공간 은 다음 식 (2)와 같이 정의된다.
여기서, r0는 초기 잔차 벡터이다. 식 (1)의 근사해를 해당 공간에 투영하여 계산할 수 있으며, Figs. 2, 3, 4는 이에 해당하는 대표적인 CG, BCG, BCGS 알고리즘을 보여준다. 해당 그림에서 는 최대 반복수, 은 norm, 𝜖은 수렴 조건 판별을 위한 허용 오차이다. 이중 BCG는 비대칭 행렬의 해법(Fig. 3)을 위해 도입되었으며, 해의 수렴성 및 안정성을 개선한 BCGS 알고리즘을 추가 고려하였다(Fig. 4). 여기서 x0, r0, p0는 초기값으로 각각 솔루션 벡터, 잔차(residual) 벡터, 켤레(conjugate) 벡터이다. Figs. 3와 4의 는 r0와 내적이 0이 아닌 임의 벡터로서, 보통 = r0로 초기값을 설정할 수 있다. 더불어 수렴성 개선을 위해 전처리 행렬 M과 관련 연산을 도입할 수 있으며, Fig. 4는 BCGS 알고리즘에 적용된 전처리과정(preconditioning)을 통해 v와 t 벡터에 대한 기존 계산을 대신할 수 있음을 보여준다. 본 연구에서는 두 가지 전처리기를 구현하였다. 첫 번째는 대각(diagonal) 전처리기로서 행렬 A의 대각성분으로 구성된다.
해당 방법은 계산 비용이 낮고 구현이 간단하지만, 행렬 조건수 개선 효과가 낮아 수렴성이 제한될 수 있다. 두 번째는 ILU 분해이며, 행렬 A의 희소특성을 반영한 근사적인 LU 분해를 통해 계산 비용을 절감한다(Barrett et al., 1994; Saad, 2003).
여기서, L은 하삼각행렬, U는 상삼각행렬이다. 이후 식 (3) 또는 (4)를 반복법 알고리즘(Fig. 4)과 연계하여 활용할 수 있다. 희소행렬의 효율적 계산을 위해 행렬 A는 CSR 형식으로 0이 아닌 원소 배열과 각 원소들의 열 인덱스 배열, 행의 시작 포인터 배열로 구성된다.
3. 수치해석 결과
3.1 수치해석 예제 정의
구축한 자체 솔버 패키지의 검증 및 활용을 위해, 정적하중을 받는 구조물 변형 문제에서 발생하는 선형 시스템을 고려하였다. 따라서 기존 식 (1)을 구성하는 A와 b는 각각 강성행렬 K와 외력 벡터 f로서 다음과 같이 재구성할 수 있다.
해당 행렬식 풀이를 통해 변위 벡터 x를 도출할 수 있다. 일반적인 선형 탄성거동 문제의 경우 시스템 강성행렬은 대칭 특성을 나타내지만, 앞에서 언급한 바와 같이 대변형 구조 문제에서는 비대칭성을 갖게 된다. 본 연구에서는 솔버 검증을 위해 활용할 대칭/비대칭 강성행렬 정보 추출을 위해서, 선행 연구(Hwang et al., 2020)에서 검증한 켄틸레버 보의 처짐 문제를 활용하였다(Fig. 5(a)). 여기서 =10, 이고, 평면 응력(plane stress) 상태의 단위 두께를 고려하였다. Fig. 5(b)- (c)는 Voronoi-cell 격자 요소로 모델링한 해석 도메인과 이산화 정도에 따른 두 종류의 모델(M1, M2)을 보여준다. 해석 노드 별로 두 방향의 병진(translation)과 하나의 회전 변위가 고려되며, 따라서 노드당 3개의 자유도를 갖는다. 두 모델(M1, M2)의 전체 자유도는 각각 3072, 9720개이다.
이후 모델에 따른 시스템 강성행렬을 유도하기 위해 Voronoi- cell 격자 요소 공식에 따라 강성행렬 정보를 추출하였다(Hwang et al., 2020). 해당 연구에서 이산화된 요소단위 강성행렬 Ke은 다음과 같이 정의된다.
여기서, 𝜞는 전역-국부 좌표변환 행렬, Ks는 격자 요소를 구성하는 스프링 계수 행렬, Bd와 Bf는 각각 요소의 변위와 힘 변환 행렬이다. 초기 미소 변형 가정(Bd=Bf) 및 대회전 고려(Bd≠Bf)에 따라 식 (6)의 Ke가 대칭/비대칭 특성을 갖으며, 이후 식 (5)의 시스템 강성행렬 K는 다음과 계산된다.
여기서, Le는 분산(scatter) 행렬이다. VCLM 방법을 통한 강성행렬 구성의 보다 상세한 내용은 선행 연구(Hwang et al., 2020)를 참고할 수 있다. 식 (7)을 통해 초기(또는 선형탄성) 대칭 강성행렬 정보를 추출하였고, 특정 하중 상태에 따른 대변형 거동을 반영한 비대칭 강성행렬을 구성하였다. 이를 위해 Fig. 5(a)의 집중하중 =125N을 고려하였고, 해석 노드별 자유도 순서에 맞게 하중 정보를 입력하여 외력 벡터 f를 구성하였다. 강성행렬 K는 그 크기 n에 따라 2개의 대칭(symmetric) 행렬(S1, S2)과 2개의 비대칭(asymmetric) 행렬(A1, A2)을 고려하였고, 이를 Table 1에 정리하였다. 여기서 는 0이 아닌 항의 수를, 𝜅는 행렬의 조건수(condition number)를 나타낸다. 조건수는 선형 연립시스템에서 입력 값의 변화에 따른 출력 해의 민감도를 나타내며, 수치적 안정성을 가늠하는 척도로 활용된다(Golub and Van Loan, 2013). 조건수 𝜅는 다음 식 (8)과 같이 정의된다.
Table 1.
Matrix information for different stiffness matrix types
| Type | n | nnz | ⲕ |
| S1 | 3072 | 51,308 | 1.00 × 1011 |
| S2 | 9720 | 169,512 | 1.04 × 1011 |
| A1 | 3072 | 51,308 | 0.98 × 1011 |
| A2 | 9720 | 169,512 | 1.02 × 1011 |
여기서, 와 는 각각 행렬의 최대와 최소 특잇값(singular value)이다. Table 1에서 확인할 수 있는 바와 같이 모든 강성행렬이 그 크기나 대칭성에 상관없이 유사한 수준의 조건수를 가지며, 그 값(𝜅≫1)이 매우 큰 것을 확인할 수 있다. 따라서 반복법을 통한 수치적 안정성 측면에서 특정 행렬 유형에 따른 선형 시스템 연산의 유불리는 없다고 판단된다.
또한 모델 자유도에 따른 전체 강성행렬 항의 수를 계산하면 M1이 9,437,184(= 3072 × 3072)개, M2가 94,478,400(= 9720 × 9720)개이고, 이를 통해 Table 1에 보이는 와의 비율(%)을 계산하면, 각각 M1과 M2가 각각 0.54, 0.18%로 희소행렬 특성을 나타냄을 확인할 수 있다. Fig. 6은 이러한 행렬(3072 × 3072) 특징을 시각적으로 보여준다.
여기서 Fig. 6(a)는 해석 영역 분할에 따른 노드 정렬 상태를 고려하지 않은 것이고, Fig. 6(b)는 수렴성 및 계산 효율 개선을 위해 노드 정렬 및 전처리를 수행한 결과이다. 본 연구에서는 Fig. 6(b)의 결과를 시스템 강성행렬로 활용하였다. 그림을 통해 행렬의 대각 인접 영역을 제외하고 모두 0으로 구성된 것을 확인할 수 있다. 해당 패턴은 일반적인 유한요소해석 및 격자모델 등의 강성행렬에서 볼 수 있는 패턴으로, 특정 노드와 인접한 노드 간의 연결된 요소수 대비 전체 요소수의 차이로 희소 특성을 나타낸다. 한편 강성행렬의 대칭/비대칭 여부에 상관없이 Fig. 6(b)와 동일한 패턴을 갖는데, 이를 통해 유도된 비대칭 강성행렬이 패턴은 대칭이지만 값은 비대칭인 특성을 갖는 것을 확인할 수 있다.
3.2 수치해석 결과 및 분석
도출된 행렬 시스템의 해를 구하기 위해 앞서 언급한 반복법 알고리즘(Figs. 2, 3, 4)을 FORTRAN 언어(Chapman, 2018)로 구현하였으며, 기본 시스템 환경(Intel Core i7-11800H CPU (2.30GHz), 16GB RAM)에서 해당 코드의 검증 및 계산 성능 분석을 진행하였다. 먼저 대칭 강성행렬(S1, S2)로 구성된 선형 시스템의 해를 계산하기 위하여 CG 방법을 활용하였으며, Fig. 2에 표시한 수렴조건 판별을 위한 허용오차 𝜀(=1.0×10-6)는 근사해의 정확도 수준과 연산 시간을 감안하여 경험적으로 설정하였다. Fig. 7은 반복 횟수에 따른 의 변화를 보여주며, CG 반복법을 통해 두 대칭 행렬 S1와 S2로 구성된 선형시스템의 근사해를 모두 계산할 수 있음을 확인하였다. 한편 비대칭 행렬(A1, A2)로 구성된 선형 시스템의 연산을 통해 BCG, BCGS 방법의 수렴성을 평가하였다. Fig. 8(a)는 A1에 대한 수렴 결과를 보여준다. BCG의 경우 초기 반복구간에서 수렴성이 떨어지지만 반복횟수가 증가할수록 결국 해당 오차 기준 𝜖을 만족하였다. 하지만 BCGS의 경우에는 초기 반복구간에서 BCG 보다 더 빨리 값이 감소하였지만, 최대 반복수 내에서 수렴하지 않았다. 이러한 BCGS 방법을 보완하기 위해 대각성분(diagonal) 전처리기와 ILU 전처리기를 도입하였고, 해당 방법(D-BCGS와 ILU-BCGS)을 통해서 비교적 초반에 빠른 수렴 목표를 달성할 수 있음을 확인하였다(Fig. 8(a)). 행렬의 크기가 증가한 A2의 경우(Fig. 8(b)), BCG와 BCGS 방법 모두 내에서 해를 수렴시키지 못했지만, D-BCGS와 ILU- BCGS 방법 모두 A1의 경우처럼 비교적 적은 반복횟수 내에 수렴 목표를 달성함을 확인하였다.
한편 개별 솔버를 통해 도출된 해 x의 정확도 검증을 위하여, 직접법인 상용 LU 솔버 서브루틴 LIN_SOL_GEN(Visual Numerics Inc, 2014)을 통해 모든 강성행렬 유형(S1, S2, A1, A2)에 대한 선형 시스템의 참고 해 xref를 계산하였다. 이를 통해 다음 식 (9)와 같은 상대 오차 e를 구하였다(Belytschko et al., 2013).
Tables 2와 3은 개별 반복법 솔버에 대한 계산 오차를 보여주며, 괄호안은 계산 시간을 나타낸다. 수렴하지 못한 경우는 공란으로 두었고, 이를 제외한 모든 방법의 수치 오차가 상용 솔버 대비 적정한 수준으로 작게 발생함을 확인하였다. 다시 언급하면 각 반복법에서는 정확도와 수렴 수준을 고려하여 허용 오차 수준(𝜀=1.0×10-6)을 결정하였고, 연산을 최종적으로 종료할 때 계산된 는 허용 오차 미만의 값으로 개별 반복 시도마다 값이 다를 수 있다. 따라서 Tables 2와 3의 결과는 반복법 솔버별 정확도 비교 보다는 허용 오차 내에서 근사해를 잘 수렴시켰음을 확인하기 위해 제시하였다. 추가적으로 수렴 오차의 정확도는 근사 해인 변위 벡터 x와 이를 통한 모델의 변형 형상을 통해서도 확인할 수 있다. Fig. 9은 A1과 A2의 경우에 선행 연구(Hwang et al., 2020)와 동일한 보의 처짐 형상을 보여준다.
Table 2.
Relative error and computational time of CG and LU approaches for symmetric matrices S1 and S2
| Solver | S1 | S2 |
| LU |
0 (0.68s) |
0 (9.42s) |
| CG |
3.08E-10 (0.91s) |
3.99E-10 (4.40s) |
Table 3.
Relative error and computational time of each solution approach for asymmetric matrices A1 and A2
| Solver | A1 | A2 |
| LU |
0 (0.74s) |
0 (9.07s) |
| BCG | 4.57E-08 (3.78s) | - |
| BCGS | - | - |
| D-BCGS |
8.83E-04 (0.90s) |
4.98E-04 (6.79s) |
| ILU-BCGS |
1.89E-05 (0.23s) |
1.93E-07 (3.04s) |
또한 행렬의 크기가 A1에서 A2로 증가할 때, 개별 방법에 따른 해석 시간 분석을 수행하였다(Table 3). 모든 경우 수렴한 D-BCGS, ILU-BCGS 방법을 대상으로, LU의 계산 시간 대비 D-BCGS와 ILU-BCGS의 계산시간의 비율 을 계산하여 Fig. 10에 나타내었다. LU 방법은 계산 기준이 되어 그 값이 1이 된다. A1의 경우 D-BCGS가 1.22, ILU-BCGS가 0.31로 계산되어, D-BCGS가 직접법인 LU 보다 더 계산 시간이 오래 걸린 것을 확인할 수 있다. 반면에 행렬의 크기가 증가한 A2의 경우 D-BCGS가 0.75로 LU 대비 계산시간이 줄어들어, A1의 경우와 결과가 반대인 것을 확인할 수 있다. 이는 직접법인 LU 솔버의 경우 희소 및 일반 행렬을 아우르는 범용 솔버로서, 시스템 행렬의 전체 정보()를 필요로 하기 때문이다. 따라서 행렬의 크기가 증가한 A2의 경우, A1 대비 메모리 효율이 떨어지고 관련 해석 시간이 길어지게 된다.
또한 Fig. 10에서 A1과 A2의 경우 모두에서 ILU-BCGS가 D-BCGS 보다 계산이 빨리 수행된 것을 확인할 수 있다. 이는 ILU 전처리 과정이 행렬 분해와 내부 반복과정 계산으로 대각 전처리 과정보다 시간이 오래 걸리지만, Fig. 8에서 볼 수 있는 바와 같이 ILU-BCGS가 더 적은 반복수로 해를 빨리 수렴시키기 때문이다. 더불어 D-BCGS와 달리 ILU-BCGS의 경우, LU 대비 계산시간이 0.31(A1)에서 0.33(A2)로 큰 변화없이 오히려 소폭 증가하는데, 이를 통해 행렬의 크기가 커질수록 ILU에 수반되는 전처리 과정(Fig. 4) 소요시간이 더 길어지는 영향을 일부 확인할 수 있다.
해석 결과를 바탕으로 구축한 반복법 솔버 패키지가 선형/비선형 정적 구조해석 과정에 수반되는 선형 시스템의 해를 정확도 높게 근사할 수 있음을 확인하였다. 개발된 CG 솔버를 통해 대칭행렬로 구성된 선형 시스템의 수렴성을 확인하였다. 비대칭 행렬의 경우 고려한 최대 반복수 내에서 BCG, BCGS가 수렴하지 못하였는데, 추가적인 전처리기 도입을 통한 행렬 조건수 개선 및 관련 연산을 수행하였다. 이후 D-BCGS 및 ILU-BCGS 방법이 모두 해를 수렴시키는 것을 확인하였다. 특별히 ILU-BCGS가 해석 시간, 정확도, 수렴성 측면에서 구축된 반복법 및 직접법 LU 대비 모두 우수한 결과를 나타내었다.
4. 결 론
본 연구에서는 내연적 시간적분법과 비선형 정적해석에서 발생하는 희소행렬로 구성된 선형 시스템의 해법을 위해 반복법 기반의 자체 솔버 패키지를 개발하고 이를 평가하였다. 이를 위하여 기본적 반복법(Jacobi, Gauss-Seidel, SOR) 및 크릴로프 부공간 기반 반복법(CG, BCG, BCGS), 대각 및 ILU 전처리기 알고리즘을 구현하였다. 희소행렬의 계산 효율성을 위해 CSR 형식 기반으로 연산 코드를 개발하였다. 개발된 솔버 프로그램의 검증 및 실용적 활용을 위해 선형/비선형 구조해석 과정에서 발생하는 시스템 강성행렬 정보를 VCLM 방법을 통해 추출하였다. 이후 대칭/비대칭 특성 및 행렬 크기에 따른 솔버의 적용, 방법 별 정확도 및 시간 평가를 수행하였다. 검증 결과 대칭 강성행렬을 포함하는 선형탄성 문제의 경우 CG 방법을 통해 모두 수렴 가능함을 확인하였고, 비대칭 행렬의 경우 그 크기에 상관없이 대각 및 ILU 전처리기를 연계한 D-BCGS, ILU-BCGS 방법이 모두 해를 도출할 수 있음을 확인하였다. 또한 행렬 크기 증가에 따라 LU 방법의 연산 시간이 반복법 대비 증가하여, 크기가 증가할수록 직접법 대비 반복법의 연산 효율이 좋아짐을 확인하였다.
본 연구에서 고려한 비대칭 행렬 시스템에 대해 ILU-BCGS가 해석 시간, 수렴성 측면에서 가장 우수한 성능을 보였고, 이를 바탕으로 현재 행렬 대형화, 병렬 연산 측면에서 추가 검증이 진행되고 있다. 구축한 프로그램 코드는 구조 및 수치해석 분야의 다양한 선형 시스템 솔버로서 활용될 수 있으며, 자체 솔버로서 확장 개발 및 고신뢰도 모델 가속화 연구에 크게 기여할 것으로 판단된다.












