A Julian abstract interface for atomic structures.
AtomsBase is currently in the relatively early stages of development and we very much
want developer/user input! If you think anything about it should be
added/removed/changed, please file an issue or chime into the discussion on an
existing one! (Look particularly for issues with the question
label)
AtomsBase is an abstract interface for representation of atomic geometries in Julia. It aims to be a lightweight means of facilitating interoperability between various tools including...
- chemical simulation engines (e.g. density functional theory, molecular dynamics, etc.)
- file I/O with standard formats (.cif, .xyz, ...)
- numerical tools: sampling, integration schemes, etc.
- automatic differentiation and machine learning systems
- visualization (e.g. plot recipes)
Currently, the design philosophy is to be as lightweight as possible, with only a small set of required function dispatches to make adopting the interface into existing packages easy. We also provide a couple of standard flexible implementations of the interface that we envision to be broadly applicable. If features beyond these are required we encourage developers to open PRs or provide their own implementations. For more on how to use the package, see the documentation.
AtomsBase can be installed using the Julia package manager.
From the Julia REPL, type ]
to enter the Pkg REPL mode and run
pkg> add AtomsBase