BasisSet

pydantic model qcelemental.models.BasisSet[source]

A quantum chemistry basis description.

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

Fields:
Validators:
field atom_map: List[str] [Required]

Mapping of all atoms/centers in the parent molecule to centers in center_data.

Validated by:
  • _check_atom_map

field center_data: Dict[str, BasisCenter] [Required]

Shared basis data for all atoms/centers in the parent molecule

field description: Optional[str] = None

Brief description of the basis set.

field name: str [Required]

The standard basis name if available (e.g., ‘cc-pVDZ’).

field nbf: Optional[int] = None

The number of basis functions. Use for convenience or as checksum

Validated by:
  • _check_nbf

field schema_name: ConstrainedStrValue = 'qcschema_basis'

The QCSchema specification to which this model conforms. Explicitly fixed as qcschema_basis.

Constraints:
  • pattern = ^(qcschema_basis)$

field schema_version: int = 1

The version number of schema_name to which this model conforms.