Skip to content

VQM24

VQM24

Bases: BaseDataset

Vector-QM24 (VQM24) dataset consists of small organic and inorganic molecules with quantum mechanical properties calculated at wB97x-D3//cc-pVDZ level of theory. This leads to 258,242 unique constitutional isomers and 577,705 conformers of varying stoichiometries. Geometries are generated using GFN2-xTB, and relaxed with DFT method wB97x-D3/cc-pVDZ. The energy values are calculated with DFT method wB97x-D3/cc-pVDZ.

Usage:

from openqdc.datasets import VQM24
dataset = VQM24()

Reference

https://arxiv.org/abs/2405.05961

Source code in openqdc/datasets/potential/vqm24.py
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
class VQM24(BaseDataset):
    """
    Vector-QM24 (VQM24) dataset consists of small organic and inorganic molecules with quantum mechanical
    properties calculated at wB97x-D3//cc-pVDZ level of theory. This leads to 258,242 unique constitutional
    isomers and 577,705 conformers of varying stoichiometries. Geometries are generated using GFN2-xTB, and
    relaxed with DFT method wB97x-D3/cc-pVDZ. The energy values are calculated with DFT method wB97x-D3/cc-pVDZ.

    Usage:
    ```python
    from openqdc.datasets import VQM24
    dataset = VQM24()
    ```

    Reference:
        https://arxiv.org/abs/2405.05961
    """

    __name__ = "vqm24"

    __energy_methods__ = [
        PotentialMethod.WB97X_D3_CC_PVDZ,  # "wB97x-D3/cc-pVDZ."
    ]

    energy_target_names = [
        "wB97x-D3/cc-pVDZ",
    ]
    # ωB97X-D3/cc-pVDZ
    __energy_unit__ = "hartree"
    __distance_unit__ = "ang"
    __forces_unit__ = "hartree/ang"
    __links__ = {
        f"{name}.npz": f"https://zenodo.org/records/11164951/files/{name}.npz?download=1"
        for name in ["DFT_all", "DFT_saddles", "DFT_uniques", "DMC"]
    }

    def read_raw_entries(self):
        samples = []
        for name in self.__links__:
            raw_path = p_join(self.root, f"{name}")
            samples.append(read_npz_entry(raw_path))
        return samples