You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
``modelChemistry`` Level of theory from quantum chemical calculations
22
+
``atomEnergies`` Dictionary of atomic energies at ``modelChemistry`` level
22
23
``frequencyScaleFactor`` A factor by which to scale all frequencies
23
24
``useHinderedRotors`` ``True`` if hindered rotors are used, ``False`` if not
25
+
``useAtomCorrections`` ``True`` if atom corrections are used, ``False`` if not
24
26
``useBondCorrections`` ``True`` if bond corrections are used, ``False`` if not
25
27
``species`` Contains parameters for non-transition states
26
28
``transitionState`` Contains parameters for transition state(s)
@@ -33,61 +35,81 @@ Function Description
33
35
Model Chemistry
34
36
===============
35
37
36
-
The first item in the input file should be a ``modelChemistry()`` function,
37
-
which accepts a string describing the model chemistry.
38
+
The first item in the input file should be a ``modelChemistry`` assignment
39
+
with a string describing the model chemistry.
38
40
39
41
CanTherm uses this information to adjust the computed energies to the usual gas-phase reference
40
42
states by applying atom, bond and spin-orbit coupling energy corrections. This is particularly
41
43
important for ``thermo()`` calculations (see below). Note that the user must specify under the
42
-
``species()`` function the type and number of atoms and bonds for CanTherm to apply these corrections.
44
+
``species()`` function the type and number of bonds for CanTherm to apply these corrections.
43
45
The example below specifies CBS-QB3 as the model chemistry::
44
46
45
-
modelChemistry("CBS-QB3")
46
-
47
-
Currently, atomization energy corrections (AEC), bond corrections (BC), and spin orbit correction (SOC) are available for the following model chemistries:
- In ``'M08SO/MG3S*'`` the grid size used in the [QChem] electronic structure calculation utilizes 75 radial points and 434 angular points. ``'DFT_G03_b3lyp'`` is a B3LYP calculation with a moderately large basis set.
96
+
- In ``'M08SO/MG3S*'`` the grid size used in the [QChem] electronic structure calculation utilizes 75 radial points and 434 angular points.
85
97
- Refer to paper by Goldsmith et al. (*Goldsmith, C. F.; Magoon, G. R.; Green, W. H., Database of Small Molecule Thermochemistry for Combustion. J. Phys. Chem. A 2012, 116, 9033-9057*) for definition of ``'Klip_2'`` (*QCI(tz,qz)*) and ``'Klip_3'`` (*QCI(dz,qz)*).
86
98
99
+
If a model chemistry other than the ones in the above table is used, then the user should supply
100
+
the corresponding atomic energies (using ``atomEnergies``) to get meaningful results. Bond
101
+
corrections would not be applied in this case.
102
+
103
+
If a model chemistry or atomic energies are not available, then a kinetics job can still be run by
104
+
setting ``useAtomCorrections`` to ``False``, in which case Cantherm will not raise an error for
105
+
unknown elements. The user should be aware that the resulting energies and thermodynamic quantities
106
+
in the output file will not be meaningful, but kinetics and equilibrium constants will still be
107
+
correct.
108
+
87
109
Frequency Scale Factor
88
110
======================
89
111
90
-
Frequency scale factors are empirically fit to experiment for different ``modelChemistry()``. Refer to NIST website for values (http://cccbdb.nist.gov/vibscalejust.asp).
112
+
Frequency scale factors are empirically fit to experiment for different ``modelChemistry``. Refer to NIST website for values (http://cccbdb.nist.gov/vibscalejust.asp).
91
113
For CBS-QB3, which is not included in the link above, ``frequencyScaleFactor = 0.99`` according to Montgomery et al. (*J. Chem. Phys. 1999, 110, 2822–2827*).
92
114
93
115
Species
@@ -117,7 +139,6 @@ The species input file accepts the following parameters:
The ``atom`` and ``bond`` parameters are used to apply atomization energy corrections (AEC), bond corrections (BC), and spin orbit corrections (SOC) for a given ``modelChemistry()`` (see `Model Chemistry`_).
155
+
The types and number of atoms in the species are automatically inferred from the quantum chemistry output and are used
156
+
to apply atomization energy corrections (AEC) and spin orbit corrections (SOC) for a given ``modelChemistry``
157
+
(see `Model Chemistry`_). If not interested in accurate thermodynamics (e.g., if only using ``kinetics()``), then
158
+
atom corrections can be turned off by setting ``useAtomCorrections`` to ``False``.
135
159
136
-
Allowed atom symbols for the ``atoms`` parameter are
137
-
``'C'``, ``'N'``, ``'O'``, ``'S'``, ``'P'``, and ``'H'``. For example, for formaldehyde we would write::
138
-
139
-
atoms = {'C': 1, 'O': 1, H': 2}
160
+
The ``bond`` parameter is used to apply bond corrections (BC) for a given ``modelChemistry``.
140
161
141
162
Allowed bond types for the ``bonds`` parameter are, e.g., ``'C-H'``, ``'C-C'``, ``'C=C'``, ``'N-O'``, ``'C=S'``, ``'O=O'``, ``'C#N'``...
142
163
143
164
``'O=S=O'`` is also allowed.
144
165
145
-
The order of elements in the bond correction label is important and generally follows the order specified under "allowed atom symbols" above, i.e., ``'C=N'`` is correct while ``'N=C'`` is incorrect. Use ``-``/``=``/``#`` to denote a single/double/triple bond, respectively. For example, for formaldehyde we would write::
166
+
The order of elements in the bond correction label is not important. Use ``-``/``=``/``#`` to denote a single/double/triple bond, respectively. For example, for formaldehyde we would write::
146
167
147
168
bonds = {'C=O': 1, 'C-H': 2}
148
169
@@ -160,7 +181,7 @@ For ethane, we would write::
160
181
161
182
opticalIsomers = 1
162
183
163
-
The ``energy`` parameter is a dictionary with entries for different ``modelChemistry()``. The entries can consist of either
184
+
The ``energy`` parameter is a dictionary with entries for different ``modelChemistry``. The entries can consist of either
164
185
floating point numbers corresponding to the 0 K atomization energy in Hartree (without zero-point energy correction), or
165
186
they can specify the path to a quantum chemistry calculation output file that contains the species's energy. For example::
166
187
@@ -170,7 +191,7 @@ they can specify the path to a quantum chemistry calculation output file that co
170
191
}
171
192
172
193
In this example, the ``CBS-QB3`` energy is obtained from a Gaussian log file, while the ``Klip_2`` energy is specified directly.
173
-
The energy used will depend on what ``modelChemistry()`` was specified in the input file. CanTherm can parse the energy from
194
+
The energy used will depend on what ``modelChemistry`` was specified in the input file. CanTherm can parse the energy from
174
195
a ``GaussianLog``, ``MolproLog`` or ``QchemLog``.
175
196
176
197
The input to the remaining parameters, ``geometry``, ``frequencies`` and ``rotors``, will depend on if hindered/free rotors are included.
@@ -193,11 +214,6 @@ the ``species()`` function in the input file should look like the following exam
193
214
194
215
and the species input file (``C2H6.py`` in the example above) should look like the following::
195
216
196
-
atoms = {
197
-
'C': 2,
198
-
'H': 6,
199
-
}
200
-
201
217
bonds = {
202
218
'C-C': 1,
203
219
'C-H': 6,
@@ -303,11 +319,6 @@ in between these two extremes.
303
319
304
320
To summarize, the species input file with hindered/free rotors should look like the following example (different options for specifying the same ``rotors`` entry are commented out)::
0 commit comments