Skip to content

This repo contains a basic Matlab wrapper for running the 8th order box code by Greengard and Ethridge

Notifications You must be signed in to change notification settings

mrachh/boxcode2d-legacy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

boxcode-legacy

This repo contains a basic Fortran and Matlab wrapper for running the 8th order box code by Greengard and Ethridge.

To verify successful compilation of the library, run make test after copying over the appropriate version of make.inc

To generate the mex file run make matlab after copying over the appropriate version of make.inc

The interface on input requires a level restricted adaptive tree, and function values tabulated on a 8th order tensor product chebyshev grid at all the leaf boxes.

For more detailed documentation for the input format of the level restricted tree checkout either the subroutine lbfmm2d in src/lbfmm2d.f or the matlab file volfmm8.m or volfmm8_legacy.m

There are two matlab interfaces, one for the legacy tree format, and one for the new tree format

In fortran on a single core, the code runs at approximately 500 k points per second per core for 12 digits of accuracy.

The legacy version of the fortran code, poisson8.f contains more complicated options for evalauting the volume potential such as imposing periodic boundary conditions, or imposing dirichlet/neumann boundary conditions on the edge of the square. However, the more complicated routines have not been thoroughly tested in this wrapped environment and should be used with caution.

About

This repo contains a basic Matlab wrapper for running the 8th order box code by Greengard and Ethridge

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages