Skip to content

ACEsuit/MultilevelSummation.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MultilevelSummation.jl

Documentation CI

A Julia implementation of the Multilevel Summation Method (MSM) of Hardy et al. (J. Chem. Theory Comput. 11, 766–779, 2015) for fast evaluation of long-range pair interactions, with support for any dimension d ∈ {1, 2, 3}, per-axis :open / :periodic boundary conditions, pluggable kernel splittings and interpolation bases, and an AtomsBase + AtomsCalculators interface. Ships with a naive 3D Ewald reference (MultilevelSummation.Reference) and a programmatic hyperparameter sweep API (MultilevelSummation.Tune) for accuracy-vs-cost analysis.

Highly experimental — the API is not stable

  • only the Coulomb (1/r) splitting is currently implemented
  • missing GPU port via KernelAbstractions.jl
  • provides forces, but no ChainRules integration yet

The hot operators are multi-threaded via OhMyThreads.jl. For best performance launch Julia with julia -t auto (or set JULIA_NUM_THREADS).

See the documentation for details, examples, and the implementation plan.

About

Julia implementation of MSM method

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages