AtomicSpecification
- pydantic model qcmanybody.models.AtomicSpecification[source]
Specification for a single point QC calculation
Show JSON schema
{ "title": "AtomicSpecification", "description": "Specification for a single point QC calculation", "type": "object", "properties": { "keywords": { "title": "Keywords", "description": "The program specific keywords to be used.", "default": {}, "type": "object" }, "program": { "title": "Program", "description": "The program for which the Specification is intended.", "type": "string" }, "schema_name": { "title": "Schema Name", "default": "qcschema_atomicspecification", "enum": [ "qcschema_atomicspecification" ], "type": "string" }, "schema_version": { "title": "Schema Version", "description": "The version number of ``schema_name`` to which this model conforms.", "default": 1, "enum": [ 1 ], "type": "integer" }, "driver": { "description": "Allowed computation driver values.", "allOf": [ { "$ref": "#/definitions/DriverEnum" } ] }, "model": { "title": "Model", "description": "The computational molecular sciences model to run.", "allOf": [ { "$ref": "#/definitions/Model" } ] }, "protocols": { "title": "Protocols", "description": "Protocols regarding the manipulation of computational result data.", "default": {}, "allOf": [ { "$ref": "#/definitions/AtomicResultProtocols" } ] }, "extras": { "title": "Extras", "description": "Additional information to bundle with the computation. Use for schema development and scratch space.", "default": {}, "type": "object" } }, "required": [ "program", "driver", "model" ], "additionalProperties": false, "definitions": { "DriverEnum": { "title": "DriverEnum", "description": "Allowed computation driver values.", "enum": [ "energy", "gradient", "hessian", "properties" ], "type": "string" }, "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 }, "BasisSet": { "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#" }, "Model": { "title": "Model", "description": "The computational molecular sciences model to run.", "type": "object", "properties": { "method": { "title": "Method", "description": "The quantum chemistry method to evaluate (e.g., B3LYP, PBE, ...). For MM, name of the force field.", "type": "string" }, "basis": { "title": "Basis", "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.", "anyOf": [ { "type": "string" }, { "$ref": "#/definitions/BasisSet" } ] } }, "required": [ "method" ] }, "WavefunctionProtocolEnum": { "title": "WavefunctionProtocolEnum", "description": "Wavefunction to keep from a computation.", "enum": [ "all", "orbitals_and_eigenvalues", "occupations_and_eigenvalues", "return_results", "none" ], "type": "string" }, "ErrorCorrectionProtocol": { "title": "ErrorCorrectionProtocol", "description": "Configuration for how QCEngine handles error correction\n\nWARNING: These protocols are currently experimental and only supported by NWChem tasks", "type": "object", "properties": { "default_policy": { "title": "Default Policy", "description": "Whether to allow error corrections to be used if not directly specified in `policies`", "default": true, "type": "boolean" }, "policies": { "title": "Policies", "description": "Settings that define whether specific error corrections are allowed. Keys are the name of a known error and values are whether it is allowed to be used.", "type": "object", "additionalProperties": { "type": "boolean" } } }, "additionalProperties": false }, "NativeFilesProtocolEnum": { "title": "NativeFilesProtocolEnum", "description": "CMS program files to keep from a computation.", "enum": [ "all", "input", "none" ], "type": "string" }, "AtomicResultProtocols": { "title": "AtomicResultProtocols", "description": "Protocols regarding the manipulation of computational result data.", "type": "object", "properties": { "wavefunction": { "description": "Wavefunction to keep from a computation.", "default": "none", "allOf": [ { "$ref": "#/definitions/WavefunctionProtocolEnum" } ] }, "stdout": { "title": "Stdout", "description": "Primary output file to keep from the computation", "default": true, "type": "boolean" }, "error_correction": { "title": "Error Correction", "description": "Policies for error correction", "allOf": [ { "$ref": "#/definitions/ErrorCorrectionProtocol" } ] }, "native_files": { "description": "Policies for keeping processed files from the computation", "default": "none", "allOf": [ { "$ref": "#/definitions/NativeFilesProtocolEnum" } ] } }, "additionalProperties": false } } }
- field driver: DriverEnum [Required]
Allowed computation driver values.
- field extras: Dict[str, Any] = {}
Additional information to bundle with the computation. Use for schema development and scratch space.
- field keywords: Dict[str, Any] = {}
The program specific keywords to be used.
- field model: Model [Required]
The computational molecular sciences model to run.
- field program: str [Required]
The program for which the Specification is intended.
- field protocols: AtomicResultProtocols = AtomicResultProtocols(wavefunction=<WavefunctionProtocolEnum.none: 'none'>, stdout=True, error_correction=ErrorCorrectionProtocol(default_policy=True, policies=None), native_files=<NativeFilesProtocolEnum.none: 'none'>)
Protocols regarding the manipulation of computational result data.
- field schema_name: Literal['qcschema_atomicspecification'] = 'qcschema_atomicspecification'
- field schema_version: Literal[1] = 1
The version number of
schema_nameto which this model conforms.