Ⅰ. 서 론
MLFMM(Multi-Level Fast Multipole Method) 방법은 대규모 산란 계산에 널리 사용하는 수치방법이다[1]. 산란체의 mesh를 octree를 이용하여 그룹화하고, 그룹들 사이의 상호작용(행렬-벡터 곱셈)에 관한 연산량을 감소시킨다. 행렬-벡터 곱셈은 뒤따르는 반복법(iterative method)에서 중복되어 사용되기 때문에 그 효율적 계산이 필수적이다. 이를 위해서는 반복법 또는 행렬-벡터 곱셈을 효율적으로 계산할 수 있다. 전자의 경우, 최근에 반복법 중에서 BiCGstab(l)의 효율적 계산을 위한 l값이 제안되기도 하였다[2]. 본 논문은 후자의 경우에 해당하며, 행렬-벡터 곱셈에 사용되는 transfer 함수의 정확한 계산방법을 제안한다.
그룹간의 상호작용을 계산 시, 식 (1)을 사용한다[3],[4].
여기서 k는 전파상수, 는 그룹 중점 사이의 벡터이고, 는 그룹 중점과 그룹 내 기저함수 사이의 벡터이다. 식 (1)의 적분은 단위원 위에서 계산되며, 적분의 하첨자 1은 단위원(unit sphere)을 의미한다. 은 transfer 함수로 알려져 있고, 다음과 같이 정의 된다[3],[4].
여기서 와 Pl(⋅)는 각각 2차 구면 한켈, 르장드르 함수이고, L은 식 (3)과 같이 계산된다[3].
여기서 D와 d는 각각 그룹 사이와 그룹 박스 한 변의 길이고, β는 유효숫자의 자릿수이며, 주로 6이 사용된다.[4] 통상적으로 식 (2)를 계산할 때, 한켈 함수의 발산을 막기 위하여 kD ≤ L이면 L = kD로 절단하고, kD > L이면 식 (3)을 사용한다[4].
그룹 중점과 그룹 내 기저함수의 거리 x가 멀어질수록 식 (1)의 수치 계산에서 오차가 발생한다. 일반적으로 식 (1)의 계산에 θ와 ϕ방향으로 각각 L과 2L개의 샘플을 사용하여 수치적분한다[3]. 산란체의 크기가 커지는 경우, 계산 정확도를 유지하기 위해 θ와 ϕ방향의 샘플수를 αL과 2αL개로 늘려야 한다[4],[5]. 여기서 α는 오버 샘플링 비율로 알려져 있고, 1 ≤ α ≤ 2 범위내 값을 사용하면 되나, 보통 α ≈ 2를 사용한다[4]. α을 키우면 정확도는 유지되나, 필요한 MLFMM 메모리와 계산시간이 같이 늘어난다. 본 논문에서는 거리에 따른 최소 α를 구하고, 이의 효과를 시뮬레이션으로 검증한다.
Ⅱ. 오버샘플링 비율 및 수치계산 결과
Octree 각 레벨에서 임의의 박스와 바로 인접하는 박스들만 near-field로, 다른 박스들은 far-field로 간주하는 one-box-buffer 방법을 사용하면[3],[4], 각 레벨에서 transfer 함수를 계산해야 하는 D는 2d와 사이에 놓인다. 보다 먼 거리의 박스들은 octree 부모 레벨에서 이미 고려된다. 그림 1은 octree의 일부분을 나타내며, 빗금 친 박스는 기저함수와 테스트함수가 포함된 박스들이다. 그림 2는 octree 레벨에 따른 D의 최대, 최소 범위를 보여준다. 여기서 가장 작은 박스의 크기를 λ/4로 가정하였고, 각 레벨의 박스 크기 d는 octree 레벨마다 2배씩 증가한다. 특히 산란체의 크기가 큰 경우, D > L/k인 영역은 기하급수적으로 늘어나고, 멀리 놓여 있는 박스들 중점 사이의 transfer 함수 계산에 식 (3)을 이용하면 오차가 발생할 수 있다(그림 2). 오차는 kD>L인 경우에, 수치적분의 오버샘플링 비율에 의하여 정확도가 10−β까지 보정될 수 있다[3],[4].
시뮬레이션 조건은 다음과 같다. D를 고정시킨 후 박스 내 기저함수와 테스트함수를 이동시켜, 가 멀어질수록 발생하는 오차를 확인한다. 기저함수와 테 스트함수는 worst case인 박스 내 대각선 방향으로 이동시킨다. 그림 3(a)는 d = λ/2, 인 경우에 자유공간 스칼라 그린함수와 식 (1)의 적분 값의 상대오차를 x에 따라 비교한 결과다. x는 최솟값인 0에서 최댓값인 까지 고려하였다. 인 경우는 발생하지 않는다. 식 (1)의 2중적분을 계산시, θ와 ϕ방향으로 모두 Gauss-Legendre 방법을 사용하는 방법을 G-G, θ방향에는 Gauss-Legendre 방법을 ϕ방향으로는 Simpson 방법을 사용하는 방법을 G-S로 표현하였다. 이 경우, α ≥ 1. 6일 때, 상대오차가 10−β(β=6)으로 수렴한다. 그림 3(b)는 d =64λ이고, 인 경우에 수행한결과이며, α≥1.5 일 때, 상대오차가 10−6으로 수렴한다.
d를 λ/2부터 128λ까지 시뮬레이션 한 결과, transfer 함수 계산의 상대오차가 10−6에 수렴하는 α는 대략 1.5 이상이다. 실제 시뮬레이션 경우, ≈1.5가 필요한 영역에 속한 기저함수의 수는 많지 않아, α<1.5인 경우에도 최종 시뮬레이션 결과에 영향이 작을 수 있다. 그리고 MLFMM 전체오차에는 transfer 함수의 계산뿐만 아니라, aggregation, disaggregation의 보간법과 anterpolation의 정확도 등 여러 요소에 영향을 받기 때문에, 통상적으로 정확도를 10−3 이하를 가정한다[6],[7]. 작은 α값이 수치해석 효율성, 메모리/실행시간을 보증하여, 그림 3에서 보듯이 α=1.2를 사용하였다.
실제 시뮬레이션에서 오버샘플링 비율이 미치는 영향을 보기 위하여, 42λ 크기(N=58만 개)의 완전도체 NASA 아몬드 산란을 h-pol. 평면파가 아몬드의 뾰족한 모서리인 θ=90°, ϕ =0°로 입사하는 경우를 고려한다. 관측각은 θ=90°, ϕ=0°~36°이고, EFIE(Electric Field Integral Equation) 방법을 사용하였다. 그림 4에서 보듯이 α=1인 경우에, 전류 분포가 상업용 툴인 CST 결과와 달리 매우 많은 리플이 존재함을 알 수 있다. 그림 3에서 보듯이, α=1인 경우, transfer 함수 오차가 매우 커 전체 시뮬레이션 결과 (그림 4)의 오차가 커진다. 앞서 설명한 바와 같이 물리적으로, α=1.2를 사용하면 그림 3에서 보듯이 대부분 x/d에 관하여 기저, 테스트 함수 사이 상호작용의 오차가 10−3보다 작아져 최종 시뮬레이션 결과는 충분히 정확하며, 이를 그림 4에서 확인할 수 있다. 그림 5(a)와 그림 5(b)는 각각 co-pol. bistatic RCS(Radar Cross Section) 계산결과와 수렴곡선을 보여준다. 마찬가지로 α=1, α=1.2, 그리고 α=1.6인 경우를 CST 결과와 비교하였고, α=1인 경우에는 MLFMM 반복법 전체의 허용오차인 10−3까지 수렴하하지 못하였고, α=1.2인 경우 수렴하여, 정확한 전류분포 와 RCS를 얻을 수 있다.
표 1은 오버샘플링 비율에 따른 필요 MLFMM 메모리 크기와 시뮬레이션 시간을 비교하여 보여준다. 표 1에서는 CST의 경우, 구체적인 옵션 조정이 불가능하여 동일한 조건하의 비교를 위하여 FEKO를 사용하였다. 그리고 시뮬레이션 시간은 매 반복당 행렬-벡터 곱셈 시간을 비교하였다. 이론적으로 α2에 비례하여 필요 메모리와 계산시간이 커지며, 이를 실제 42λ 크기의 완전도체 NASA 아몬드 산란체에 관하여 수치적으로 확인하였다. 그러므로 최소한의 α를 선택하는 것이 중요하다.
α | 1.0 | 1.2 | 1.6 | FEKO |
Memory [GB] | 5.24 | 7.34 | 13.34 | 5.89 |
Computation time pet each iteration [sec] | 6.075 | 8.068 | 13.97 | 9.57 |
보다 복잡한 형상을 고려하기 위하여, 그림 6과 같은 47λ 크기(N=83만 개)의 비행기 형상을 고려하였다. H-pol. 평면파가 θ=45°, ϕ=90°로 입사한다. 관측각은 θ=0°~45°, ϕ=90°이고, EFIE 방법을 사용하였다. 그림 6에서 보듯이 전류분포는 α=1, α=1.2, 그리고 α=1.6에서 큰 차이를 보이진 않는다. 하지만 그림 7(a)에 나타낸 co-pol. bistatic RCS 결과에서 보듯이, α≥1.2인 경우가 다소 정확한 결과를 나타낸다. 비행기 경우 최대 크기는 증가 하였으나, 물리적으로 기저, 테스트 함수 사이 거리 분포가 나사 아몬드보다 작다. 즉, 많은 기저 함수가 근방에 놓여 있어, 그림 3에서 보듯이 α<1.2를 사용하여도 transfer 함수의 정확도가 나사 아몬드보다 높아, MLFMM의 최종 결과의 정확도도 높아진다.
Ⅲ. 결 론
MLFMM transfer 함수 계산 시, 오버샘플링 비율 α의 영향을 분석하였다. G-G 방법과 G-S 방법 모두, α=1.5~1.6가 최대 정확도 10−6를 보증한다. 또, MLFMM 시뮬레이션에 필요한 메모리와 실행시간이 α2에 비례함을 수치적으로 보였다. 그러므로 최종 시뮬레이션 정확도를 보증하는 최소 α가 필요하고, 이는 다양한 정확도에 대하여, 그림 3을 이용하여 결정할 수 있다. 실 산란해석에서의 정확도는 transfer 함수 계산의 정확도 외, 여러 요소들에 영향을 받아 통상 사용하는 10−3 정확도에는 α=1.2를 사용하는 것이 충분하다는 것을 여러 시뮬레이션으로 검증하였다. 산란체의 크기, 모양에 따라 최적의 α값은 달라질 수 있으나, 이는 그림 3을 이용하여 결정할 수 있다.