AtomicComputer

pydantic model psi4.driver.AtomicComputer[source]

Computer for analytic single-geometry computations.

Show JSON schema
{
   "title": "AtomicComputer",
   "description": "Computer for analytic single-geometry computations.",
   "type": "object",
   "properties": {
      "molecule": {
         "title": "Molecule",
         "description": "The molecule to use in the computation."
      },
      "basis": {
         "title": "Basis",
         "description": "The quantum chemistry basis set to evaluate (e.g., 6-31g, cc-pVDZ, ...).",
         "type": "string"
      },
      "method": {
         "title": "Method",
         "description": "The quantum chemistry method to evaluate (e.g., B3LYP, MP2, ...).",
         "type": "string"
      },
      "driver": {
         "description": "The resulting type of computation: energy, gradient, hessian, properties.Note for finite difference that this should be the target driver, not the means driver.",
         "allOf": [
            {
               "$ref": "#/definitions/DriverEnum"
            }
         ]
      },
      "keywords": {
         "title": "Keywords",
         "description": "The keywords to use in the computation.",
         "type": "object"
      },
      "protocols": {
         "title": "Protocols",
         "description": "Output modifications.",
         "default": {
            "stdout": true
         },
         "anyOf": [
            {
               "$ref": "#/definitions/AtomicResultProtocols"
            },
            {
               "type": "object"
            }
         ]
      },
      "tag": {
         "title": "Tag",
         "description": "The tags to pass along to compute managers.",
         "default": "*",
         "type": "string"
      },
      "priority": {
         "title": "Priority",
         "description": "The priority of a Task; higher priority will be pulled first. {high:2, normal:1, low:0}",
         "default": 1,
         "type": "string"
      },
      "owner_group": {
         "title": "Owner Group",
         "description": "group in the chown sense.",
         "type": "string"
      },
      "computed": {
         "title": "Computed",
         "description": "Whether quantum chemistry has been run on this task.",
         "default": false,
         "type": "boolean"
      },
      "result": {
         "title": "Result",
         "description": ":py:class:`~qcelemental.models.AtomicResult` return."
      },
      "result_id": {
         "title": "Result Id",
         "description": "The optional ID for the computation.",
         "type": "string"
      }
   },
   "required": [
      "molecule",
      "basis",
      "method",
      "driver"
   ],
   "definitions": {
      "DriverEnum": {
         "title": "DriverEnum",
         "description": "Allowed computation driver values.",
         "enum": [
            "energy",
            "gradient",
            "hessian",
            "properties"
         ],
         "type": "string"
      },
      "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
      }
   }
}

Fields:
Validators:
field basis: str [Required]

The quantum chemistry basis set to evaluate (e.g., 6-31g, cc-pVDZ, …).

Validated by:
field computed: bool = False

Whether quantum chemistry has been run on this task.

field driver: DriverEnum [Required]

The resulting type of computation: energy, gradient, hessian, properties.Note for finite difference that this should be the target driver, not the means driver.

field keywords: Dict[str, Any] [Optional]

The keywords to use in the computation.

Validated by:
field method: str [Required]

The quantum chemistry method to evaluate (e.g., B3LYP, MP2, …).

Validated by:
field molecule: Any [Required]

The molecule to use in the computation.

field owner_group: Optional[str] = None

group in the chown sense.

field priority: str = 1

The priority of a Task; higher priority will be pulled first. {high:2, normal:1, low:0}

field protocols: Union[AtomicResultProtocols, Dict[str, Any], None] = {'stdout': True}

Output modifications.

field result: Any [Optional]

AtomicResult return.

field result_id: Optional[str] = None

The optional ID for the computation.

field tag: str = '*'

The tags to pass along to compute managers.

compute(client=None)[source]

Run quantum chemistry.

Parameters:

client (qcportal.client.FractalClient | None) –

get_results(client=None)[source]

Return results as Atomic-flavored QCSchema.

Parameters:

client (qcportal.FractalClient | None) –

Return type:

AtomicResult

plan()[source]

Form QCSchema input from member data. :rtype: AtomicInput

Return type:

AtomicInput

validator set_basis  »  psi4.driver.AtomicComputer.basis[source]
validator set_keywords  »  psi4.driver.AtomicComputer.keywords[source]
validator set_method  »  psi4.driver.AtomicComputer.method[source]