#!/usr/bin/env python2 # -*- coding: utf-8 -*- """ Installs basis sets in the data directory from Basis Set Exchange. Usage: qp_basis list qp_basis get BSE_BASIS qp_basis install BSE_BASIS QP_BASIS """ from __future__ import print_function import sys import os import subprocess try: from docopt import docopt from qp_path import QP_ROOT except ImportError: print("Please check if you have sourced the ${QP_ROOT}/quantum_package.rc") print("(`source ${QP_ROOT}/quantum_package.rc`)") sys.exit(1) def main(arguments): """Main function""" if arguments["list"]: os.system("bse list-basis-sets") elif arguments["install"]: bse_basis = arguments["BSE_BASIS"] qp_basis = arguments["QP_BASIS"] for character in """"[]{}()*&%$#!;:,<>?'|\\""": if character in qp_basis: print("Invalid character %s in QP_BASIS"%character) sys.exit(1) path = QP_ROOT+"/data/basis/"+qp_basis os.system("bse get-basis --unc-spdf '%s' gamess_us > %s"%(bse_basis, path)) elif arguments["get"]: bse_basis = arguments["BSE_BASIS"] os.system("bse get-basis --unc-spdf '%s' gamess_us"%(bse_basis)) if __name__ == '__main__': ARGS = docopt(__doc__) main(ARGS)