Types
Value types shared across many workflows — the vocabulary you use for preset, method, and
structural inputs regardless of which workflow you're submitting.
Legacy enum members retained for parsing historical workflows are omitted below.
Enum members and their accepted string values are listed below. Import these types from rowan,
not stjames.
Methods
Computational chemistry method.
HARTREE_FOCK = 'hf'
class-attribute
instance-attribute
HF3C = 'hf_3c'
class-attribute
instance-attribute
PBE = 'pbe'
class-attribute
instance-attribute
BP86 = 'bp86'
class-attribute
instance-attribute
B973C = 'b97_3c'
class-attribute
instance-attribute
B97D3BJ = 'b97_d3bj'
class-attribute
instance-attribute
R2SCAN = 'r2scan'
class-attribute
instance-attribute
R2SCAN3C = 'r2scan_3c'
class-attribute
instance-attribute
TPSS = 'tpss'
class-attribute
instance-attribute
M06L = 'm06l'
class-attribute
instance-attribute
PBE0 = 'pbe0'
class-attribute
instance-attribute
B3LYP = 'b3lyp'
class-attribute
instance-attribute
TPSSH = 'tpssh'
class-attribute
instance-attribute
M06 = 'm06'
class-attribute
instance-attribute
M062X = 'm062x'
class-attribute
instance-attribute
CAMB3LYP = 'camb3lyp'
class-attribute
instance-attribute
WB97XD3 = 'wb97x_d3'
class-attribute
instance-attribute
WB97XV = 'wb97x_v'
class-attribute
instance-attribute
WB97X3C = 'wb97x_3c'
class-attribute
instance-attribute
WB97MV = 'wb97m_v'
class-attribute
instance-attribute
WB97MD3BJ = 'wb97m_d3bj'
class-attribute
instance-attribute
DSDBLYPD3BJ = 'dsd_blyp_d3bj'
class-attribute
instance-attribute
SKALA = 'skala'
class-attribute
instance-attribute
AIMNET2_WB97MD3 = 'aimnet2_wb97md3'
class-attribute
instance-attribute
OMOL25_CONSERVING_S = 'omol25_conserving_s'
class-attribute
instance-attribute
UMA_S_OMOL = 'uma_s_omol'
class-attribute
instance-attribute
UMA_S_1_2_OMOL = 'uma_s_1_2_omol'
class-attribute
instance-attribute
UMA_M_OMOL = 'uma_m_omol'
class-attribute
instance-attribute
UMA_S_OMAT = 'uma_s_omat'
class-attribute
instance-attribute
UMA_S_1_2_OMAT = 'uma_s_1_2_omat'
class-attribute
instance-attribute
UMA_M_OMAT = 'uma_m_omat'
class-attribute
instance-attribute
UMA_S_OMC = 'uma_s_omc'
class-attribute
instance-attribute
UMA_S_1_2_OMC = 'uma_s_1_2_omc'
class-attribute
instance-attribute
UMA_M_OMC = 'uma_m_omc'
class-attribute
instance-attribute
ORB_V3_CONSERVATIVE_INF_OMAT = 'orb_v3_conservative_inf_omat'
class-attribute
instance-attribute
ORB_V3_CONSERVATIVE_OMOL = 'orb_v3_conservative_omol'
class-attribute
instance-attribute
GFN_FF = 'gfn_ff'
class-attribute
instance-attribute
GFN0_XTB = 'gfn0_xtb'
class-attribute
instance-attribute
GFN1_XTB = 'gfn1_xtb'
class-attribute
instance-attribute
GFN2_XTB = 'gfn2_xtb'
class-attribute
instance-attribute
G_XTB = 'g_xtb'
class-attribute
instance-attribute
PM6 = 'pm6'
class-attribute
instance-attribute
PM6_D3H4X = 'pm6_d3h4x'
class-attribute
instance-attribute
PM6_ORG = 'pm6_org'
class-attribute
instance-attribute
PM7 = 'pm7'
class-attribute
instance-attribute
OFF_SAGE_2_0_0 = 'off_sage_2_0_0'
class-attribute
instance-attribute
OFF_SAGE_2_2_1 = 'off_sage_2_2_1'
class-attribute
instance-attribute
OFF_SAGE_2_3_0 = 'off_sage_2_3_0'
class-attribute
instance-attribute
MANGO_1_0_0 = 'mango_1_0_0'
class-attribute
instance-attribute
Engines
Computational chemistry engine.
AIMNET2 = 'aimnet2'
class-attribute
instance-attribute
GPU4PYSCF = 'gpu4pyscf'
class-attribute
instance-attribute
MOPAC = 'mopac'
class-attribute
instance-attribute
OPENFF = 'openff'
class-attribute
instance-attribute
OMOL25 = 'omol25'
class-attribute
instance-attribute
ORB = 'orb'
class-attribute
instance-attribute
PSI4 = 'psi4'
class-attribute
instance-attribute
PYSCF = 'pyscf'
class-attribute
instance-attribute
QUANTUM_ESPRESSO = 'quantum_espresso'
class-attribute
instance-attribute
TBLITE = 'tblite'
class-attribute
instance-attribute
XTB = 'xtb'
class-attribute
instance-attribute
Tasks
Calculation task type.
ENERGY = 'energy'
class-attribute
instance-attribute
GRADIENT = 'gradient'
class-attribute
instance-attribute
OPTIMIZE = 'optimize'
class-attribute
instance-attribute
OPTIMIZE_TS = 'optimize_ts'
class-attribute
instance-attribute
CHARGE = 'charge'
class-attribute
instance-attribute
SPIN_DENSITY = 'spin_density'
class-attribute
instance-attribute
DIPOLE = 'dipole'
class-attribute
instance-attribute
HESSIAN = 'hessian'
class-attribute
instance-attribute
FREQUENCIES = 'frequencies'
class-attribute
instance-attribute
BAND_STRUCTURE = 'band_structure'
class-attribute
instance-attribute
ELASTIC_TENSOR = 'elastic_tensor'
class-attribute
instance-attribute
Corrections
Various post hoc corrections.
D3BJ = 'd3bj'
class-attribute
instance-attribute
D3 = 'd3'
class-attribute
instance-attribute
D4 = 'd4'
class-attribute
instance-attribute
GCP = 'gcp'
class-attribute
instance-attribute
Modes
Calculation accuracy mode.
AUTO = 'auto'
class-attribute
instance-attribute
RECKLESS = 'reckless'
class-attribute
instance-attribute
RAPID = 'rapid'
class-attribute
instance-attribute
CAREFUL = 'careful'
class-attribute
instance-attribute
METICULOUS = 'meticulous'
class-attribute
instance-attribute
DEBUG = 'debug'
class-attribute
instance-attribute
MANUAL = 'manual'
class-attribute
instance-attribute
Solvent
Solvent
Bases: LowercaseStrEnum
Implicit solvent.
SolventModel
Bases: LowercaseStrEnum
Implicit solvation model.
SolventSettings
pydantic-model
Bases: Base
Implicit solvation settings.
:param solvent: solvent to use :param model: solvation model
Show JSON schema:
{
"$defs": {
"Solvent": {
"description": "Implicit solvent.",
"enum": [
"water",
"nitromethane",
"nitrobenzene",
"toluene",
"benzene",
"chlorobenzene",
"carbontetrachloride",
"dichloroethane",
"dichloromethane",
"chloroform",
"diethylether",
"diisopropylether",
"dimethylsulfoxide",
"tetrahydrofuran",
"cyclohexane",
"aceticacid",
"hexane",
"octane",
"decane",
"ethylacetate",
"acetone",
"acetonitrile",
"methanol",
"ethanol",
"isopropanol",
"octanol",
"dimethylacetamide",
"dimethylformamide",
"n_methylpyrrolidone",
"ethylene_glycol"
],
"title": "Solvent",
"type": "string"
},
"SolventModel": {
"description": "Implicit solvation model.",
"enum": [
"pcm",
"cpcm",
"alpb",
"cosmo",
"cosmo2",
"cosmors",
"gbsa",
"cpcmx",
"smd"
],
"title": "SolventModel",
"type": "string"
}
},
"description": "Implicit solvation settings.\n\n:param solvent: solvent to use\n:param model: solvation model",
"properties": {
"solvent": {
"$ref": "#/$defs/Solvent"
},
"model": {
"$ref": "#/$defs/SolventModel"
}
},
"required": [
"solvent",
"model"
],
"title": "SolventSettings",
"type": "object"
}
Fields:
-
solvent(Solvent) -
model(SolventModel)
Validators:
Constraints
ConstraintType
Bases: LowercaseStrEnum
Different sorts of constraints.
Constraint
pydantic-model
Bases: Base
Represents a single (absolute) constraint.
:param constraint_type: which type :param atoms: atoms in question (1-indexed) :param value: value to constrain to; leaving blank sets current value
Show JSON schema:
{
"$defs": {
"ConstraintType": {
"description": "Different sorts of constraints.",
"enum": [
"bond",
"angle",
"dihedral",
"freeze_atoms"
],
"title": "ConstraintType",
"type": "string"
}
},
"description": "Represents a single (absolute) constraint.\n\n:param constraint_type: which type\n:param atoms: atoms in question (1-indexed)\n:param value: value to constrain to; leaving blank sets current value",
"properties": {
"constraint_type": {
"$ref": "#/$defs/ConstraintType"
},
"atoms": {
"items": {
"exclusiveMinimum": 0,
"type": "integer"
},
"title": "Atoms",
"type": "array"
},
"value": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Value"
}
},
"required": [
"constraint_type",
"atoms"
],
"title": "Constraint",
"type": "object"
}
Fields:
-
constraint_type(ConstraintType) -
atoms(list[PositiveInt]) -
value(float | None)
Validators:
-
check_atom_list_length
PairwiseHarmonicConstraint
pydantic-model
Bases: Base
Represents a harmonic constraint, with a characteristic spring constant.
:param atoms: which atoms to apply to :param force_constant: strength of attraction, in kcal/mol/Å :param equilibrium: distance at which force is zero
Show JSON schema:
{
"description": "Represents a harmonic constraint, with a characteristic spring constant.\n\n:param atoms: which atoms to apply to\n:param force_constant: strength of attraction, in kcal/mol/\u00c5\n:param equilibrium: distance at which force is zero",
"properties": {
"atoms": {
"maxItems": 2,
"minItems": 2,
"prefixItems": [
{
"exclusiveMinimum": 0,
"type": "integer"
},
{
"exclusiveMinimum": 0,
"type": "integer"
}
],
"title": "Atoms",
"type": "array"
},
"force_constant": {
"exclusiveMinimum": 0,
"title": "Force Constant",
"type": "number"
},
"equilibrium": {
"exclusiveMinimum": 0,
"title": "Equilibrium",
"type": "number"
}
},
"required": [
"atoms",
"force_constant",
"equilibrium"
],
"title": "PairwiseHarmonicConstraint",
"type": "object"
}
Fields:
-
atoms(tuple[PositiveInt, PositiveInt]) -
force_constant(PositiveFloat) -
equilibrium(PositiveFloat)
SphericalHarmonicConstraint
pydantic-model
Bases: Base
Represents a spherical harmonic constraint to keep a system near the origin.
:param confining_radius: confining radius, in Å :param force_constant: strength of confinement, in kcal/mol/Å
Show JSON schema:
{
"description": "Represents a spherical harmonic constraint to keep a system near the origin.\n\n:param confining_radius: confining radius, in \u00c5\n:param force_constant: strength of confinement, in kcal/mol/\u00c5",
"properties": {
"confining_radius": {
"exclusiveMinimum": 0,
"title": "Confining Radius",
"type": "number"
},
"force_constant": {
"default": 10,
"exclusiveMinimum": 0,
"title": "Force Constant",
"type": "number"
}
},
"required": [
"confining_radius"
],
"title": "SphericalHarmonicConstraint",
"type": "object"
}
Fields:
-
confining_radius(PositiveFloat) -
force_constant(PositiveFloat)