Model

pydantic model qcelemental.models.v2.Model[source]

The computational molecular sciences model to run.

Show JSON schema
{
   "title": "Model",
   "description": "The computational molecular sciences model to run.",
   "type": "object",
   "properties": {
      "method": {
         "description": "The quantum chemistry method to evaluate (e.g., B3LYP, PBE, ...). For MM, name of the force field.",
         "title": "Method",
         "type": "string"
      },
      "basis": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "$ref": "#/$defs/BasisSet"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "description": "The quantum chemistry basis set to evaluate (e.g., 6-31g, cc-pVDZ, ...). Can be ``None`` for methods without basis sets. For molecular mechanics, name of the atom-typer.",
         "title": "Basis"
      }
   },
   "$defs": {
      "BasisCenter": {
         "additionalProperties": false,
         "description": "Data for a single atom/center in a basis set.",
         "properties": {
            "electron_shells": {
               "description": "Electronic shells for this center.",
               "items": {
                  "$ref": "#/$defs/ElectronShell"
               },
               "minItems": 1,
               "title": "Electron Shells",
               "type": "array",
               "uniqueItems": true
            },
            "ecp_electrons": {
               "default": 0,
               "description": "Number of electrons replaced by ECP, MCP, or other field potentials.",
               "title": "Ecp Electrons",
               "type": "integer"
            },
            "ecp_potentials": {
               "anyOf": [
                  {
                     "items": {
                        "$ref": "#/$defs/ECPPotential"
                     },
                     "minItems": 1,
                     "type": "array"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "description": "ECPs, MCPs, or other field potentials for this center.",
               "title": "Ecp Potentials",
               "uniqueItems": true
            }
         },
         "required": [
            "electron_shells"
         ],
         "title": "BasisCenter",
         "type": "object"
      },
      "BasisSet": {
         "$schema": "http://json-schema.org/draft-04/schema#",
         "additionalProperties": false,
         "description": "A quantum chemistry basis description.",
         "properties": {
            "schema_name": {
               "const": "qcschema_basis_set",
               "default": "qcschema_basis_set",
               "description": "The QCSchema specification to which this model conforms.",
               "title": "Schema Name",
               "type": "string"
            },
            "schema_version": {
               "const": 2,
               "default": 2,
               "description": "The version number of :attr:`~qcelemental.models.BasisSet.schema_name` to which this model conforms.",
               "title": "Schema Version",
               "type": "integer"
            },
            "name": {
               "description": "The standard basis name if available (e.g., 'cc-pVDZ').",
               "title": "Name",
               "type": "string"
            },
            "description": {
               "anyOf": [
                  {
                     "type": "string"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "description": "Brief description of the basis set.",
               "title": "Description"
            },
            "center_data": {
               "additionalProperties": {
                  "$ref": "#/$defs/BasisCenter"
               },
               "description": "Shared basis data for all atoms/centers in the parent molecule",
               "title": "Center Data",
               "type": "object"
            },
            "atom_map": {
               "description": "Mapping of all atoms/centers in the parent molecule to centers in ``center_data``.",
               "items": {
                  "type": "string"
               },
               "title": "Atom Map",
               "type": "array"
            },
            "nbf": {
               "anyOf": [
                  {
                     "type": "integer"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "description": "The number of basis functions. Use for convenience or as checksum",
               "title": "Nbf"
            }
         },
         "required": [
            "name",
            "center_data",
            "atom_map"
         ],
         "title": "BasisSet",
         "type": "object"
      },
      "ECPPotential": {
         "additionalProperties": false,
         "description": "Information for a single ECP potential.",
         "properties": {
            "ecp_type": {
               "$ref": "#/$defs/ECPType"
            },
            "angular_momentum": {
               "description": "Angular momentum for the potential as an array of integers.",
               "items": {
                  "minimum": 0,
                  "type": "integer"
               },
               "minItems": 1,
               "title": "Angular Momentum",
               "type": "array",
               "uniqueItems": true
            },
            "r_exponents": {
               "description": "Exponents of the 'r' term.",
               "items": {
                  "type": "integer"
               },
               "minItems": 1,
               "title": "R Exponents",
               "type": "array"
            },
            "gaussian_exponents": {
               "description": "Exponents of the 'gaussian' term.",
               "items": {
                  "anyOf": [
                     {
                        "type": "number"
                     },
                     {
                        "type": "string"
                     }
                  ]
               },
               "minItems": 1,
               "title": "Gaussian Exponents",
               "type": "array"
            },
            "coefficients": {
               "description": "General contraction coefficients for the potential; individual list components will be the individual segment contraction coefficients.",
               "items": {
                  "items": {
                     "anyOf": [
                        {
                           "type": "number"
                        },
                        {
                           "type": "string"
                        }
                     ]
                  },
                  "type": "array"
               },
               "minItems": 1,
               "title": "Coefficients",
               "type": "array"
            }
         },
         "required": [
            "ecp_type",
            "angular_momentum",
            "r_exponents",
            "gaussian_exponents",
            "coefficients"
         ],
         "title": "ECPPotential",
         "type": "object"
      },
      "ECPType": {
         "description": "The type of the ECP potential.",
         "enum": [
            "scalar",
            "spinorbit"
         ],
         "title": "ECPType",
         "type": "string"
      },
      "ElectronShell": {
         "additionalProperties": false,
         "description": "Information for a single electronic shell.",
         "properties": {
            "angular_momentum": {
               "description": "Angular momentum for the shell as an array of integers.",
               "items": {
                  "minimum": 0,
                  "type": "integer"
               },
               "minItems": 1,
               "title": "Angular Momentum",
               "type": "array",
               "uniqueItems": true
            },
            "harmonic_type": {
               "$ref": "#/$defs/HarmonicType"
            },
            "exponents": {
               "description": "Exponents for the contracted shell.",
               "items": {
                  "anyOf": [
                     {
                        "type": "number"
                     },
                     {
                        "type": "string"
                     }
                  ]
               },
               "minItems": 1,
               "title": "Exponents",
               "type": "array"
            },
            "coefficients": {
               "description": "General contraction coefficients for the shell; individual list components will be the individual segment contraction coefficients.",
               "items": {
                  "items": {
                     "anyOf": [
                        {
                           "type": "number"
                        },
                        {
                           "type": "string"
                        }
                     ]
                  },
                  "type": "array"
               },
               "minItems": 1,
               "title": "Coefficients",
               "type": "array"
            }
         },
         "required": [
            "angular_momentum",
            "harmonic_type",
            "exponents",
            "coefficients"
         ],
         "title": "ElectronShell",
         "type": "object"
      },
      "HarmonicType": {
         "description": "The angular momentum representation of a shell.",
         "enum": [
            "spherical",
            "cartesian"
         ],
         "title": "HarmonicType",
         "type": "string"
      }
   },
   "additionalProperties": true,
   "required": [
      "method"
   ]
}

Fields:
field basis: str | BasisSet | None = None

The quantum chemistry basis set to evaluate (e.g., 6-31g, cc-pVDZ, …). Can be None for methods without basis sets. For molecular mechanics, name of the atom-typer.

field method: str [Required]

The quantum chemistry method to evaluate (e.g., B3LYP, PBE, …). For MM, name of the force field.