====== Atomic Simulation Environment ======
The Atomistic Simulation Environment (ASE) is a set of tools and Python modules for setting up, manipulating, running, visualizing, and analyzing atomistic simulations. The code is freely available under the GNU LGPL license.
The ASE comes with a plugin, a so-called calculator, for running simulations with CP2K. The source code of the calculator is in the file [[https://gitlab.com/ase/ase/blob/master/ase/calculators/cp2k.py | ase/calculators/cp2k.py]]. It's documentation can be found [[https://wiki.fysik.dtu.dk/ase/ase/calculators/cp2k.html | here ]].
For more information about ASE in general visit their [[https://wiki.fysik.dtu.dk/ase/ | project page]]
=====Appetizing Example=====
The ASE provides a very convenient, high level interface to CP2K. It bring about the renown [[w>Python_(programming_language)|Pythonic]] productivity. Running a CP2K calculation can be as easy as this:
$ export ASE_CP2K_COMMAND="mpirun -n 2 cp2k_shell.popt"
$ python
>>> from ase.calculators.cp2k import CP2K
>>> from ase.build import molecule
>>> calc = CP2K()
>>> atoms = molecule('H2O', calculator=calc)
>>> atoms.center(vacuum=2.0)
>>> print(atoms.get_potential_energy())
-467.191035845
For more examples have a look at the test suite in [[ https://gitlab.com/ase/ase/tree/master/ase/test/calculator/cp2k | ase/test/calculator/cp2k]].
The environment variable ''$ASE_CP2K_COMMAND'' must point to the **CP2K-shell** binary.
=====Remote Usage over SSH=====
The ASE calculator communicate with the CP2K-shell solely over stdin/stdout pipes. Therefore, one can launch the CP2K-shell on a remote host via ssh. For this the environment variable ''$ASE_CP2K_COMMAND'' has to be setup accordingly:
export ASE_CP2K_COMMAND="ssh your-compute-host.com \"mpirun -np 2 /path/to/cp2k_shell.popt\""