Beispiel #1
0
import numpy as np
import adcc
import adcc.backends

from ..misc import expand_test_templates
from .testing import (eri_asymm_construction_test, eri_chem_permutations,
                      operator_import_from_ao_test)

from numpy.testing import assert_almost_equal, assert_array_equal

from adcc.backends import have_backend
from adcc.testdata import static_data

import pytest

if have_backend("veloxchem"):
    import veloxchem as vlx
    from veloxchem.veloxchemlib import (AngularMomentumIntegralsDriver,
                                        LinearMomentumIntegralsDriver)

basissets = ["sto3g", "ccpvdz"]


@expand_test_templates(basissets)
@pytest.mark.skipif(not have_backend("veloxchem"),
                    reason="Veloxchem not found.")
class TestVeloxchem(unittest.TestCase):
    def base_test(self, scfdrv):
        hfdata = adcc.backends.import_scf_results(scfdrv)
        assert hfdata.backend == "veloxchem"
Beispiel #2
0
from ..misc import expand_test_templates
from .testing import eri_asymm_construction_test

from numpy.testing import assert_almost_equal

from adcc.backends import have_backend
from adcc.testdata import static_data

import pytest

basissets = ["sto3g"]


@expand_test_templates(basissets)
@pytest.mark.skipif(not have_backend("molsturm"), reason="molsturm not found.")
class TestMolsturm(unittest.TestCase):
    def base_test(self, scfres):
        hfdata = adcc.backends.import_scf_results(scfres)
        assert hfdata.backend == "molsturm"

        n_orbs_alpha = scfres["n_orbs_alpha"]
        n_alpha = scfres["n_alpha"]
        n_beta = scfres["n_beta"]
        assert hfdata.energy_scf == scfres["energy_ground_state"]
        assert scfres["n_orbs_alpha"] == scfres["n_orbs_beta"]

        params = scfres["input_parameters"]
        coords = np.asarray(params["system"]["coords"])
        charges = np.asarray(params["system"]["atom_numbers"])
        assert hfdata.get_nuclear_multipole(0)[0] == int(np.sum(charges))
## along with adcc. If not, see <http://www.gnu.org/licenses/>.
##
## ---------------------------------------------------------------------
import adcc
import unittest
import numpy as np

from numpy.testing import assert_allclose

from adcc.backends import have_backend
from adcc.testdata import geometry

import pytest


@pytest.mark.skipif(not have_backend("pyscf"), reason="pyscf not found.")
class TestFunctionalityXes(unittest.TestCase):
    # Test for XES calculations using pyscf / adcc

    def base_test(self, system, ref):
        from adcc.backends.pyscf import run_core_hole

        basis = system.split("_")[-1]
        molecule = system.split("_")[0]
        mf = run_core_hole(geometry.xyz[molecule], basis)
        state = adcc.adc2x(mf, conv_tol=1e-7, n_states=len(ref["eigenvalues"]))

        assert_allclose(state.excitation_energies,
                        ref["eigenvalues"],
                        atol=1e-6)
Beispiel #4
0
import numpy as np
import adcc
import adcc.backends

from ..misc import expand_test_templates
from .testing import eri_asymm_construction_test, operator_import_test
from .eri_build_helper import eri_permutations

from numpy.testing import assert_almost_equal

from adcc.backends import have_backend
from adcc.testdata import geometry

import pytest

if have_backend("psi4"):
    import psi4

basissets = ["sto3g", "ccpvdz"]


@expand_test_templates(basissets)
@pytest.mark.skipif(not have_backend("psi4"), reason="psi4 not found.")
class TestPsi4(unittest.TestCase):
    def base_test(self, wfn):
        hfdata = adcc.backends.import_scf_results(wfn)
        assert hfdata.backend == "psi4"

        n_orbs = 2 * wfn.nmo()

        assert hfdata.spin_multiplicity != 0