Bases: BaseInteractionDataset
Metcalf is a dataset consisting of 126 hydrogen-bonded dimers involving N-methylacetamide (NMA) with 14,744 to
156,704 geometries/configurations for each complex. The geometries are optimized using the RI-MP2 method and
the cc-pVTZ basis set. SAPT(0) calculations are performed for computing interaction energies and the various
components.
Usage:
from openqdc.datasets import Metcalf
dataset = Metcalf()
Reference
https://doi.org/10.1063/1.5142636
Source code in openqdc/datasets/interaction/metcalf.py
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135 | class Metcalf(BaseInteractionDataset):
"""
Metcalf is a dataset consisting of 126 hydrogen-bonded dimers involving N-methylacetamide (NMA) with 14,744 to
156,704 geometries/configurations for each complex. The geometries are optimized using the RI-MP2 method and
the cc-pVTZ basis set. SAPT(0) calculations are performed for computing interaction energies and the various
components.
Usage:
```python
from openqdc.datasets import Metcalf
dataset = Metcalf()
```
Reference:
https://doi.org/10.1063/1.5142636
"""
__name__ = "metcalf"
__energy_unit__ = "kcal/mol"
__distance_unit__ = "ang"
__forces_unit__ = "kcal/mol/ang"
__energy_methods__ = [
InteractionMethod.SAPT0_JUN_CC_PVDZ,
InteractionMethod.SAPT0_JUN_CC_PVDZ,
InteractionMethod.SAPT0_JUN_CC_PVDZ,
InteractionMethod.SAPT0_JUN_CC_PVDZ,
InteractionMethod.SAPT0_JUN_CC_PVDZ,
]
__energy_type__ = [
InterEnergyType.TOTAL,
InterEnergyType.ES,
InterEnergyType.EX,
InterEnergyType.IND,
InterEnergyType.DISP,
]
energy_target_names = [
"total energy",
"electrostatic energy",
"exchange energy",
"induction energy",
"dispersion energy",
]
__links__ = {"model-data.tar.gz": "https://zenodo.org/records/10934211/files/model-data.tar?download=1"}
def read_raw_entries(self) -> List[Dict]:
# extract in folders
extract_raw_tar_gz(self.root)
data = []
for filename in glob(self.root + f"{os.sep}*.xyz"):
data.extend(read_xyz(filename, self.__name__))
return data
|