Settings
Settings
pydantic-model
Bases: Base
Settings for (base) computational chemistry calculations.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
mode
|
calculation mode (affects thresholds for optimizations, etc.) |
required | |
tasks
|
tasks to perform (deprecated, specify in workflows or calculations instead) |
required | |
method
|
computational method |
required | |
basis_set
|
basis set to use (autopopulated for 3c methods) |
required | |
engine
|
computational engine to use (auto-selected if None) |
required | |
corrections
|
list of corrections to apply (e.g. D3BJ, D4) |
required | |
solvent_settings
|
solvent model settings (if any) |
required | |
omega
|
range-separation parameter (Bohr⁻¹) or method to tune it (optional) |
required | |
excited_state_settings
|
settings for excited-state calculations (if any) |
required | |
pbc_dft_settings
|
settings specific to DFT calculations on periodic systems |
required | |
scf_settings
|
SCF settings |
required | |
opt_settings
|
geometry optimization settings |
required | |
thermochem_settings
|
thermochemistry settings |
required | |
compute_settings
|
hardware settings |
required |
Show JSON schema:
{
"$defs": {
"BasisSet": {
"description": "Atomic orbital basis set.\n\n:param name: basis set name (e.g., def2-SVP, cc-pVDZ)\n:param overrides: element or atom-specific basis set overrides\n:param cutoff_threshold: basis function screening threshold",
"properties": {
"name": {
"title": "Name",
"type": "string"
},
"overrides": {
"anyOf": [
{
"items": {
"$ref": "#/$defs/BasisSetOverride"
},
"type": "array"
},
{
"type": "null"
}
],
"default": [],
"title": "Overrides"
},
"cutoff_threshold": {
"default": 1e-10,
"exclusiveMinimum": 0,
"title": "Cutoff Threshold",
"type": "number"
}
},
"required": [
"name"
],
"title": "BasisSet",
"type": "object"
},
"BasisSetOverride": {
"description": "Basis set override for specific atoms or elements.\n\n:param name: basis set name for override\n:param atomic_numbers: atomic numbers to override (mutually exclusive with atoms)\n:param atoms: 1-indexed atom indices to override (mutually exclusive with atomic_numbers)",
"properties": {
"name": {
"title": "Name",
"type": "string"
},
"atomic_numbers": {
"anyOf": [
{
"items": {
"exclusiveMinimum": 0,
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Atomic Numbers"
},
"atoms": {
"anyOf": [
{
"items": {
"exclusiveMinimum": 0,
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Atoms"
}
},
"required": [
"name"
],
"title": "BasisSetOverride",
"type": "object"
},
"ComputeSettings": {
"description": "Hardware compute settings.\n\n:param requested_compute_type: requested hardware type\n:param compute_type_used: actual hardware type used (set after execution)",
"properties": {
"requested_compute_type": {
"$ref": "#/$defs/ComputeType",
"default": "cpu"
},
"compute_type_used": {
"anyOf": [
{
"$ref": "#/$defs/ComputeType"
},
{
"type": "null"
}
],
"default": null
}
},
"title": "ComputeSettings",
"type": "object"
},
"ComputeType": {
"description": "Hardware compute type.",
"enum": [
"cpu",
"gpu",
"auto"
],
"title": "ComputeType",
"type": "string"
},
"Constraint": {
"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"
},
"ConstraintType": {
"description": "Different sorts of constraints.",
"enum": [
"bond",
"angle",
"dihedral",
"freeze_atoms"
],
"title": "ConstraintType",
"type": "string"
},
"Correction": {
"description": "Various post hoc corrections.",
"enum": [
"d3bj",
"d3",
"d4",
"gcp"
],
"title": "Correction",
"type": "string"
},
"Engine": {
"description": "Computational chemistry engine.",
"enum": [
"aimnet2",
"egret",
"gpu4pyscf",
"mace",
"mopac",
"openff",
"omol25",
"orb",
"psi4",
"pyscf",
"quantum_espresso",
"tblite",
"terachem",
"xtb"
],
"title": "Engine",
"type": "string"
},
"Method": {
"description": "Computational chemistry method.",
"enum": [
"hf",
"hf_3c",
"pbe",
"bp86",
"b97_3c",
"b97_d3bj",
"r2scan",
"r2scan_3c",
"tpss",
"m06l",
"pbe0",
"b3lyp",
"tpssh",
"m06",
"m062x",
"camb3lyp",
"wb97x_d3",
"wb97x_v",
"wb97x_3c",
"wb97m_v",
"wb97m_d3bj",
"dsd_blyp_d3bj",
"skala",
"aimnet2_wb97md3",
"mace_mp_0",
"mace_mp_0b2_l",
"omol25_conserving_s",
"uma_s_omol",
"uma_s_1_2_omol",
"uma_m_omol",
"uma_s_omat",
"uma_s_1_2_omat",
"uma_m_omat",
"uma_s_omc",
"uma_s_1_2_omc",
"uma_m_omc",
"orb_v3_conservative_inf_omat",
"orb_v3_conservative_omol",
"egret_1",
"egret_1e",
"egret_1t",
"gfn_ff",
"gfn0_xtb",
"gfn1_xtb",
"gfn2_xtb",
"g_xtb",
"pm6",
"pm6_d3h4x",
"pm6_org",
"pm7",
"off_sage_2_0_0",
"off_sage_2_2_1",
"off_sage_2_3_0",
"smirnoff_2_0_0_amber_am1bcc",
"smirnoff_2_2_1_amber_am1bcc"
],
"title": "Method",
"type": "string"
},
"Mode": {
"description": "Calculation accuracy mode.",
"enum": [
"auto",
"reckless",
"rapid",
"careful",
"meticulous",
"debug",
"manual"
],
"title": "Mode",
"type": "string"
},
"OmegaTuning": {
"description": "Options for omega (range-separation parameter) tuning",
"enum": [
"koopmans",
"generalized_koopmans",
"half"
],
"title": "OmegaTuning",
"type": "string"
},
"OptimizationSettings": {
"description": "Geometry optimization settings.\n\n:param max_steps: maximum number of optimization steps\n:param transition_state: perform transition state optimization\n:param recalc_hess_every: recalculate Hessian every n steps (0 = never)\n:param max_gradient_threshold: convergence threshold for max gradient, in Hartree/\u00c5\n:param rms_gradient_threshold: convergence threshold for RMS gradient, in Hartree/\u00c5\n:param max_displacement_threshold: convergence threshold for step displacement, in \u00c5\n:param rms_displacement_threshold: convergence threshold for step displacement, in \u00c5\n:param energy_threshold: convergence threshold for energy change, in Hartree\n:param optimize_cell: optimize unit cell (periodic systems only)\n:param constraints: geometric constraints to apply\n:param save_intermediate_steps: save intermediate geometries",
"properties": {
"max_steps": {
"default": 250,
"exclusiveMinimum": 0,
"title": "Max Steps",
"type": "integer"
},
"transition_state": {
"default": false,
"title": "Transition State",
"type": "boolean"
},
"recalc_hess_every": {
"default": 0,
"title": "Recalc Hess Every",
"type": "integer"
},
"max_gradient_threshold": {
"default": 0.0005,
"exclusiveMinimum": 0,
"title": "Max Gradient Threshold",
"type": "number"
},
"rms_gradient_threshold": {
"default": 0.0003,
"exclusiveMinimum": 0,
"title": "Rms Gradient Threshold",
"type": "number"
},
"max_displacement_threshold": {
"default": 0.002,
"exclusiveMinimum": 0,
"title": "Max Displacement Threshold",
"type": "number"
},
"rms_displacement_threshold": {
"default": 0.001,
"exclusiveMinimum": 0,
"title": "Rms Displacement Threshold",
"type": "number"
},
"energy_threshold": {
"default": 1e-06,
"exclusiveMinimum": 0,
"title": "Energy Threshold",
"type": "number"
},
"optimize_cell": {
"default": false,
"title": "Optimize Cell",
"type": "boolean"
},
"constraints": {
"default": [],
"items": {
"$ref": "#/$defs/Constraint"
},
"title": "Constraints",
"type": "array"
},
"save_intermediate_steps": {
"default": true,
"title": "Save Intermediate Steps",
"type": "boolean"
}
},
"title": "OptimizationSettings",
"type": "object"
},
"PBCDFTSettings": {
"description": "PBC DFT settings.\n\n:param plane_wave_cutoff: plane-wave kinetic-energy cutoff (Hartree);\n None = use highest cutoff from pseudopotential metadata of elements in structure\n:param charge_density_cutoff: charge-density plane-wave cutoff (Hartree);\n None = use highest cutoff from pseudopotential metadata of elements in structure\n:param kpoints: Monkhorst\u2013Pack k-point-grid dimensions; (None -> \u00c5\u207b\u00b9 = .3)\n:param smearing_type: occupations smearing type\n:param smearing_width: smearing width, if relevant (Hartree)\n:param hubbard_u: DFT+U on-site Coulomb repulsion per element symbol (Hartree)\n None = no DFT+U; \"auto\" = automatic U values from MP database",
"properties": {
"plane_wave_cutoff": {
"anyOf": [
{
"exclusiveMinimum": 0,
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Plane Wave Cutoff"
},
"charge_density_cutoff": {
"anyOf": [
{
"exclusiveMinimum": 0,
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Charge Density Cutoff"
},
"kpoints": {
"anyOf": [
{
"maxItems": 3,
"minItems": 3,
"prefixItems": [
{
"exclusiveMinimum": 0,
"type": "integer"
},
{
"exclusiveMinimum": 0,
"type": "integer"
},
{
"exclusiveMinimum": 0,
"type": "integer"
}
],
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Kpoints"
},
"smearing_type": {
"anyOf": [
{
"$ref": "#/$defs/PBCDFTSmearing"
},
{
"type": "null"
}
],
"default": null
},
"smearing_width": {
"default": 0.005,
"exclusiveMinimum": 0,
"title": "Smearing Width",
"type": "number"
},
"hubbard_u": {
"anyOf": [
{
"additionalProperties": {
"exclusiveMinimum": 0,
"type": "number"
},
"type": "object"
},
{
"const": "auto",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Hubbard U"
}
},
"title": "PBCDFTSettings",
"type": "object"
},
"PBCDFTSmearing": {
"description": "Smearing types for occupations in PBC DFT calculations.",
"enum": [
"marzari_vanderbilt",
"methfessel_paxton",
"fermi_dirac",
"gaussian"
],
"title": "PBCDFTSmearing",
"type": "string"
},
"SCFSettings": {
"description": "Settings for SCF convergence.\n\n:param max_iters: maximum number of SCF iterations to permit\n:param soscf: whether or not to use SOSCF (second-order SCF).",
"properties": {
"max_iters": {
"default": 250,
"title": "Max Iters",
"type": "integer"
},
"soscf": {
"$ref": "#/$defs/UseSOSCF",
"default": "upon_failure"
}
},
"title": "SCFSettings",
"type": "object"
},
"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"
},
"SolventSettings": {
"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"
},
"TDDFTSettings": {
"description": "Settings for TDDFT calculations.\n\nNew:\n:param tda: use Tamm-Dancoff approximation\n:param num_excitations: number of excitations to calculate\n:param target_root: root to target (for gradient/optimization)",
"properties": {
"tda": {
"default": true,
"title": "Tda",
"type": "boolean"
},
"num_excitations": {
"default": 5,
"exclusiveMinimum": 0,
"title": "Num Excitations",
"type": "integer"
},
"target_root": {
"anyOf": [
{
"exclusiveMinimum": 0,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Target Root"
},
"settings_type": {
"const": "tddft_settings",
"default": "tddft_settings",
"title": "Settings Type",
"type": "string"
}
},
"title": "TDDFTSettings",
"type": "object"
},
"Task": {
"description": "Calculation task type.",
"enum": [
"energy",
"gradient",
"optimize",
"optimize_ts",
"charge",
"spin_density",
"dipole",
"hessian",
"frequencies",
"stress",
"band_structure",
"elastic_tensor"
],
"title": "Task",
"type": "string"
},
"ThermochemistrySettings": {
"description": "Thermochemistry calculation settings.\n\n:param cutoff_frequency: Cramer/Truhlar quasi-harmonic cutoff, in cm^-1\n:param temperature: temperature for thermochemistry, in K\n:param scaling_factor: frequency scaling factor\n:param concentration: concentration, in M (defaults to 1 atm)",
"properties": {
"cutoff_frequency": {
"default": 100,
"minimum": 0,
"title": "Cutoff Frequency",
"type": "number"
},
"temperature": {
"default": 298,
"minimum": 0,
"title": "Temperature",
"type": "number"
},
"scaling_factor": {
"default": 1.0,
"minimum": 0,
"title": "Scaling Factor",
"type": "number"
},
"concentration": {
"default": 0.0408740470708,
"minimum": 0,
"title": "Concentration",
"type": "number"
}
},
"title": "ThermochemistrySettings",
"type": "object"
},
"UseSOSCF": {
"enum": [
"always",
"upon_failure",
"never"
],
"title": "UseSOSCF",
"type": "string"
}
},
"description": "Settings for (base) computational chemistry calculations.\n\n:param mode: calculation mode (affects thresholds for optimizations, etc.)\n:param tasks: tasks to perform (deprecated, specify in workflows or calculations instead)\n:param method: computational method\n:param basis_set: basis set to use (autopopulated for 3c methods)\n:param engine: computational engine to use (auto-selected if None)\n:param corrections: list of corrections to apply (e.g. D3BJ, D4)\n:param solvent_settings: solvent model settings (if any)\n:param omega: range-separation parameter (Bohr\u207b\u00b9) or method to tune it (optional)\n:param excited_state_settings: settings for excited-state calculations (if any)\n:param pbc_dft_settings: settings specific to DFT calculations on periodic systems\n:param scf_settings: SCF settings\n:param opt_settings: geometry optimization settings\n:param thermochem_settings: thermochemistry settings\n:param compute_settings: hardware settings",
"properties": {
"mode": {
"$ref": "#/$defs/Mode",
"default": "auto"
},
"tasks": {
"default": [
"energy",
"charge",
"dipole"
],
"items": {
"$ref": "#/$defs/Task"
},
"title": "Tasks",
"type": "array"
},
"method": {
"$ref": "#/$defs/Method",
"default": "hf"
},
"basis_set": {
"anyOf": [
{
"$ref": "#/$defs/BasisSet"
},
{
"type": "null"
}
],
"default": null
},
"engine": {
"$ref": "#/$defs/Engine",
"default": null
},
"corrections": {
"default": [],
"items": {
"$ref": "#/$defs/Correction"
},
"title": "Corrections",
"type": "array"
},
"solvent_settings": {
"anyOf": [
{
"$ref": "#/$defs/SolventSettings"
},
{
"type": "null"
}
],
"default": null
},
"omega": {
"anyOf": [
{
"$ref": "#/$defs/OmegaTuning"
},
{
"exclusiveMinimum": 0,
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Omega"
},
"excited_state_settings": {
"anyOf": [
{
"discriminator": {
"mapping": {
"tddft_settings": "#/$defs/TDDFTSettings"
},
"propertyName": "settings_type"
},
"oneOf": [
{
"$ref": "#/$defs/TDDFTSettings"
}
]
},
{
"type": "null"
}
],
"default": null,
"title": "Excited State Settings"
},
"pbc_dft_settings": {
"anyOf": [
{
"$ref": "#/$defs/PBCDFTSettings"
},
{
"type": "null"
}
],
"default": null
},
"scf_settings": {
"$ref": "#/$defs/SCFSettings",
"default": {
"max_iters": 250,
"soscf": "upon_failure"
}
},
"opt_settings": {
"$ref": "#/$defs/OptimizationSettings",
"default": {
"max_steps": 250,
"transition_state": false,
"recalc_hess_every": 0,
"max_gradient_threshold": 0.0005,
"rms_gradient_threshold": 0.0003,
"max_displacement_threshold": 0.002,
"rms_displacement_threshold": 0.001,
"energy_threshold": 1e-06,
"optimize_cell": false,
"constraints": [],
"save_intermediate_steps": true
}
},
"thermochem_settings": {
"$ref": "#/$defs/ThermochemistrySettings",
"default": {
"cutoff_frequency": 100.0,
"temperature": 298.0,
"scaling_factor": 1.0,
"concentration": 0.0408740470708
}
},
"compute_settings": {
"$ref": "#/$defs/ComputeSettings",
"default": {
"requested_compute_type": "cpu",
"compute_type_used": null
}
}
},
"title": "Settings",
"type": "object"
}
Fields:
-
mode(Mode) -
tasks(UniqueList[Task]) -
method(Method) -
basis_set(BasisSet | None) -
engine(Engine) -
corrections(UniqueList[Correction]) -
solvent_settings(SolventSettings | None) -
omega(OmegaTuning | PositiveFloat | None) -
excited_state_settings(ExcitedStateSettingsUnion | None) -
pbc_dft_settings(PBCDFTSettings | None) -
scf_settings(SCFSettings) -
opt_settings(OptimizationSettings) -
thermochem_settings(ThermochemistrySettings) -
compute_settings(ComputeSettings)
Validators:
-
_force_cosmors_recipe -
set_defaults -
set_mode_auto→mode -
validate_and_build -
parse_basis_set→basis_set -
remove_empty_string→corrections
set_defaults
pydantic-validator
Set the calculation engine and any dependent defaults.
set_mode_auto
pydantic-validator
Set the mode to RAPID if AUTO is selected.
parse_basis_set
pydantic-validator
Turn a string into a BasisSet object. (This is a little crude.)
OptimizationSettings
pydantic-model
Bases: Base
Geometry optimization settings.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
max_steps
|
maximum number of optimization steps |
required | |
transition_state
|
perform transition state optimization |
required | |
recalc_hess_every
|
recalculate Hessian every n steps (0 = never) |
required | |
max_gradient_threshold
|
convergence threshold for max gradient, in Hartree/Å |
required | |
rms_gradient_threshold
|
convergence threshold for RMS gradient, in Hartree/Å |
required | |
max_displacement_threshold
|
convergence threshold for step displacement, in Å |
required | |
rms_displacement_threshold
|
convergence threshold for step displacement, in Å |
required | |
energy_threshold
|
convergence threshold for energy change, in Hartree |
required | |
optimize_cell
|
optimize unit cell (periodic systems only) |
required | |
constraints
|
geometric constraints to apply |
required | |
save_intermediate_steps
|
save intermediate geometries |
required |
Show JSON schema:
{
"$defs": {
"Constraint": {
"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"
},
"ConstraintType": {
"description": "Different sorts of constraints.",
"enum": [
"bond",
"angle",
"dihedral",
"freeze_atoms"
],
"title": "ConstraintType",
"type": "string"
}
},
"description": "Geometry optimization settings.\n\n:param max_steps: maximum number of optimization steps\n:param transition_state: perform transition state optimization\n:param recalc_hess_every: recalculate Hessian every n steps (0 = never)\n:param max_gradient_threshold: convergence threshold for max gradient, in Hartree/\u00c5\n:param rms_gradient_threshold: convergence threshold for RMS gradient, in Hartree/\u00c5\n:param max_displacement_threshold: convergence threshold for step displacement, in \u00c5\n:param rms_displacement_threshold: convergence threshold for step displacement, in \u00c5\n:param energy_threshold: convergence threshold for energy change, in Hartree\n:param optimize_cell: optimize unit cell (periodic systems only)\n:param constraints: geometric constraints to apply\n:param save_intermediate_steps: save intermediate geometries",
"properties": {
"max_steps": {
"default": 250,
"exclusiveMinimum": 0,
"title": "Max Steps",
"type": "integer"
},
"transition_state": {
"default": false,
"title": "Transition State",
"type": "boolean"
},
"recalc_hess_every": {
"default": 0,
"title": "Recalc Hess Every",
"type": "integer"
},
"max_gradient_threshold": {
"default": 0.0005,
"exclusiveMinimum": 0,
"title": "Max Gradient Threshold",
"type": "number"
},
"rms_gradient_threshold": {
"default": 0.0003,
"exclusiveMinimum": 0,
"title": "Rms Gradient Threshold",
"type": "number"
},
"max_displacement_threshold": {
"default": 0.002,
"exclusiveMinimum": 0,
"title": "Max Displacement Threshold",
"type": "number"
},
"rms_displacement_threshold": {
"default": 0.001,
"exclusiveMinimum": 0,
"title": "Rms Displacement Threshold",
"type": "number"
},
"energy_threshold": {
"default": 1e-06,
"exclusiveMinimum": 0,
"title": "Energy Threshold",
"type": "number"
},
"optimize_cell": {
"default": false,
"title": "Optimize Cell",
"type": "boolean"
},
"constraints": {
"default": [],
"items": {
"$ref": "#/$defs/Constraint"
},
"title": "Constraints",
"type": "array"
},
"save_intermediate_steps": {
"default": true,
"title": "Save Intermediate Steps",
"type": "boolean"
}
},
"title": "OptimizationSettings",
"type": "object"
}
Fields:
-
max_steps(PositiveInt) -
transition_state(bool) -
recalc_hess_every(int) -
max_gradient_threshold(PositiveFloat) -
rms_gradient_threshold(PositiveFloat) -
max_displacement_threshold(PositiveFloat) -
rms_displacement_threshold(PositiveFloat) -
energy_threshold(PositiveFloat) -
optimize_cell(bool) -
constraints(Sequence[Constraint]) -
save_intermediate_steps(bool)
PBCDFTSmearing
Bases: LowercaseStrEnum
Smearing types for occupations in PBC DFT calculations.
PBCDFTSettings
pydantic-model
Bases: BaseModel
PBC DFT settings.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
plane_wave_cutoff
|
plane-wave kinetic-energy cutoff (Hartree); None = use highest cutoff from pseudopotential metadata of elements in structure |
required | |
charge_density_cutoff
|
charge-density plane-wave cutoff (Hartree); None = use highest cutoff from pseudopotential metadata of elements in structure |
required | |
kpoints
|
Monkhorst–Pack k-point-grid dimensions; (None -> Å⁻¹ = .3) |
required | |
smearing_type
|
occupations smearing type |
required | |
smearing_width
|
smearing width, if relevant (Hartree) |
required | |
hubbard_u
|
DFT+U on-site Coulomb repulsion per element symbol (Hartree) None = no DFT+U; "auto" = automatic U values from MP database |
required |
Show JSON schema:
{
"$defs": {
"PBCDFTSmearing": {
"description": "Smearing types for occupations in PBC DFT calculations.",
"enum": [
"marzari_vanderbilt",
"methfessel_paxton",
"fermi_dirac",
"gaussian"
],
"title": "PBCDFTSmearing",
"type": "string"
}
},
"description": "PBC DFT settings.\n\n:param plane_wave_cutoff: plane-wave kinetic-energy cutoff (Hartree);\n None = use highest cutoff from pseudopotential metadata of elements in structure\n:param charge_density_cutoff: charge-density plane-wave cutoff (Hartree);\n None = use highest cutoff from pseudopotential metadata of elements in structure\n:param kpoints: Monkhorst\u2013Pack k-point-grid dimensions; (None -> \u00c5\u207b\u00b9 = .3)\n:param smearing_type: occupations smearing type\n:param smearing_width: smearing width, if relevant (Hartree)\n:param hubbard_u: DFT+U on-site Coulomb repulsion per element symbol (Hartree)\n None = no DFT+U; \"auto\" = automatic U values from MP database",
"properties": {
"plane_wave_cutoff": {
"anyOf": [
{
"exclusiveMinimum": 0,
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Plane Wave Cutoff"
},
"charge_density_cutoff": {
"anyOf": [
{
"exclusiveMinimum": 0,
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Charge Density Cutoff"
},
"kpoints": {
"anyOf": [
{
"maxItems": 3,
"minItems": 3,
"prefixItems": [
{
"exclusiveMinimum": 0,
"type": "integer"
},
{
"exclusiveMinimum": 0,
"type": "integer"
},
{
"exclusiveMinimum": 0,
"type": "integer"
}
],
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Kpoints"
},
"smearing_type": {
"anyOf": [
{
"$ref": "#/$defs/PBCDFTSmearing"
},
{
"type": "null"
}
],
"default": null
},
"smearing_width": {
"default": 0.005,
"exclusiveMinimum": 0,
"title": "Smearing Width",
"type": "number"
},
"hubbard_u": {
"anyOf": [
{
"additionalProperties": {
"exclusiveMinimum": 0,
"type": "number"
},
"type": "object"
},
{
"const": "auto",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Hubbard U"
}
},
"title": "PBCDFTSettings",
"type": "object"
}
Fields:
-
plane_wave_cutoff(PositiveFloat | None) -
charge_density_cutoff(PositiveFloat | None) -
kpoints(tuple[PositiveInt, PositiveInt, PositiveInt] | None) -
smearing_type(PBCDFTSmearing | None) -
smearing_width(PositiveFloat) -
hubbard_u(dict[str, PositiveFloat] | Literal['auto'] | None)
ExcitedStateSettings
pydantic-model
TDDFTSettings
pydantic-model
Bases: ExcitedStateSettings
Settings for TDDFT calculations.
New:
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
tda
|
use Tamm-Dancoff approximation |
required | |
num_excitations
|
number of excitations to calculate |
required | |
target_root
|
root to target (for gradient/optimization) |
required |
Show JSON schema:
{
"description": "Settings for TDDFT calculations.\n\nNew:\n:param tda: use Tamm-Dancoff approximation\n:param num_excitations: number of excitations to calculate\n:param target_root: root to target (for gradient/optimization)",
"properties": {
"tda": {
"default": true,
"title": "Tda",
"type": "boolean"
},
"num_excitations": {
"default": 5,
"exclusiveMinimum": 0,
"title": "Num Excitations",
"type": "integer"
},
"target_root": {
"anyOf": [
{
"exclusiveMinimum": 0,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Target Root"
},
"settings_type": {
"const": "tddft_settings",
"default": "tddft_settings",
"title": "Settings Type",
"type": "string"
}
},
"title": "TDDFTSettings",
"type": "object"
}
Fields:
-
tda(bool) -
num_excitations(PositiveInt) -
target_root(PositiveInt | None) -
settings_type(Literal['tddft_settings'])
Validators:
-
validate_setup