From 566780b91eccd939343ec23b7c07c345ace2e528 Mon Sep 17 00:00:00 2001
From: "Josef M. Gallmetzer" <64498081+galjos@users.noreply.github.com>
Date: Wed, 8 Jul 2026 14:11:54 +0200
Subject: [PATCH 1/2] Support Turbomole's multi-file output in
read_cclib/cclib_thermo
Verified against a real Turbomole 7.2 aoforce (frequency) calculation,
fetched from cclib's own public regression-test data (cclib/cclib-data).
Turbomole splits a job's output across many small files instead of one
logfile (control, coord, aoforce.out, ...). cclib's own ccread/ccopen
supports this via its documented multi-file mode (source: str | list[str]),
but read_cclib/cclib_thermo always did cclib.io.ccread(str(path)), which
silently cannot accept a list -- so despite the docs/module docstring
listing Turbomole as supported, it could not actually be used at all.
Accept path/output_file as a single path or a list of paths (_normalize_source),
passed through to cclib unmodified for the list case, with a readable
_describe_source for error messages either way.
Add the real captured Turbomole aoforce.out + companion files as test
fixtures (a 7-atom Au/N/Cl complex) and tests parsing them end to end
through read_cclib and cclib_thermo, plus unit tests for the new helpers.
Closes #109
---
ThermoScreening/calculator/qm.py | 40 +-
ThermoScreening/thermo/api.py | 9 +-
docs/usage.rst | 6 +-
tests/calculator/test_qm.py | 75 +-
tests/data/calculator/turbomole/README.md | 7 +
tests/data/calculator/turbomole/aoforce.out | 808 ++++++++++++++++
tests/data/calculator/turbomole/auxbasis | 148 +++
tests/data/calculator/turbomole/basis | 200 ++++
tests/data/calculator/turbomole/control | 197 ++++
tests/data/calculator/turbomole/coord | 35 +
tests/data/calculator/turbomole/energy | 23 +
tests/data/calculator/turbomole/gradient | 287 ++++++
tests/data/calculator/turbomole/hessian | 107 +++
tests/data/calculator/turbomole/job.last | 903 ++++++++++++++++++
tests/data/calculator/turbomole/ridft.out | 469 +++++++++
.../calculator/turbomole/vib_normal_modes | 107 +++
tests/data/calculator/turbomole/vibspectrum | 25 +
17 files changed, 3433 insertions(+), 13 deletions(-)
create mode 100644 tests/data/calculator/turbomole/README.md
create mode 100644 tests/data/calculator/turbomole/aoforce.out
create mode 100644 tests/data/calculator/turbomole/auxbasis
create mode 100644 tests/data/calculator/turbomole/basis
create mode 100644 tests/data/calculator/turbomole/control
create mode 100644 tests/data/calculator/turbomole/coord
create mode 100644 tests/data/calculator/turbomole/energy
create mode 100644 tests/data/calculator/turbomole/gradient
create mode 100644 tests/data/calculator/turbomole/hessian
create mode 100644 tests/data/calculator/turbomole/job.last
create mode 100644 tests/data/calculator/turbomole/ridft.out
create mode 100644 tests/data/calculator/turbomole/vib_normal_modes
create mode 100644 tests/data/calculator/turbomole/vibspectrum
diff --git a/ThermoScreening/calculator/qm.py b/ThermoScreening/calculator/qm.py
index d0141fe..6c5cdfe 100644
--- a/ThermoScreening/calculator/qm.py
+++ b/ThermoScreening/calculator/qm.py
@@ -47,17 +47,40 @@ def _best_energy_ev(data):
return None
+def _normalize_source(path):
+ """
+ Coerce ``path`` into what ``cclib.io.ccread`` expects: a single path string,
+ or a list of path strings for a multi-file program.
+ """
+ if isinstance(path, (list, tuple)):
+ return [str(p) for p in path]
+ return str(path)
+
+
+def _describe_source(path):
+ """A short, readable description of ``path`` for error messages."""
+ if isinstance(path, (list, tuple)):
+ return ", ".join(str(p) for p in path)
+ return str(path)
+
+
def read_cclib(path):
"""
Read geometry, vibrational frequencies and energy from a QM output file.
- Uses cclib to parse any supported program's output (Gaussian, Turbomole,
- ORCA, Psi4, NWChem, ...).
+ Uses cclib to parse any supported program's output (Gaussian, ORCA, Psi4,
+ NWChem, ...). Most programs write one logfile per job; pass its path.
+
+ **Turbomole** splits a job's output across many small files instead of one
+ logfile (``control``, ``coord``, ``aoforce.out``, ...); pass a list of every
+ relevant file's path (cclib's own multi-file mode) rather than a single path.
Parameters
----------
- path : str
- Path to a QM frequency-calculation output file.
+ path : str or list of str
+ Path to a QM frequency-calculation output file, or (for a multi-file
+ program such as Turbomole) a list of paths to every relevant file from
+ the same job.
Returns
-------
@@ -81,17 +104,18 @@ def read_cclib(path):
Raises
------
TSValueError
- If cclib is not installed, the file cannot be parsed, or it has no
+ If cclib is not installed, the file(s) cannot be parsed, or there are no
vibrational frequencies.
"""
cclib = _import_cclib()
- data = cclib.io.ccread(str(path))
+ data = cclib.io.ccread(_normalize_source(path))
if data is None:
- raise TSValueError(f"cclib could not parse '{path}' as a QM output.")
+ raise TSValueError(f"cclib could not parse '{_describe_source(path)}' as a QM output.")
if getattr(data, "vibfreqs", None) is None or not len(data.vibfreqs):
raise TSValueError(
- f"'{path}' has no vibrational frequencies (run a frequency calculation)."
+ f"'{_describe_source(path)}' has no vibrational frequencies "
+ "(run a frequency calculation)."
)
atoms = Atoms(numbers=np.asarray(data.atomnos), positions=np.asarray(data.atomcoords[-1]))
diff --git a/ThermoScreening/thermo/api.py b/ThermoScreening/thermo/api.py
index edcae8f..d89784c 100644
--- a/ThermoScreening/thermo/api.py
+++ b/ThermoScreening/thermo/api.py
@@ -540,11 +540,14 @@ def cclib_thermo(
Parameters
----------
- output_file : str
- Path to a QM frequency-calculation output file.
+ output_file : str or list of str
+ Path to a QM frequency-calculation output file. Turbomole splits a job's
+ output across many small files instead of one logfile (``control``,
+ ``coord``, ``aoforce.out``, ...); pass a list of every relevant file's
+ path for it (cclib's multi-file mode) rather than a single path.
energy : float, optional
Electronic energy in Hartree. Defaults to the best energy cclib parses
- from the file; pass this to override it (e.g. a higher-level single
+ from the file(s); pass this to override it (e.g. a higher-level single
point) or when cclib finds no energy.
temperature : float
Temperature in K. Default 298.15.
diff --git a/docs/usage.rst b/docs/usage.rst
index 4fa2459..eb1c260 100644
--- a/docs/usage.rst
+++ b/docs/usage.rst
@@ -131,9 +131,13 @@ which auto-detects the program via `cclib `_:
from ThermoScreening.thermo.api import cclib_thermo
- thermo = cclib_thermo("freq.log") # Gaussian, Turbomole, ORCA, ...
+ thermo = cclib_thermo("freq.log") # Gaussian, ORCA, Psi4, NWChem, ...
print(thermo.total_gibbs_free_energy()) # energy read from the output, in Hartree
+ # Turbomole splits a job's output across many files instead of one logfile;
+ # pass every relevant file's path as a list (cclib's multi-file mode)
+ ts_thermo = cclib_thermo(["control", "coord", "aoforce.out"])
+
``read_cclib`` returns the parsed ``(atoms, frequencies, energy)`` if you want
them directly; ``energy=`` overrides the parsed energy.
diff --git a/tests/calculator/test_qm.py b/tests/calculator/test_qm.py
index 27e054f..781d62f 100644
--- a/tests/calculator/test_qm.py
+++ b/tests/calculator/test_qm.py
@@ -1,5 +1,6 @@
import math
import types
+from pathlib import Path
import numpy as np
import pytest
@@ -7,12 +8,23 @@
import cclib.io
from ThermoScreening.calculator import qm
-from ThermoScreening.calculator.qm import read_cclib, _best_energy_ev
+from ThermoScreening.calculator.qm import (
+ read_cclib,
+ _best_energy_ev,
+ _normalize_source,
+ _describe_source,
+)
from ThermoScreening.thermo.api import cclib_thermo
from ThermoScreening.exceptions import TSValueError
_H_TO_EV = 27.211386245988
+_REAL_TURBOMOLE_FILES = sorted(
+ str(p) for p in
+ (Path(__file__).resolve().parents[1] / "data" / "calculator" / "turbomole").glob("*")
+ if p.suffix != ".md"
+)
+
# water: geometry (Angstrom), three real modes, SCF energy in eV (~ -76.4 Ha)
_WATER = dict(
atomnos=np.array([8, 1, 1]),
@@ -106,3 +118,64 @@ def test_cclib_thermo_requires_energy(monkeypatch, tmp_path):
_fake_ccread(monkeypatch, **data)
with pytest.raises(TSValueError, match="No energy"):
cclib_thermo(str(tmp_path / "water.log"))
+
+
+# --- multi-file (Turbomole) support --- #
+#
+# Turbomole splits a job's output across many small files instead of one
+# logfile, so cclib.io.ccread must receive a LIST of paths for it, not a
+# single path. read_cclib previously always did cclib.io.ccread(str(path)),
+# which silently could not support this at all.
+
+
+def test_normalize_source_single_path_is_a_string():
+ assert _normalize_source("a.log") == "a.log"
+ assert _normalize_source(Path("a.log")) == "a.log"
+
+
+def test_normalize_source_list_stays_a_list_of_strings():
+ assert _normalize_source(["control", Path("coord"), "aoforce.out"]) == [
+ "control", "coord", "aoforce.out",
+ ]
+
+
+def test_describe_source_formats_both_forms():
+ assert _describe_source("a.log") == "a.log"
+ assert _describe_source(["a", "b"]) == "a, b"
+
+
+def test_read_cclib_passes_a_list_through_to_ccread_unmodified(monkeypatch):
+ captured = {}
+
+ def fake_ccread(source):
+ captured["source"] = source
+ return types.SimpleNamespace(**_WATER)
+
+ monkeypatch.setattr(cclib.io, "ccread", fake_ccread)
+ files = ["control", "coord", "aoforce.out"]
+ read_cclib(files)
+
+ assert captured["source"] == files # not str(files) / a single joined string
+
+
+def test_read_cclib_real_turbomole_output():
+ # a genuine Turbomole 7.2 aoforce (frequency) calculation; see
+ # tests/data/calculator/turbomole/README.md for provenance
+ atoms, freqs, energy = read_cclib(_REAL_TURBOMOLE_FILES)
+
+ assert list(atoms.get_chemical_symbols()) == ["Cl", "Au", "N", "N", "Au", "N", "N"]
+ assert len(freqs) == 15 # 3*7 - 6, all real (a genuine minimum)
+ assert freqs.min() > 0
+ assert freqs.min() == pytest.approx(17.75)
+ assert freqs.max() == pytest.approx(2303.92)
+ # cclib's scfenergies (eV) converted to Hartree, cross-checked against the
+ # raw eV value cclib itself reports for this file (-25880.26134295 eV)
+ assert energy == pytest.approx(-25880.26134295 / _H_TO_EV)
+
+
+def test_cclib_thermo_real_turbomole_output():
+ thermo = cclib_thermo(_REAL_TURBOMOLE_FILES)
+
+ assert thermo.electronic_energy() == pytest.approx(-951.0820621320888)
+ assert math.isfinite(thermo.total_EeGtot())
+ assert thermo.total_entropy("cal/(mol*K)") > 0
diff --git a/tests/data/calculator/turbomole/README.md b/tests/data/calculator/turbomole/README.md
new file mode 100644
index 0000000..e96160e
--- /dev/null
+++ b/tests/data/calculator/turbomole/README.md
@@ -0,0 +1,7 @@
+Real Turbomole 7.2 `aoforce` output (a frequency calculation on a 7-atom
+gold/azide/chloride complex), used to test `read_cclib`/`cclib_thermo`'s
+multi-file mode against a genuine, non-single-logfile QM program.
+
+Source: [cclib/cclib-data](https://github.com/cclib/cclib-data), the cclib
+project's own public regression-test data,
+`Turbomole/Turbomole7.2/au2_n22_cl_+_bp86-d3bj-deftzvp/`.
diff --git a/tests/data/calculator/turbomole/aoforce.out b/tests/data/calculator/turbomole/aoforce.out
new file mode 100644
index 0000000..40e9d35
--- /dev/null
+++ b/tests/data/calculator/turbomole/aoforce.out
@@ -0,0 +1,808 @@
+ operating system is UNIX !
+
+ force (compute-1-1.local) : TURBOMOLE V7.2 ( 21285 ) 30 Jun 2017 at 11:51:10
+ Copyright (C) 2017 TURBOMOLE GmbH, Karlsruhe
+
+
+ 2019-03-19 09:52:26.430
+
+
+
+ T U R B O M O L E
+
+ a o f o r c e - program
+
+ using direct algorithms for
+
+ SCF level calculations of
+ * harmonic force constants
+ * hyperpolarizabilities
+ * IR and RAMAN intensities
+ * VCD intensities
+
+ DFT level calculations of
+ * harmonic force constants
+ * IR intensities
+
+ Stephan Boecker, Peter Deglmann, Filipp Furche and Marco Haeser
+ Quantum Chemistry Group
+ Universitaet Karlsruhe
+ Germany
+
+
+
+
+
+ References :
+
+ RI-J implementation:
+ Peter Deglmann, Klaus May, Filipp Furche, Reinhart Ahlrichs
+ Chem. Phys. Lett. 384:103 (2004)
+
+ Efficiency, technical details:
+ Peter Deglmann, Filipp Furche, Reinhart Ahlrichs
+ Chem. Phys. Lett. 362:511 (2002)
+
+ Search of lowest eigenvalues by iterative diagonalization:
+ Peter Deglmann, Filipp Furche
+ J. Chem. Phys. 117:9535 (2002)
+
+ Vibrational circular dichroism implementation:
+ Kevin Reiter, Michael Kuehn, Florian Weigend
+ J. Chem. Phys. 146:054102 (2017)
+
+
+
+
+ +--------------------------------------------------+
+ | Atomic coordinate, charge and isotop information |
+ +--------------------------------------------------+
+
+ atomic coordinates atom charge isotop
+ 0.00000000 0.00000000 -4.21900803 cl 17.000 0
+ 3.20995422 0.00000000 -1.34590515 au 79.000 0
+ 6.05830202 0.00000000 1.05651158 n 7.000 0
+ 7.65957070 0.00000000 2.39889759 n 7.000 0
+ -3.20995422 0.00000000 -1.34590515 au 79.000 0
+ -6.05830202 0.00000000 1.05651158 n 7.000 0
+ -7.65957070 0.00000000 2.39889759 n 7.000 0
+
+ center of nuclear mass : -0.00000000 0.00000000 -1.20099058
+ center of nuclear charge: 0.00000000 0.00000000 -1.16256366
+
+ +--------------------------------------------------+
+ | basis set information |
+ +--------------------------------------------------+
+
+ we will work with the 1s 3p 5d 7f 9g ... basis set
+ ...i.e. with spherical basis functions...
+
+ type atoms prim cont basis
+ ---------------------------------------------------------------------------
+ cl 1 105 70 def2-QZVPP [9s6p4d2f1g|20s14p4d2f1g]
+ au 2 109 88 def2-QZVPP [7s5p4d4f2g|9s8p6d4f2g]
+ n 4 77 57 def2-QZVPP [7s4p3d2f1g|15s8p3d2f1g]
+ ---------------------------------------------------------------------------
+ total: 7 631 474
+ ---------------------------------------------------------------------------
+
+ total number of primitive shells : 99
+ total number of contracted shells : 134
+ total number of cartesian basis functions : 606
+ total number of SCF-basis functions : 474
+
+ number of unique ecp types : 1
+
+ FOUND RI-J FLAG !
+
+
+ NOTE: THIS IS A PRELIMINARY IMPLEMENTATION. THE RI APPROXIMATION IS
+ PRESENTLY USED FOR CPKS CONTRIBUTIONS TO THE HESSIAN ONLY! SEE
+ MANUAL FOR FURTHER DETAILS.
+
+
+ AUXILIARY BASIS SET information:
+
+ we will work with the 1s 3p 5d 7f 9g ... basis set
+ ...i.e. with spherical basis functions...
+
+ type atoms prim cont basis
+ ---------------------------------------------------------------------------
+ cl 1 77 51 def2-QZVPP [8s4p3d1f1g|14s5p5d2f1g]
+ au 2 99 89 def2-QZVPP [8s5p5d2f3g|11s5p5d3f3g]
+ n 4 70 49 def2-QZVPP [6s4p3d1f1g|12s5p4d2f1g]
+ ---------------------------------------------------------------------------
+ total: 7 555 425
+ ---------------------------------------------------------------------------
+
+ total number of primitive shells : 78
+ total number of contracted shells : 123
+ total number of cartesian basis functions : 543
+ total number of SCF-basis functions : 425
+
+
+ symmetry group of the molecule : c2v
+
+ the group has the following generators :
+ c2(z)
+ mirror plane sigma(xz)
+
+ 4 symmetry operations found
+
+ there are 4 real representations : a1 a2 b1 b2
+
+ maximum number of shells which are related by symmetry : 2
+
+
+ determining totally symmetric integral contributions
+ - equivalent to irreducible tensor elements -
+ which can be formed within each triple of representations :
+
+ representation triple contributions
+
+ a1 a1 a1 1
+ a1 a2 a2 1
+ a1 b1 b1 1
+ a1 b2 b2 1
+ a2 a1 a2 1
+ a2 a2 a1 1
+ a2 b1 b2 1
+ a2 b2 b1 1
+ b1 a1 b1 1
+ b1 a2 b2 1
+ b1 b1 a1 1
+ b1 b2 a2 1
+ b2 a1 b2 1
+ b2 a2 b1 1
+ b2 b1 a2 1
+ b2 b2 a1 1
+
+ mo occupation :
+ irrep mo's occupied
+ a1 159 17
+ a2 81 4
+ b1 145 14
+ b2 89 6
+
+ number of basis functions : 474
+ number of occupied orbitals : 41
+
+ MOs are in ASCII format !
+
+
+ reading orbital data $scfmo from file mos
+ orbital characterization : scfconv=6
+ time elapsed for calculating density matrices : 0.018 sec
+
+ number of non-frozen orbitals : 474
+ number of non-frozen occupied orbitals : 41
+ Blocking parameters
+ shells:
+ index start shell last shell start bf last bf #bf
+ 1 1 125 1 471 471
+ 2 126 134 472 606 135
+
+ ----------------------
+ RI - INFORMATION
+ ----------------------
+
+ biggest AO integral is expected to be 12.165751258
+
+ Threshold for integral neglect (rithr2): 0.21E-10
+ Threshold for integral neglect (rithr1): 0.21E-10
+
+ Contributions to RI integral batches:
+ neglected integral batches: 5748
+ direct contribution: 0
+ memory contribution: 3297
+ Core memory available (ricore): 2000 MiB
+ Core memory needed for (P|Q) and Cholesky: 1 MiB
+ Core memory used for integrals: 283 MiB
+
+ ****************************************
+ Memory allocated for RIDFT: 284 MiB
+ ****************************************
+
+
+ ------------------
+ density functional
+ ------------------
+ B-P86 functional
+ exchange: LDA + Becke (B88)
+ correlation: LDA (VWN) + Perdew (P86)
+
+ iterations will be done with small grid
+
+ spherical integration : Lebedev's spherical grid
+ spherical gridsize : 4
+ i.e. gridpoints : 434
+ value for diffuse not defined
+ radial integration : Chebyshev 2nd kind (scaling 3)
+ radial gridsize : 6
+ integration cells : 4
+ partition function : becke
+ partition sharpness : 3
+
+
+ Derivatives of quadrature weights will be included
+
+ Overall gridpoints after grid construction = 26614
+ Ordering of quadrature gridpoints disabled.
+
+
+
+
+ OCCUPIED-OCCUPIED TENSOR SPACES :
+
+ IRREP tensor space dimension number of roots
+
+ a1 537 6
+ a2 304 2
+ b1 524 5
+ b2 316 2
+
+ OCCUPIED-VIRTUAL TENSOR SPACES :
+
+ IRREP tensor space dimension number of roots
+
+ a1 5054 6
+ a2 3825 2
+ b1 5009 5
+ b2 3865 2
+
+
+
+
+ CONSTRUCTING integral bounds
+
+ setting up bound for integral derivative estimation
+
+ increment for numerical differentiation : 0.00050000
+
+ machine precision: 2.220446049250313E-016
+
+ integral neglect threshold : 0.10E-09
+ integral storage threshold THIZE : 0.10E-04
+ integral storage threshold THIME : 5
+
+
+
+
+ PREPARING NUMERICAL INTEGRATION
+
+ Remaining core memory for DFT = 389 MB
+
+ Memory needed per atom = 4310 KiB
+
+ i. e. 7 atoms per loop
+
+ Calculating ground state density on molecular grid
+
+ Integral of ground state density: N = 81.99999576159350
+
+
+
+
+ CONSTRUCTING first deriv. of -> Dip. deriv.
+ dipole integral derivatives will be neglected if
+ expon. factor <0.825083E-11
+ ...terminated. cpu: 0.06 wall: 0.06
+
+
+
+
+ CONSTRUCTING first deriv. of
+ -> RHS
+ second deriv. of -> Hessian
+ -> Hessian
+ nucl. rep. -> Hessian
+ integrals are neglected if expon. factor < 8.250825082508250E-013
+
+ CONSTRUCTING ECP contribution -> RHS
+
+ -> Hessian
+ _________________________________
+ | |
+ | DFTD3 V3.1 Rev 0 |
+ | S.Grimme, University Bonn |
+ | June 2014 |
+ | see standalone version |
+ | dftd3 -h for options |
+ |_________________________________|
+
+ Please cite DFT-D3 work done with this code as:
+ S. Grimme, J. Antony, S. Ehrlich and H. Krieg,
+ J. Chem. Phys, 132 (2010), 154104.
+ If used with BJ-damping cite also
+ S. Grimme, S. Ehrlich and L. Goerigk,
+ J. Comput. Chem. 32 (2011), 1456-1465
+ For DFT-D2 the reference is
+ S. Grimme, J. Comput. Chem., 27 (2006), 1787-1799
+
+ ...terminated. cpu: 10.58 wall: 10.60
+
+
+
+
+ CONSTRUCTING second deriv. of 2e energy -> Hessian
+ treating Coulomb (and exchange) contribution
+ integrals will be neglected if total contribution < 8.250825082508250E-009
+ ...terminated. cpu: 583.93 wall: 584.03
+ treating exchange-correlation contribution
+ ...terminated. cpu: 195.78 wall: 195.82
+
+
+
+
+ CONSTRUCTING S(i,j)xi
+ ...terminated. cpu: 0.06 wall: 0.06
+
+
+
+
+ CONSTRUCTING *S(i,j)xi -> Dip. deriv.
+ ...terminated. cpu: 0.29 wall: 0.30
+
+
+
+
+ CONSTRUCTING epsilon(i)*S(i,j)xi*S(i,j)chi -> Hessian
+ ...terminated. cpu: 0.00 wall: 0.00
+
+
+
+
+ CONSTRUCTING G(a,i)[S(k,l)xi] -> RHS
+ G(i,j)[S(k,l)xi]*S(i,j)chi -> Hessian
+
+ Maximum core memory set to 500 MB
+ This corresponds to 178 vectors in CAO basis
+ ...terminated. cpu: 66.40 wall: 66.42
+
+
+
+
+ CONSTRUCTING G(mu,nu)[D(kap,lam)]xi
+
+ Maximum core memory set to 500 MB
+ Atoms treated simultaneously : 7
+ ...terminated. cpu: 650.87 wall: 651.00
+
+
+
+
+ CONSTRUCTING F(a,i)xi -> RHS
+ F(i,j)xi*S(i,j)chi -> Hessian
+
+ Maximum core memory set to 500 MB
+ This corresponds to 346 vectors in CAO basis
+ ...terminated. cpu: 0.78 wall: 1.04
+
+
+
+
+ CONSTRUCTING epsilon(i)*S(a,i)xi -> RHS
+ ...terminated. cpu: 0.56 wall: 0.57
+
+
+
+
+ SOLVING CPHF equations
+
+ Residuum convergence criterium : 1.000000000000000E-005
+
+ Maximum number of Davidson iterations set to 25
+ Switching to small grid
+ preparing numerical integration ....
+ Overall gridpoints after grid construction = 9170
+
+ Calculating ground state density on molecular grid
+
+ Integral of ground state density: N = 82.00021801444002
+
+
+
+
+ Nonorthonormal Krylov Space Iteration
+
+
+ total number of roots to be determined: 15
+
+
+ maximum core memory set to 500 MB,
+ corresponding to 175 vectors in CAO basis
+
+
+ maximum number of simultaneously treated vectors (including degeneracy): 15
+
+
+ Iteration IRREP Converged Max. Euclidean
+ roots residual norm
+
+ 1 a1 0 7.888330539967812D-02
+ a2 0 1.718400249420199D-02
+ b1 0 8.627082636324823D-02
+ b2 0 1.955047628944048D-02
+
+ 2 a1 0 2.434139085498837D-02
+ a2 0 2.389940370451831D-03
+ b1 0 2.326133500659618D-02
+ b2 0 2.671353190920781D-03
+
+ 3 a1 0 4.617828012552646D-03
+ a2 0 4.026155185382439D-04
+ b1 0 2.877344295618284D-03
+ b2 0 4.364649619850305D-04
+
+ 4 a1 0 4.771673757614342D-04
+ a2 0 3.094813905489956D-05
+ b1 0 3.203078565412117D-04
+ b2 0 8.684837689774434D-05
+
+ 5 a1 2 4.702894816909419D-05
+ a2 2 4.629455242311387D-06
+ b1 1 4.831810058266846D-05
+ b2 1 1.348567995790321D-05
+
+ 6 a1 6 3.704011837757077D-06
+ a2 2 4.629455242311387D-06
+ b1 5 4.650446238381671D-06
+ b2 2 6.174110010578372D-06
+
+
+ converged!
+
+ Switching to fine grid
+ preparing numerical integration ....
+ Overall gridpoints after grid construction = 26614
+
+ Calculating ground state density on molecular grid
+
+ Integral of ground state density: N = 81.99999576159350
+
+
+
+ Iteration IRREP Converged Max. Euclidean
+ roots residual norm
+
+ 7 a1 2 1.729314913587623D-05
+ a2 0 1.630696766070572D-05
+ b1 1 1.845569119969989D-05
+ b2 0 1.715450748059043D-05
+
+
+ NOTE: Residual norms are larger than 1.00D-05 due to mgrid option!
+
+ ...terminated. cpu: 142.30 wall: 142.52
+
+
+
+
+ CONSTRUCTING *U(a,i)xi -> Dip. deriv.
+ ...terminated. cpu: 0.29 wall: 0.30
+
+
+
+
+ CONSTRUCTING RHS(a,i)xi*U(a,i)chi -> Hessian
+ ...terminated. cpu: 0.00 wall: 0.01
+
+
+
+
+
+ -----------------------
+ permanent dipole moment
+ -----------------------
+
+ x y z
+ electronic part : -0.0000000000 0.0000000000 74.1809337648
+ nuclear part : 0.0000000000 0.0000000000 -74.4918039952
+ total : -0.0000000000 0.0000000000 -0.3108702304
+
+ with reference to the point : 0.0000000 0.0000000 0.0000000
+ (given in atomic units)
+ | dipole | : 0.7901592826 debye
+
+ *** dipole moment & cartesian dipole gradients written onto
+ $dipole, $dipgrad, file= ***
+
+ -----------------------------------
+ rotational and vibrational analysis
+ -----------------------------------
+
+
+ ==============================================================
+ ATOMIC WEIGHTS (average over the natural occurance of isotops)
+ ==============================================================
+ ('*' denotes special isotop !)
+ 1 cl 35.45300
+ 2 au 196.97000
+ 3 n 14.00670
+ 4 n 14.00670
+ 5 au 196.97000
+ 6 n 14.00670
+ 7 n 14.00670
+
+ -------------------------------------------------
+ CARTESIAN FORCE CONSTANT MATRIX (hartree/bohr**2)
+ (translational & rotational space projected out)
+ -------------------------------------------------
+
+ ATOM 1 cl 2 au
+ dx dy dz dx dy dz
+ 1 cl dx 0.1293722
+ dy 0.0000000 0.0096957
+ dz 0.0000000 0.0000000 0.1179527
+ 2 au dx -0.0640369 0.0000000-0.0502676 0.1481383
+ dy 0.0000000-0.0118001 0.0000000 0.0000000 0.0325552
+ dz -0.0472562 0.0000000-0.0606118 0.0980729 0.0000000 0.1204226
+ 3 n dx 0.0001775 0.0000000-0.0100682-0.0649498 0.0000000-0.0289989
+ dy 0.0000000 0.0090184 0.0000000 0.0000000-0.0305459 0.0000000
+ dz -0.0072974 0.0000000 0.0023941-0.0291144 0.0000000-0.0555064
+ 4 n dx -0.0008267 0.0000000 0.0020689-0.0139856 0.0000000-0.0208023
+ dy 0.0000000-0.0020662 0.0000000 0.0000000 0.0103721 0.0000000
+ dz 0.0009636 0.0000000-0.0007586-0.0203749 0.0000000-0.0072437
+ 5 au dx -0.0640369 0.0000000 0.0502676-0.0043716 0.0000000-0.0004653
+ dy 0.0000000-0.0118001 0.0000000 0.0000000-0.0009410 0.0000000
+ dz 0.0472562 0.0000000-0.0606118 0.0004653 0.0000000 0.0036901
+ 6 n dx 0.0001775 0.0000000 0.0100682-0.0006871 0.0000000-0.0008571
+ dy 0.0000000 0.0090184 0.0000000 0.0000000 0.0005270 0.0000000
+ dz 0.0072974 0.0000000 0.0023941 0.0012409 0.0000000-0.0008762
+ 7 n dx -0.0008267 0.0000000-0.0020689-0.0001073 0.0000000 0.0003069
+ dy 0.0000000-0.0020662 0.0000000 0.0000000-0.0001673 0.0000000
+ dz -0.0009636 0.0000000-0.0007586-0.0000223 0.0000000 0.0001255
+
+ ATOM 3 n 4 n
+ dx dy dz dx dy dz
+ 3 n dx 0.8799359
+ dy 0.0000000 0.0395338
+ dz 0.7051447 0.0000000 0.6301583
+ 4 n dx -0.8140975 0.0000000-0.6671543 0.8287448
+ dy 0.0000000-0.0183639 0.0000000 0.0000000 0.0101581
+ dz -0.6672083 0.0000000-0.5771609 0.6863639 0.0000000 0.5853551
+ 5 au dx -0.0006871 0.0000000-0.0012409-0.0001073 0.0000000 0.0000223
+ dy 0.0000000 0.0005270 0.0000000 0.0000000-0.0001673 0.0000000
+ dz 0.0008571 0.0000000-0.0008762-0.0003069 0.0000000 0.0001255
+ 6 n dx -0.0009718 0.0000000-0.0007465 0.0005929 0.0000000 0.0004729
+ dy 0.0000000-0.0002513 0.0000000 0.0000000 0.0000820 0.0000000
+ dz 0.0007465 0.0000000 0.0015365-0.0004088 0.0000000-0.0005455
+ 7 n dx 0.0005929 0.0000000 0.0004088-0.0003205 0.0000000-0.0002395
+ dy 0.0000000 0.0000820 0.0000000 0.0000000-0.0000148 0.0000000
+ dz -0.0004729 0.0000000-0.0005455 0.0002395 0.0000000 0.0002282
+
+ ATOM 5 au 6 n
+ dx dy dz dx dy dz
+ 5 au dx 0.1481383
+ dy 0.0000000 0.0325552
+ dz -0.0980729 0.0000000 0.1204226
+ 6 n dx -0.0649498 0.0000000 0.0289989 0.8799359
+ dy 0.0000000-0.0305459 0.0000000 0.0000000 0.0395338
+ dz 0.0291144 0.0000000-0.0555064-0.7051447 0.0000000 0.6301583
+ 7 n dx -0.0139856 0.0000000 0.0208023-0.8140975 0.0000000 0.6671543
+ dy 0.0000000 0.0103721 0.0000000 0.0000000-0.0183639 0.0000000
+ dz 0.0203749 0.0000000-0.0072437 0.6672083 0.0000000-0.5771609
+
+ ATOM 7 n
+ dx dy dz
+ 7 n dx 0.8287448
+ dy 0.0000000 0.0101581
+ dz -0.6863639 0.0000000 0.5853551
+
+
+ *** projected hessian written onto $hessian (projected), file= ***
+
+ dipole moment in principle axis system (a.u.) :
+ -0.0000000000 0.0000000000 -0.3108702304
+ norm : 0.310870230432940
+
+ rotational constants b for rotations around axis of inertia
+ and optical intensities for (1 <-- 0) transition
+
+ b : 0.0719240019 0.0079547491 0.0089439435 (cm**(-1))
+ b : 2156.2273 238.4774 268.1327 (MHz)
+ int. : 0.0000000000 0.0000000000 0.0966403002 (a.u.)
+
+ x : 1.0000000000 0.0000000000 0.0000000000
+ y : 0.0000000000 1.0000000000 0.0000000000
+ z : 0.0000000000 0.0000000000 1.0000000000
+
+ *** normal modes written onto $vibrational normal modes, file= ***
+
+ keyword $vibrational reduced masses missing in file
+
+
+ *** vibrational spectroscopic data written onto$vibrational spectrum
+ file= ***
+
+ ---------------------------------------------------
+ NORMAL MODES and VIBRATIONAL FREQUENCIES (cm**(-1))
+ ---------------------------------------------------
+
+ imaginary wave numbers indicate a negative curvature of the energy surface.
+ zero frequency modes have no physical meaning except being generators of
+ translations and rotations. each vibrational normal mode - given in terms of
+ cartesian displacement vectors of all atoms - has been normalized to unity.
+ to obtain mass-weigthed normal coordinates in a.u. divide the tabulated
+ modes by sqrt(reduced mass * 1822.88853).
+ band intensities or cross sections refer to independent non-degenerate normal
+ modes, that is, the intensities of degenerate modes have yet to be added.
+ dDIP/dQ is the normal mode derivative of the dipole moment.
+
+
+ mode 1 2 3 4 5 6
+
+ frequency 0.00 0.00 0.00 0.00 0.00 0.00
+
+ symmetry
+
+ IR - - - - - -
+|dDIP/dQ| (a.u.) 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
+intensity (km/mol) 0.00 0.00 0.00 0.00 0.00 0.00
+intensity ( % ) 0.00 0.00 0.00 0.00 0.00 0.00
+
+ RAMAN - - - - - -
+
+ 1 cl x 0.12658 0.05687 0.00850 0.37751 -0.11688 -0.01085
+ y -0.11453 -0.34042 0.45462 -0.01630 -0.22789 0.22142
+ z -0.07773 0.19077 0.13306 0.07812 0.09401 -0.00379
+ 2 au x -0.02433 -0.01468 -0.04141 0.34821 -0.06612 -0.00943
+ y -0.03387 0.02550 0.01667 -0.01513 -0.06739 0.40722
+ z 0.09087 0.27072 0.18883 0.11086 0.03730 -0.00538
+ 3 n x -0.15052 -0.07452 -0.08315 0.32370 -0.02369 -0.00824
+ y 0.03054 0.33799 -0.35228 -0.01745 0.06076 0.56943
+ z 0.24048 0.34166 0.23831 0.13991 -0.01301 -0.00679
+ 4 n x -0.22103 -0.10795 -0.10647 0.31001 0.00003 -0.00758
+ y 0.06635 0.51298 -0.55860 -0.01895 0.13201 0.66048
+ z 0.32459 0.38155 0.26613 0.15624 -0.04130 -0.00758
+ 5 au x -0.02433 -0.01468 -0.04141 0.34821 -0.06612 -0.00943
+ y 0.08503 -0.22937 0.12407 0.11381 0.16918 0.13937
+ z -0.24634 0.11082 0.07730 0.04538 0.15071 -0.00220
+ 6 n x -0.15052 -0.07452 -0.08315 0.32370 -0.02369 -0.00824
+ y 0.25493 -0.14304 -0.14959 0.22590 0.50725 0.06391
+ z -0.39595 0.03988 0.02782 0.01633 0.20103 -0.00079
+ 7 n x -0.22103 -0.10795 -0.10647 0.31001 0.00003 -0.00758
+ y 0.35005 -0.09519 -0.30234 0.28873 0.69652 0.02133
+ z -0.48006 0.00000 0.00000 0.00000 0.22931 0.00000
+
+reduced mass(g/mol) 29.124 42.822 29.932 66.604 27.681 48.994
+
+
+ mode 7 8 9 10 11 12
+
+ frequency 17.75 63.38 64.60 70.13 91.44 288.95
+
+ symmetry a1 a2 b1 a1 b2 a1
+
+ IR YES NO YES YES YES YES
+|dDIP/dQ| (a.u.) 0.0002 0.0000 0.0004 0.0005 0.0001 0.0011
+intensity (km/mol) 0.10 0.00 0.24 0.37 0.02 1.98
+intensity ( % ) 0.12 0.00 0.30 0.46 0.03 2.43
+
+ RAMAN YES YES YES YES YES YES
+
+ 1 cl x 0.00000 0.00000 -0.05319 -0.00000 0.00000 0.00000
+ y 0.00000 0.00000 0.00000 0.00000 0.60314 0.00000
+ z 0.20389 0.00000 0.00000 -0.08754 -0.00000 -0.40206
+ 2 au x 0.16328 -0.00000 0.04982 -0.16421 -0.00000 0.05603
+ y 0.00000 -0.14012 -0.00000 0.00000 -0.09721 0.00000
+ z 0.01797 0.00000 -0.13887 0.06023 0.00000 0.01257
+ 3 n x 0.33737 0.00000 -0.17107 0.04365 -0.00000 -0.29317
+ y -0.00000 0.20821 0.00000 -0.00000 0.05043 -0.00000
+ z -0.19016 0.00000 0.12110 -0.18358 0.00000 0.49040
+ 4 n x 0.44665 0.00000 -0.46221 0.35288 -0.00000 0.25371
+ y -0.00000 0.66107 0.00000 -0.00000 0.55328 0.00000
+ z -0.32056 -0.00000 0.46824 -0.55267 0.00000 -0.15832
+ 5 au x -0.16328 -0.00000 0.04982 0.16421 0.00000 -0.05603
+ y -0.00000 0.14012 0.00000 -0.00000 -0.09721 -0.00000
+ z 0.01797 -0.00000 0.13887 0.06023 -0.00000 0.01257
+ 6 n x -0.33737 0.00000 -0.17107 -0.04365 0.00000 0.29317
+ y -0.00000 -0.20821 -0.00000 -0.00000 0.05043 0.00000
+ z -0.19016 0.00000 -0.12110 -0.18358 0.00000 0.49040
+ 7 n x -0.44665 0.00000 -0.46221 -0.35288 0.00000 -0.25371
+ y -0.00000 -0.66107 -0.00000 -0.00000 0.55328 -0.00000
+ z -0.32056 0.00000 -0.46824 -0.55267 0.00000 -0.15832
+
+reduced mass(g/mol) 24.772 21.191 22.033 25.365 25.266 18.680
+
+
+ mode 13 14 15 16 17 18
+
+ frequency 295.84 307.78 310.41 333.15 333.34 373.78
+
+ symmetry b1 a2 b2 a1 b1 a1
+
+ IR YES NO YES YES YES YES
+|dDIP/dQ| (a.u.) 0.0013 0.0000 0.0008 0.0003 0.0025 0.0016
+intensity (km/mol) 2.85 0.00 1.09 0.15 10.85 4.60
+intensity ( % ) 3.49 0.00 1.33 0.18 13.28 5.63
+
+ RAMAN YES YES YES YES YES YES
+
+ 1 cl x 0.24688 0.00000 -0.00000 -0.00000 0.69646 -0.00000
+ y -0.00000 0.00000 -0.11287 -0.00000 -0.00000 -0.00000
+ z 0.00000 0.00000 -0.00000 0.55547 0.00000 -0.14068
+ 2 au x -0.00113 -0.00000 0.00000 -0.00740 -0.04615 0.06263
+ y -0.00000 0.03422 0.03415 0.00000 -0.00000 0.00000
+ z -0.04266 -0.00000 0.00000 -0.04803 -0.01405 0.05953
+ 3 n x -0.43920 -0.00000 0.00000 -0.44891 0.04585 -0.32901
+ y 0.00000 -0.63801 -0.63534 -0.00000 0.00000 -0.00000
+ z 0.42576 -0.00000 0.00000 0.25209 -0.41720 -0.35794
+ 4 n x 0.14261 -0.00000 0.00000 -0.01000 -0.27827 -0.39441
+ y -0.00000 0.30295 0.29800 0.00000 -0.00000 -0.00000
+ z -0.27055 -0.00000 0.00000 -0.27963 -0.03948 -0.30118
+ 5 au x -0.00113 0.00000 -0.00000 0.00740 -0.04615 -0.06263
+ y 0.00000 -0.03422 0.03415 0.00000 0.00000 0.00000
+ z 0.04266 -0.00000 0.00000 -0.04803 0.01405 0.05953
+ 6 n x -0.43920 -0.00000 0.00000 0.44891 0.04585 0.32901
+ y -0.00000 0.63801 -0.63534 -0.00000 -0.00000 -0.00000
+ z -0.42576 -0.00000 0.00000 0.25209 0.41720 -0.35794
+ 7 n x 0.14261 0.00000 -0.00000 0.01000 -0.27827 0.39441
+ y -0.00000 -0.30295 0.29800 0.00000 0.00000 0.00000
+ z 0.27055 0.00000 -0.00000 -0.27963 0.03948 -0.30118
+
+reduced mass(g/mol) 15.980 14.435 14.707 21.488 25.261 17.163
+
+
+ mode 19 20 21
+
+ frequency 374.08 2302.08 2303.92
+
+ symmetry b1 b1 a1
+
+ IR YES YES YES
+|dDIP/dQ| (a.u.) 0.0020 0.0068 0.0035
+intensity (km/mol) 6.83 81.65 22.03
+intensity ( % ) 8.36 100.00 26.98
+
+ RAMAN YES YES YES
+
+ 1 cl x 0.17816 0.00064 -0.00000
+ y 0.00000 -0.00000 0.00000
+ z -0.00000 -0.00000 -0.00103
+ 2 au x -0.07011 0.00060 -0.00056
+ y -0.00000 -0.00000 0.00000
+ z -0.05634 0.00049 -0.00048
+ 3 n x 0.39285 -0.38780 0.38789
+ y 0.00000 0.00000 -0.00000
+ z 0.27893 -0.32497 0.32525
+ 4 n x 0.36762 0.37858 -0.37837
+ y 0.00000 -0.00000 0.00000
+ z 0.32980 0.31731 -0.31717
+ 5 au x -0.07011 0.00060 0.00056
+ y -0.00000 0.00000 -0.00000
+ z 0.05634 -0.00049 -0.00048
+ 6 n x 0.39285 -0.38780 -0.38789
+ y 0.00000 0.00000 -0.00000
+ z -0.27893 0.32497 0.32525
+ 7 n x 0.36762 0.37858 0.37837
+ y -0.00000 0.00000 -0.00000
+ z -0.32980 -0.31731 -0.31717
+
+reduced mass(g/mol) 17.648 14.007 14.007
+
+
+ **************************************************************
+ * *
+ * zero point VIBRATIONAL energy : 0.0171560 Hartree *
+ * SCF-energy : -951.0821039 *
+ * SCF + E(vib0) : -951.0649478 *
+ * *
+ **************************************************************
+
+
+
+
+ time elapsed for vibrational analysis 0.01 sec
+
+
+ ------------------------------------------------------------------------
+ total cpu-time : 28 minutes and 22 seconds
+ total wall-time : 28 minutes and 24 seconds
+ ------------------------------------------------------------------------
+
+ **** force : all done ****
+
+
+ 2019-03-19 10:20:49.974
+
diff --git a/tests/data/calculator/turbomole/auxbasis b/tests/data/calculator/turbomole/auxbasis
new file mode 100644
index 0000000..4d420ba
--- /dev/null
+++ b/tests/data/calculator/turbomole/auxbasis
@@ -0,0 +1,148 @@
+$jbas
+*
+cl def2-QZVPP
+# cl (14s5p5d2f1g) / [8s4p3d1f1g] {71111111/2111/311/2/1}
+*
+ 7 s
+ 8044.2766240 0.83066050000
+ 2924.5123954 1.6146203000
+ 1110.8168739 5.0051398000
+ 439.90507610 9.9863273000
+ 181.19872870 11.344397000
+ 77.414830200 2.6726629000
+ 34.197727300 -1.6043227000
+ 1 s
+ 15.564839700 5.7539291000
+ 1 s
+ 7.2707873000 6.0638907000
+ 1 s
+ 3.4711900000 -0.31993260000
+ 1 s
+ 1.6860808000 -0.39473200000
+ 1 s
+ 0.82931250000 0.93340360000
+ 1 s
+ 0.41101240000 0.48641750000
+ 1 s
+ 0.20421900000 0.78177800000E-01
+ 2 p
+ 12.256499300 0.56308600000E-01
+ 4.8922575000 -0.56300700000E-01
+ 1 p
+ 1.9265460000 0.46922200000E-01
+ 1 p
+ 0.75259890000 -0.71758000000E-02
+ 1 p
+ 0.29321890000 -0.16232500000E-01
+ 3 d
+ 28.437050400 -0.26540400000E-01
+ 7.2772298000 0.13484800000E-01
+ 2.3111621000 -0.13645200000E-01
+ 1 d
+ 0.85809430000 -0.13160800000E-01
+ 1 d
+ 0.33762270000 -0.45372000000E-02
+ 2 f
+ 1.2035685000 1.0000000000
+ 0.47000000000 1.0000000000
+ 1 g
+ 0.75211000000 -0.26699000000E-02
+*
+au def2-QZVPP
+# au (11s5p5d3f3g) / [8s5p5d2f3g] {41111111/11111/11111/21/111}
+*
+ 4 s
+ 28.245250500 0.44678510000
+ 16.577835400 -3.0662858000
+ 10.147624100 7.7959203000
+ 5.9691905000 -7.0482833000
+ 1 s
+ 3.6538607000 -3.2757558000
+ 1 s
+ 2.1445411000 4.1629636000
+ 1 s
+ 1.2614947000 2.2725427000
+ 1 s
+ 0.71469330000 0.98345600000
+ 1 s
+ 0.42040780000 0.37950780000
+ 1 s
+ 0.21995510000 0.15453220000
+ 1 s
+ 0.96208100000E-01 0.97466000000E-02
+ 1 p
+ 7.5722886000 0.18955100000E-01
+ 1 p
+ 2.6998544000 -0.60933500000E-01
+ 1 p
+ 0.96357290000 0.82321400000E-01
+ 1 p
+ 0.34410240000 -0.38023700000E-01
+ 1 p
+ 0.12290710000 -0.58157000000E-02
+ 1 d
+ 6.8027810000 -0.15979500000E-01
+ 1 d
+ 2.9625600000 0.46439800000E-01
+ 1 d
+ 1.3082794000 -0.26572400000E-01
+ 1 d
+ 0.58264810000 -0.16625000000E-01
+ 1 d
+ 0.26022160000 -0.55737000000E-02
+ 2 f
+ 1.9754530000 -0.12460000000E-01
+ 0.81575660000 0.10663000000E-01
+ 1 f
+ 0.34081280000 0.15514000000E-02
+ 1 g
+ 2.3463119000 0.98587000000E-02
+ 1 g
+ 0.89569400000 0.82940000000E-03
+ 1 g
+ 0.34421270000 0.27240000000E-03
+*
+n def2-QZVPP
+# n (12s5p4d2f1g) / [6s4p3d1f1g] {711111/2111/211/2/1}
+*
+ 7 s
+ 2542.9401785 0.90466800000E-01
+ 1029.5472946 0.14556750000
+ 424.90535460 0.45940900000
+ 178.45737080 1.1392859000
+ 76.136274200 2.1795891000
+ 32.933865300 2.7604305000
+ 14.415543600 1.2837451000
+ 1 s
+ 6.3718891000 -0.17026420000
+ 1 s
+ 2.8381742000 0.50447200000E-01
+ 1 s
+ 1.2711793000 0.66345880000
+ 1 s
+ 0.57124070000 0.41165590000
+ 1 s
+ 0.25698870000 0.48916700000E-01
+ 2 p
+ 17.897599000 -0.33065600000E-01
+ 6.5346319000 0.41582000000E-02
+ 1 p
+ 2.3523645000 0.52582400000E-01
+ 1 p
+ 0.83973770000 0.17058000000E-02
+ 1 p
+ 0.29893350000 0.12296000000E-01
+ 2 d
+ 7.6909870000 0.35820000000E-02
+ 2.3044972000 0.18040300000E-01
+ 1 d
+ 0.84039870000 0.19444100000E-01
+ 1 d
+ 0.33037970000 0.23610000000E-03
+ 2 f
+ 2.3331076000 0.67248000000E-02
+ 0.84461370000 0.54427000000E-02
+ 1 g
+ 1.4037700000 -0.23051000000E-02
+*
+$end
diff --git a/tests/data/calculator/turbomole/basis b/tests/data/calculator/turbomole/basis
new file mode 100644
index 0000000..a9a0b03
--- /dev/null
+++ b/tests/data/calculator/turbomole/basis
@@ -0,0 +1,200 @@
+$basis
+*
+cl def2-QZVPP
+# cl (20s14p4d2f1g) / [9s6p4d2f1g] {*31111111/821111/1111/11/1}
+*
+ 10 s
+ 1467459.0095 0.11478257194E-04
+ 219756.16433 0.89234299775E-04
+ 50010.770301 0.46911086186E-03
+ 14164.823918 0.19762446133E-02
+ 4620.7465525 0.71419937783E-02
+ 1667.8991635 0.22753219445E-01
+ 650.29199265 0.63959782953E-01
+ 269.38037376 0.15331059238
+ 117.06752106 0.28986952417
+ 52.811766843 0.36348071452
+ 3 s
+ 461.42769988 0.18019457578E-01
+ 142.12665355 0.16489442314
+ 54.437838768 0.63891587584
+ 1 s
+ 24.160770219 1.0000000000
+ 1 s
+ 9.7083540306 1.0000000000
+ 1 s
+ 4.5640696733 1.0000000000
+ 1 s
+ 2.1194744832 1.0000000000
+ 1 s
+ 0.75722365394 1.0000000000
+ 1 s
+ 0.33747224597 1.0000000000
+ 1 s
+ 0.13860775149 1.0000000000
+ 8 p
+ 2501.9457890 0.24242618410E-03
+ 592.88059285 0.21079961749E-02
+ 192.18089186 0.11432693869E-01
+ 72.875710488 0.44956698060E-01
+ 30.436358370 0.13197476145
+ 13.490178902 0.27493639225
+ 6.1478071413 0.38347236372
+ 2.8450944820 0.28871943885
+ 2 p
+ 105.39397936 -0.34311760144E-01
+ 6.7369738513 0.64060818902
+ 1 p
+ 1.2421095772 1.0000000000
+ 1 p
+ 0.55669714254 1.0000000000
+ 1 p
+ 0.23387801464 1.0000000000
+ 1 p
+ 0.93164490890E-01 1.0000000000
+ 1 d
+ 5.1910000000 1.0000000000
+ 1 d
+ 1.2760000000 1.0000000000
+ 1 d
+ 0.58300000000 1.0000000000
+ 1 d
+ 0.24300000000 1.0000000000
+ 1 f
+ 0.42300000000 1.0000000000
+ 1 f
+ 1.0890000000 1.0000000000
+ 1 g
+ 0.82700000000 1.0000000000
+*
+au def2-QZVPP
+# au (9s8p6d4f2g) / [7s5p4d4f2g] {3111111/41111/3111/1111/11}
+*
+ 3 s
+ 24.200000000 1.4645004443
+ 22.000000000 -3.9770190496
+ 20.000000000 2.7298033533
+ 1 s
+ 5.4043553001 1.0000000000
+ 1 s
+ 1.4532546773 1.0000000000
+ 1 s
+ 0.68294298420 1.0000000000
+ 1 s
+ 0.19002755303 1.0000000000
+ 1 s
+ 0.88155981740E-01 1.0000000000
+ 1 s
+ 0.37739555187E-01 1.0000000000
+ 4 p
+ 15.500000000 0.15001711880
+ 14.000000000 -0.23609813183
+ 6.4227368205 0.31458896948
+ 1.6595601681 -0.57279670446
+ 1 p
+ 0.79402913993 1.0000000000
+ 1 p
+ 0.35125155397 1.0000000000
+ 1 p
+ 0.81000000000E-01 1.0000000000
+ 1 p
+ 0.25000000000E-01 1.0000000000
+ 3 d
+ 8.6000000000 0.15361654684
+ 7.8531899379 -0.20443530663
+ 1.7650856798 0.30781811607
+ 1 d
+ 0.79482263260 1.0000000000
+ 1 d
+ 0.33085396360 1.0000000000
+ 1 d
+ 0.12398535801 1.0000000000
+ 1 f
+ 1.7607400000 1.0000000000
+ 1 f
+ 0.72482000000 1.0000000000
+ 1 f
+ 0.29838000000 1.0000000000
+ 1 f
+ 0.12283000000 1.0000000000
+ 1 g
+ 1.6991700000 1.0000000000
+ 1 g
+ 0.65941000000 1.0000000000
+*
+n def2-QZVPP
+# n (15s8p3d2f1g) / [7s4p3d2f1g] {8211111/5111/111/11/1}
+*
+ 8 s
+ 90726.889210 0.39257887368E-04
+ 13590.528801 0.30513316455E-03
+ 3092.9883781 0.16000560446E-02
+ 875.99876362 0.66982937306E-02
+ 285.74469982 0.23690078765E-01
+ 103.11913417 0.71455405268E-01
+ 40.128556777 0.17632774876
+ 16.528095704 0.32677592815
+ 2 s
+ 69.390960983 0.80052094386E-01
+ 20.428200596 0.78268063538
+ 1 s
+ 7.1292587972 1.0000000000
+ 1 s
+ 3.1324304893 1.0000000000
+ 1 s
+ 0.98755778723 1.0000000000
+ 1 s
+ 0.38765721307 1.0000000000
+ 1 s
+ 0.14909883075 1.0000000000
+ 5 p
+ 150.05742670 -0.86216165986E-03
+ 35.491599483 -0.68571273236E-02
+ 11.247864223 -0.31795688855E-01
+ 4.0900305195 -0.10537396822
+ 1.6220573146 -0.24519708041
+ 1 p
+ 0.66442261530 1.0000000000
+ 1 p
+ 0.27099770070 1.0000000000
+ 1 p
+ 0.10688749984 1.0000000000
+ 1 d
+ 2.8370000000 1.0000000000
+ 1 d
+ 0.96800000000 1.0000000000
+ 1 d
+ 0.33500000000 1.0000000000
+ 1 f
+ 2.0270000000 1.0000000000
+ 1 f
+ 0.68500000000 1.0000000000
+ 1 g
+ 1.4270000000 1.0000000000
+*
+$ecp
+*
+au def2-ecp
+*
+ ncore = 60 lmax = 3
+# coefficient r^n exponent
+f
+ 30.4900889 2 4.7898200
+ 5.1710738 2 2.3949100
+s-f
+ 426.8466792 2 13.2051000
+ 37.0070829 2 6.6025500
+ -30.4900889 2 4.7898200
+ -5.1710738 2 2.3949100
+p-f
+ 261.1995804 2 10.4520200
+ 26.9624960 2 5.2260100
+ -30.4900889 2 4.7898200
+ -5.1710738 2 2.3949100
+d-f
+ 124.7906656 2 7.8511000
+ 16.3007257 2 3.9255500
+ -30.4900889 2 4.7898200
+ -5.1710738 2 2.3949100
+*
+$end
diff --git a/tests/data/calculator/turbomole/control b/tests/data/calculator/turbomole/control
new file mode 100644
index 0000000..9830aa7
--- /dev/null
+++ b/tests/data/calculator/turbomole/control
@@ -0,0 +1,197 @@
+$tmpdir /tmp/56815.1.default
+$ladung 1
+$title
+$operating system unix
+$symmetry c2v
+$redundant file=coord
+$user-defined bonds file=coord
+$coord file=coord
+$optimize
+ internal on
+ redundant on
+ cartesian off
+ global off
+ basis off
+$atoms
+cl 1 \
+ basis =cl def2-QZVPP \
+ jbas =cl def2-QZVPP
+au 2,5 \
+ basis =au def2-QZVPP \
+ ecp =au def2-ecp \
+ jbas =au def2-QZVPP
+n 3-4,6-7 \
+ basis =n def2-QZVPP \
+ jbas =n def2-QZVPP
+$basis file=basis
+$ecp file=basis
+$rundimensions
+ dim(fock,dens)=186132
+ natoms=7
+ nshell=134
+ nbf(CAO)=606
+ dim(trafo[SAO<-->AO/CAO])=1639
+ rhfshells=1
+ nbf(AO)=474
+$scfmo file=mos
+$scfiterlimit 60
+$thize 0.10000000E-04
+$thime 5
+$scfdump
+$scfintunit
+ unit=30 size=0 file=twoint
+$scfdiis
+$maxcor 500 MiB per_core
+$scforbitalshift automatic=.1
+$drvopt
+ cartesian on
+ basis off
+ global off
+ hessian on
+ dipole on
+ nuclear polarizability
+$interconversion off
+ qconv=1.d-7
+ maxiter=25
+$coordinateupdate
+ dqmax=0.3
+ interpolate on
+ statistics 5
+$forceupdate
+ ahlrichs numgeo=0 mingeo=3 maxgeo=4 modus= dynamic fail=0.3
+ threig=0.005 reseig=0.005 thrbig=3.0 scale=1.00 damping=0.0
+$forceinit on
+ diag=default
+$energy file=energy
+$grad file=gradient
+$forceapprox file=forceapprox
+$ricore 2000
+$rij
+$jbas file=auxbasis
+$dft
+ functional b-p
+ gridsize m4
+$scfconv 6
+$scfdamp start=0.700 step=0.050 min=0.050
+$disp3 bj
+$last SCF energy change = -.50013682E-07
+$charge from ridft
+ 1.000 (not to be modified here)
+$dipole from force
+ x 0.00000000000000 y 0.00000000000000 z -0.31148810330795 a.u.
+ | dipole | = 0.7917297707 debye
+$optinfo file=optinfo
+$hessapprox file=hessapprox
+$dipgrad file=dipgrad
+$hessian (projected) file=hessian
+$vibrational normal modes file=vib_normal_modes
+$vibrational reduced masses
+ 71.8141413879 31.2520859374 47.0138606931 83.9444522632 18.9677147214
+ 32.4457988606 24.7891375352 21.1915167626 22.0332388198 25.3487002656
+ 25.2676489004 18.6911196523 15.9859679989 14.4349636988 14.7061341498
+ 21.4691215244 25.2375956511 17.1661552653 17.6519128454 14.0069264571
+ 14.0069238864
+$nvibro 21
+$vibrational spectrum file=vibspectrum
+$closed shells
+ a1 1-17 ( 2 )
+ a2 1-4 ( 2 )
+ b1 1-14 ( 2 )
+ b2 1-6 ( 2 )
+$scfinstab dynpol nm
+ 1064.000000000000
+$denconv 1d-7
+$last step intense
+$orbital_max_rnorm 0.57953924777416E-03
+$subenergy Etot E1 Ej Ex Ec En Disp
+-951.0821039338 -2366.668629039 1008.434556026 -77.94849974351 -3.504187992799 488.6218868731 -.1723005775534E-01
+$polgrad
+# cartesian derivatives of electronic polarizability
+ xx component
+ 0.00000000000000D+00 0.00000000000000D+00 0.62735260314962D+01
+ -.51940653977048D+01 0.00000000000000D+00 -.99138387718820D+00
+ -.29883073277872D+02 0.00000000000000D+00 -.25014013019061D+02
+ 0.36552982767958D+02 0.00000000000000D+00 0.22865612505714D+02
+ 0.51940653977048D+01 0.00000000000000D+00 -.99138387718820D+00
+ 0.29883073277872D+02 0.00000000000000D+00 -.25014013019061D+02
+ -.36552982767958D+02 0.00000000000000D+00 0.22865612505714D+02
+ yy component
+ 0.00000000000000D+00 0.00000000000000D+00 -.18801878848000D+01
+ 0.10535198177527D+01 0.00000000000000D+00 -.90550712844076D-01
+ 0.44531437004988D+00 0.00000000000000D+00 0.36285453239549D+00
+ 0.83690876279481D+00 0.00000000000000D+00 0.66791956496881D+00
+ -.10535198177527D+01 0.00000000000000D+00 -.90550712844076D-01
+ -.44531437004989D+00 0.00000000000000D+00 0.36285453239549D+00
+ -.83690876279481D+00 0.00000000000000D+00 0.66791956496881D+00
+ zz component
+ 0.00000000000000D+00 0.00000000000000D+00 -.10903820629266D+02
+ 0.35553389036411D+01 0.00000000000000D+00 0.14079487255559D+01
+ -.11142689132186D+02 0.00000000000000D+00 -.10544433930741D+02
+ 0.98112393777943D+01 0.00000000000000D+00 0.14586583353177D+02
+ -.35553389036411D+01 0.00000000000000D+00 0.14079487255559D+01
+ 0.11142689132186D+02 0.00000000000000D+00 -.10544433930741D+02
+ -.98112393777943D+01 0.00000000000000D+00 0.14586583353177D+02
+ xy component
+ 0.00000000000000D+00 0.00000000000000D+00 0.00000000000000D+00
+ 0.00000000000000D+00 0.40111473259193D+01 0.00000000000000D+00
+ 0.00000000000000D+00 -.10667013980638D+01 0.00000000000000D+00
+ 0.00000000000000D+00 0.50990587391317D+01 0.00000000000000D+00
+ 0.00000000000000D+00 -.40111473259193D+01 0.00000000000000D+00
+ 0.00000000000000D+00 0.10667013980638D+01 0.00000000000000D+00
+ 0.00000000000000D+00 -.50990587391317D+01 0.00000000000000D+00
+ xz component
+ 0.26923723442116D+01 0.00000000000000D+00 0.00000000000000D+00
+ 0.18149026569494D+00 0.00000000000000D+00 0.52058107278556D+01
+ -.20060924222243D+02 0.00000000000000D+00 -.18264750632252D+02
+ 0.18533124215844D+02 0.00000000000000D+00 0.18282546050471D+02
+ 0.18149026569494D+00 0.00000000000000D+00 -.52058107278556D+01
+ -.20060924222243D+02 0.00000000000000D+00 0.18264750632252D+02
+ 0.18533124215844D+02 0.00000000000000D+00 -.18282546050471D+02
+ yz component
+ 0.00000000000000D+00 -.42971382037096D+01 0.00000000000000D+00
+ 0.00000000000000D+00 -.45740007528277D+00 0.00000000000000D+00
+ 0.00000000000000D+00 -.58441397215683D+00 0.00000000000000D+00
+ 0.00000000000000D+00 0.31904355487100D+01 0.00000000000000D+00
+ 0.00000000000000D+00 -.45740007528277D+00 0.00000000000000D+00
+ 0.00000000000000D+00 -.58441397215683D+00 0.00000000000000D+00
+ 0.00000000000000D+00 0.31904355487100D+01 0.00000000000000D+00
+$raman spectrum
+# mode symmetry wave selection derivative of derivative of raman
+# number rule isotropic polarizability scattering
+# polarizability anisotropy cross sections
+# cm**(-1) a.u. a.u. bohr**2/sr
+# T,T II,II
+ 1 0.00 - 0.000000 0.000000 0.00000D+00 0.00000D+00
+ 2 0.00 - 0.000000 0.000000 0.00000D+00 0.00000D+00
+ 3 0.00 - 0.000000 0.000000 0.00000D+00 0.00000D+00
+ 4 0.00 - 0.000000 0.000000 0.00000D+00 0.00000D+00
+ 5 0.00 - 0.000000 0.000000 0.00000D+00 0.00000D+00
+ 6 0.00 - 0.000000 0.000000 0.00000D+00 0.00000D+00
+ 7 a1 17.76 YES 0.003486 0.048912 0.16005D-12 0.11355D-12
+ 8 a2 63.42 YES 0.000000 0.045587 0.11252D-13 0.84389D-14
+ 9 b1 64.64 YES 0.000000 0.007413 0.28703D-15 0.21527D-15
+ 10 a1 70.16 YES 0.002108 0.058666 0.15642D-13 0.11563D-13
+ 11 b2 91.46 YES 0.000000 0.007814 0.16734D-15 0.12551D-15
+ 12 a1 288.99 YES 0.006718 0.001111 0.19227D-15 0.34963D-18
+ 13 b1 295.89 YES 0.000000 0.023503 0.20099D-15 0.15075D-15
+ 14 a2 307.85 YES 0.000000 0.050457 0.87032D-15 0.65274D-15
+ 15 b2 310.48 YES 0.000000 0.032772 0.36227D-15 0.27171D-15
+ 16 a1 333.17 YES -0.012149 0.062669 0.16887D-14 0.89013D-15
+ 17 b1 333.34 YES 0.000000 0.027100 0.22175D-15 0.16632D-15
+ 18 a1 373.70 YES -0.013964 0.036762 0.89820D-15 0.25680D-15
+ 19 b1 374.00 YES 0.000000 0.003836 0.37240D-17 0.27930D-17
+ 20 b1 2302.08 YES 0.000000 0.575274 0.43463D-14 0.32597D-14
+ 21 a1 2303.93 YES -0.238371 0.443274 0.10955D-13 0.19318D-14
+# the polarizability anisotropy is commonly referred to as GAMMA, and
+# is defined as GAMMA**2 = sum(i ***
+
+
+ --- calculation of the energy gradient finished ---
+
+
+
+ ------------------------------------------------------------------------
+ total cpu-time : 10.62 seconds
+ total wall-time : 10.65 seconds
+ ------------------------------------------------------------------------
+
+ **** rdgrad : all done ****
+
+
+ 2019-03-19 09:52:19.046
+
+fine, there is no data group "$actual step"
+next step = relax
+
+ statpt (compute-1-1.local) : TURBOMOLE V7.2 ( 21287 ) 3 Jul 2017 at 09:33:16
+ Copyright (C) 2017 TURBOMOLE GmbH, Karlsruhe
+
+
+ 2019-03-19 09:52:19.113
+
+
+
+ this is S T A T P T
+
+
+ hessian and coordinate update for
+ stationary point search
+
+ by barbara unterreiner, marek sierka,
+ and reinhart ahlrichs
+
+ quantum chemistry group
+ universitaet karlsruhe
+ germany
+
+
+
+
+ +--------------------------------------------------+
+ | Atomic coordinate, charge and isotop information |
+ +--------------------------------------------------+
+
+ atomic coordinates atom charge isotop
+ 0.00000000 0.00000000 -4.21959491 cl 17.000 0
+ 3.20948079 0.00000000 -1.34617751 au 79.000 0
+ 6.05735731 0.00000000 1.05663657 n 7.000 0
+ 7.65838130 0.00000000 2.39933840 n 7.000 0
+ -3.20948079 0.00000000 -1.34617751 au 79.000 0
+ -6.05735731 0.00000000 1.05663657 n 7.000 0
+ -7.65838130 0.00000000 2.39933840 n 7.000 0
+
+ center of nuclear mass : 0.00000000 0.00000000 -1.20122182
+ center of nuclear charge: 0.00000000 0.00000000 -1.16278577
+ Keyword $statpt not found - using default options
+
+ *************** Stationary point options ******************
+ ************************************************************
+ Maximum allowed trust radius: 3.000000E-01
+ Minimum allowed trust radius: 1.000000E-03
+ Initial trust radius: 1.500000E-01
+ GDIIS used if gradient norm < 1.000000E-02
+ Number of previous steps for GDIIS: 5
+ Hessian update method: BFGS
+ *** Convergence criteria ***
+ Threshold for energy change: 1.000000E-07
+ Threshold for max displacement element: 1.000000E-03
+ Threshold for max gradient element : 1.000000E-04
+ Threshold for RMS of displacement: 5.000000E-04
+ Threshold for RMS of gradient: 5.000000E-04
+ ************************************************************
+
+
+ keyword $statp missing in file
+
+ Keyword $statpt not found - using default options
+ actual coordinates :
+ 0.000000000000 0.000000000000 -4.219594911381
+ 3.209480786302 0.000000000000 -1.346177510630
+ 6.057357309283 0.000000000000 1.056636570363
+ 7.658381298873 0.000000000000 2.399338395957
+ -3.209480786302 0.000000000000 -1.346177510630
+ -6.057357309283 0.000000000000 1.056636570363
+ -7.658381298873 0.000000000000 2.399338395957
+ actual gradients :
+ -0.000000000000 0.000000000000 0.000017588241
+ -0.000006867513 0.000000000000 -0.000014138695
+ -0.000019614085 0.000000000000 -0.000044594356
+ 0.000007215148 0.000000000000 0.000011506779
+ 0.000006867513 0.000000000000 -0.000014138695
+ 0.000019614085 0.000000000000 -0.000044594356
+ -0.000007215148 0.000000000000 0.000011506779
+ Number of symmetry restricted degrees of freedom: 7
+ Constituted by: 1 translational degrees of freedom
+ 0 rotational degrees of freedom
+ 6 internal degrees of freedom
+
+ *************************************************************************
+ ATOM CARTESIAN COORDINATES
+ 1 cl 0.00000000000000 0.00000000000000 -4.21959491138133
+ 2 au 3.20948078630165 0.00000000000000 -1.34617751062959
+ 3 n 6.05735730928326 0.00000000000000 1.05663657036349
+ 4 n 7.65838129887256 0.00000000000000 2.39933839595680
+ 5 au -3.20948078630165 0.00000000000000 -1.34617751062959
+ 6 n -6.05735730928326 0.00000000000000 1.05663657036349
+ 7 n -7.65838129887256 0.00000000000000 2.39933839595680
+ *************************************************************************
+ ATOM CARTESIAN GRADIENTS
+ 1 cl -0.00000000000001 0.00000000000000 0.00001758824062
+ 2 au -0.00000686751309 0.00000000000000 -0.00001413869455
+ 3 n -0.00001961408520 0.00000000000000 -0.00004459435636
+ 4 n 0.00000721514764 0.00000000000000 0.00001150677894
+ 5 au 0.00000686751309 0.00000000000000 -0.00001413869455
+ 6 n 0.00001961408519 0.00000000000000 -0.00004459435636
+ 7 n -0.00000721514764 0.00000000000000 0.00001150677894
+ *************************************************************************
+
+ norm of actual CARTESIAN gradient: 7.69360E-05
+ norm of actual INTERNAL gradient: 6.97046E-05
+
+ ENERGY = -951.0821038698 a.u.; # of cycle = 19
+
+ Approximate Hessian read from $hessapprox data section
+
+ Hessian updated according to BFGS formula
+ Number of zero Hessian eigenvalues: 0
+ Number of structures for GDIIS interpolation: 5
+ GDIIS step: 0.001007
+
+ Transforming internal coordinate displacements to Cartesian space
+ Iteration 1 residual norm 1.007122E-03
+ Iteration 2 residual norm 1.019595E-07
+ Iteration 3 residual norm 1.735891E-15
+ Transformation converged
+ Residual norm: 1.735891E-15 after 3 iterations
+
+ ******************************************************************
+ CONVERGENCE INFORMATION
+
+ Converged? Value Criterion
+ Energy change yes 0.0000001 0.0000001
+ RMS of displacement yes 0.0004112 0.0005000
+ RMS of gradient yes 0.0000285 0.0005000
+ MAX displacement yes 0.0009469 0.0010000
+ MAX gradient yes 0.0000372 0.0001000
+ ******************************************************************
+
+
+ ------------------------------------------------------------------------
+ total cpu-time : 0.04 seconds
+ total wall-time : 0.07 seconds
+ ------------------------------------------------------------------------
+
+ **** statpt : all done ****
+
+
+ 2019-03-19 09:52:19.159
+
+fine, there is no data group "$actual step"
+next step = ridft
+ operating system is UNIX !
+
+ ridft (compute-1-1.local) : TURBOMOLE V7.2 ( 21285 ) 30 Jun 2017 at 11:51:10
+ Copyright (C) 2017 TURBOMOLE GmbH, Karlsruhe
+
+
+ 2019-03-19 09:52:19.223
+
+
+
+ r i d f t
+
+ DFT program with RI approximation
+ for coulomb part
+
+
+
+
+
+ References:
+
+ TURBOMOLE:
+ R. Ahlrichs, M. Baer, M. Haeser, H. Horn, and
+ C. Koelmel
+ Electronic structure calculations on workstation
+ computers: the program system TURBOMOLE
+ Chem. Phys. Lett. 162: 165 (1989)
+ Density Functional:
+ O. Treutler and R. Ahlrichs
+ Efficient Molecular Numerical Integration Schemes
+ J. Chem. Phys. 102: 346 (1995)
+ Parallel Version:
+ Performance of parallel TURBOMOLE for Density
+ Functional Calculations
+ M. v. Arnim and R. Ahlrichs
+ J. Comp. Chem. 19: 1746 (1998)
+ RI-J Method:
+ Auxiliary Basis Sets to approximate Coulomb
+ Potentials
+ Chem. Phys. Lett. 240: 283 (1995)
+ K. Eichkorn, O. Treutler, H. Oehm, M. Haeser
+ and R. Ahlrichs
+ Chem. Phys. Lett. 242: 652 (1995)
+
+ Auxiliary Basis Sets for Main Row Atoms and their
+ Use to approximate Coulomb Potentials
+ K. Eichkorn, F. Weigend, O. Treutler and
+ R. Ahlrichs
+ Theo. Chem. Acc. 97: 119 (1997)
+
+ Accurate Coulomb-fitting basis sets for H to Rn
+ F. Weigend
+ Phys. Chem. Chem. Phys. 8: 1057 (2006)
+
+ Multipole accelerated RI-J (MARI-J):
+ Fast evaluation of the Coulomb potential for
+ electron densities using multipole accelerated
+ resolution of identity approximation
+ M. Sierka, A. Hogekamp and R. Ahlrichs
+ J. Chem. Phys. 118: 9136 (2003)
+ RI-JK Method:
+ A fully direct RI-HF algorithm: Implementation,
+ optimised auxiliary basis sets, demonstration of
+ accuracy and efficiency
+ F. Weigend
+ Phys. Chem. Chem. Phys. 4: 4285 (2002)
+ Two-component HF and DFT with spin-orbit coupling:
+ Self-consistent treatment of spin-orbit
+ interactions with efficient Hartree-Fock and
+ density functional methods
+ M. K. Armbruster, F. Weigend, C. van Wüllen and
+ W. Klopper
+ Phys. Chem. Chem. Phys. 10: 1748 (2008)
+ Relativistic all-electron 2c calculations
+ An efficient implementation of two-component
+ relativistic exact-decoupling methods for large
+ molecules
+ D. Peng, N. Middendorf, F. Weigend, M. Reiher
+ J. Chem. Phys. 138, 184105 (2013)
+
+
+
+
+
+ +--------------------------------------------------+
+ | general information about current run |
+ +--------------------------------------------------+
+
+
+ B-P86 functional
+ exchange: LDA + Becke (B88)
+ correlation: LDA (VWN) + Perdew (P86)
+ A DFT calculation using the RI-J approximation will be carried out.
+ Allocatable memory for RI due to $ricore (MB): 2000
+
+
+ +--------------------------------------------------+
+ | Atomic coordinate, charge and isotop information |
+ +--------------------------------------------------+
+
+ atomic coordinates atom charge isotop
+ 0.00000000 0.00000000 -4.21900803 cl 17.000 0
+ 3.20995422 0.00000000 -1.34590515 au 79.000 0
+ 6.05830202 0.00000000 1.05651158 n 7.000 0
+ 7.65957070 0.00000000 2.39889759 n 7.000 0
+ -3.20995422 0.00000000 -1.34590515 au 79.000 0
+ -6.05830202 0.00000000 1.05651158 n 7.000 0
+ -7.65957070 0.00000000 2.39889759 n 7.000 0
+
+ center of nuclear mass : -0.00000000 0.00000000 -1.20099058
+ center of nuclear charge: 0.00000000 0.00000000 -1.16256366
+
+ +--------------------------------------------------+
+ | basis set information |
+ +--------------------------------------------------+
+
+ we will work with the 1s 3p 5d 7f 9g ... basis set
+ ...i.e. with spherical basis functions...
+
+ type atoms prim cont basis
+ ---------------------------------------------------------------------------
+ cl 1 105 70 def2-QZVPP [9s6p4d2f1g|20s14p4d2f1g]
+ au 2 109 88 def2-QZVPP [7s5p4d4f2g|9s8p6d4f2g]
+ n 4 77 57 def2-QZVPP [7s4p3d2f1g|15s8p3d2f1g]
+ ---------------------------------------------------------------------------
+ total: 7 631 474
+ ---------------------------------------------------------------------------
+
+ total number of primitive shells : 99
+ total number of contracted shells : 134
+ total number of cartesian basis functions : 606
+ total number of SCF-basis functions : 474
+
+
+ integral neglect threshold : 0.55E-10
+ integral storage threshold THIZE : 0.10E-04
+ integral storage threshold THIME : 5
+
+ number of unique ecp types : 1
+ RI-J AUXILIARY BASIS SET information:
+
+ we will work with the 1s 3p 5d 7f 9g ... basis set
+ ...i.e. with spherical basis functions...
+
+ type atoms prim cont basis
+ ---------------------------------------------------------------------------
+ cl 1 77 51 def2-QZVPP [8s4p3d1f1g|14s5p5d2f1g]
+ au 2 99 89 def2-QZVPP [8s5p5d2f3g|11s5p5d3f3g]
+ n 4 70 49 def2-QZVPP [6s4p3d1f1g|12s5p4d2f1g]
+ ---------------------------------------------------------------------------
+ total: 7 555 425
+ ---------------------------------------------------------------------------
+
+ total number of primitive shells : 78
+ total number of contracted shells : 123
+ total number of cartesian basis functions : 543
+ total number of SCF-basis functions : 425
+
+
+ symmetry group of the molecule : c2v
+
+ the group has the following generators :
+ c2(z)
+ mirror plane sigma(xz)
+
+ 4 symmetry operations found
+
+ there are 4 real representations : a1 a2 b1 b2
+
+ maximum number of shells which are related by symmetry : 2
+
+
+ mo occupation :
+ irrep mo's occupied
+ a1 159 17
+ a2 81 4
+ b1 145 14
+ b2 89 6
+
+ number of basis functions : 474
+ number of occupied orbitals : 41
+
+
+ ------------------
+ density functional
+ ------------------
+ B-P86 functional
+ exchange: LDA + Becke (B88)
+ correlation: LDA (VWN) + Perdew (P86)
+
+ iterations will be done with small grid
+
+ spherical integration : Lebedev's spherical grid
+ spherical gridsize : 4
+ i.e. gridpoints : 434
+ value for diffuse not defined
+ radial integration : Chebyshev 2nd kind (scaling 3)
+ radial gridsize : 6
+ integration cells : 4
+ partition function : becke
+ partition sharpness : 3
+
+
+ biggest AO integral is expected to be 12.165751258
+
+ ------------------------
+ RI-J - INFORMATION
+ ------------------------
+ Contributions to RI integral batches:
+ neglected integral batches: 5804
+ direct contribution: 0
+ memory contribution: 3241
+ Memory core needed for (P|Q) and Cholesky 1 MByte
+ Memory core minimum needed except of (P|Q) 1 MByte
+ Total minimum memory core needed (sum) 1 MByte
+
+ ****************************************
+ Memory allocated for RI-J 279 MByte
+ ****************************************
+
+
+ ------------------------
+ nuclear repulsion energy : 488.621886873
+ ------------------------
+
+ _________________________________
+ | |
+ | DFTD3 V3.1 Rev 0 |
+ | S.Grimme, University Bonn |
+ | June 2014 |
+ | see standalone version |
+ | dftd3 -h for options |
+ |_________________________________|
+
+ Please cite DFT-D3 work done with this code as:
+ S. Grimme, J. Antony, S. Ehrlich and H. Krieg,
+ J. Chem. Phys, 132 (2010), 154104.
+ If used with BJ-damping cite also
+ S. Grimme, S. Ehrlich and L. Goerigk,
+ J. Comput. Chem. 32 (2011), 1456-1465
+ For DFT-D2 the reference is
+ S. Grimme, J. Comput. Chem., 27 (2006), 1787-1799
+
+C6 coefficients used:
+ 4 C6 for element 7
+Z= 7 CN= 0.000 C6(AA)= 25.27
+Z= 7 CN= 0.994 C6(AA)= 22.12
+Z= 7 CN= 2.014 C6(AA)= 19.68
+Z= 7 CN= 2.990 C6(AA)= 15.58
+ 2 C6 for element 17
+Z= 17 CN= 0.000 C6(AA)= 92.35
+Z= 17 CN= 0.997 C6(AA)= 90.40
+ 2 C6 for element 79
+Z= 79 CN= 0.000 C6(AA)= 342.35
+Z= 79 CN= 0.985 C6(AA)= 317.16
+
+# XYZ [au] R0(AA) [Ang.] CN C6(AA) C8(AA) C10(AA) [au]
+ 1 0.00000 0.00000 -4.21901 cl 0.674 1.959 90.4 3771.7 192779.2
+ 2 3.20995 0.00000 -1.34591 au 1.032 2.138 317.2 30985.0 3708224.6
+ 3 6.05830 0.00000 1.05651 n 0.490 1.981 19.7 433.5 11715.6
+ 4 7.65957 0.00000 2.39890 n 0.490 1.038 22.1 487.7 13181.0
+ 5 -3.20995 0.00000 -1.34591 au 1.032 2.138 317.2 30985.0 3708224.6
+ 6 -6.05830 0.00000 1.05651 n 0.490 1.981 19.7 433.5 11715.6
+ 7 -7.65957 0.00000 2.39890 n 0.490 1.038 22.1 487.7 13181.0
+
+molecular C6(AA) [au] = 3990.71
+
+ DFT-D V3(BJ)
+ DF b-p
+ parameters
+ s6 : 1.0000
+ s8 : 3.2822
+ a1 : 0.3946
+ a2 : 4.8516
+ k1-k3 : 16.0000 1.3333 -4.0000
+
+ Edisp /kcal,au: -10.8120 -0.01723006
+
+ E6 /kcal : -2.7737
+ E8 /kcal : -8.0383
+ % E8 : 74.35
+ nuclear repulsion energy = 488.621886873
+ empirical dispersive energy correction = -0.017230058
+ nuclear repulsion + dispersion correction = 488.604656815
+
+
+ -----------------
+ -S,T+V- integrals
+ -----------------
+
+ 1e-integrals will be neglected if expon. factor < 0.551479E-11
+
+
+ ----------------
+ -ecp- integrals
+ ----------------
+
+ Difference densities algorithm switched on.
+ The maximal number of linear combinations of
+ difference densities is 20 .
+
+ DIIS switched on: error vector is FDS-SDF
+ Max. Iterations for DIIS is : 4
+ DIIS matrix (see manual)
+ Scaling factor of diagonals : 1.200
+ threshold for scaling factor : 0.000
+
+ scf convergence criterion : increment of total energy < .1000000D-05
+ and increment of one-electron energy < .1000000D-02
+
+ MOs are in ASCII format !
+
+
+ automatic virtual orbital shift switched on
+ shift if e(lumo)-e(homo) < 0.10000000
+
+
+ reading orbital data $scfmo from file mos
+ orbital characterization : scfconv=6
+
+ DSCF restart information will be dumped onto file mos
+
+
+ Starting SCF iterations
+
+ Overall gridpoints after grid construction = 9170
+
+ ITERATION ENERGY 1e-ENERGY 2e-ENERGY NORM[dD(SAO)] TOL
+ 1 -951.08237340079 -2366.6707083 926.98367804 0.000D+00 0.550D-10
+ Exc = -81.4529980331 Coul = 1008.43667608
+ N = 82.000218010
+ current damping = 0.700
+
+ max. resid. norm for Fia-block= 1.900D-04 for orbital 14a1
+ max. resid. fock norm = 4.704D-02 for orbital 145b1
+
+ ITERATION ENERGY 1e-ENERGY 2e-ENERGY NORM[dD(SAO)] TOL
+ 2 -951.08237344766 -2366.6680991 926.98106880 0.297D-03 0.349D-10
+ Exc = -81.4529418646 Coul = 1008.43401066
+ N = 82.000218009
+ current damping = 0.700
+
+ Norm of current diis error: 0.13582E-02
+ max. resid. norm for Fia-block= 8.542D-05 for orbital 12a1
+ max. resid. fock norm = 1.937D-02 for orbital 145b1
+
+ ITERATION ENERGY 1e-ENERGY 2e-ENERGY NORM[dD(SAO)] TOL
+ 3 -951.08237341991 -2366.6720411 926.98501082 0.274D-03 0.315D-10
+ Exc = -81.4530577930 Coul = 1008.43806862
+ N = 82.000218015
+ current damping = 0.750
+
+ Norm of current diis error: 0.15919E-02
+ max. resid. norm for Fia-block= 3.335D-05 for orbital 14a1
+ max. resid. fock norm = 7.975D-03 for orbital 145b1
+
+ ENERGY CONVERGED !
+
+ Overall gridpoints after grid construction = 26614
+
+ ITERATION ENERGY 1e-ENERGY 2e-ENERGY NORM[dD(SAO)] TOL
+ 4 -951.08210388377 -2366.6709005 926.98413982 0.419D-04 0.280D-10
+ Exc = -81.4527433402 Coul = 1008.43688316
+ N = 81.999995762
+ current damping = 0.800
+
+ Norm of current diis error: 0.76958E-03
+ max. resid. norm for Fia-block= 1.574D-05 for orbital 12a1
+ max. resid. fock norm = 3.418D-03 for orbital 145b1
+
+ End of SCF iterations
+
+ convergence criteria satisfied after 4 iterations
+
+
+ ------------------------------------------
+ | total energy = -951.08210388377 |
+ ------------------------------------------
+ : kinetic energy = 769.25279623616 :
+ : potential energy = -1720.33490011993 :
+ : virial theorem = 1.80881849537 :
+ : wavefunction norm = 0.99999999992 :
+ ..........................................
+
+
+ orbitals $scfmo will be written to file mos
+
+ irrep 13a1 14a1 15a1 16a1 17a1
+ eigenvalues H -0.59950 -0.55921 -0.49551 -0.47943 -0.45501
+ eV -16.3134 -15.2171 -13.4835 -13.0460 -12.3816
+ occupation 2.0000 2.0000 2.0000 2.0000 2.0000
+
+ irrep 18a1 19a1 20a1 21a1 22a1
+ eigenvalues H -0.27691 -0.25174 -0.18099 -0.10329 -0.07744
+ eV -7.5352 -6.8502 -4.9250 -2.8108 -2.1073
+
+ irrep 1a2 2a2 3a2 4a2 5a2
+ eigenvalues H -2.43844 -0.62704 -0.49657 -0.47398 -0.27098
+ eV -66.3538 -17.0628 -13.5123 -12.8978 -7.3737
+ occupation 2.0000 2.0000 2.0000 2.0000
+
+ irrep 6a2 7a2 8a2 9a2 10a2
+ eigenvalues H -0.14634 -0.03348 0.05656 0.09525 0.12759
+ eV -3.9822 -0.9110 1.5391 2.5918 3.4720
+
+ irrep 10b1 11b1 12b1 13b1 14b1
+ eigenvalues H -0.60752 -0.56694 -0.48613 -0.47347 -0.44437
+ eV -16.5317 -15.4274 -13.2285 -12.8839 -12.0920
+ occupation 2.0000 2.0000 2.0000 2.0000 2.0000
+
+ irrep 15b1 16b1 17b1 18b1 19b1
+ eigenvalues H -0.26645 -0.22904 -0.12155 -0.09393 -0.02406
+ eV -7.2504 -6.2326 -3.3077 -2.5560 -0.6546
+
+ irrep 2b2 3b2 4b2 5b2 6b2
+ eigenvalues H -2.43846 -0.62758 -0.54047 -0.47938 -0.44623
+ eV -66.3544 -17.0775 -14.7070 -13.0446 -12.1428
+ occupation 2.0000 2.0000 2.0000 2.0000 2.0000
+
+ irrep 7b2 8b2 9b2 10b2 11b2
+ eigenvalues H -0.26953 -0.16771 -0.05147 0.02855 0.04869
+ eV -7.3344 -4.5637 -1.4005 0.7768 1.3248
+
+
+
+
+ ==============================================================================
+ electrostatic moments
+ ==============================================================================
+
+ reference point for electrostatic moments: 0.00000 0.00000 0.00000
+
+
+ nuc elec -> total
+ ------------------------------------------------------------------------------
+ charge
+ ------------------------------------------------------------------------------
+ 83.000000 -82.000000 1.000000
+
+ ------------------------------------------------------------------------------
+ dipole moment
+ ------------------------------------------------------------------------------
+ x 0.000000 -0.000000 0.000000
+ y 0.000000 0.000000 0.000000
+ z -74.491804 74.180934 -0.310870
+
+ | dipole moment | = 0.3109 a.u. = 0.7902 debye
+
+ ------------------------------------------------------------------------------
+ quadrupole moment
+ ------------------------------------------------------------------------------
+ xx 1726.753285 -1755.364612 -28.611327
+ yy 0.000000 -56.066180 -56.066180
+ zz 467.628964 -519.336389 -51.707425
+ xy 0.000000 0.000000 0.000000
+ xz 0.000000 -0.000000 -0.000000
+ yz 0.000000 -0.000000 -0.000000
+
+ 1/3 trace= -45.461644
+ anisotropy= 25.555796
+
+ ==============================================================================
+
+
+
+ ------------------------------------------------------------------------
+ total cpu-time : 6.85 seconds
+ total wall-time : 6.95 seconds
+ ------------------------------------------------------------------------
+
+ **** ridft : all done ****
+
+
+ 2019-03-19 09:52:26.143
+
+fine, there is no data group "$actual step"
+next step = rdgrad
+ energy change : actual value = 0.6520E-07 threshold = 0.1000E-06
+ geom. gradient : actual value = 0.3722E-04 threshold = 0.1000E-03
+
+CONVERGENCY CRITERIA FULFILLED IN CYCLE 19
+
diff --git a/tests/data/calculator/turbomole/ridft.out b/tests/data/calculator/turbomole/ridft.out
new file mode 100644
index 0000000..03ab8f3
--- /dev/null
+++ b/tests/data/calculator/turbomole/ridft.out
@@ -0,0 +1,469 @@
+ operating system is UNIX !
+
+ ridft (compute-1-1.local) : TURBOMOLE V7.2 ( 21285 ) 30 Jun 2017 at 11:51:10
+ Copyright (C) 2017 TURBOMOLE GmbH, Karlsruhe
+
+
+ 2019-03-19 10:30:37.313
+
+
+
+ r i d f t
+
+ DFT program with RI approximation
+ for coulomb part
+
+
+
+
+
+ References:
+
+ TURBOMOLE:
+ R. Ahlrichs, M. Baer, M. Haeser, H. Horn, and
+ C. Koelmel
+ Electronic structure calculations on workstation
+ computers: the program system TURBOMOLE
+ Chem. Phys. Lett. 162: 165 (1989)
+ Density Functional:
+ O. Treutler and R. Ahlrichs
+ Efficient Molecular Numerical Integration Schemes
+ J. Chem. Phys. 102: 346 (1995)
+ Parallel Version:
+ Performance of parallel TURBOMOLE for Density
+ Functional Calculations
+ M. v. Arnim and R. Ahlrichs
+ J. Comp. Chem. 19: 1746 (1998)
+ RI-J Method:
+ Auxiliary Basis Sets to approximate Coulomb
+ Potentials
+ Chem. Phys. Lett. 240: 283 (1995)
+ K. Eichkorn, O. Treutler, H. Oehm, M. Haeser
+ and R. Ahlrichs
+ Chem. Phys. Lett. 242: 652 (1995)
+
+ Auxiliary Basis Sets for Main Row Atoms and their
+ Use to approximate Coulomb Potentials
+ K. Eichkorn, F. Weigend, O. Treutler and
+ R. Ahlrichs
+ Theo. Chem. Acc. 97: 119 (1997)
+
+ Accurate Coulomb-fitting basis sets for H to Rn
+ F. Weigend
+ Phys. Chem. Chem. Phys. 8: 1057 (2006)
+
+ Multipole accelerated RI-J (MARI-J):
+ Fast evaluation of the Coulomb potential for
+ electron densities using multipole accelerated
+ resolution of identity approximation
+ M. Sierka, A. Hogekamp and R. Ahlrichs
+ J. Chem. Phys. 118: 9136 (2003)
+ RI-JK Method:
+ A fully direct RI-HF algorithm: Implementation,
+ optimised auxiliary basis sets, demonstration of
+ accuracy and efficiency
+ F. Weigend
+ Phys. Chem. Chem. Phys. 4: 4285 (2002)
+ Two-component HF and DFT with spin-orbit coupling:
+ Self-consistent treatment of spin-orbit
+ interactions with efficient Hartree-Fock and
+ density functional methods
+ M. K. Armbruster, F. Weigend, C. van Wüllen and
+ W. Klopper
+ Phys. Chem. Chem. Phys. 10: 1748 (2008)
+ Relativistic all-electron 2c calculations
+ An efficient implementation of two-component
+ relativistic exact-decoupling methods for large
+ molecules
+ D. Peng, N. Middendorf, F. Weigend, M. Reiher
+ J. Chem. Phys. 138, 184105 (2013)
+
+
+
+
+
+ +--------------------------------------------------+
+ | general information about current run |
+ +--------------------------------------------------+
+
+
+
+ DENSITY CONVERGENCE CHECK SWITCHED ON !
+ SCF CONVERGENCE IF RMS(delta[D]) < 0.1000000000E-06
+
+ B-P86 functional
+ exchange: LDA + Becke (B88)
+ correlation: LDA (VWN) + Perdew (P86)
+ A DFT calculation using the RI-J approximation will be carried out.
+ Allocatable memory for RI due to $ricore (MB): 2000
+
+
+ +--------------------------------------------------+
+ | Atomic coordinate, charge and isotop information |
+ +--------------------------------------------------+
+
+ atomic coordinates atom charge isotop
+ 0.00000000 0.00000000 -4.21900803 cl 17.000 0
+ 3.20995422 0.00000000 -1.34590515 au 79.000 0
+ 6.05830202 0.00000000 1.05651158 n 7.000 0
+ 7.65957070 0.00000000 2.39889759 n 7.000 0
+ -3.20995422 0.00000000 -1.34590515 au 79.000 0
+ -6.05830202 0.00000000 1.05651158 n 7.000 0
+ -7.65957070 0.00000000 2.39889759 n 7.000 0
+
+ center of nuclear mass : -0.00000000 0.00000000 -1.20099058
+ center of nuclear charge: 0.00000000 0.00000000 -1.16256366
+
+ +--------------------------------------------------+
+ | basis set information |
+ +--------------------------------------------------+
+
+ we will work with the 1s 3p 5d 7f 9g ... basis set
+ ...i.e. with spherical basis functions...
+
+ type atoms prim cont basis
+ ---------------------------------------------------------------------------
+ cl 1 105 70 def2-QZVPP [9s6p4d2f1g|20s14p4d2f1g]
+ au 2 109 88 def2-QZVPP [7s5p4d4f2g|9s8p6d4f2g]
+ n 4 77 57 def2-QZVPP [7s4p3d2f1g|15s8p3d2f1g]
+ ---------------------------------------------------------------------------
+ total: 7 631 474
+ ---------------------------------------------------------------------------
+
+ total number of primitive shells : 99
+ total number of contracted shells : 134
+ total number of cartesian basis functions : 606
+ total number of SCF-basis functions : 474
+
+
+ integral neglect threshold : 0.55E-10
+ integral storage threshold THIZE : 0.10E-04
+ integral storage threshold THIME : 5
+
+ number of unique ecp types : 1
+ RI-J AUXILIARY BASIS SET information:
+
+ we will work with the 1s 3p 5d 7f 9g ... basis set
+ ...i.e. with spherical basis functions...
+
+ type atoms prim cont basis
+ ---------------------------------------------------------------------------
+ cl 1 77 51 def2-QZVPP [8s4p3d1f1g|14s5p5d2f1g]
+ au 2 99 89 def2-QZVPP [8s5p5d2f3g|11s5p5d3f3g]
+ n 4 70 49 def2-QZVPP [6s4p3d1f1g|12s5p4d2f1g]
+ ---------------------------------------------------------------------------
+ total: 7 555 425
+ ---------------------------------------------------------------------------
+
+ total number of primitive shells : 78
+ total number of contracted shells : 123
+ total number of cartesian basis functions : 543
+ total number of SCF-basis functions : 425
+
+
+ symmetry group of the molecule : c2v
+
+ the group has the following generators :
+ c2(z)
+ mirror plane sigma(xz)
+
+ 4 symmetry operations found
+
+ there are 4 real representations : a1 a2 b1 b2
+
+ maximum number of shells which are related by symmetry : 2
+
+
+ mo occupation :
+ irrep mo's occupied
+ a1 159 17
+ a2 81 4
+ b1 145 14
+ b2 89 6
+
+ number of basis functions : 474
+ number of occupied orbitals : 41
+
+
+ ------------------
+ density functional
+ ------------------
+ B-P86 functional
+ exchange: LDA + Becke (B88)
+ correlation: LDA (VWN) + Perdew (P86)
+
+ iterations will be done with small grid
+
+ spherical integration : Lebedev's spherical grid
+ spherical gridsize : 4
+ i.e. gridpoints : 434
+ value for diffuse not defined
+ radial integration : Chebyshev 2nd kind (scaling 3)
+ radial gridsize : 6
+ integration cells : 4
+ partition function : becke
+ partition sharpness : 3
+
+
+ biggest AO integral is expected to be 12.165751258
+
+ ------------------------
+ RI-J - INFORMATION
+ ------------------------
+ Contributions to RI integral batches:
+ neglected integral batches: 5804
+ direct contribution: 0
+ memory contribution: 3241
+ Memory core needed for (P|Q) and Cholesky 1 MByte
+ Memory core minimum needed except of (P|Q) 1 MByte
+ Total minimum memory core needed (sum) 1 MByte
+
+ ****************************************
+ Memory allocated for RI-J 279 MByte
+ ****************************************
+
+
+ ------------------------
+ nuclear repulsion energy : 488.621886873
+ ------------------------
+
+ _________________________________
+ | |
+ | DFTD3 V3.1 Rev 0 |
+ | S.Grimme, University Bonn |
+ | June 2014 |
+ | see standalone version |
+ | dftd3 -h for options |
+ |_________________________________|
+
+ Please cite DFT-D3 work done with this code as:
+ S. Grimme, J. Antony, S. Ehrlich and H. Krieg,
+ J. Chem. Phys, 132 (2010), 154104.
+ If used with BJ-damping cite also
+ S. Grimme, S. Ehrlich and L. Goerigk,
+ J. Comput. Chem. 32 (2011), 1456-1465
+ For DFT-D2 the reference is
+ S. Grimme, J. Comput. Chem., 27 (2006), 1787-1799
+
+C6 coefficients used:
+ 4 C6 for element 7
+Z= 7 CN= 0.000 C6(AA)= 25.27
+Z= 7 CN= 0.994 C6(AA)= 22.12
+Z= 7 CN= 2.014 C6(AA)= 19.68
+Z= 7 CN= 2.990 C6(AA)= 15.58
+ 2 C6 for element 17
+Z= 17 CN= 0.000 C6(AA)= 92.35
+Z= 17 CN= 0.997 C6(AA)= 90.40
+ 2 C6 for element 79
+Z= 79 CN= 0.000 C6(AA)= 342.35
+Z= 79 CN= 0.985 C6(AA)= 317.16
+
+# XYZ [au] R0(AA) [Ang.] CN C6(AA) C8(AA) C10(AA) [au]
+ 1 0.00000 0.00000 -4.21901 cl 0.674 1.959 90.4 3771.7 192779.2
+ 2 3.20995 0.00000 -1.34591 au 1.032 2.138 317.2 30985.0 3708224.6
+ 3 6.05830 0.00000 1.05651 n 0.490 1.981 19.7 433.5 11715.6
+ 4 7.65957 0.00000 2.39890 n 0.490 1.038 22.1 487.7 13181.0
+ 5 -3.20995 0.00000 -1.34591 au 1.032 2.138 317.2 30985.0 3708224.6
+ 6 -6.05830 0.00000 1.05651 n 0.490 1.981 19.7 433.5 11715.6
+ 7 -7.65957 0.00000 2.39890 n 0.490 1.038 22.1 487.7 13181.0
+
+molecular C6(AA) [au] = 3990.71
+
+ DFT-D V3(BJ)
+ DF b-p
+ parameters
+ s6 : 1.0000
+ s8 : 3.2822
+ a1 : 0.3946
+ a2 : 4.8516
+ k1-k3 : 16.0000 1.3333 -4.0000
+
+ Edisp /kcal,au: -10.8120 -0.01723006
+
+ E6 /kcal : -2.7737
+ E8 /kcal : -8.0383
+ % E8 : 74.35
+ nuclear repulsion energy = 488.621886873
+ empirical dispersive energy correction = -0.017230058
+ nuclear repulsion + dispersion correction = 488.604656815
+
+
+ -----------------
+ -S,T+V- integrals
+ -----------------
+
+ 1e-integrals will be neglected if expon. factor < 0.551479E-11
+
+
+ ----------------
+ -ecp- integrals
+ ----------------
+
+ Difference densities algorithm switched on.
+ The maximal number of linear combinations of
+ difference densities is 20 .
+
+ DIIS switched on: error vector is FDS-SDF
+ Max. Iterations for DIIS is : 4
+ DIIS matrix (see manual)
+ Scaling factor of diagonals : 1.200
+ threshold for scaling factor : 0.000
+
+ scf convergence criterion : increment of total energy < .1000000D-05
+ and increment of one-electron energy < .1000000D-02
+
+ MOs are in ASCII format !
+
+
+ automatic virtual orbital shift switched on
+ shift if e(lumo)-e(homo) < 0.10000000
+
+
+ reading orbital data $scfmo from file mos
+ orbital characterization : scfdump=6
+
+ DSCF restart information will be dumped onto file mos
+
+
+ Starting SCF iterations
+
+ Overall gridpoints after grid construction = 9170
+
+ ITERATION ENERGY 1e-ENERGY 2e-ENERGY RMS[dD(SAO)] TOL
+ 1 -951.08237351404 -2366.6709007 926.98387038 0.000D+00 0.550D-10
+ Exc = -81.4530129367 Coul = 1008.43688331
+ N = 82.000218021
+ current damping = 0.700
+
+ max. resid. norm for Fia-block= 5.042D-05 for orbital 12a1
+ max. resid. fock norm = 3.418D-03 for orbital 145b1
+
+ ITERATION ENERGY 1e-ENERGY 2e-ENERGY RMS[dD(SAO)] TOL
+ 2 -951.08237348070 -2366.6676036 926.98057326 0.136D-05 0.349D-10
+ Exc = -81.4529219867 Coul = 1008.43349525
+ N = 82.000218017
+ current damping = 0.700
+
+ Norm of current diis error: 0.13345E-02
+ max. resid. norm for Fia-block= 1.668D-05 for orbital 12a1
+ max. resid. fock norm = 1.407D-03 for orbital 145b1
+
+ ENERGY & DENSITY CONVERGED !
+
+ Overall gridpoints after grid construction = 26614
+
+ ITERATION ENERGY 1e-ENERGY 2e-ENERGY RMS[dD(SAO)] TOL
+ 3 -951.08210393381 -2366.6686290 926.98186829 0.447D-06 0.324D-10
+ Exc = -81.4526877363 Coul = 1008.43455603
+ N = 81.999995768
+ current damping = 0.750
+
+ Norm of current diis error: 0.65220E-03
+ max. resid. norm for Fia-block= 8.722D-06 for orbital 12a1
+ max. resid. fock norm = 5.795D-04 for orbital 145b1
+
+ End of SCF iterations
+
+ convergence criteria satisfied after 3 iterations
+
+
+ ------------------------------------------
+ | total energy = -951.08210393381 |
+ ------------------------------------------
+ : kinetic energy = 769.25248571297 :
+ : potential energy = -1720.33458964678 :
+ : virial theorem = 1.80881816883 :
+ : wavefunction norm = 1.00000000000 :
+ ..........................................
+
+
+ orbitals $scfmo will be written to file mos
+
+ irrep 13a1 14a1 15a1 16a1 17a1
+ eigenvalues H -0.59950 -0.55921 -0.49551 -0.47943 -0.45501
+ eV -16.3134 -15.2171 -13.4835 -13.0460 -12.3816
+ occupation 2.0000 2.0000 2.0000 2.0000 2.0000
+
+ irrep 18a1 19a1 20a1 21a1 22a1
+ eigenvalues H -0.27691 -0.25174 -0.18099 -0.10329 -0.07744
+ eV -7.5352 -6.8502 -4.9250 -2.8108 -2.1073
+
+ irrep 1a2 2a2 3a2 4a2 5a2
+ eigenvalues H -2.43844 -0.62704 -0.49657 -0.47398 -0.27098
+ eV -66.3539 -17.0628 -13.5124 -12.8979 -7.3737
+ occupation 2.0000 2.0000 2.0000 2.0000
+
+ irrep 6a2 7a2 8a2 9a2 10a2
+ eigenvalues H -0.14634 -0.03348 0.05656 0.09525 0.12759
+ eV -3.9822 -0.9110 1.5391 2.5918 3.4720
+
+ irrep 10b1 11b1 12b1 13b1 14b1
+ eigenvalues H -0.60752 -0.56694 -0.48613 -0.47347 -0.44437
+ eV -16.5317 -15.4274 -13.2285 -12.8839 -12.0920
+ occupation 2.0000 2.0000 2.0000 2.0000 2.0000
+
+ irrep 15b1 16b1 17b1 18b1 19b1
+ eigenvalues H -0.26645 -0.22904 -0.12155 -0.09393 -0.02406
+ eV -7.2504 -6.2326 -3.3077 -2.5560 -0.6546
+
+ irrep 2b2 3b2 4b2 5b2 6b2
+ eigenvalues H -2.43846 -0.62758 -0.54047 -0.47938 -0.44623
+ eV -66.3544 -17.0775 -14.7070 -13.0446 -12.1428
+ occupation 2.0000 2.0000 2.0000 2.0000 2.0000
+
+ irrep 7b2 8b2 9b2 10b2 11b2
+ eigenvalues H -0.26953 -0.16771 -0.05147 0.02855 0.04869
+ eV -7.3344 -4.5637 -1.4005 0.7768 1.3248
+
+
+
+
+ ==============================================================================
+ electrostatic moments
+ ==============================================================================
+
+ reference point for electrostatic moments: 0.00000 0.00000 0.00000
+
+
+ nuc elec -> total
+ ------------------------------------------------------------------------------
+ charge
+ ------------------------------------------------------------------------------
+ 83.000000 -82.000000 1.000000
+
+ ------------------------------------------------------------------------------
+ dipole moment
+ ------------------------------------------------------------------------------
+ x 0.000000 -0.000000 -0.000000
+ y 0.000000 0.000000 0.000000
+ z -74.491804 74.180316 -0.311488
+
+ | dipole moment | = 0.3115 a.u. = 0.7917 debye
+
+ ------------------------------------------------------------------------------
+ quadrupole moment
+ ------------------------------------------------------------------------------
+ xx 1726.753285 -1755.379036 -28.625751
+ yy 0.000000 -56.066423 -56.066423
+ zz 467.628964 -519.339703 -51.710739
+ xy 0.000000 0.000000 0.000000
+ xz 0.000000 0.000000 0.000000
+ yz 0.000000 -0.000000 -0.000000
+
+ 1/3 trace= -45.467637
+ anisotropy= 25.542897
+
+ ==============================================================================
+
+
+
+ ------------------------------------------------------------------------
+ total cpu-time : 6.03 seconds
+ total wall-time : 6.11 seconds
+ ------------------------------------------------------------------------
+
+ **** ridft : all done ****
+
+
+ 2019-03-19 10:30:43.387
+
diff --git a/tests/data/calculator/turbomole/vib_normal_modes b/tests/data/calculator/turbomole/vib_normal_modes
new file mode 100644
index 0000000..6c67ca9
--- /dev/null
+++ b/tests/data/calculator/turbomole/vib_normal_modes
@@ -0,0 +1,107 @@
+$vibrational normal modes
+ 1 1 0.4017933788 0.0112069541 0.0531646733 0.0021192264 0.0144547723
+ 1 2 0.1746816095 0.0000000000 -0.0000000000 -0.0531810057 -0.0000000000
+ 1 3 -0.0000000000 0.0000000000 0.2473802835 0.0000000000 0.0000000000
+ 1 4 -0.0000000000 0.6957767154 -0.0000000000 0.1784605990 0.0006394290
+ 1 5 -0.0000000000
+ 2 1 -0.0007586826 -0.2505229121 0.1222823881 0.6057590069 0.3411628300
+ 2 2 -0.0593414160 -0.0000000000 0.0000000000 0.0000000000 -0.0000000000
+ 2 3 -0.6031700194 0.0000000000 -0.0000000000 0.0000000000 0.1128198336
+ 2 4 -0.0000000000 -0.0000000000 0.0000000000 0.0000000000 -0.0000000000
+ 2 5 0.0000000000
+ 3 1 0.0627779325 -0.0308102029 0.2599921746 -0.0179552588 -0.0552618876
+ 3 2 -0.1098904977 0.2040122773 0.0000000000 0.0000000000 -0.0873896372
+ 3 3 0.0000000000 -0.4026279673 0.0000000000 0.0000000000 0.0000000000
+ 3 4 0.5547842988 0.0000000000 -0.1409096673 -0.0000000000 -0.0000000000
+ 3 5 -0.0010311194
+ 4 1 0.3782453935 0.0227638528 -0.0443583206 0.0088542391 0.0138499561
+ 4 2 0.0060992777 0.1634159242 0.0000000000 0.0498214435 -0.1640756749
+ 4 3 -0.0000000000 0.0560483215 -0.0011645491 -0.0000000000 -0.0000000000
+ 4 4 -0.0073163323 -0.0460848946 0.0626398567 -0.0701386362 0.0005969823
+ 4 5 -0.0005640637
+ 5 1 -0.0216555417 0.1464689083 0.0504563035 0.4906422702 0.0046270731
+ 5 2 -0.0008048270 0.0000000000 -0.1401234618 0.0000000000 -0.0000000000
+ 5 3 0.0972178120 0.0000000000 -0.0000000000 0.0342104386 -0.0341382769
+ 5 4 0.0000000000 -0.0000000000 0.0000000000 -0.0000000000 0.0000000000
+ 5 5 -0.0000000000
+ 6 1 0.0890867555 -0.0437220676 0.3689490614 -0.0254799049 -0.0545861609
+ 6 2 0.0784569404 0.0179450380 -0.0000000000 -0.1388772832 0.0602235241
+ 6 3 -0.0000000000 0.0126166702 -0.0426722185 -0.0000000000 -0.0000000000
+ 6 4 -0.0479680030 -0.0139752423 0.0595539602 -0.0563524848 0.0004883734
+ 6 5 -0.0004809922
+ 7 1 0.3585551574 0.0324274423 -0.1259046075 0.0144858882 0.0133442238
+ 7 2 -0.1348650495 0.3374712697 -0.0000000000 -0.1711190341 0.0438482518
+ 7 3 0.0000000000 -0.2928767461 -0.4392131748 -0.0000000000 -0.0000000000
+ 7 4 -0.4491353967 0.0460304665 -0.3288742568 0.3929413322 -0.3877925257
+ 7 5 0.3878829650
+ 8 1 -0.0403557878 0.4885448956 -0.0065063084 0.3989467443 -0.2745824886
+ 8 2 0.0477605186 0.0000000000 0.2082871805 -0.0000000000 0.0000000000
+ 8 3 -0.0505219927 -0.0000000000 0.0000000000 -0.6379829952 0.6353290305
+ 8 4 -0.0000000000 0.0000000000 -0.0000000000 0.0000000000 -0.0000000000
+ 8 5 -0.0000000000
+ 9 1 0.1124318479 -0.0551793903 0.4656317824 -0.0321568877 -0.0539865558
+ 9 2 0.2455867416 -0.1901537473 0.0000000000 0.1211558900 -0.1836767565
+ 9 3 -0.0000000000 0.4903241150 0.4255735852 -0.0000000000 0.0000000000
+ 9 4 0.2522534076 -0.4175989312 -0.3580697044 0.2787686228 -0.3249639039
+ 9 5 0.3252393775
+10 1 0.3475529457 0.0378271163 -0.1714698058 0.0176326557 0.0130616385
+10 2 -0.2136309597 0.4466167494 -0.0000000000 -0.4621933542 0.3529631466
+10 3 0.0000000000 0.2538220357 0.1425119273 -0.0000000000 -0.0000000000
+10 4 -0.0099368618 -0.2785152236 -0.3944370875 0.3675322530 0.3785881852
+10 5 -0.3783754531
+11 1 -0.0508773629 0.6802833530 -0.0381519302 0.3479802472 -0.4304653025
+11 2 0.0748745712 0.0000000000 0.6610460392 -0.0000000000 0.0000000000
+11 3 -0.5532532775 0.0000000000 -0.0000000000 0.3029972668 -0.2980393324
+11 4 0.0000000000 -0.0000000000 0.0000000000 -0.0000000000 0.0000000000
+11 5 0.0000000000
+12 1 0.1255558650 -0.0616204058 0.5199843491 -0.0359105176 -0.0536494731
+12 2 0.3395428650 -0.3203917607 0.0000000000 0.4682239251 -0.5526219529
+12 3 -0.0000000000 -0.1581916980 -0.2706445722 -0.0000000000 -0.0000000000
+12 4 -0.2798206665 -0.0393682018 -0.3010797255 0.3298273547 0.3173099508
+12 5 -0.3171704403
+13 1 0.3782453935 0.0227638528 -0.0443583206 0.0088542391 0.0138499561
+13 2 0.0060992777 -0.1634159242 0.0000000000 0.0498214435 0.1640756749
+13 3 0.0000000000 -0.0560483215 -0.0011645491 0.0000000000 0.0000000000
+13 4 0.0073163323 -0.0460848946 -0.0626398567 -0.0701386362 0.0005969823
+13 5 0.0005640637
+14 1 0.0262918095 -0.2491019703 -0.0705659471 0.3123385086 -0.0810899103
+14 2 0.0141046729 -0.0000000000 0.1401234618 -0.0000000000 0.0000000000
+14 3 0.0972178120 -0.0000000000 0.0000000000 -0.0342104386 -0.0341382769
+14 4 0.0000000000 0.0000000000 -0.0000000000 0.0000000000 -0.0000000000
+14 5 0.0000000000
+15 1 0.0364691096 -0.0178983382 0.1510352878 -0.0104306127 -0.0559376144
+15 2 -0.2982379359 0.0179450380 0.0000000000 0.1388772832 0.0602235241
+15 3 0.0000000000 0.0126166702 0.0426722185 0.0000000000 -0.0000000000
+15 4 -0.0479680030 0.0139752423 0.0595539602 0.0563524848 -0.0004883734
+15 5 -0.0004809922
+16 1 0.3585551574 0.0324274423 -0.1259046075 0.0144858882 0.0133442238
+16 2 -0.1348650495 -0.3374712697 -0.0000000000 -0.1711190341 -0.0438482518
+16 3 0.0000000000 0.2928767461 -0.4392131748 -0.0000000000 -0.0000000000
+16 4 0.4491353967 0.0460304665 0.3288742567 0.3929413322 -0.3877925257
+16 5 -0.3878829650
+17 1 0.0501375696 -0.2580351760 -0.2349174616 0.0624254221 -0.4363603016
+17 2 0.0758999396 -0.0000000000 -0.2082871805 0.0000000000 -0.0000000000
+17 3 -0.0505219927 0.0000000000 -0.0000000000 0.6379829952 0.6353290305
+17 4 -0.0000000000 -0.0000000000 0.0000000000 0.0000000000 -0.0000000000
+17 5 0.0000000000
+18 1 0.0131240172 -0.0064410154 0.0543525667 -0.0037536299 -0.0565372195
+18 2 -0.4653677370 -0.1901537473 -0.0000000000 -0.1211558900 -0.1836767565
+18 3 0.0000000000 0.4903241150 -0.4255735852 -0.0000000000 -0.0000000000
+18 4 0.2522534076 0.4175989312 -0.3580697044 -0.2787686228 0.3249639039
+18 5 0.3252393775
+19 1 0.3475529457 0.0378271163 -0.1714698058 0.0176326557 0.0130616385
+19 2 -0.2136309597 -0.4466167494 -0.0000000000 -0.4621933542 -0.3529631466
+19 3 0.0000000000 -0.2538220357 0.1425119273 0.0000000000 0.0000000000
+19 4 0.0099368618 -0.2785152236 0.3944370875 0.3675322530 0.3785881852
+19 5 0.3783754531
+20 1 0.0635342770 -0.2636251593 -0.3269343930 -0.0774869636 -0.6350025793
+20 2 0.1104515174 -0.0000000000 -0.6610460392 0.0000000000 -0.0000000000
+20 3 -0.5532532775 -0.0000000000 0.0000000000 -0.3029972668 -0.2980393324
+20 4 0.0000000000 0.0000000000 -0.0000000000 -0.0000000000 -0.0000000000
+20 5 0.0000000000
+21 1 0.0000000000 0.0000000000 0.0000000000 0.0000000000 -0.0568743022
+21 2 -0.5593238604 -0.3203917607 -0.0000000000 -0.4682239251 -0.5526219529
+21 3 0.0000000000 -0.1581916980 0.2706445722 0.0000000000 0.0000000000
+21 4 -0.2798206665 0.0393682018 -0.3010797254 -0.3298273547 -0.3173099508
+21 5 -0.3171704403
+$end
diff --git a/tests/data/calculator/turbomole/vibspectrum b/tests/data/calculator/turbomole/vibspectrum
new file mode 100644
index 0000000..a5f3376
--- /dev/null
+++ b/tests/data/calculator/turbomole/vibspectrum
@@ -0,0 +1,25 @@
+$vibrational spectrum
+# mode symmetry wave number IR intensity selection rules
+# cm**(-1) km/mol IR RAMAN
+ 1 -0.00 0.00000 - -
+ 2 0.00 0.00000 - -
+ 3 0.00 0.00000 - -
+ 4 0.00 0.00000 - -
+ 5 0.00 0.00000 - -
+ 6 0.00 0.00000 - -
+ 7 a1 17.76 0.09949 YES YES
+ 8 a2 63.42 0.00000 NO YES
+ 9 b1 64.64 0.24217 YES YES
+ 10 a1 70.16 0.37255 YES YES
+ 11 b2 91.46 0.02414 YES YES
+ 12 a1 288.99 1.98873 YES YES
+ 13 b1 295.89 2.86398 YES YES
+ 14 a2 307.85 0.00000 NO YES
+ 15 b2 310.48 1.09445 YES YES
+ 16 a1 333.17 0.14492 YES YES
+ 17 b1 333.34 10.84724 YES YES
+ 18 a1 373.70 4.59709 YES YES
+ 19 b1 374.00 6.82206 YES YES
+ 20 b1 2302.08 81.89913 YES YES
+ 21 a1 2303.93 22.12199 YES YES
+$end
From 467d002ae66075e22816b7b0ae18dbdb9bed4d2c Mon Sep 17 00:00:00 2001
From: "Josef M. Gallmetzer" <64498081+galjos@users.noreply.github.com>
Date: Wed, 8 Jul 2026 14:17:48 +0200
Subject: [PATCH 2/2] Use the readable multi-file description in the no-energy
error
Review nit: the 'No energy' TSValueError used the raw output_file (a
Python list repr for the Turbomole multi-file case) instead of
_describe_source's clean comma-joined format.
---
ThermoScreening/thermo/api.py | 6 +++---
tests/calculator/test_qm.py | 8 ++++++++
2 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/ThermoScreening/thermo/api.py b/ThermoScreening/thermo/api.py
index d89784c..f74418a 100644
--- a/ThermoScreening/thermo/api.py
+++ b/ThermoScreening/thermo/api.py
@@ -20,7 +20,7 @@
from ..calculator import Geoopt, Hessian, Modes
from ..calculator.dftbplus import _spin_kwargs, _solvation_kwargs, _dispersion_kwargs, SPIN_CONSTANTS_3OB
from ..calculator.orca import read_orca_hess
-from ..calculator.qm import read_cclib
+from ..calculator.qm import read_cclib, _describe_source
from ..calculator.xtb import optimise_and_frequencies, xtb_calculator
from ..calculator.xtb_cli import run_xtb
@@ -581,8 +581,8 @@ def cclib_thermo(
energy = file_energy
if energy is None:
raise TSValueError(
- f"No energy for '{output_file}': cclib parsed none, so pass energy=... "
- "explicitly."
+ f"No energy for '{_describe_source(output_file)}': cclib parsed none, "
+ "so pass energy=... explicitly."
)
return run_thermo(
diff --git a/tests/calculator/test_qm.py b/tests/calculator/test_qm.py
index 781d62f..8c2f034 100644
--- a/tests/calculator/test_qm.py
+++ b/tests/calculator/test_qm.py
@@ -120,6 +120,14 @@ def test_cclib_thermo_requires_energy(monkeypatch, tmp_path):
cclib_thermo(str(tmp_path / "water.log"))
+def test_cclib_thermo_requires_energy_multi_file_error_is_readable(monkeypatch):
+ data = dict(_WATER)
+ del data["scfenergies"]
+ _fake_ccread(monkeypatch, **data)
+ with pytest.raises(TSValueError, match=r"No energy for 'control, coord, aoforce\.out'"):
+ cclib_thermo(["control", "coord", "aoforce.out"])
+
+
# --- multi-file (Turbomole) support --- #
#
# Turbomole splits a job's output across many small files instead of one