ProgramHarness
- pydantic model qcengine.programs.ProgramHarness[source]
Show JSON schema
{ "title": "ProgramHarness", "type": "object", "properties": { "name": { "title": "Name", "type": "string" }, "scratch": { "title": "Scratch", "type": "boolean" }, "thread_safe": { "title": "Thread Safe", "type": "boolean" }, "thread_parallel": { "title": "Thread Parallel", "type": "boolean" }, "node_parallel": { "title": "Node Parallel", "type": "boolean" }, "managed_memory": { "title": "Managed Memory", "type": "boolean" }, "extras": { "title": "Extras", "type": "object" } }, "required": [ "name", "scratch", "thread_safe", "thread_parallel", "node_parallel", "managed_memory" ] }
- Fields:
- abstract compute(input_data, config)[source]
Top-level compute method to be implemented for every ProgramHarness :rtype:
Union
[AtomicResult
,FailedOperation
]Note
- This method behave in any of the following ways:
Return AtomicResult upon successful completion of a calculation
- Return FailedOperation object if an operation was unsuccessful or raised an exception. This is most
likely to occur if the underlying QC package has a QCSchema API that catches exceptions and returns them as FailedOperation objects to end users.
- Raise an exception if a computation failed. The raised exception will be handled by the
qcng.compute() method and either raised or packaged as a FailedOperation object.
- Parameters:
input_data (AtomicInput) –
config (TaskConfig) –
- Return type:
AtomicResult | FailedOperation