Inputs, Parameters and Outputs¶
This page is the reference for the chemshell calculation
(ChemShellCalculation). It describes every input port, the valid
keys accepted by each dictionary-style input, the outputs that are produced, and the exit codes that may be
returned. For complete runnable scripts see Example Calculations, and for the higher level WorkChains see
Workflows.
How the calculation type is selected¶
There is a single chemshell calculation plugin. The type of job it performs is inferred from which
inputs are provided, rather than from a dedicated “task” input:
Single point energy — the default when no
optimisation_parametersinput is given.Geometry optimisation — configured whenever the
optimisation_parametersinput is provided.Vibrational frequencies / thermochemistry — a geometry optimisation with
thermal: Truein theoptimisation_parameters.Nudged Elastic Band (NEB) — a geometry optimisation with
nebset tofree,frozenorperpendicular(an end-pointstructure2is also required).
The level of theory is selected independently:
QM — provide
qm_parameters.MM — provide
mm_parameterstogether with aforce_field_file.QM/MM — provide
qm_parameters,mm_parameters(with aforce_field_file) andqmmm_parameters.
Input ports¶
Port |
Type |
Required |
Description |
|---|---|---|---|
|
|
yes |
The input structure. A |
|
|
no |
Index of the structure to extract when |
|
|
no |
An additional structure, used as the final (end-point) structure for NEB optimisations. |
|
|
no |
Parameters for the single point Task object. See calculation_parameters. |
|
|
no |
Parameters for a geometry optimisation Task. Providing this input configures a geometry optimisation. See optimisation_parameters. |
|
|
no |
Parameters for the QM Theory object. See qm_parameters. |
|
|
no |
Parameters for the MM Theory interface. See mm_parameters. |
|
|
no |
Force field parameter file for the MM interface. Required whenever |
|
|
no |
Parameters for the QM/MM interface. See qmmm_parameters. |
Note
The following validation rules are enforced across the input namespace:
mm_parametersrequires aforce_field_file(and vice versa).qmmm_parametersrequires bothqm_parametersandmm_parameters.
Metadata / resources¶
The number of MPI processes is derived from metadata.options.resources, which defaults to:
builder.metadata.options.resources = {
"num_machines": 1,
"num_mpiprocs_per_machine": 4,
}
calculation_parameters¶
Controls a single point energy calculation.
Key |
Type |
Description |
|---|---|---|
|
|
Compute the first derivatives (gradients) of the energy. Returned in the |
|
|
Compute the second derivatives (hessian). Stored alongside the gradients in the |
optimisation_parameters¶
Providing this input configures the job as a geometry optimisation (driven by DL-FIND). All keys are optional; ChemShell defaults apply to any that are omitted.
Key |
Type |
Description |
|---|---|---|
|
|
Optimisation algorithm, e.g. |
|
|
Coordinate system used for the optimisation. |
|
|
Maximum number of optimisation cycles. |
|
|
Maximum number of energy evaluations. |
|
|
Trust radius for the step control. |
|
|
Maximum step size. |
|
|
Convergence tolerance. |
|
|
Perform a vibrational frequency / thermochemical analysis on the structure instead of an optimisation. |
|
|
Retrieve the optimisation path (per-step geometries and forces) as trajectory outputs. |
|
|
Enable an NEB calculation; one of |
|
|
Number of images along the NEB path. |
|
|
NEB spring force constant. |
|
|
Enable a dimer transition-state search. |
|
|
Dimer separation. |
|
|
Transition-state search option. |
qm_parameters¶
Configures the QM Theory object. The theory key is required and selects the QM interface; the remaining
keys are passed through to the corresponding ChemShell Theory object.
Key |
Type |
Description |
|---|---|---|
|
|
Required. The QM interface to use (see Supported QM theories). |
|
|
Electronic structure method, one of |
|
|
Basis set name. |
|
|
Exchange-correlation functional (for DFT). |
|
|
Total system charge. |
|
|
Spin multiplicity. |
|
|
SCF type, one of |
|
|
Maximum number of SCF iterations. |
|
|
SCF convergence threshold. |
|
|
Enable SCF damping. |
|
|
Enable DIIS convergence acceleration. |
|
|
Use a direct SCF. |
|
|
Restart from a previous calculation. |
|
|
Pseudopotential specification. |
|
|
Path option passed to the interface. |
Supported QM theories¶
The following values are accepted for the theory key (case-insensitive). They correspond to the members
of ChemShellQMTheory:
CASTEP, CP2K, DFTBP, FHI_AIMS, GAMESS_UK, GAUSSIAN, LSDALTON, MNDO,
MOLPRO, NWCHEM, ORCA, PYSCF and TURBOMOLE.
mm_parameters¶
Configures the MM Theory interface. The theory key is required and selects the MM backend. A
force_field_file input must always accompany mm_parameters.
All backends accept the common keys below; each backend additionally accepts a set of backend-specific keys.
Key |
Type |
Description |
|---|---|---|
|
|
Required. The MM interface, one of |
Backend-specific keys include, for example, rcut, rvdw, ewald, timestep and steps for
DL_POLY; molecule and conjugate for GULP; and the extensive NAMD option set (cutoff,
pme, switching etc.). See
get_valid_mm_paramater_keys() for the complete,
authoritative list of keys accepted for each backend.
Supported MM theories correspond to the members of ChemShellMMTheory:
DL_POLY, GULP and NAMD.
qmmm_parameters¶
Configures the QM/MM coupling. Required whenever both qm_parameters and mm_parameters are supplied.
Key |
Type |
Description |
|---|---|---|
|
|
The atom indices that make up the QM region of the QM/MM partition. |
Outputs¶
Which outputs are produced depends on the calculation type and the parameters requested.
Output |
Type |
Produced when / description |
|---|---|---|
|
|
Always. The total energy of the system. |
|
|
When |
|
|
After a successful geometry optimisation. A ChemShell structure file containing the optimised geometry. |
|
|
After a geometry optimisation. Per-step values (e.g. energies) along the optimisation. |
|
|
When |
|
|
When |
|
|
When |
|
|
When |
|
|
After an NEB calculation. The determined reaction pathway. |
|
|
After an NEB calculation. Per-image data ( |
Exit codes¶
Code |
Label |
Meaning |
|---|---|---|
|
|
The |
|
|
ChemShell did not compute a final energy for the requested task. |
|
|
The expected optimised structure file was not produced. |
|
|
The expected |
|
|
The requested gradients or hessian were not computed. |