Skip to content

sheepforce/Spicy

Repository files navigation

Spicy

built with nix pipeline status License: GPL v3

Spicy is a Haskell program for quantum chemistry and quantum dynamics and aims at providing a set of composable ONIOM methods, that are not widely available. Spicy will not implement quantum chemistry calculations itself, but rather wrap different quantum chemistry programs.

Installing / Building

Nix

Spicy can be build with Nix. This guarantees fully reproducible builds and saves you from the hurdles of installing many packages yourself. Make sure to have the Nix package manager installed on your system. To save some time (aka many hours and gigabytes of RAM ...) during building, you may want to add the Haskell.nix hydra cache. From within the nix directory execute

nix-build --arg wrap true -A spicy.components.exes

or to obtain a Haskell development shell with toolings in the top-level directory

nix-shell

Manually

To build Spicy without Nix, you will need a working Haskell toolchain including a recent GHC (8.10) and cabal. The runtime dependencies (quantum chemistry software) need to be installed and configured manually configured.

A YAML file is required to point Spicy to the executables (or wrapper scripts with same call convention), e.g.

psi4: /opt/psi4/bin/psi4
xtb: /opt/xtb/bin/xtb
gdma: /opt/gdma/bin/gdma
pysisyphus: /opt/pysisyphus/bin/pysis

The environment variable SPICYRC should point to this YAML file.