Octrees가 다중 극 공간 분해에 사용되는 이유는 무엇입니까?


18

FMM (Fast Multipole Method)의 대부분 (모두?) 구현에서 octree는 관련 도메인을 분해하는 데 사용됩니다. 이론적으로 octree는 간단한 체적 경계를 제공하며, 이는 FMM의 O (n) 런타임을 증명하는 데 유용합니다. 이 이론적 근거를 넘어서 다른 트리 또는 트리 데이터 구조보다 Octree를 사용하면 이점이 있습니까?

셀이 바로 인접한 이웃을 알기 때문에 octree를 사용하면 상호 작용 목록을 쉽게 결정할 수 있습니다. 그러나 Dual Tree Traversal 과 같은보다 동적 인 트리 탐색을 사용하면 상호 작용 목록이 필요하지 않습니다.

대안은 kd-tree입니다. 이론적 인 단점 중 하나는 건설에 값 비싼 평균 찾기 작업이 필요하다는 것입니다. 그러나 공간 분할이 덜 효율적이지만 건설 중에 중간 값을 찾을 필요가없는 kd-tree 버전이 있습니다. 구현 측면에서 kd-tree는 매우 간단합니다.

훨씬 더 근본적인 대안은 R-tree 일 수 있습니다 .

그래서 제 질문은 FMM을위한 최고의 선택을하는 Octrees는 무엇입니까?


4
나는 그것이 상호 작용리스트 (어떤 관찰자들이 어느 출처의 원거리에 있는지)를 결정하는 것을 특히 쉽게 만든다고 생각한다.
rchilton1980

모든 형태의 계층 적 공간 분해로 상호 작용 목록을 결정하는 것은 매우 쉬워야합니다.
벤 톰슨

1
옥트리는 이론적으로 분석하기 쉽다는 점에 동의합니다. 매트릭스 (FMM의 대수 일반화) 와 같은 다른 빠른 합산 알고리즘 은 기하학적 이분법 또는 군집 기반 분할과 같은 다른 트리를 사용합니다. H
user2457602

1
나는 이것에 대해 전문가가 아니지만 옥트리에 더 많은 '대칭'이 있다는 사실이 역할을합니까? 옥트리의 파티션은 규칙적으로 배열되고 동일한 정사각형 모양을 가지며, 이는 예를 들어 kd 트리와 비교하여 다중 극 확장을 만드는 데 도움이 될 수 있습니다.
Jannis Teunissen

옥트리는 3 차원에서 도메인 분해의 자연스러운 결과입니다.
gpavanb

답변:


3

위의 설명은 옥트리를 사용하는 몇 가지 좋은 이유를 제시합니다 (즉, 보다 일반적인 직교 이분법과는 달리 각 차원에서 계산 큐브를 반복적 으로 반으로 줄임 ). 상호 작용 목록 계산의 대칭과 단순성은 큰 장점입니다.

Otree가 테이블에 가져 오는 가장 중요한 기능은 FMM을 인수하는 추가 정리 가 하나 이상의 "버퍼"라는 매우 간단한 분리 기준으로 형상과 상관없이 원거리 상호 작용에 대해 체계적으로 만족 된다는 것 입니다. 상자. 다시 말해서, 잠재적 필드의 FMM 합계 표현은 비 병리 적 상황에서 질서가 증가함에 따라 수렴된다는 것이 보장된다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.