Types
Value types shared across many workflows — the vocabulary you use for preset, method, and
structural inputs regardless of which workflow you're submitting.
Method, Engine & Task
Method
Bases: LowercaseStrEnum
Computational chemistry method.
default_engine
Return the canonical Engine for this quantum-chemistry method.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
is_periodic
|
bool
|
if True and method supports periodic DFT, return "quantum_espresso"; if True and method is in XTB family, return "tblite" (periodic-capable backend) instead of "xtb" |
False
|
Returns:
| Type | Description |
|---|---|
Engine
|
lower-case engine identifier (e.g. "psi4", "xtb")
|
Engine
Bases: LowercaseStrEnum
Computational chemistry engine.
Task
Bases: LowercaseStrEnum
Calculation task type.
Correction
Bases: LowercaseStrEnum
Various post hoc corrections.
Mode
Bases: LowercaseStrEnum
Calculation accuracy mode.
Solvent
Solvent
Bases: LowercaseStrEnum
Implicit solvent.
SolventModel
Bases: LowercaseStrEnum
Implicit solvation model.
SolventSettings
pydantic-model
Bases: Base
Implicit solvation settings.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
solvent
|
solvent to use |
required | |
model
|
solvation model |
required |
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.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
constraint_type
|
which type |
required | |
atoms
|
atoms in question (1-indexed) |
required | |
value
|
value to constrain to; leaving blank sets current value |
required |
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.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
atoms
|
which atoms to apply to |
required | |
force_constant
|
strength of attraction, in kcal/mol/Å |
required | |
equilibrium
|
distance at which force is zero |
required |
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.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
confining_radius
|
confining radius, in Å |
required | |
force_constant
|
strength of confinement, in kcal/mol/Å |
required |
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)