SPARC-X / SPARC

Simulation Package for Ab-initio Real-space Calculations
GNU General Public License v3.0
68 stars 37 forks source link

ASE Calculator Interface #181

Open tgmaxson opened 1 year ago

tgmaxson commented 1 year ago

Are there any plans to implement an ASE calculator interface for this code? In particular, an interface allowing for the atomic positions to be streamed in / out of the code would be particularly useful for MD / NEB / Dimer type of calculations.

ajmedford commented 1 year ago

Yes, definitely! This is the goal of the “Python API”, which will follow ASE standards as much as possible. The current repo is outdated, but it is available here: https://github.com/SPARC-X/sparc-dft-api. @alchem0x2A will be merging a massively overhauled version soon, and a socket interface shortly thereafter. He can provide an update here once the new version is pushed to master.

tgmaxson commented 1 year ago

Great, please do update this issue when it's available as I am interested in trying the code as system sizes creep up beyond what VASP is happy to do, but need to be able to hot-swap the codes easily to justify any testing.

ajmedford commented 1 year ago

Sure thing, we will update this once the new interface is available! However, be aware that parameters such as PW cutoff will not translate directly between the two codes due to differences in basis set type and pseudopotentials. Similarly, total energies will not be directly compatible (although well-converged relative quantities like adsorption/reaction energies should be accurate to within numerical tolerances). It may be worth doing a bit of preliminary testing to get a feel for how the convergence differs between the two codes before. Naturally, we're happy to help with any questions that arise in this regard.

phanish-suryanarayana commented 10 months ago

@alchem0x2A Just checking if the ASE interface is ready for @tgmaxson to use.

alchem0x2A commented 10 months ago

@tgmaxson the v1.0+ release of the python api https://github.com/SPARC-X/SPARC-X-API should be a good start point for testing. We've been designing the API / keywords like the ase-vasp interface, so hopefully your system could be transferred. Regarding things like NEB, the current api will cold start a sPARC calculator, but we're close to release a SPARC version with socket interface integrated to boost performance.

For any queries regarding the python api please report at the https://github.com/SPARC-X/SPARC-X-API/issues