Data classes
QDK/Chemistry uses immutable data classes to represent molecular information, electronic structure results, and quantum objects. These classes serve as the inputs and outputs for algorithm classes, enabling a clean flow of data through the computational pipeline. All data classes support serialization to JSON and HDF5 formats for persistence and interoperability.
Comprehensive details on each data class can be found in the API documentation. Here, we provide a quick reference guide to help users understand the purpose and typical sources of commonly encountered data classes. Each of the links below leads to a detailed description of the data class, including its attributes, methods, and usage examples.
Contents
Quick reference
The following table summarizes the available data classes in QDK/Chemistry and their purposes. For detailed documentation, refer to the linked pages.
Data Class |
Purpose |
Typical Source |
|---|---|---|
Molecular geometry (atoms and coordinates) |
User input |
|
Atomic orbital basis definitions |
Library lookup, User input |
|
Molecular orbital coefficients and energies |
||
One- and two-electron integrals |
||
Electronic state (orbitals + CI coefficients) |
||
|
Pauli operator representation |
|
Physical symmetries |
Factory methods, User input |
|
Lattice topology for model Hamiltonians |
Factory methods, User input |
|
Pauli operator expressions with arithmetic |
User construction |
|
Phase estimation results (phase, energy, aliases) |
||
Quantum circuit (OpenQASM, Q#, QIR, Qiskit) |
StatePreparation, User input |