# TREECODE3D subroutines

Primary author: Hans Johnston
(johnston@math.umass.edu)

Department of Mathematics & Statistics

University of Massachusetts, Amherst

TREECODE3D, TREECODE3D_TARG, TREECODE3D_TARG_OPENMP, and TREECODE3D_YUKAWA are free software; you can redistribute them and/or modify
them under the terms of the GNU
General Public License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.

TREECODE3D, TREECODE3D_TARG, TREECODE3D_TARG_OPENMP, and TREECODE3D_YUKAWA are distributed in the hope that they will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License
for more details.

You should have received a copy of the GNU General Public License
along with these programs; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

## Access to the sourcecode

** TREECODE3D ** is a Fortran90 subroutine for approximating the total
electrostatic energy potential and force of N mutually interacting charged
particles in three dimensions using an adaptive treecode.

Version 1.0 is available in a zipped tar-file here :
TREECODE3D_1_0.tar.gz.

Included in the tar-file is the following
README file.

** TREECODE3D_TARG ** is a Fortran90 subroutine for approximating
the electrostatic energy potential and force at M target
particles due to the sources at N charged particles
in three dimensions using an
adaptive treecode.

Version 1.0 is available in a zipped tar-file here :
TREECODE3D_TARG_1_0.tar.gz.

Included in the tar-file is the following
README_TARG file.

** TREECODE3D_TARG_OPENMP ** is a Fortran90 subroutine
for approximating
the electrostatic energy potential and force at M target
particles due to the sources at N charged particles
in three dimensions using an
adaptive treecode. It is called from a threaded driver
routine, and computes the potential and/or force on a subset
of the target particles.

Version 1.0 is available in a zipped tar-file here :
TREECODE3D_TARG_OPENMP_1_0.tar.gz.

Included in the tar-file is the following
README_TARG_OPENMP file.

** TREECODE3D_YUKAWA ** is a Fortran90 subroutine for approximating
the screened Coulomb (Yukawa)
electrostatic energy potential and force of N mutually interacting charged
particles in three dimensions using an adaptive treecode.

Version 1.1 is available in a zipped tar-file here :
TREECODE3D_YUKAWA_1_1.tar.gz.

Included in the tar-file is the following
README_YUKAWA file.

References:

Li, P., Johnston, H., Krasny, R.: A Cartesian Taylor series treecode
for screened Coulomb interactions. J. Comput. Phys., 228 (2009) 3858-3868
Lindsay, K., Krasny, R.: A particle method and adaptive treecode
for vortex sheet motion in 3-D flow. J. Comput. Phys., 172
(2001) 879-907
Duan, Z.-H., Krasny, R.: An adaptive treecode for computing
nonbonded potential energy in classical molecular systems.
J. Comput. Chem., 22 (2001) 184-195
Lindsay, K.: A three-dimensional Cartesian tree-code and
applications to vortex sheet roll-up. Ph.D. Thesis, University
of Michigan (1997)