A fast algorithm for particle simulations
Journal of Computational Physics
SIAM Journal on Scientific Computing
Skeletons from the treecode closet
Journal of Computational Physics
Journal of Computational Physics
Parallel Hierarchical Solvers and Preconditioners for Boundary Element Methods
SIAM Journal on Scientific Computing
Algorithmic challenges in computational molecular biophysics
Journal of Computational Physics - Special issue on computational molecular biophysics
A fast adaptive multipole algorithm in three dimensions
Journal of Computational Physics
Vorticity transport on a Lagrangian Tetrahedral Mesh
Journal of Computational Physics
Improving Error Bounds for Multipole-Based Treecodes
SIAM Journal on Scientific Computing
A modified parallel tree code for N-body simulation of the large-scale structure of the universe
Journal of Computational Physics
Three-dimensional vortex methods for particle-laden flows with two-way coupling
Journal of Computational Physics
A particle method and adaptive treecode for vortex sheet motion in three-dimensional flow
Journal of Computational Physics
Molecular Modeling and Simulation: An Interdisciplinary Guide
Molecular Modeling and Simulation: An Interdisciplinary Guide
A vortex particle method for two-dimensional compressible flow
Journal of Computational Physics
PPM: a highly efficient parallel particle-mesh library for the simulation of continuum systems
Journal of Computational Physics
Multiresolution simulations using particles
VECPAR'06 Proceedings of the 7th international conference on High performance computing for computational science
Hi-index | 31.46 |
Three essential improvements are described to the treecode in terms of the expansion formula, the choice of the expansion order as well as the tree structure. Firstly, the multipole expansion is based on the real spherical harmonic functions to reduce the CPU time. Secondly, the expansion order is given in terms of the ratio of the distance of a field point to a source box to the box size, which reflects the relative error of the expansion. With that, a large portion of the sources has been evaluated by the multipole expansion at low levels of the source tree, which is around two-thirds of sources at the first two levels of the tree averagely. The algorithm reduces the CPU time dependency on expansion order p from O(p2) of the classical treecode to be lower than a linear dependency in pmax where pmax is the maximum expansion order used in the variable order expansion. Thirdly, a revised binary tree is built by performing the bisections thrice at each tree level, discarding the boxes generated in the first two bisections and remaining only the boxes generated in the last one. This tree avoids the disadvantage of a binary treecode demanding significantly more CPU time than an oct-treecode. It has high adaptiveness to the source distribution and perfect load balancing for performing the parallelization. Simulations are carried out for N vortex elements and N field points distributed randomly in a cube, a 5:1:1 parallelepiped, and a 10:1:1 parallelepiped, using the oct-tree and revised binary tree, respectively. The algorithm is an order of magnitude faster than those of Strickland et al. [ESAIM: Proceedings 7 (1999) 408], Warren and Salmon [Comput. Phys. Commun. 87 (1995) 266], and Lindsay and Krasny [J. Comput. Phys. 172 (2001) 879]. Simulations also demonstrate the efficiency of the revised binary treecode for an inhomogeneous source distribution.